※ ChatGPTを利用し、要約された質問です(原文:chmodでのパーミッション)
chmodでのパーミッション設定について
このQ&Aのポイント
chmodを使用してファイルやディレクトリのパーミッションを設定する際、意図しないパーミッションが設定される問題が発生しています。
パーミッションの設定方法やコマンド自体に問題はないようですが、設定したパーミッションが予期しない値になってしまいます。
使用しているサーバーやPHPのバージョンによっても異なる結果が出ており、原因が特定できません。
実行すると、同じディレクトリにあるディレクトリとその中のファイルを同じ階層にディレクトリを新規に作って、その中のファイルを全部コピーするスクリプトを組んでいます。
コピーはうまくいったのですが、パーミッションの設定がうまくいきません。
例えば
@chmod("$dir/xxx.cgi",0755)or die("エラー");
と書くと、パーミッションは363になってしまいます。
5ファイルくらいあるのですが、他のパーミッション(例えば666など)も137になってしまいます。
Webを検索してもこういった事例にはおめにかからないのですが、私の使っている2つのサーバーで、どちらも同様の結果でした。
何がいけないのでしょうか?
よろしくお願いいたします。
#ついでにmkdirも作成はできるのですが、パーミッションが必ず755になってしまいます。
#作成されたディレクトリやファイルのownerは、1つめのサーバーではnobody、もう一つのサーバーではログインユーザーになります。
#サーバーはどちらもLinuxです。
#PHPのヴァージョンは、1つめが4.3.1、2つめが4.3.4です。
よろしくお願いいたします。
補足
あいたー 755になっておりました。。。 2つのサーバーで別なファイルで試していたので、サーバー間でファイルの取り違えをしていました。 大変失礼致しました。 &ありがとうございました。