您现在的位置是:首页 > 文章详情

linux下开机以某一个用户执行脚本

日期:2017-12-20点击:880

1 . 编辑:

 /etc/rc.local

添加想要被执行的命令即可(默认是以root用户执行)。

注: 有些很特殊的情况 /etc/rc.local 不会被执行,可以 编辑 /etc/init.d/rc.local see link: http://www.linuxidc.com/Linux/2016-12/138665.htm

2 . 以期望的用户执行命令:

 su -c 'ls -l "myfile.txt"' guowei &

解释: 其中需要被执行的命令是 ls -l "myfile.txt", 期望的用户的 guowei, & 表示在后台运行。

3 . 开机以 screen 运行程序脚本,并添加环境变量(no-login):

 #!/bin/bash  # 环境变量要在 su 之前设置好,然后 sudo -E 保持环境变量 # 如果直接是root用户执行该脚本,则只需要 su -p 或者 su -m 保持环境变量即可 export GUOWEI_DIR=/home/guowei export PATH=/opt/bin:$PATH source /home/guowei/.bashrc if [ -e /opt/my_app ]; then # sudo -E su -p -l guowei << BASH # 如果要以 guowei 用户执行那些程序的话,去掉注释即可。 su - 表示切换的环境变量,sudo 需要添加 -E 选项。 su -p guowei << BASH # 以用户 guowei 执行以下命令,注意不要加 sudo, 否则就需要以 sudo -E 执行。 cd /home/guowei screen -d -m /opt/my_app # BASH fi # 或者将 export 写在 -c 内部, 加上 -c 和 单引号: su guowei -c 'export A=/opt/bla; blabla~; /opt/my_app' // 注意:双引号跟单引号有区别

然后 ssh 登陆后, 切换到对应用户, screen -ls 可以看到在后台运行的程序。

原文链接:https://www.centoschina.cn/shell/programming/9477.html
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章