linux操作系统中业务程序及服务的开机启动设置3.3开机启动脚本

1背景

顾客要求服务器进行阶段性重启操作LINUX 删除目录,一下子忙坏了系统厂家linux 交互命令启动,服务程序的自动启动和自启动的作用一下子发挥了不同的作用。

2目标

将服务器上的中间件、数据库、业务程序设置为开机自启动,服务器重启后业务程序自启动。

3启动类型

以下为三种设置自启动的方法,依据各自项目的业务需求进行对应的设置。

3.1服务启动systemctl

设置成服务启动后可以直接使用系统命令对服务进行启停重启操作

编辑服务文件,以nginx为例进行展开介绍,如有nginx安装需求请移步《linux系统下四种nginx安装方式》

系统服务目录:/usr/lib/systemd/system/

用户服务目录:/usr/lib/systemd/user/

依据业务需求选择设置服务的目录

vi/lib/systemd/system/nginx.service

输入配置信息,其他服务参考一下内容调整为自身软件的目录和程序即可

[Unit]
Description=nginx 
After=network.target 
   
[Service] 
Type=forking 
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx reload
ExecStop=/usr/local/nginx/sbin/nginx quit
PrivateTmp=true 
   
[Install] 
WantedBy=multi-user.target

创建服务

systemctl enable nginx.service

系统操作命令

# 启动
systemctl start nginx
# 查询状态
systemctl stuas nginx
# 重启
systemctl restart nginx
# 停止
systemctl stop nginx

3.2服务启动chkconfig

Linuxchkconfig命令用于检测,设置系统的各类服务。

这是RedHat公司遵守GPL规则所开发的程序linux 交互命令启动,它可查询操作系统在每一个执行等级中会执行什么系统服务,其中包括各种常驻服务。面向的操作系统为RedHat和CentOS操作系统

chkconfig [--add][--del][--list][系统服务]chkconfig [--level <等级代号>][系统服务][on/off/reset]

参数:

3.2.1查看服务

chkconfig --list 

3.2.2系统自带服务的设置

开启服务

chkconfig telnet on   //开启 Telnet 服务

关掉服务

chkconfig telnet off   // 关闭 Telnet服务

3.2.3添加服务设置

业务程序:jgxt_app

程序目录:/home/jgxt

启动脚本:start_jgxt.sh

将启动命令编辑装入到start_jgxt.sh文件中

chmod +x start_jgxt.sh
cp start_jgxt.sh /etc/init.d/start_jgxt
chkconfig --add start_jgxt
chkconfig start_jgxt on
chkconfig --level start_jgxt 2345 on
chkconfig --list start_jgxt

3.3开机启动脚本

以加载挂载盘为例

在linux服务上查了一块256G的SD储存卡,

每次使用改SD卡的使用须要自动挂载一下linux ftp,很不便捷。

使用命令启动

须要输入帐号的密码进行挂载处理

创建启动文件

vim/home/fwmh/script/mount_d.sh

#!/bin/bash
echo xxxxx | sudo mount -t drvfs D://mnt/d

注:xxxxx为普通帐号的密码

脚本启动

# 赋予rc.local文件可执行权限
sudo chmod +x /etc/rc.d/rc.local
# 执行脚本可执行权限
chmod +x /home/fwmh/script/mount_d.sh

将启动脚本追加入rc.local文件

# 追加到文末
/home/fwmh/script/mount_d.sh

系统测试

Author

这篇优质的内容由TA贡献而来

刘遄

《Linux就该这么学》书籍作者,RHCA认证架构师,教育学(计算机专业硕士)。

发表回复