シェルプロファイルでsudoを必要とするスクリプトを実行する必要がありますか?

シェルプロファイルでsudoを必要とするスクリプトを実行する必要がありますか?

シェル構成ファイルにsudoコマンドを入れるのは良い考えですか?

/home/t/bin/changeCpuFreq.shCPU周波数を変更するbashスクリプトがあります。私のスクリプトの40行目は

echo $1 >  /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed

これは、スクリプトを実行するためにroot権限が必要であることを決定します。

Ubuntuを再起動またはログインするたびにスクリプトが自動的に実行されることを望み、スクリプトを実行するためにコマンドをどこに入力する必要があるかを知りたいです。

  1. ~/.profile私を入れた

    sudo /home/t/bin/changeCpuFreq.sh 1600000
    

    Ubuntuを再起動すると、Ubuntuにログインした後にエラーが報告されます。

    の読み込み中にエラーが発生しました/home/t/profile

    sudo:ttyが存在せず、Askpassプログラムが指定されていません。

    したがって、セッションが正しく構成されていません。

  2. では/etc/profile最後に以下を追加しました。

    /home/t/bin/changeCpuFreq.sh 1600000 
    

    Ubuntuを再起動すると、ログイン前にエラーが発生します。

    読み込み中にエラーが検出されました/etc/profile

    /home/t/bin/changeCpuFreq.sh:40号線

    /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed:権限が拒否されました

    したがって、セッションが正しく構成されていません。

    設定していないからですか? forでコマンドをどのsudoように使用する必要がありますか?sudo/etc/profile

ありがとうございます。

関連情報