web-dev-qa-db-ja.com

リモートVMサーバー上のディスクパーティションのサイズ変更

リモートサーバーでVMとしてUbuntu Server 10.04を実行しています。 VMにのみアクセスできます。

VMは20GBのディスク容量を割り当てていますが、現在ドライブは約4.7GBを使用するためにのみパーティション化されています。

LiveCDを使用して、gpartedを使用してドライブのパーティションを再分割できることを知っています。リモートVMでそれをどのように実行しますか? (パーティションは起動ボリュームでもあるため)

# fdisk -l

Disk /dev/sda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00074164

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1         618     4959232   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2             618         653      280577    5  Extended
Partition 2 does not end on cylinder boundary.
/dev/sda5             618         653      280576   82  Linux swap / Solaris
7
Highway of Life

私がしようとすること:

  1. 多くのVPSホスティングプロバイダーには、コントロールパネルでパーティションを操作するツールがあります。コントロールパネルにアクセスするのが最も安全なオプションです。

  2. パーティションのサイズを変更せずに、2番目のパーティションを作成し、「作業」データをそのパーティションに移動します。私は。 /homeまたはデータが別のパーティションにある場所にマウントします

  3. それでも冒険的な気分になったら、ブートパーティションを読み取り専用で再マウントして、読み取り専用でマウントしているときにサイズを変更できるかどうかを確認してください。

  4. スワップの削除のような本当にトリッキーなもの-ドライブの最後にルートパーティションのコピーを作成します-新しいパーティションからブートするようにgrubを設定します-リブート-元のパーティションのサイズを変更します-データをコピーします-grubを再度変更します-リブート-削除します一時的なルートパーティション-スワップパーティションを再度作成します。

2番目の2つのオプションは、何か問題が発生した場合にシステムが起動しないためシステムにアクセスできなくなるという意味で、非常に危険であると考えます。

3
Sergey

システムパーティションを拡大する場合

スワップパーティションを一時的に削除するため、まずスワップ(swapoff /dev/sda5)をオフにします。

GPartedまたはcfdiskまたはfdiskを使用して:

  1. 論理パーティション/dev/sda5および拡張パーティション/dev/sda2を削除します。
  2. /dev/sda1を拡大して、ディスク全体からスワップパーティションに割り当てたいものを引いたものを広げます。
  3. スワップ用のパーティションを再作成します(簡単にするためにプライマリパーティションにします)。

スワップを再びオンにしないでください。 /etc/fstabのスワップ行をコメントアウトし、rebootにします。 (再起動しない場合、カーネルはパーティションに関する古いデータを使用し続けるため、悲惨な結果が生じる可能性があります。)

再起動後、/etc/fstabを編集して、スワップデバイスの名前を変更し、コメントを解除します。 mkswapでスワップ領域をフォーマットし、swapon -aでアクティブにします。

最後に、既存のファイルシステムを拡張して、/dev/sda1resize2fs /dev/sda1ですべて占有します。

別のパーティションを作成する場合

GPartedを使用して拡張パーティション(/dev/sda2)を拡大し、その上に新しい論理パーティション/dev/sda6を作成します。 GPartedに、/dev/sda6にLinuxファイルシステムが必要であることを伝えます。 mke2fs -t ext4 /dev/sda6を使用してファイルシステムを作成します。

11
Gilles