• 締切済み

ファイルの実行権限について

はじめまして、今回phpに携わる事になりましたが 今回の質問がphpの問題なのか、環境の問題なのかは分かりませんが ご教授を受けたくて投稿する事にしました。 まず環境ですがFreeBSD上にphpファイルがあり TeraTerm上で、そのphpファイルの所有者をrootユーザに変更しまして root権限で実行したところPermission deniedとなり 実行出来ませんでした。 (phpファイル自体のパーミッションは755です) 環境の問題で発生するのかスクリプトの問題で発生するのかが 私には分かっていないのですが、Permission deniedが 発生する原因としてファイルのパーミッション以外に 何が考えられるのかご教授下さい。 よろしくお願い致します。

  • PHP
  • 回答数4
  • ありがとう数3

みんなの回答

noname#39970
noname#39970
回答No.4

php の実行バイナリ自体の所有者と権限は どうなってるだろう?

  • little-m
  • ベストアンサー率44% (45/102)
回答No.3

上位ディレクトリに実行権限がないとダメだったと思いますよ。

weblink01
質問者

お礼

回答どうもありがとうございます。 上位全てのディレクトリに対して全てroot権限を 与えてコマンドラインから実行してみましたが、 Permission deniedが発生しました。 もしかするとroot権限ではなく ごく限られたユーザのみしか実行出来ないように 権限を与えている可能性もあると思いますので サーバー管理者に確認を取ってみます。

noname#39970
noname#39970
回答No.2

ところでphpそのものは rootで駆動?

weblink01
質問者

お礼

回答ありがとうございます。 TeraTermでrootユーザになり コマンドを実行しようとしても Permission deniedが発生してしまっていますので、 実際には実行されていないと思います。 気になる点としては、phpを実行した際に phpソースの記述ミス等によるエラーは コンパイルエラーみたいなレスポンスではなく Permission deniedが発生してしまうのでしょうか?

noname#39970
noname#39970
回答No.1
weblink01
質問者

お礼

こんにちは、回答どうもありがとうございます。 今確認したところスティッキービットは 付いておりませんでした。

関連するQ&A

  • root権限でも『Permission denied』エラー

    usr/binの中のファイルを操作しようと『Permission denied』が発生し、操作できません。root権限でログインしているのですが、このようになってしまいます。 このことによって、PHPのrpmをインストールできなくなってしまっています。現在、古いPHPをアンインストールした後、新しくVerのPHPをインストール中につまずいている為、PHPが稼動しなくて困っています。 環境はRedHatLinux9、SSHで一般ユーザーでログイン後、suコマンドでroot権限を取得した状態で行っています。いろいろ試したところusr/bin内全てに対して操作ができないようです。 この、『root権限でもPermission deniedが発生し操作できない』件に対して、ご存知の方は、どうかご教授下さい。よろしくお願い致します。

  • パーミッションについて(読取権限と実行権限の違い

    最近、独学でUNIXの勉強をしています。 そこで 「パーミッション」について質問です。 r=読み取り権限 w=書き込み権限 x=実行権限 と、ありますが。。。 「読み取り権限」と「実行権限」ってどう違うのでしょう?? 考えれば考えるほど、同じようにしか思えません。 初歩的な質問で申し訳ありませんが、ご教授下さい。 お願いします。

  • セッションファイルの権限

    PHP5にてセッションファイルをserialize()した場合の質問です。 この関数でできるファイルはapacheのread/write権限しかついていないのですが、設定か何かでread権限を拡張することはできないでしょうか? (php.iniには該当するような設定はありませんでした) 自分ではサーバのroot権限を持っていないため、セッションファイルの中身を確認してデバックができなくて困っております。 ご存知の方、ご教授ください。

    • 締切済み
    • PHP
  • 権限の違うシェルスクリプトの実行

    3つのシェルスクリプトがあります。 ●root権限で実行  aaa.csh ●ユーザ指定権限で実行 bbb.csh ●root権限で実行 ccc.csh この3つのシェルスクリプトはaaa.csh →bbb.csh →ccc.cshの順番でバッチ処理として cronに設定したいのですが、 権限が違うのでroot権限のcrontabとユーザ指定のcrontabに それぞれ設定しなくてはいけません。 あまりスマートではないかと思い、 何かよい方法はないかと質問させて頂きました。 3つのシェルスクリプト1つシェルスクリプトにまとめてroot権限のcrontabに設定してしまう方法とかどうでしょうか? ちなみにスクリプトの処理の内容は単純なファイルコピーなどです。 意味分かりますでしょうか? よろしくお願いします。

  • ブラウザからroot権限でPHPスクリプトを実行する方法

    ブラウザからroot権限でPHPスクリプトを実行する方法がありましたら、教えて下さい。

    • ベストアンサー
    • PHP
  • shellの実行権限について

    shellを実行する際には、 実行権限のほかに読み取り権限が必要不可欠であると認識しています。 shellを実行するユーザに読み取りの権限を与えたくない場合、どのような対策を打てば当問題は解決できますでしょうか? ご教授のほどよろしくお願いします。

  • systemをrootで実行したい

    初めて質問します。 LinuxのPHPで、system関数を使ってコマンドを実行したいのですが、 特定のシステムを設定するコマンドはエラーになります。 (ファイルリストとかは問題なく実行できるのですが・・。) たぶんroot権限がないからですよね? root権限が必要なコマンドを実行するにはどんな方法があるのでしょうか? よろしくお願いします。

    • ベストアンサー
    • PHP
  • libreofficeでPDF変換ができません

    libreofficeにてExcelファイルをPDF変換する際に、下記エラーが発生してしまいます。 ------------------------------------- [Java framework] Error in function createSettingsDocument (elements.cxx). javaldx failed! Warning: failed to read path from javaldx mkstemp("/root/.execoootRFFds") failed: Permission denied [Java framework] Error in function createSettingsDocument (elements.cxx). javaldx failed! Warning: failed to read path from javaldx mkstemp("/root/.execoooEZhNit") failed: Permission denied ------------------------------------- <?php $file_from = '/var/www/html/xls/test.xls'; $file_outdir = '/var/www/html/pdf/; $command = 'libreoffice --headless -convert-to pdf ' . $file_from . ' -outdir ' . $file_outdir; exec ($command); ?> ↑ファイル名:/var/www/html/test.php 上記ファイルを以下のようにroot権限のコマンドラインで実行した場合は問題無く実行出来ます。 php /var/www/html/test.php /var/www/html/はWEB公開ディレクトリとして、 WEB上で同じファイルにアクセスすると、エラーとなってしまいます。 原因としては、mkstemp を /root 配下に対して実行しているからだと思われますが、 これを、/root 配下以外で実行するようにする設定をどこで行えばよいか教えて頂けないでしょうか? 恐れ入りますが、何卒よろしくお願い致します。

  • coreserverでファイル作成時の権限寄与

    お世話になります。 レンタルサーバーのcoreserverを使用しております。 PHPにてindex.phpファイルを自動生成しているのですが、 生成されたファイルのパーミッションが644となってしまいますが、 生成時に606を与える事は可能でしょうか? ftpソフトによる権限寄与は可能なのですが、自動で行いたいと考えております。 chmod("index.php",606);としても、 当然ですがパーミッションエラーで書き換えすらできない状態です。 .htaceesでapacheの設定を変えるのか?とは思いついたのですがいまいち どのように記述したらいいかもわかりませんでした。 自分なりに検索したり書籍を見ましたが、これといった回答が見つからず困っています。 無理ならあきらめますが、どなたか詳しい方がいたら是非ご教授願いたいです。 よろしくお願い致します。 【サーバ環境】 CPU Intel Xeon CPU E5-2670 0 @ 2.60GHz MemTotal 12367MB Apache 1.3 PHP 5.5.3 RUBY 1.8.5 MySQL 5.1.22-rc

    • ベストアンサー
    • PHP
  • Apacheをroot以外の権限で動かしたいのですが、可能でしょうか。

    Apacheをroot以外の権限で動かしたいのですが、可能でしょうか。 (BOF対策です。) 現在、CentOS 5.4を使用しており、root以外のユーザでapacheを起動すると、 Permission denied: make_sock: could not bind to address 0.0.0.0:80 とポート80に対する権限が無いと怒られてしまいます。 以上、よろしくお願いします。

専門家に質問してみよう