Systemd on ubuntu

何为 systemd?

systemd 是一个 Linux 下的系统和会话管理器,与 SysV 和 LSB 启动脚本兼容。systemd 提供了积极的并行处理能力,使用套接字(socket)和 D-bus 的激活启动服务,可使守护进程按需启动,使用 Linux 的 cgroups 保持对进程的追踪,支持对于系统状态的备份与恢复,维护手动和自动挂载点,实现了基于依赖关系的可执行服务控制逻辑。

更多信息可参见 systemd 主页

个人软件包存档(PPA)地址

systemd 及相关软件包可在此 PPA 找到,要使用该 PPA,请按下面的方法将其加入到您的软件源列表当中:

add-apt-repository ppa:pitti/systemd
apt-get update

安装Systemd

apt-get install systemd libpam-systemd systemd-ui

这会使 systemd 与 upstart 共存于系统中,如果您想把 upstart 整个替换掉,您需要另外安装 systemd-sysv 这个软件包,这个软件包提供的 reboot 等命令可将原来的程序提供的同样的命令替换掉。

引导装载程序的配置

在安装完 systemd 之后,计算机可能还是会默认以 upstart 启动,为了使系统以 systemd 使用,必须在 grub 配置文件中的 kernel 命令行指定下面的参数:

vim /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash init=/lib/systemd/systemd"

修改完配置后下命令需要使更改生效

update-grub

systemd 启动时如出现下面的警告信息

/etc/mtab is not a symlink or not pointing to /proc/self/mounts. This is not supported anymore. Please make sure to replace this file by a symlink to avoid incorrect or misleading mount(8) output.

那么,最好按照建议的那样去做,将 /etc/mtab 替换掉。否则不仅是 mount 会运行不正常,df也是一样,而且其他会查看挂载列表的程序也很可能出问题。可以像下面这样改:

ln -fs /proc/self/mounts /etc/mtab

systemd 的使用

启动

若以 systemd 无法正常启动,可以试一试在 grub 配置中的kernel一行加入下面的参数:

init=/lib/systemd/systemd systemd.unit=emergency.service

systemd.unit= 指定了系统要启动到的目标状态(与 sysvinit 指定运行级别相似)。
emergency.service 在虚拟终端启动一个紧急模式的 bash shell,并且不尝试启动任何其他服务。

启动后控制 systemd

控制 systemd 的主要命令是 systemctl。一些子命令如下:

systemctl list-units —— 列出所有单位(Unit,该术语表示“任务或服务”)

systemctl start [名称...] —— 启动(或激活)一个或多个单位

systemctl stop [名称...] —— 停止(或挂起)一个或多个单位

systemctl enable [名称...] —— 启用一个或多个单位

systemctl disable [名称...] —— 停用一个或多个单位

systemctl reboot —— 关闭或重新启动系统

 

如需查看整个命令列表,请参见 systemctl(1)的 man 手册页。
systemadm 是 systemctl 的图形用户界面前端。

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。