ルートアクセスなしでユーザー名を変更するには?

ルートアクセスなしでユーザー名を変更するには?

私が訪れる場所は次のとおりです。

drwxrwsr-x 10 dara nm 4096 Jul 24 11:33 16.20
drwxrwsr-x  8 dara nm 4096 Jul 24 11:22 16.22

ここでは、rootアクセスを使用せずにユーザー名をdaraからlaraに変更したいと思います。どうすればいいですか?

予想出力:

drwxrwsr-x 10 lara nm 4096 Jul 24 11:33 16.20
drwxrwsr-x  8 lara nm 4096 Jul 24 11:22 16.22

Sample Example:
lara-vd1-341: ls -l
total 100
drwxrwsr-x  8 dara nm  4096 Jul 24 11:22 16.20
-rwxrwxrwx  1 lara nm   596 Jul 24 15:32 16.22

答え1

これを行うには、ファイルの所有権を変更する必要がありますroot

これは、通常のユーザーが他のユーザーのファイルにアクセスするのを防ぐUnixセキュリティメカニズムの一部です。

許可なくこの操作を実行しようとすると、次rootのエラーメッセージでコマンドが失敗します。

chown yourusername /etc/passwd
chown: changing ownership of '/etc/passwd': Operation not permitted

答え2

のようにdaraディレクトリを邪魔にならない場所に移動します。

mv dir dir-old

としてlara元のディレクトリを目的の場所にコピーします。

cp -Ra dir-old dir

これを移動するには、親ディレクトリに書き込み権限が必要です。おそらく最初にこれを行ったのなら、そうしたでしょう。

そうでない場合は、ディレクトリ内のファイルとディレクトリに対して同じ操作を実行して近づくことができます。この場合、ユーザーはdara後でそのファイルを削除できます。しかし、最初にあなたがどのようにこのような状況に直面したのかはわかりません。

これは、権利の昇格を伴わずに所有権を変更する唯一の方法です。一部の特殊ファイルは正しくコピーされず、ハードリンクが失われます。

tarこの方法がすべて機能しない場合は、ファイルを別々にdara保存してlara最初のように抽出するのが最善です。

答え3

rootライセンスまたはそれに対応する権限がないと、この操作を実行できません。

ルートアクセス権がないため、この時点で最善の方法は、システムを管理している人に連絡して問題を処理するように依頼することです。

関連情報