centos7常用命令集合

systemctl list-unit-files 可以查看启动项
systemctl set-default multi-user.target

关闭防火墙:
systemctl stop firewald.service
systemctl disable firewalld.service
systemctl disable iptables.service
systemctl disable iptables.service

关闭邮箱:
systemctl stop postfix
systemctl disable postfix

关闭计划任务:
systemctl disable crond.service
systemctl status crond.service

设置字符界面显示
systemctl set-default multi-user.target
设置图形界面显示
systemctl set-default graphical.target

#如何将一个软件的运行由Systemctl控制
CentOS 7的服务systemctl脚本存放在:/usr/lib/systemd/,有系统(system)和用户(user)之分,像需要开机不登陆就能运行的程序,还是存在系统服务里吧,即:/usr/lib/systemd/system目录下
实操文件:
###############################################
[Unit]
Description=device sync
After=network.target

[Service]
WorkingDirectory=/data/mypy/yihao01-dev_server
ExecStart=/usr/local/bin/python3 /data/mypy/yihao01-dev_server/dev_sync.py
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
RestartSec=10s

[Install]
WantedBy=multi-user.target
###########################################
模板文件如下:
[Unit]
Description=nginx - high performance web server
Documentation=http://nginx.org/en/docs/
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t -c /etc/nginx/nginx.conf
ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target

kill -HUP pid
pid 是进程标识。如果想要更改配置而不需停止并重新启动服务,请使用该命令。在对配置文件作必要的更改后,发出该命令以动态更新服务配置。

[Unit] 部分
Description : 服务的简单描述
Documentation : 服务文档
Before、After:定义启动顺序。Before=xxx.service,代表本服务在xxx.service启动之前启动。After=xxx.service,代表本服务在xxx.service之后启动。
Requires:这个单元启动了,它需要的单元也会被启动;它需要的单元被停止了,这个单元也停止了。
Wants:推荐使用。这个单元启动了,它需要的单元也会被启动;它需要的单元被停止了,对本单元没有影响。
[Service] 部分
PIDFile:pid文件路径,不会写入文件,只会在服务关闭后将文件删除
ExecStart:指定启动单元的命令或者脚本,ExecStartPre和ExecStartPost节指定在ExecStart之前或者之后用户自定义执行的脚本。Type=oneshot允许指定多个希望顺序执行的用户自定义命令。
ExecReload:指定单元停止时执行的命令或者脚本。
ExecStop:指定单元停止时执行的命令或者脚本。
PrivateTmp:True表示给服务分配独立的临时空间
Restart:这个选项如果被允许,服务重启的时候进程会退出,会通过systemctl命令执行清除并重启的操作。
[Install] 部分
Alias:为单元提供一个空间分离的附加名字。
RequiredBy:单元被允许运行需要的一系列依赖单元,RequiredBy列表从Require获得依赖信息。
WantBy:单元被允许运行需要的弱依赖性单元,Wantby从Want列表获得依赖信息。DefaultInstance:实例单元的限制,这个选项指定如果单元被允许运行默认的实例。

接下来就可以只要使用systemctl enable xxxxx就可以将所编写的服务添加至开机启动即可。

扫描二维码关注公众号,回复: 5095754 查看本文章

猜你喜欢

转载自blog.csdn.net/qq_32585565/article/details/86666474