web-dev-qa-db-ja.com

Ubuntuの新規インストールへのホームフォルダーの移動

ホームフォルダーをUbuntuの新しいインストールに移動して、そのコンピューターに対してユーザーに対して行われたすべての設定と調整を維持することは可能ですか? Ubuntuの新規インストールに、Ubuntuの新規インストールに移動したいユーザーと同じ名前とパスワードで新規ユーザーを作成する場合のように。それは機能しますか、それ以上に安全ですか?

3

はい。私は何度もやってきました。 rsyncには、所有権、ファイル時間、すべてを保持するモード「-a」があります。ネットワーク経由でファイルを送信できます。または、ext4形式の外部ディスクにコピーして、rsyncで復元できます。通常のドラッグアンドドロップではコピーせず、rsyncを使用して、すべてのプロパティのアーカイブを保持することを覚えておいてください( "-a")。

My.old.computerにアカウント「myuser」があるとします。

新しいコンピューターmy.new.computerをセットアップします。そこで「myuser」を作成します。気難しい場合は、古いシステムからユーザーIDとグループIDを取得し、ユーザーアカウントの作成時にそれらを割り当てます。それは問題を軽減するかもしれませんが、私は昔ながらで、これは2005年に一度失敗したので、私はそれをするだけだと思います。uidとgidの意味を知っていますか?ユーザーアカウントの番号。古いシステムで "id myuser"を実行し、新しいコンピューターで新しいユーザーを作成するときに、同じuidとgidを割り当てます。

これらのシステムの両方で他のアカウントを作成します。セッションは破棄するファイルに依存するため、そのユーザーがログインしているときに「myuser」のユーザーフォルダーをコピーしようとはしません。繰り返し:myuserアカウントのファイルをコピーする場合は、myuserとしてログインしないでください。どちらのシステムでも。

新しいシステムで、rootとして、デフォルトのユーザーディレクトリを邪魔にならないように移動し(安全で、削除しないでください!)、新しいディレクトリを作成します

Sudo mv /home/myuser /home/myuser.orig
Sudo mkdir /home/myuser
Sudo chown myuser.myuser /home/myuser

通常のユーザーアカウントがファイルをrsyncできるように、最後のステップが必要です。これをrootとして行いたくありません

次に、rsyncフラグ/home/myuserを使用して、古いフォルダーから新しいフォルダーに-ravをコピーします。

古いシステムから新しいシステムにファイルを送信できます。古いシステム上

cd /home
rsync -e ssh -ravn myuser  [email protected]:/home

どこ:

  • -r:再帰的
  • -a:アーカイブモード
  • -v:詳細モード。あなたはそれを省くことができます、それはより速く行きます。しかし、安心感は少ない。
  • -n:実際に変更を加えないでください

テストを実行したいので、-nフラグを付けました。エラーがある場合、私たちは見つけます。テスト後、-nフラグなしで同じコマンドを実行します。

これは、ユーザーアカウントに/ home/myuser内のファイルをコピーして書き込む権限がある場合にのみ機能します。ルートになることなくそれを行う方法は完全にはわかりませんが、以前は知っていたので、ここの誰かが何をすべきか知っているに違いありません。

または、新しいシステムにいる場合、他からコピーできます

cd /home
rsync -e ssh -rav my.old.computer:/home/myuser .

ピリオド.は、現在の作業ディレクトリを意味します。最初に-nを指定して実行し、何が問題なのかを確認します。

私はこれを何度もやってきました。 sshとrsyncを組み合わせて新しいファイルを正しく割り当てる必要があるため、uidとgidの手動設定は実際には不要です。しかし、私はこれを一度間違ってしまい、すべての新しいファイルが間違ったユーザーによって使用されたようになりました。 ls -laの出力は次のようになります。

rw-------   1 myuser myuser        174 Aug  4 22:43 .Xauthority

次のようなユーザー番号が表示されます

rw-------   1 504 50004        174 Aug  4 22:43 .Xauthority

または、さらに悪いことに、他のユーザーの名前。 uidとgidが実際にファイルの所有権を決定するために起こります。人間が読める名前は表面的なものです。

通常、chownを使用してそこから抜け出すことができますが、uidとgidを揃えるかどうかはわかりません。

コピーオーバーが1回失敗したり、予期しない動作をしたりしても、心配する必要はありません。古いコンピューターを破壊するのではなく、新しいコンピューターは白紙のままです。

Tarの愛好家の中には、古いものをtarしてtar.gzファイルを移動し、それを展開するのが最善の方法だと言う人もいると思います。 2003年かそこらで、それは私たちにとって不可欠であるように見えましたが、最近rsyncメソッドはうまく機能しました。

ところで、rsyncについて学ぶことに興味があるなら、man rsyncはこれまでで最高の、最も役立つmanページの1つです。たくさんの例があり、人間が読めるものであり、システム保守の救命いかだのようにrsyncにしがみついている理由の1つです。

5
pauljohn32