/procでファイルのUIDを変更する

/procでファイルのUIDを変更する

フォローアップでこの問題ユーザーの変更については、UID所有権を変更することをお勧めします。すべてのファイルシステムでは(この回答)

find / -uid 1000 -exec chown 5000 '{}' \+

1000古いものはどこにありUID5000新しいものはどこにありますか?/home/seb私は(外部的に)持っているすべてのファイルをリストしましたが、ほとんどUID=1000がその/procディレクトリにあることがわかりました。

find / -uid 1000 \! -wholename '/home/seb/*'

うん救うまたは必要推奨される変更を実装しますかUID?このファイルの目的はわかりませんが、/proc新しいユーザーとしてログインしたときに必要に応じて作成されるとします。

/dev注: に属する一部のファイルもありますが、UID=1000これはユーザーが開いた端末にすぎません/dev/pts/23

答え1

私はあなたが話しているファイルがその(ただのデジタルディレクトリ)/procに属していると思いますか?これは、ディレクトリに関連付けられたプログラムを実行しているユーザーのUIDに設定されたUIDを持つプロセスアカウントディレクトリです。 pidが「12345」のプログラムを起動すると、そのプログラムはユーザーの所有になります。UID=1000/proc/12345/proc/12345

/procprocのどれが実際のファイルシステムではなく擬似ファイルシステムなので、動作するかどうか疑問に思われます。

同様に/dev、TTYは現在それを使用しているユーザーが所有します。

答え2

UID番号付けされたディレクトリは、変更ではなく、プロセスへのオープンハンドルを表します。UID=1000所有しているすべてのプロセスを終了(使用)psしたり、そのプロセスのすべてのハンドルを閉じたり(使用)したりできますlsof

答え3

ファイルの所有権を変更することは不可能または必要ありません/proc。これらのファイルはディスクに保存されず、ユーザーが読み取るとカーネルによって動的に生成されます。ルートに属していない唯一のファイルは、実行中のプロセスに関する情報を提供するファイルです。このファイルはプロセスを実行しているユーザーの一部です。

ディスクファイルの所有権を変更する前または後に、古いuidで実行されているすべてのプロセスを終了します。 (実行中のプロセスのuidを変更することはできません。)

このユーザーに属する端末(/dev/tty*または)がある場合は、/dev/pts/*そのuidを変更する必要があります。ユーザープロセスを終了した後は、プロセスがあまり残っていない可能性が高くなります。

関連情報