web-dev-qa-db-ja.com

cp:通常のファイルを作成できません:権限が拒否されました

私はPHPスクリプトをApacheサーバーで実行しており、スクリプトからいくつかのファイルをコピーする必要があります(ファイルをコピーするBashスクリプトを実行するため)。ディレクトリにコピーできます/tmp問題ありませんが、/tmp/fooにコピーすると、次のエラーが発生します。

cp: cannot create regular file '/tmp/foo/file.txt': Permission denied

ディレクトリ/tmp/tmp/fooの権限が同じ値に設定されている場合でも.

何が問題なのか知っていますか?

1
GorTeX

/tmpディレクトリには、すべてのユーザーのすべての権限(読み取り/書き込み)があります。自分のアカウントで/tmp/fooを作成した場合は、あなただけの権限があります。他のユーザー(またはプログラム)が書き込み可能にしたい場合は、次のコマンドでそのアクセス許可を変更します。

chmod 777 /tmp/foo

以前からこのディレクトリ内に他のファイルがある場合は、上記のコマンドに-Rフラグを追加します。

pdate:このコマンドを使用して、/tmp/foo所有者を自分の所有者からApacheのデフォルトユーザーに変更します。

Sudo chown www-data:www-data /tmp/foo -R

また、Apache2の設定を確認して、phpスクリプトを実行するためのユーザーを確認してください。

4
Hamid Yousefi