web-dev-qa-db-ja.com

所有者が私としてリストされていても、許可は〜で拒否されました

どういうわけか、私はなんとかchmodして、私の〜を忘却の中でchりました。

シェルを介してログインしようとすると、

bash: ~/.bashrc : Permission denied

rootとして)実行した後でも

chown -hR nroach44 /home/nroach44

そして

chmod -R 666 /home/nroach44

または(nroach44

chmod -R 644 /home/nroach44

これらのコマンドはいずれもエラーを返しません。

また:

ls -la /home/nroach44

たくさん返します

drw-rw-rw-  1 nroach44 nroach44 4096 --date-- ti:me foldername

ヘルプはありますか?

13
NRoach44
chmod -R 666 /home/nroach44

または

chmod -R 644 /home/nroach44

これにより、ホームディレクトリのすべてのファイルが実行不能になります。それは良い考えではありませんでした;)

この混乱をきれいにする方法はわかりません。簡単な回避策として、rootとして実行しようとすることができます。

chmod -R 755 /home/nroach44

このコマンドは、ホームフォルダーのすべてのファイルに実行権限を与えます。差し迫った問題を解決するはずですが、セキュリティの悪夢になる可能性があります。

最良の解決策は、別のユーザーアカウントを開いて、ファイルと設定を1つずつ転送することです。

14
Javier Rivera

ディレクトリに移動するには、ディレクトリに実行ビットを設定する必要があります。 rootとして実行している場合でも、プレーン666は間違っています。全員に書き込み許可を与えます。

ファイルをより安全にするには、次を実行します。

chmod -R 640 /home/nroach44

フォルダーを再び下降可能にするには、次を実行します。

find /home/nroach44 -type d -exec chmod 750 \;

注:一部のファイルは機密性が高く、他のファイルには読み取られない可能性があるため、xx0を選択しました。ただ保存するために、世界の読み取り/書き込み/実行権限を削除します。

4
Lekensteyn

〜に十分な権限があるように見えるので、他のユーザーにxの権限(/home)を与え、Sudo chmod +rx /homeファイルの権限に問題がないかどうかを確認するには、/home/nroach44/.bashrcが必要です。

もう1つのポイントは、ディレクトリを入力できるようにディレクトリにxのアクセス許可を持たせる必要があるため、ディレクトリをすべて修正するには、Sudo chmod -R +X /home/nroach44を実行する必要があります。

3
laurent

これは、HOMEフォルダー内のすべてのファイルのアクセス許可が台無しになっているためです。ファイルのアクセス許可を使用するときは非常に注意してください。chmodとchownを非常に慎重に使用しないと、混乱する可能性があります。

bash: ~/.bashrc : Permission denied

ホームディレクトリ内のすべてのファイルのアクセス許可を変更したため、bashrcのアクセス許可も変更されたと思います。

〜/ .bashrcスクリプトのデフォルトのパーミッションは

-rw-r--r-- 1 user1 user1  3353 2012-01-09 12:05 .bashrc

それを説明するには、ファイルに対する読み取りと書き込みの両方のアクセス許可が必要です。ユーザーグループの他のユーザーはそれを読み取ることができ、他のすべてのユーザーも読み取ることができます。

したがって、chmodを使用してbashrcスクリプトの権限を644に変更します。

chmod 644 ~/.bashrc

上記のコマンドが許可を拒否した場合。それから

最初にchownをSudoとして実行します

Sudo chown user1:usergrp ~/.bashrc

user1をユーザー名に、usergrpをデフォルトのユーザーグループに置き換えます。

もう一度やる

chmod 644 ~/.bashrc

これでb​​asrcスクリプトの権限が得られます。ログインして、他のエラーが発生するかどうかを確認してください:)

1
Rajesh Pantula

ディレクトリを開くには、xビットを設定する必要があります(そのビットは検索ビットと見なされます)。そのため、フォルダーセットのみを取得し、すべてのファイルを実行可能ファイルとして設定するという悪夢を避けるためにツリーを使用します(ツリーのオプションは-d List directories only.です)。

Sudo tree -faid /home/nroach44 | xargs -L1 -I{} Sudo chmod 755  "{}"

警告!!!これを考慮に入れる必要があります:

  • ルート/ディレクトリまたはシステムディレクトリでchmodまたはchown再帰を使用すると、OSが破壊されます(実際、/ディレクトリまたはシステムディレクトリで再帰的なものはすべて危険です)

  • これは、そのようなパーミッションのバルクを設定するための良いセキュリティ慣行ではありません

0