文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

systemd中的命令怎么使用

2023-06-04 12:06

关注

这篇文章主要介绍“systemd中的命令怎么使用”,在日常操作中,相信很多人在systemd中的命令怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”systemd中的命令怎么使用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

一:描述

CentOS 7 使用systemd替换了SysV。Systemd目的是要取代Unix时代以来一直在使用的init系统,兼容SysV和LSB的启动脚本,而且够在进程启动过程中更有效地引导加载服务。
 systemd的特性有:  
1.支持并行化任务
2.同时采用socket式与D-Bus总线式激活服务。 按需启动守护进程(daemon);
3.利用 Linux 的 cgroups 监视进程;
4.支持快照和系统恢复;
5.维护挂载点和自动挂载点;
6.各服务间基于依赖关系进行精密控制。

二:命令

使用 systemctl 控制单元时,通常需要使用单元文件的全名,包括扩展名(例如 sshd.service)。但是有些单元可以在systemctl中使用简写方式。  
1.如果无扩展名,systemctl 默认把扩展名当作 .service。例如 netcf g 和 netcfg.service 是等价的。  
2.挂载点会自动转化为相应的 .mount 单元。例如 /home 等价于 home. mount。  
3.设备会自动转化为相应的 .device 单元,所以 /dev/sda2 等价于 de v-sda2.device。



1.systemctl
该命令可用于查看系统状态和管理系统及服务。该命令等同于 systemctl list-units
2.systemctl --failed
输出运行失败的单元
3.systemctl start <单元>
激活单元
4.systemctl stop <单元>
停止单元
5.systemctl restart <单元>
重启单元
6.systemctl reload <单元>
重新读取配置
7.systemctl status <单元>
查看运行状态
8.systemctl enable <单元>
开启自动激活单元
9.systemctl is-enabled <单元>
检查是否自动启动
10.systemctl disable <单元>
取消开机自动激活单元

三:单元文件编写

systemd单元文件的语法来源于 XDG桌面入口配置文件.desktop文件,最初的源头则是Microsoft Windows的.ini文件。单元文件可以从两个地方加载,
优先级从低到高分别是:  
1. /usr/lib/systemd/system/: 软件包安装的单元
2. /etc/systemd/system/: 系统管理员安装的单元

编写自定义的 service 文件时,可以选择几种不同的服务启动方式。启动方式可通过配置文件 [Service] 段中的 Type= 参数进行设置。  ?
1.Type=simple(默认值):systemd认为该服务将立即启动。服务进程 不会fork。如果该服务要启动其他服务,不要使用此类型启动,除非该服务是socket激活型。  ?
2.Type=forking:systemd认为当该服务进程fork,且父进程退出后服务 启动成功。对于常规的守护进程(daemon),除非你确定此启动方式无法满足需求,使用此类型启动即可。使用此启动类型应同时指定 PIDFile=,以便systemd能够跟踪服务的主进程。  ? 
3.Type=oneshot:这一选项适用于只执行一项任务、随后立即退出的服务。 可能需要同时设置 RemainAfterExit=yes 使得 systemd 在服务进程退出之后仍然认为服务处于激活状态。
4.Type=notify:与 Type=simple 相同,但约定服务会在就绪后向 syst emd 发送一个信号。这一通知的实现由 libsystemd-daemon.so 提供。  ? 
5.Type=dbus:若以此方式启动,当指定的 BusName 出现在DBus系统总 线上时,systemd认为服务就绪。  ? 
6.Type=idle: systemd会等待所有任务(Jobs)处理完成后,才开始执行i dle类型的单元。除此之外,其他行为和Type=simple 类似


四:举例

点击(此处)折叠或打开

  1. [Unit]

  2. Description=Docker Application Container Engine

  3. Documentation=http://docs.docker.com

  4. After=network.target

  5. Wants=docker-storage-setup.service

  6. Requires=docker-cleanup.timer

  7. [Service]

  8. Type=notify

  9. NotifyAccess=all

  10. KillMode=process

  11. EnvironmentFile=-/etc/sysconfig/docker

  12. EnvironmentFile=-/etc/sysconfig/docker-storage

  13. EnvironmentFile=-/etc/sysconfig/docker-network

  14. Environment=GOTRACEBACK=crash

  15. Environment=DOCKER_HTTP_HOST_COMPAT=1

  16. Environment=PATH=/usr/libexec/docker:/usr/bin:/usr/sbin

  17. ExecStart=/usr/bin/dockerd-current \

  18.           --add-runtime docker-runc=/usr/libexec/docker/docker-runc-current \

  19.           --default-runtime=docker-runc \

  20.           --exec-opt native.cgroupdriver=systemd \

  21.           --userland-proxy-path=/usr/libexec/docker/docker-proxy-current \

  22.           $OPTIONS \

  23.           $DOCKER_STORAGE_OPTIONS \

  24.           $DOCKER_NETWORK_OPTIONS \

  25.           $ADD_REGISTRY \

  26.           $BLOCK_REGISTRY \

  27.           $INSECURE_REGISTRY

  28. ExecReload=/bin/kill -s HUP $MAINPID

  29. LimitNOFILE=1048576

  30. LimitNPROC=1048576

  31. LimitCORE=infinity

  32. TimeoutStartSec=0

  33. Restart=on-abnormal

  34. MountFlags=slave

  35. [Install]

  36. WantedBy=multi-user.target

到此,关于“systemd中的命令怎么使用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯