web-dev-qa-db-ja.com

起動時にLinuxスクリプトが実行されない

こんにちは、とてもお役に立ててありがとうございます。 GPUの電力制限を減らすスクリプトを起動時に実行しようとしています。 Shellコマンドはinit.dにあり、rc1とrc3へのシンボリックリンクを使用してみました。 ShellコマンドもChmod + xを使用して実行可能になりました。 Ubuntu16.04も実行しています。コンピュータを再起動すると、1枚のカードだけがワット数を適切なレベルに落としますが、他の2枚は変更されません。これはgpu0です。どんな助けでも大歓迎です。また、Crontabを使用してみましたが、問題が発生しました。私のスクリプトは次のとおりです。

#!/bin/bash

echo "Run as Sudo to lower power-limits."
echo ""

nvidia-smi -i 0 -pl 100
nvidia-smi -i 1 -pl 100
nvidia-smi -i 2 -pl 100

echo ""
echo ""

nvidia-smi
2
Tyler S

フルパス(このスクリプトが実際に配置されている場所)をrc.localに入れることができます。 rc.localに入力したものはすべて、OSがスクリプトを実行する準備ができている間はrootユーザーのように実行されます(正確さの欠如を許し、私の英語では)ので注意してください。私はあなたに例を残します:

nano /etc/rc.local
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

/usr/local/samba/bin/samba_dnsupdate --use-samba-tool
exit 0

これは、OSがスクリプトを実行する準備ができると、オプションsamba_dnsupdateを指定して--use-samba-toolを実行し、このスクリプトは実際には/usr/local/samba/sbin/にあることを意味します。

ご挨拶

1
k.Cyborg