新しいユーザーホームディレクトリへの移行

新しいユーザーホームディレクトリへの移行

現在、ユーザーの構成にはいくつかの問題があります。これらの問題は新しいユーザーアカウントで解決されます。これで、古いユーザーのすべてのデータを新しいユーザーに移動したいと思います(ディスクスペースのためコピーではありません)。また、問題のない一部のアプリケーション設定ファイルをオプションで新しいユーザーに移動したいと思います。

これを行うには、新しいユーザーが古いユーザーのユーザーフォルダ全体を読み書きできるようにするにはどうすればよいですか。

答え1

ホームディレクトリの所有権をchown新しいユーザーに変更します。

chown -R newuser:newuser /home/olduser

答え2

どうやら」複数の質問「実際には、アプリケーション固有の構成に関連しています。一般アカウントは、ホームディレクトリの場所に依存するものを持ってはいけません。

しかし、あなたが説明する問題は、問題を引き起こさずに解決するのが難しいです。 「ドット」以外のファイルと標準シェルのスタートアップファイルをコピーするのは良い起動かもしれませんが、それでも重要なドットファイルが見つからないか、あまりにも多くのファイルを持ち歩く危険があります。これは試行錯誤を経て解決しなければなりません。

すでに新しいアカウントを作成しているとします。便宜上、変数を使用して古いユーザーディレクトリと新しいユーザーディレクトリを識別します。これらすべてを次のように実行しますroot

olduser=olduser          # For example, « olduser=sarah »
newuser=newuser

oldgroup=oldgroup        # For example, « oldgroup=sarah » or « oldgroup=users »
newgroup=newgroup

oldhome=/home/olduser    # For example, « oldhome=/home/sarah »
newhome=/home/newuser

古いディレクトリから新しいディレクトリにファイルを移動します。

mv "$oldhome"/* "$newhome/"
mv -f "$oldhome"/.{bashrc,bash_profile,profile,ssh} "$newhome/"

残りのファイルを確認し、アーカイブmvしたいファイルを移動します()。

ls -RA "$oldhome"

最後に、新しいユーザーの所有権とグループを変更します。

find "$newhome" -user "$olduser" -exec chown "$newuser" {} +
find "$newhome" -group "$oldgroup" -exec chgrp "$newgroup" {} +

関連情報