有关/etc/rc.local部分命令无法执行的问题

发布时间:2020-05-07编辑:脚本学堂
本文介绍了/etc/rc.local文件中部分命令无法执行问题的解决方法,如果其运行的命令或程序不带路径,则可能出现无法访问的情况,请参考这里的方法。

linux发行版本中,添加随系统启动而自动运行的服务,只需在/etc/rc.local 脚本文件中添加即可。

如果其运行的命令或程序不带路径,例如:
 

#!/bin/bash
distccd --user nobody --allow 10.10.98.0/24 --log-file=/var/log/distcc.log --verbose --daemon
loadavg  -s 10.10.98.20 >/dev/null 2>&1

注意,distccd、loadavg命令存放在/usr/local/bin/目录下

在系统执行这些命令时将报错,无法正常执行!

原因:
由于在执行rc.local脚本时,PATH环境变量未全部初始化,目录/usr/local/bin/ 需在执行/etc/profile 后才被添加到环境变量PATH中。

解决方法:
在 /etc/rc.local 执行 /usr/local/bin/ 目录中命令,请使用绝对路径