
Web サーバー上のデータを保護するために、PHP の include を /var/www-includes というフォルダー (サーバー ルートの /var/www の外部) に移動しました。また、そのフォルダーでchown root:wwwadmin
と を実行しました。フォルダーで をchmod 770
実行すると、設定が検証されます。wwwadminのメンバーであるメイン ユーザー (adam) からフォルダーに cd することはできますが、グラフィカル ファイル ブラウザーでその内容を表示できません。理由がわかりますか? 編集: また、nano に含まれているファイルを編集しようとすると、エラー メッセージが表示されます。 その後、ファイルの内容が開きます。これは、何が起こっているかに関係していますか?ls -ld
drwxrwx--- ... root wwwadmin ... www-includes
Error reading /home/adam/.nano_history: Permission denied
答え1
おそらく明らかな質問ですが... ディレクトリ内のファイルの権限も変更しましたか? つまり、chown/chmod コマンドを発行するときに「-r」(再帰) フラグを使用しましたか?
答え2
回答ではないかもしれませんが (投稿に十分な情報が含まれていないため)、必要に応じて修正できます。Linux トレーニング コースを実施しているときに、権限の問題をすばやく見つける方法を開発しました。すでにいくつかの手順を実行していることは承知していますが、完全を期すためにすべてを書き留める必要があります。
- アクセスに使用するユーザーに切り替えます。他の操作を行う前にこれを行ってください。
- コマンドを使用して
id
、現在の UID とグループを確認します。 を使用して、id name-of-the-user
ディスク上の構成を確認します。 異なる場合は、ログアウトして再度ログインし、再度確認します。 - 'ls -l' を使用して、ターゲット ディレクトリを確認します。権限の直後の文字を確認することを忘れないでください。selinux コンテキストがあることを意味するドットがある場合や、linux ACL が設定されていることを意味するプラス記号がある場合があります。
- ディレクトリに入るには「cd」を使用します。
- 通常のファイルに対して必要なアクションを実行します。
touch
書き込みアクセスをチェックするには を使用し、cat
読み取りアクセスをチェックするには を使用します。 - アプリケーション レベルですべてが期待どおりに動作するかどうかを確認します (例: ブラウザーを使用して、それぞれのアクションを実行する URL にアクセスする、以前は失敗したお気に入りの編集ツールを使用するなど)。
- 上記のチェックのいずれかをアプリケーション レベルに追加します。
いずれかのアクションが失敗し、その理由がわからない場合は、ログでselinuxアラートなどを確認してください。strace -o strace.log
コマンドラインの前に追加して、strace.logで確認することもできます。許可が拒否されましたメッセージ。しかし、正確な理由がわかるまでは、すべて黒魔術です許可が拒否されました。