我应该在某个 shell 配置文件中运行需要 sudo 的脚本吗?

我应该在某个 shell 配置文件中运行需要 sudo 的脚本吗?

将 sudo 命令放入 shell 配置文件中是个好主意吗?

我有一个 bash 脚本/home/t/bin/changeCpuFreq.sh可以改变我的 cpu 频率。我的脚本中的第 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: 没有权限

    因此,会话将无法正确配置。

    是不是因为我没有设置sudo,我该如何使用sudo for 中的命令/etc/profile

谢谢。

相关内容