一、需求
centos7不以root用户启动超图iserver软件,或者其他软件原理一样,请自行研究
二、解决方案
两种场景:
1.已经以root安装并正常启动软件,那么停掉软件,新建用户,以新用户启动软件
#创建一个不用于登录的用户,叫iserver useradd -M -s /sbin/nologin iserver #开始把软件相关目录都转给iserver用户 chown -R iserver:iserver /home/logs chown -R iserver:iserver /home/supmap-iserver-version chown -R iserver:iserver /home/data # 让iserver享有文件属主的权限,说白了就是让我们新建的iserver用户可以启动软件 chmod u+s /home/logs chmod u+s /home/supmap-iserver-version chmod u+s /home/data chmod u+s /opt/SuperMap #这个是超图iserver的证书目录 #设置开机自启,编辑 /etc/rc.d/rc.local文件 vi /etc/rc.d/rc.local #添加如下一行,设置开机启动软件 sudo -H -u iserver /home/supmap-iserver-version/bin/startup.sh #重启等待,看效果 reboot
2.未安装软件,直接新建用户启动软件
此处以iserver举例
#第一步中创建用户iserver,因为没有对应的权限,所以在安装依赖时会卡壳,只要跟官方人员要一下lib包即可,放到软件的bin目录下,即可以非root身份启动