Arch Linuxにて/homeのドライブを変更する

投稿者: | 5月 12, 2024

きっかけ

Arch Linuxのインストール時オプションでsdb2を/、sda1を/homeと指定したのですが、なぜか適用されず、sdb2内に/homeができてしまったので、その時の作業のメモです。割とざっくり解説なので気をつけてください。

参考にしたサイト

Hatena Blog かみぽわーる「ディスクのUUIDを調べる方法」
Qitta @kihoair「fstabについて」

手順

sdb2が現在/(/homeを含む)として使用されているパーティションでsda1がext4でフォーマット済みの新たな/homeです。

1. rootでログインできるようにする

ミスるとrootしかログインできなくなるのでSSHを使って作業をする場合は

vim /etc/ssh/sshd_config

を追記or変更で

PermitRootLogin yes

にします。その後

sudo systemctl restart sshd

でサービスを再起動してください。Ubuntu等の場合は追加でrootでログインできるように作業が必要なので調べてやってください。

2. ログアウトしrootでログインする

root以外のアカウントではログインしていない状態(GUI含めて)
本当はシングルユーザーモードとかにして作業を行うべきですが、SSHを使って作業をしたかったのでしませんでした。

3. sda1をマウント

mount /dev/sda1 /mnt

で/mntにマウントします。

4. コピー

cp /home/* /mnt/ -ar

とか

rsync -avz /home/ /mnt/

でコピーします。

5. UUIDの確認

/dev/sda1って指定してもいいですが、UUIDで指定したほうが確実なので、

ls -l /dev/disk/by-uuid/ | grep sda1

でUUIDを取得します。

6. fstabの編集

cp /etc/fstab /etc/fstab-back

とかでバックアップを取ったあとに、

vim /etc/fstab

をひらき、他に習って

#/dev/sda1
UUID={UUID} /home ext4 rw,relatime 0 2

を追記しました。

7. /home/の削除

適当に

rm /home/* -R

とかで削除します。

8. 再起動

再起動後に一般ユーザーでログインできて、dfでsda1が/homeにマウントされていれば成功です。
SSHを使った場合は設定を戻してください。

おわりに

意外と簡単にできました。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)