現在、小さな96 GB SSDを搭載したマシンにUbuntu 16.04サーバーをインストールしています。サーバー上のすべてのユーザーに十分なスペースではなくなったため、1 TBのHDDを追加し、/home
フォルダーをこの1 TBのドライブの新しいパーティションに明示的に移動します。
もともと、私は here という指示を使用してこれを行うことを計画していました。しかし、システムを詳しく調べると、LVMが有効になっていることがわかりました。
Filesystem Size Used Avail Use% Mounted on
udev 63G 0 63G 0% /dev
tmpfs 13G 9.5M 13G 1% /run
/dev/mapper/ubuntu--vg-root 98G 76G 18G 82% /
tmpfs 63G 0 63G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 63G 0 63G 0% /sys/fs/cgroup
/dev/sda2 473M 111M 338M 25% /boot
/dev/sda1 512M 136K 512M 1% /boot/efi
tmpfs 13G 0 13G 0% /run/user/1001
これまでに読んだ内容に基づいて、新しいドライブをubuntu-vg
ボリュームグループに追加する必要があります( this answer の手順2〜3のように)。しかし、この後どうすればよいかわかりません- ステップ4-5 で続行する必要がありますか?または、/home
だけを明示的に1 TB HDDに移動し、/
をSSDに残す別の方法はありますか?
あなたが望むことを行うにはかなりの方法がありますが、私がお勧めする方法は次のとおりです。
Sudo pvcreate /dev/sdb1
のように、pvcreate
コマンドを使用してLVMで使用するPVを準備します。Sudo vgextend ubuntu--vg /dev/sdb1
のように、vgextend
を使用して、既存のボリュームグループ(VG)に新しいPVを追加します。Sudo pvdisplay
と入力して、サイズを含むPVの統計を表示します。Sudo lvcreate -L 900G -n home ubuntu--vg /dev/sdb1
のように、lvcreate
を使用して新しい論理ボリューム(LV)を作成します。サイズを設定できる構文(-L
を使用)と、LVが作成されるPV(/dev/sdb1
)を指定したことに注意してください。Sudo pvdisplay
を再度入力して、適切なサイズのLVを作成したことを確認します。そうでない場合は、lvresize
を使用してサイズを変更するか、lvremove
を使用して削除してから再試行してください。Sudo mkfs -t ext4 /dev/mapper/ubuntu--vg-home
のように、LVにファイルシステムを作成します。Sudo mount /dev/mapper/ubuntu--vg-home /mnt
のように、新しいLVを便利な場所にマウントします。/home
ディレクトリをtar
、cp
、rsync
、または任意のツールでコピーします。/etc/fstab
を編集して、新しいLVを/home
にマウントします。/home
の名前を他の名前(たとえば、/home-orig
)に変更し、マウントポイントとして機能する新しい空の/home
ディレクトリを作成します。/home-orig
ディレクトリを削除します。手順8〜11は、 参照するWikiページ で説明されている手順の同等の手順と非常に似ているため、これらの手順の詳細を説明しました。
私は何度もこのようなことを自分で行ってきましたが、示したコマンドの例は関連するマニュアルページの読みに基づいているため、詳細を逃した可能性があることに注意してください。マニュアルページを確認し、エラーが発生した場合は、何が問題なのかを見つけたら調整してください。また、UbuntuのデフォルトのLVMネーミングがわかりにくいので、その詳細を誤って解釈した可能性があり、調整する必要があるかもしれません。
これが完了すると、SSDのPVに未使用のスペースができます。ルート(/
)LVをこのスペースに展開し、/home
LVを展開して両方のディスクにまたがり、特別な目的のために別のLVを作成できます。
この手順の変形として、現在の/home
LVをそのままにして、新しいディスクに新しいLVを作成し、新しいLVをスピルオーバースペースとして使用し始める場合があります。コンピューターはマルチユーザーサーバーであるため、これは厄介かもしれませんが、これを行う理由があるかもしれません-たとえば、1人または2人のユーザーがディスクスペースの大部分を消費している場合は、移動できますホームスペースだけを新しいスペースに配置するか、新しいスペースにディレクトリを付けて(アクセスを容易にするマウントポイントまたはシンボリックリンクを使用して)、大きなファイルを新しいスペースに移動するように指示します。このアプローチには、他のユーザーに悪影響を与えないという利点があります。これは、新しいハードディスクストレージスペースが古いSSDストレージスペースよりも著しく遅い可能性が高いためです。
新しいドライブをLVMに追加して、システムがすべてを1つのドライブとして扱うことも、2つ目のドライブとして追加することもできます。 2番目の方法では、新しいドライブを/ home専用にすることができます。
最初にドライブをシステムに追加してから、好みのファイルシステムでフォーマットします。UUIDを書き留めてから、/ homeから新しいドライブにすべてを移動します。/homeは、新しいドライブをそこにマウントするために空でなければなりません。
次に/ etc/fstabファイルを編集します。次の行を追加します。
UUID =(前述)/ home(使用するファイルシステム)デフォルト0 2
注:デバイス名を使用できますが、UUIDにより、デバイス名が変更された場合に正しいドライブが確実にマウントされます。
保存して再起動します。