フォルダーの所有者およびホームディレクトリ内のフォルダーを含む現在のユーザーに所有者を変更するにはどうすればよいですか?


12

を使用しsudo nautilusていくつかのフォルダを作成し、それらのルート権限を削除したいと思います。しかし、私にはたくさんあり、それをディレクトリ全体とそれを含むフォルダに対して実行したいと考えています。

それでは、ホーム内の特定のディレクトリ内のすべてのファイルとフォルダーへの現在のユーザーの読み取り/書き込みを許可するにはどうすればよいですか?

回答:


13

を使用し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、ルートに属するあらゆるタイプのファイルを検索する、とも省略する-Rfind、すべてのファイルに作用することによって、あなたのための再帰を行います

sudo find ~ -user root -exec sudo chown $USER: {} +

findwith sudosudo find ...)を実行して、保護されたroot所有サブディレクトリと0700その下のすべてを検査する必要があります。修理のために同上。
ワルティネーター2016

「可能性のあるものに対して防御する」または「可能性のあるものに対して防御する」?あなたの選択。
ワルティネーター2016

@waltinator確かに:)それを言及してくれてありがとう。私はsudo必要になるまで使用しないようにしています
Zanna

10

特に、この理由で有害と見なさ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つ与えます。


5

必要なのは、フォルダーの所有権をユーザー(およびグループ)のrootから、必要な他のユーザー(およびグループ)に変更することです。

/ home / randomFolderで作業したいとし、所有権を処理したいユーザーがvitor-abellaであると想像してください。実行する必要があるのは、単にこれをrootとして実行することです。

chown -R vitor-abella:vitor-abella /home/randomFolder

ファイルとサブフォルダーがたくさんある場合はしばらく時間がかかるかもしれませんが、その後は順調です。

乾杯。


3
$(id -u):$(id -g)OPに想像することを求めるのではなく、を使用します$HOME/randomFolder
ワルティネーター2016
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.