Centos7开机启动执行脚本

阅读数:202 评论数:0

跳转到新版页面

分类

Linux

正文

方式一:/etc/rc.local

在centos7中,/etc/rc.d/rc.local文件的权限被降低了,没有执行权限,需要给它添加可执行权限。

chmod +x /etc/rc.d/rc.local

然后使用指定用户的话我们需要用到su - username -c这个命令,列如:

su - customuser -c "/path/to/script" #这里注意,命令最好使用绝对地址

 

方式二:Systemd

以tomcat为例,在 /etc/systemd/system 目录下创建 tomcatd.service 文件,并编辑内容如下

[Unit]
Description=tomcat
After=network.target

[Service]
User=myuser
Group=myuser

Type=forking

ExecStart=/home/idbk/tomcat/bin/startup.sh
ExecStop=/home/idbk/tomcat/bin/shutdown.sh
PrivateTmp=true

[Install]
WantedBy=multi-user.target

注意上面的[Service]下的User和Group表示以非root用户启动进程。

systemctl enable tomcatd.service

这样下次开机时就会自动运行,如果现在不重启,也可手动启动

systemctl start tomcatd




相关推荐

nohup ./startWebLogic.sh >out.log 2>&1 & 一、关于0、1、2的解释 0 – stdin (standard input)1 – stdout (standard

linux内核启动过程: 启动Linux内核的最终目的是使用Linux上的应用程序,这些应用程序可以是纯软件的,也可以是硬件相关的。 1.BIOS自检 BIOS(Basic Input/Output

一、systemd概述 systemd即为system daemon,是Linux下的一种init软件,在LGPL 2.1及其后续版本许可下开源发布,开发目标是提供更优秀的框架以表示系统服务间的依赖关

预备知识: 0、在CentOS中,不建议再使用rc.local了,因此需要其它方法设置开机自启服务或脚本。 1、运行级别 Init进程是系统启动后运

$MAINPID is a systemd variable for your service that points to the PID of the main ap

使用root用户 1、新建redis.service服务文件 vim

一、由来 Linux一直以来采用init进程但是init有两个缺点: 1、启动时间长。Init进程是串行启动,只有前一个进程启动完,才会启动下一个进程。(这也是Centos5的主要特征) 2、启动脚本

其实这是一种文件锁的使用方式。 /var/lock/subsys/local这个文件的存在证明rc.local这个脚本已经执行过了,目的在于避免这个脚本重复执行,除非这个文件不存在

使用管理员权限打开 hosts 文件:在终端中输入以下命令,并输入管理员密码确认: sudo vim /etc/hosts 在 hosts 文件中添加域名和 IP 绑定:在文件的末尾添加一行,格式为