回答:
を使用しsudo nautilus
て行った損傷を元に戻すには、自分がrootが所有するディレクトリ(およびその内容)の所有者にする必要があります。
find
特定のユーザーが所有するファイルのみを見つけるテストがあるため、これを使用してこれを行うことができます。
これにより、rootが所有する家のすべてのディレクトリが検索されます。
sudo find ~ -type d -user root
次に、find
コマンドを繰り返し、実行するアクションを追加できます。見つかったすべてのディレクトリとその内容の所有権を現在のユーザーに再帰的に変更します。
sudo find ~ -type d -user root -exec sudo chown -R $USER: {} +
~
ホームディレクトリ -type d
ディレクトリのみを検索-user root
ルートに属するものだけを見つける -exec
見つかったものに対して次のコマンドを実行します sudo chown -R
再帰的に所有者を変更する $USER
現在のユーザー :
グループを特定のユーザーに変更するより効率的に、あなたは省略することができ-type d
、ルートに属するあらゆるタイプのファイルを検索する、とも省略する-R
とfind
、すべてのファイルに作用することによって、あなたのための再帰を行います
sudo find ~ -user root -exec sudo chown $USER: {} +
sudo
必要になるまで使用しないようにしています
特に、この理由で有害と見なさnautilus
れるようなGUIツールの実行root
(非表示の機能、プログラムのフラグメントをサイレントに実行する機能、など)。
「許可」の問題ではなく、「所有権」の問題があります。
root
(実際には他の誰かが所有している)が所有するすべてのファイルを検索するには、次のようにします。
sudo find $HOME \! -user $USER
所有権をあなたに戻すには、
sudo chown -R $(id -u):$(id -g) $HOME
しかし、それにより、以下のすべてのファイルの所有権が変更されます $HOME
sudo find $HOME \! -user $USER >/tmp/list-of-files
# edit the list of files, and delete file files you don't want to chown
nano /tmp/list-of-files
xargs sudo chown $(id -u):$(id -g) </tmp/list-of-files
not-youが所有するファイルのリストを調整して、所有権を変更する機会を1つ与えます。
必要なのは、フォルダーの所有権をユーザー(およびグループ)のrootから、必要な他のユーザー(およびグループ)に変更することです。
/ home / randomFolderで作業したいとし、所有権を処理したいユーザーがvitor-abellaであると想像してください。実行する必要があるのは、単にこれをrootとして実行することです。
chown -R vitor-abella:vitor-abella /home/randomFolder
ファイルとサブフォルダーがたくさんある場合はしばらく時間がかかるかもしれませんが、その後は順調です。
乾杯。
$(id -u):$(id -g)
OPに想像することを求めるのではなく、を使用します$HOME/randomFolder
。
find
withsudo
(sudo find ...
)を実行して、保護されたroot
所有サブディレクトリと0700
その下のすべてを検査する必要があります。修理のために同上。