在工作中有脚本自启动的要求,而且自启动过程中,脚本需要指定为普通用户执行(非root权限)
1.修改/etc/sudoers 采用2)
1)Defaults requiretty,修改为 #Defaults requiretty,表示不需要控制终端。
2)Defaults requiretty,修改为 Defaults:centos !requiretty,表示仅 centos 用户不需要控制终端。
注:centos为你所在的用户,这个是处理自启动中sudo: sorry, you must have a tty to run sudo的问题
2.修改/etc/rc.local,增加
su - centos -c "/bin/bash /home/ubuntu/lvtrans_restart.sh"
此命令为执行你脚本的命令,指定的用户为centos
并修改/etc/rc.local执行权限,sudo chmod 755 /etc/rc.local,在centos 7中,/etc/rc.local没有执行权限
3.修改/etc/rc.d/rc.local,增加
su - centos -c "/bin/bash /home/ubuntu/lvtrans_restart.sh"
并修改/etc/rc.d/rc.local执行权限,sudo chmod 755 /etc/rc.d/rc.local,在centos 7中,/etc/rc.d/rc.local没有执行权限
4.将lvtrans_restart.sh脚本放到/home/ubuntu目录中
将执行脚本放到你指定的路径中