新規インストール時にコピーせずに他のパーティションから /home を再マウントする

新規インストール時にコピーせずに他のパーティションから /home を再マウントする

私は Linux Mint 17.3 を使用しており、Mint 18 で新しい小さなディスクを作成しました。現在の計画は、 の古いパーティションを新しいシステムにマウントすることです/mountpoint/oldroot/home//homeしたがって、古いシステムと同じユーザー名とパスワードで 3 人のユーザーすべてを作成し、 を編集すれば/etc/fstabよいのでしょうか?

質問:

  • 数値の uid と gid が一致していることを確認する必要があります。どうすればいいでしょうか?
  • 他に注意すべきことはありますか?

理想的には、移行が成功したと確信できるまで 2 つのシステムを並行して使用したいので、古いホームでの実行は避けたいのですchownが、何か見落としているのではないかと少し心配です。

答え1

次のコマンドを使用してusermod、ユーザーの資格情報を変更できます。

UID または GID:

usermod -u NEW_UID USERNAME
usermod -g NEW_GID USERNAME

したがって、古いシステムの値を採用することができます。

ホーム ディレクトリの場所 (/home の移動が不完全な場合のみ)

usermod -d /path/to/new/home/dir USERNAME

現在のホーム ディレクトリの内容も新しい場所に移動するには、-mオプションを使用します。

あるいは、古い/etc/passwd/etc/groupおよび/etc/shadowファイルを新しいシステムに移動し、UID と GID のリセットをスキップすることもできます。

私が見つけた問題の 1 つは、2 つのシステムが一部の設定ファイルに同じ名前を使用し、エラーが発生する場合です。

答え2

最終的に、とを使用して、新しいインストールの GID と UID を古いインストールのものと調整しusermod -u <old-uid> <login>groupmod -g <old-gid> <login>新しいシステムと古いシステムのホーム ディレクトリの名前が同じであることを確認しました。新しいホーム ディレクトリに変更するには、それらを にマウントするように fstab を編集し/home、デフォルトのユーザー ディレクトリの名前を変更してmv /home/login /home/login_old、fstab ファイルで使用されるマウント ポイントとして空のディレクトリを作成しましたmkdir /home/login。その後、すぐに再起動しました。

Mint 17.3 と 18 は十分に類似していたため、エラーもなく正常に動作しました。

一般的に、あるディストリビューションから別のディストリビューションに移行する場合や、デスクトップ環境が変更される場合には、ユーザーのホーム ディレクトリの古い設定によって問題が発生する可能性があるため、これをお勧めしません。

関連情報