いくつかのカスタマイズを含むUbuntu 12.04を使用しています。また、これをカスタムUbuntuの新しいISOにします。
私が尋ねたいのは、ユーザー名を変更する方法です。現在、ホームフォルダには多くの設定があります。したがって、ユーザー名を変更して問題を引き起こしたくありません。
それでは、これを行うためのベストプラクティスやワークフローはありますか?
答え1
これ本物正しい方法は何ですか?ユーザー「peter」を「paul」に変更するとします。
groupadd paul
usermod -d /home/paul -m -g paul -l paul peter
これにより、そのディレクトリとすべてのファイルの名前、グループ、ホームディレクトリ、および所有権とグループが新しいディレクトリに変更されます。元の「ポール」で作成したユーザーと区別できないユーザーが作成されます。
別の方法は、ファイル内のPeterエントリの最初のフィールドを/etc/passwd
編集することです。/etc/shadow
その後、「peter」を「paul」に変更します/etc/group
。次に、ホームディレクトリの名前をからに変更します/home/peter
。/home/paul
次に、chown -R paul /home/paul
ディレクトリとその下のすべてのファイルとディレクトリの所有権とグループ化関係を取得し、新しいファイルとディレクトリを取得します。
答え2
ユーザー名を変更しないことをお勧めします。ユーザー名が設定ファイルからユーザーのホームディレクトリとして静的に参照されている場合、問題が頻繁に発生します/home/<username>
。これは一般的な方法で書かれていることがほとんどないため、通常は新しいユーザー名を作成してから、ユーザーのファイルとデータを新しいアカウントに移行するのが最善です。
答え3
usermodを使用して変更ユーザー名そしてメインディレクトリ。ユーザー peter を paul に変更します。
usermod -l paul peter
grep paul /etc/passwd /etc/shadow # check
ホームディレクトリを変更し、すべてのエントリをそこに移動します(必要に応じて作成)。
usermod -m -d /home/paul paul
grep paul /etc/passwd # check
変化チーム名ただし、usermodを使用しないでください。まず、別のグループ(GID 1001など)を作成し、$ HOMEディレクトリ内のすべてのエントリのGIDを更新しても、別の場所を検索し、次を使用してファイルとディレクトリを変更する必要があります。以前のグループの所有権。代わりにグループ名を手動で変更してください。
nano /etc/group
そして変化
peter:x:1000:
到着
paul:x:1000:
使用されているcron、at、およびファイル名を変更する必要があります。その他のサービスUIDの代わりにユーザー名を使用してください。使用
find /var -name "*peter*"
このファイルを見つけるには。
あなたも変えなければなりません。構成ファイルメール処理アプリケーションなどの一部のサービスで使用されます。
ついに、スクリプト「/home/peter/」を使用するには編集が必要です。 「/home/peter/」エントリを「$HOME」に変更します。
ユーザーIDを変更するには多くの作業が必要なく、徹底的に行う必要があります。
答え4
変更できます。ユーザー名をどのように変更しますか?AskUbuntuから。この指示は私にとって大きな助けになりました。設定を維持するには、この質問への回答で説明されているように、以前のホームディレクトリへのシンボリックリンクを作成するだけです。