クローン権限

クローン権限

CentOSサーバーに権限の問題があります。

dmidecodeからいくつかの値を読み取るNetCoreアプリケーションを作成しました。 CentOSサーバーにアプリケーションをデプロイするときに、次のコマンドを実行しました。

chmod 777 ApplicationName

その後、実行すると、すべてがうまく動作します。

私の問題は、crondでアプリケーションを設定しようとしたときに次のように実行することです。

1) service crond stop

2) crontab -e

3) * * * * * cd /ApplicationFolder && ./ApplicationName

4) service crond start

私のアプリは実行されますが、読みたいdmidecode値を取得できません。コンソールアプリで実行すると正常に動作するため、権限の問題があるとします。

次のようにしてcrond行にユーザーを設定してみました。

 * * * * * root cd /ApplicationFolder && ./ApplicationName

しかし、何も起こらず、アプリが起動しません...

私が間違っていることを知っている人はいますか?

編集する

コメントで提案したように、crontabを次のように変更しました。

 * * * * * /ApplicationFolder/ApplicationName

しかし、同じことが起こっています...

権限関連の問題が発生する理由は、プログラムをアプリケーションとして実行すると値がテキストファイルに書き込まれ、crondを使用してアプリケーションを実行すると同じ情報が書き込まれますが、値が書き込まれるためだと思います。空です。

また、dmidecodeからシリアル番号を読み取るにはroot権限が必要ですが、現在crontabを使用しているアカウントはすでにルートという内容も読みました。

ベストアンサー1

この種の問題が発生した場合は、絶対パスを使用して問題を解決しました。

cronへの相対パスに問題があるようです。

デフォルトでは、

 dmidecode

私は持っています:

 /usr/sbin/dmidecode

これは私にとって効果的です。

おすすめ記事