Systemd 相关总结

什么是systemd?

systemd是Linux系统的一组基本构建块。 它提供了一个系统和服务管理器,它作为PID 1运行并启动系统的其余部分。
systemd提供了积极的并行化功能,使用套接字和D-Bus激活来启动服务,按需启动守护程序,使用Linux控制组跟踪进程,维护安装和自动挂载点,并实现了详细的基于事务依赖关系的服务控制逻辑。 systemd支持SysV和LSB初始化脚本,并且可以替代sysvinit。

其他部分包括日志记录守护程序,用于控制基本系统配置(如主机名,日期,区域设置,维护已登录用户和正在运行的容器和虚拟机的列表),系统帐户,运行时目录和设置的实用程序以及用于管理简单网络的守护程序 配置,网络时间同步,日志转发和名称解析。
https://wiki.archlinux.org/index.php/Systemd

systemd 可以用来做什么?

  • 分析系统的状态
$ systemctl status # 查看units的状态
$ systemctl or systemctl list-units # 列出所有的uinits service
$ systemctl --failed # 列出所有failed的service
  • 控制service的启动
$ systemctl enable <units> # 将一个unit加入自启动列表
$ systemctl disable <units> # 将一个unit移除自启动列表
$ systemctl start <units> # 将一个unit立即启动
$ systemctl stop <units> # 将一个unit立即关闭
$ systemctl mask <units> # 将一个unit标记为危险,不可能启动(both manually and as a dependency, which makes masking dangerous):
$ systemctl unmask <units> # 将一个unit移除标记

怎样添加一个自启动的service?

  1. 添加一个.service 文件
# 一个自启动service的例子
[Unit]
Description=My Service
After=network.target

[Service]
ExecStart=/usr/bin/my-service
Restart=on-failure

[Install]
WantedBy=multi-user.target
  1. 安装service
# 通知systemd 有一个新的service加入
sudo cp my-service.service /lib/systemd/system

sudo systemctl daemon-reload
sudo systemctl enable my-service
  1. 与service进行互动
sudo systemctl start my-service  # 立即启动service
sudo systemctl status my-service # 查看service的状态
journalctl --unit my-service --follow # 查看service的log
  1. 移除service
sudo systemctl disable my-service
sudo rm /lib/systemd/system/my-service.service

字符/图形界面切换

在字符界面(即命令行界面)输入命令:

设置为字符界面的命令:

sudo systemctl set-default multi-user.target

设置为图形界面的命令:

sudo systemctl set-default graphical.target
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值