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
若找不到PPA
vim /etc/apt/source.list #增加
deb http://ppa.launchpad.net/pitti/systemd/ubuntu utopic main
deb-src http://ppa.launchpad.net/pitti/systemd/ubuntu utopic main
安装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() 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 的图形用户界面前端。
issue for startup systemd
http://www.jethrocarr.com/2014/07/21/installing-el7-onto-el5-xen-hosts/
Systemd on ubuntu的更多相关文章
- Ubuntu 16.04应用布署小记
本系列文章记录了升级Ubuntu 16.04的布署过程 回到目录 10. Dokuwiki 将虚拟目录配置文件链接到Apache2的可用的配置文件库中 sudo ln -s /opt/dokuwiki ...
- CentOS 7下关于systemd的一些唠叨话一:systemd的特点和使用
摘要 近年来,Linux 系统的 init 进程经历了两次重大的演进,传统的 sysvinit 已经逐渐淡出历史舞台,新的 UpStart 和 systemd 各有特点,越来越多的 Linux 发行版 ...
- 浅析 Linux 初始化 init 系统,第 1 部分: sysvinit 第 2 部分: UpStart 第 3 部分: Systemd
浅析 Linux 初始化 init 系统,第 1 部分: sysvinit 第 2 部分: UpStart 第 3 部分: Systemd http://www.ibm.com/developerw ...
- [Z] 深入浅出 Systemd
1. Systemd 的简介和特点 Systemd 是 Linux 系统中最新的初始化系统(init),它主要的设计目标是克服 sysvinit 固有的缺点,提高系统的启动速度.systemd 和 u ...
- Linux 系统之Systemd
子贡问为仁.子曰:“工欲善其事,必先利其器.居是邦也,事其大夫之贤者,友其士之仁者.”——孔子(春秋)<论语·卫灵公> [工欲善其事,必先利其器] 掌握一门技术,知道其发展历程是非常重要的 ...
- 初识 systemd
从 init 系统说起 linux 操作系统的启动首先从 BIOS 开始,接下来进入 boot loader,由 bootloader 载入内核,进行内核初始化.内核初始化的最后一步就是启动 PID ...
- [转帖] sparkdev 的 博客 systemd
从 init 系统说起 https://www.cnblogs.com/sparkdev/p/8448237.html systemd的内容 需要学习下. linux 操作系统的启动首先从 BIOS ...
- 浅析 Linux 初始化 init 系统,Systemd
原文地址:http://www.ibm.com/developerworks/cn/linux/1407_liuming_init3/ Systemd 的简介和特点 Systemd 是 Linux 系 ...
- linux中 systemd相关配置
systemd相关配置 推荐使用systemd管理进程,相比使用supervisord systemd提供系统级别的支援. 一.系统管理 Systemd 并不是一个命令,而是一组命令,涉及到系统管理的 ...
随机推荐
- Objective-C的“多继承”——消息转发
Objective-C的“多继承”——消息转发 当单继承不够用,很难为问题域建模时,我们通常都会直接想到多继承.多继承是从多余一个直接基类派生类的能力,可以更加直接地为应用程序建模.但是Objecti ...
- c++ 使用vs2010调用 win32api
以前读书时都是用vc6.0.后来学c#用vs.装系统只装了vs2010.今天用vs2010写c++程序.发现有点陌生.就总结下,免得以后忘记. 首先用vs2010选择c++语言.新建一个win32控制 ...
- uml 符号关系示意
类(Class) 类(图A)是对象的蓝图,其中包含3个组成部分.第一个是Java中定义的类名.第二个是属性(attributes).第三个是该类提供的方法.属性和操作之前可附加一个可见性修饰符.加号( ...
- HttpClient和HttpURLConnection的区别
总结了网上的一些资源,主要有以下两个观点: 分析一: 在研究Volley框架的源码中,发现它在HTTP请求的使用上比较有意思,在Android 2.3及以上版本,使用的是HttpURLConnecti ...
- VBA学习笔记(5)--事件,记录每次操作改动
说明(2017.3.24): 1. 记录sheet1里面的每次改动,和改动时间! 2. 不能记录大范围的删除.改动,会提示“类型不匹配” Private Sub Worksheet_Change(By ...
- plsql 只能识别32位的oracle解决办法
http://www.cnblogs.com/ymj126/p/3712727.html#undefined
- SQL数据库,如何把服务器中的一张表插入到另外一个服务器的一张表中
先开启 exec sp_configure 'show advanced options',1 reconfigure exec sp_configure 'Ad Hoc Distributed Qu ...
- 在shell 中字符串,文件,数字的比较
hadoop fs -test -e /path/exist ] ;then echo 'exist' else echo 'Error! path is not exist' fi 在shell中如 ...
- 如何在linux下实现mysql数据库每天自动备份
建备份文件夹: mkdir mysql_data_bak 建脚本文件: touch autobackupmysql.sh 打开文件 vi autobackupmysql.sh 在脚本中加入如下内容: ...
- ExtJs 通过分析源代码解决动态加载Controller的问题
通过分析源代码解决动态加载Controller的问题 最近在研究ExtJs(4.2.0)的MVC开发模式,具体Extjs的MVC如何使用这里不解释,具体参见ExtJs的官方文档.这里要解决的问题是如何 ...