什么是systemd?

(译)systemd是linux系统的一组基础构件块。它提供了一个系统和服务的管理,它以PID 1 的形式运行并启动系统的其余部分。systemd 使用积极的并行化功能,使用socket和D-bus激活启动服务,并提供一个按需启动守护进程,使用linux控制组来跟踪进程,维护挂载和自动挂载点,实现了一个复杂的基于事务依赖性的服务控制逻辑。systemd支持SysV 和 LSB 的初始化脚本并且可以替代sysvinit。其他部分包括日志记录守护程序,用于控制基本系统配置的实用程序,如主机名,日期,区域设置,维护登录用户列表以及运行容器和虚拟机,系统帐户,运行时目录和设置以及用于管理简单网络的守护程序配置,网络时间同步,日志转发和名称解析。(如需了解更多 -> http://0pointer.de/blog/projects/systemd.html)

systemctl的基础用法

systemctl是操作systemd的主要命令,它用来检查和系统状态和管理系统和服务。你可以在命令后使用 -H user@host 控制远程主机。这个命令将会使用ssh连接远程systemd实例

  • 查看系统状态

    $ systemctl status
  • 查看units列表

    $ systemctl 或者 $ systemctl list-units
  • 查看失败的units

    $ systemctl --failed
  • 可以在/etc/systemd/system 或者 /usr/lib/systemd/system 找到可用 unit文件,下面的这个命令列出已安装的unit file

    $ systemctl list-unit-files
  • 查看某个服务的状态

    $ systemctl status pid

使用units

units 可以是 services(.service) ,mount points (.mount) ,devices (.device) 或者socket(.socket) ,使用systemctl 通常需要使用全名(包含后缀名),当然systemd可以自动的推断,名称中带有@通常是模板unit,@后通常表示参数,在unit文件中使用%i代替

  • 立即启动一个unit

    # systemctl start unit
  • 立即停止一个unit

    # systemctl stop unit
  • 重启一个unit

    # systemctl restart unit
  • 重新加载一个unit的配置

    # systemctl reload unit
  • 查看一个unit的状态,包括它是否在运行

    # systemctl status unit
  • 查看一个unit是否开机自启

    # systemctl is-enabled unit
  • 设置一个模块开机自启动

    # systemctl enable unit
  • 立即启动一个unit并设置开机自启动

    # systemctl enable --now unit
  • 关闭一个unit的开机自启

    # systemctl disable unit
  • 重启一个systemd manager 管理器的配置(但不会重新加载unit的配置)

    # systemctl daemon-reload

编写unit文件

unit file 语法类似与 XDG中的(键值).desktop ,像Microsoft windows中的 .ini文件,文件命名只能包含字母数字字符下划线和句点,#注释只能用在新行

[Unit]
Description=Some HTTP server
After=remote-fs.target sqldb.service
Requires=sqldb.service
AssertPathExists=/srv/webserver [Service]
Type=notify
ExecStart=/usr/sbin/some-fancy-httpd-server
Nice=5 [Install]
WantedBy=multi-user.target

systemd学习及使用的更多相关文章

  1. systemd学习笔记

    一.systemd介绍 systemd即为system daemon,是linux下的一种init软件与多数发行版使用的System V风格init相比,systemd采用了以下新技术: (1) 采用 ...

  2. Systemd 学习

    转:http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html 原文链接:https://www.jianshu.com ...

  3. systemd学习

    http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html http://www.ruanyifeng.com/blog ...

  4. centos7 系统管理systemd学习记录

    在centos7之前,系统服务是service,chkconfig等命令来管理的.到了centos7,统一使用systemctl来管理系统服务 其实就是把chkconfig和service结合在一起了 ...

  5. systemd&systemctl

    systemd is a system and service manager for Linux operating systems. When run as first process on bo ...

  6. blfs(systemd版本)学习笔记-构建gnome桌面系统

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! 大概思路: lfs(系统)+xorg(驱动)+gnome(桌面组件) 链接: lfs(systemd版本)学习笔记系列:http ...

  7. blfs(systemd版本)学习笔记-编译安装gnome桌面组件及应用

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! blfs中的gnome项目地址:http://www.linuxfromscratch.org/blfs/view/stable ...

  8. lfs(systemd版本)学习笔记-第3页

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! lfs(systemd)学习笔记-第2页 的地址:https://www.cnblogs.com/renren-study-no ...

  9. lfs(systemd版本)学习笔记-第4页

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! lfs(systemd版本)学习笔记-第3页 的地址:https://www.cnblogs.com/renren-study- ...

随机推荐

  1. 有个性的手动计划模式(Project)

    <Project2016 企业项目管理实践>张会斌 董方好 编著 任务工作表里默认的标题"工期"."开始时间"."结束时间"这些 ...

  2. Kubernetes 集群无损升级实践 转至元数据结尾

    一.背景 活跃的社区和广大的用户群,使 Kubernetes 仍然保持3个月一个版本的高频发布节奏.高频的版本发布带来了更多的新功能落地和 bug 及时修复,但是线上环境业务长期运行,任何变更出错都可 ...

  3. 极简!一个注解就能创建Jaeger的Span

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  4. AcWing1264. 动态求连续区间和 (树状数组做法)

    1.题目 给定 n 个数组成的一个数列,规定有两种操作,一是修改某个元素,二是求子数列 [a,b] 的连续和. 输入格式 第一行包含两个整数 n 和 m,分别表示数的个数和操作次数. 第二行包含 n ...

  5. 分享自己做的一个指定进程以及线程长时间cpu监控的工具

    前言: 前面给大家分享过一个工作中用到的编译拷贝脚本,其实工作中还有一些其他工具的使用,今天再来分享一个自己纯手工的CPU监控的脚本.大家可以结合上篇文章与本篇文章一起学习shell. 主要实现功能: ...

  6. c++之面试题(1)

    题目 有十瓶药,每瓶里都装有100片药,其中有八瓶里的药每片重10克,另有两瓶里的药每片重9克.用一个蛮精确的小秤,只称一次,如何找出份量较轻的那两个药瓶? 解法 1.分别给10个药瓶按照斐波那契数列 ...

  7. 【LeetCode】912. Sort an Array 解题报告(C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 库函数排序 桶排序 红黑树排序 归并排序 快速排序 ...

  8. 【LeetCode】1033. Moving Stones Until Consecutive 解题报告(C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 脑筋急转弯 日期 题目地址:https://leet ...

  9. 【LeetCode】752. Open the Lock 解题报告(Python & C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 日期 题目地址:https://leetcode.c ...

  10. 教学日志:javaSE-循环语句

    一.while循环和do...while循环 /* while循环:先判断条件,再执行逻辑代码 四部分组成: 1.初始化:循环的初始化变量 2.条件判断:条件返回必须是true或false 3.循环体 ...