Ubuntuでrootユーザーを使用してbashファイルからファイルを実行した後、権限が拒否されました。

Ubuntuでrootユーザーを使用してbashファイルからファイルを実行した後、権限が拒否されました。

私のサーバーにハードドライブをインストールした後、大きな問題が発生しました。すべてがうまく機能しましたが、テスト後にbashファイルからbashファイルを実行すると、インストール前にはうまくいきましたが、インストール後にrootモード権限が拒否されました。

ls -alt /var/www/test/bin/change-sys-hostname
-rwxrwx--- 1 www-data www-data

私のコードは次のとおりです。example.sh

/var/www/test/bin/change-sys-hostname $servername

結果:

permission denied

ベストアンサー1

権限の拒否は、許可されていない操作を試みていることを意味します。お客様の質問には、許可されていないコンテンツを決定するために必要な基本的な情報がいくつかありません。

最初から始める:example.shこのスクリプトをどのように実行しますか?のようにbash examle.sh?のように./example.sh?後者の場合:スクリプトを直接実行できる必要があります。このスクリプトを実行できますか?ls -lこれを確認するために使用します。

ちなみに、次の行でスクリプトを起動する必要があります。

#!/bin/bash

bashを使用して実行します。

2番目の注意:$server設定する必要があります。これはシェル環境で設定できますが、確認する必要があります。ただし、$server正しい値を設定しないと、他のエラーメッセージが表示されることがあります。$server確実にするために値で応答することもできます。

次の記事:実行できますか/var/www/test/bin/change-sys-hostname?このスクリプトはグループごとに実行できますwww-data。あなたはそのグループに属していますか?グループセットにidいることを確認してください。www-data

2つ目は、change-sys-hostname内部でできないことがあるかどうかです。 change-sys-hostname実行を許可する必要がある他のプログラムがあるかもしれません。特に、スクリプトはルートのみを書き込むことができるいくつかのファイルを書き込むことができます。だからsudo必要かもしれません。

解決策を見つけるために取る必要があるいくつかの基本的な手順を見ました。このステップの多くの情報は問題に含まれておらず、進行状況を評価するために必要であることがわかります。

おすすめ記事