文档章节

Systemd这个有争议的项目正在接管你身边的Linux发行版

mac_zhao
 mac_zhao
发布于 2015/06/23 16:03
字数 1468
阅读 110
收藏 1

Systemd 是目前为止在Linux平台上最有争议的项目之一。它到底有多大的争议?它的争议大到systemd的开发者之一Lennart Poettering 声称有人使用比特币雇佣职业杀手要干掉他。但是还是有比较理智的做法的,有一个抵制systemd网站在技术角度上提出了抵制systemd的原因。

如此强烈的抵制也反映了systemd的成功。它已经被或将要被Fedroa、OpenSUSEUbuntu、Debian、Arch Linux等众多发行版采用。随着时间推移,GNOME越来越依赖它,Debian回归GNOME的原因之一就是它采用了systemd。systemd无处不在!

那么如此激烈的争论到底是关于什么呢?让我们近距离观察这场战争。

Systemd是一个全新的init

Systemd的核心是取代老旧的SysV init。init用来初始化你的操作系统,当你启动系统时,init负责加载需要的驱动,激活你的网络链接,启动众多的系统服务,最后进入图形登陆界面。而SysV init 是一个老旧的系统,它基本上仅运行/etc/init.d目录下的一些脚本。

Systemd是一个现代技术,用以取代老旧以及粗糙的SysV init。它可以在接收到事件响应时启动相关服务;比如,当你接入了一个USB打印机,systemd可以在接收到设备接入响应时启动打印服务。当它接收 到某个网络端口的连接请求时,它可以启动在此端口上监听的服务并且传递这个连接。

获取更多关于SysV init 与 systemd的信息,可以参考Jorgen Schäfer的 “Why systemd?

但是systemd远不止此

systemd的反对者之中也有部分人认为SysV太老了,应该被取代掉。但是批评systemd的人发现Systemd是一个巨大的项目,其中包括了很多其他的功能。它是一个软件套件,而不仅仅是一个init。

Systemd这个有争议的项目正在接管你身边的Linux发行版

维基共享资源 systemd 结构图解

Systemd包括用于管理用户登陆的守护进程logind,还包括journald,并且journald 颇有争议的使用了二进制形式保存系统日志而不是以文本形式。systemd也采用了udev的思想及代码,它对/dev/目录下的虚拟设备文件进行管理,并且处理设备接入或推出时所产生的事件。除了这些还有很多其他的,如:systemd还包括了cron风格的任务调度器与网络守护进程networkd等等。

抨击者认为systemd不是类UNIX风格

多数的抱怨源于人们认为systemd项目太大以至于超出了它的工作范围,并且它从Linux系统接管的部分太多了。不要感到惊奇,systemd的抵制活动是以下面的抱怨开始的:

"systemd文件是一大堆的复杂的高度耦合的二进制组成的,这违反了UNIX哲学:‘做一件事情,并把它做好’。它超出了一个init程序的职 责范围,因为它还有电源管理,设备管理,挂载管理,cron(定时执行工具),磁盘加密,socket接口/inetd,syslog,网络配置,登陆 /会话管理,文件预读,GPT分区发现,容器注册,hostname/locale/time管理,mDNS/DNS-SD等功能,它将Linux控制台 以及其他的一些功能都包装在一个程序里面。

那么,systemd是好是坏?

到这里,我判断一下,到底谁是正确的。

Systemd这个有争议的项目正在接管你身边的Linux发行版

systemd最初的想法是非常好的。Linux需要一个新的东西来替换老的 SysV init 和沉重的 SysV init 脚本,这个新的程序应该是灵活的,现代化的系统守护进程,它可以响应更多类型,并且智能化的管理众多的守护进程。然而,事实上systemd好像成为了一个仅依赖Linux核心的完全统一的系统层

但是,尽管Linux是一个社区开发项目,但它不是为PC世界的专栏作家或者是一群网络评论者提供的,这些人都不能决定它的进化与发展。只有那些亲手贡献代码以及全身心投入的人才有这个资格。巧的是,Linux发行版以及那些参与者好像大部分都倾向与systemd。

'我对于systemd本身并没有很强烈的个人看法。我与核心开发人员争论过它的bug与兼容性,并且我认为它的一些设计是愚蠢的(比如二进制的日志),但这只是细节,不是大问题。

如果 Linux Torvald 对于systemd的设计没有什么反对意见,那么说明它可能还是不错的。如果你想平静的看下为什么Linux发行版要使用systemd的话,我推荐这篇文章,Debian's systemd discussion document

你是如何看systemd的,可以在评论回复!但是请文明讨论。

更新这篇文章以澄清之前的错误的消息,ubuntu 桌面版将在下一个版本中纳入systemd。之前我们错误的认为ubuntu已经使用了systemd

Linux 引导方式systemd upstart sysV http://www.linuxidc.com/Linux/2014-01/95555.htm

为什么systemd会被如此迅速的采用? http://www.linuxidc.com/Linux/2014-08/105789.htm

systemd 与 sysVinit 彩版对照表 http://www.linuxidc.com/Linux/2014-09/106455.htm

Linux Systemd——在RHEL/CentOS 7中启动/停止/重启服务 http://www.linuxidc.com/Linux/2014-08/105975.htm

太有用了!用systemd命令来管理Linux系统!  http://www.linuxidc.com/Linux/2014-09/106490.htm

本文永久更新链接地址http://www.linuxidc.com/Linux/2014-11/110023.htm

© 著作权归作者所有

共有 人打赏支持
mac_zhao
粉丝 42
博文 249
码字总数 304671
作品 0
普陀
程序员
私信 提问
如何查看 Linux 中所有正在运行的服务

有许多方法和工具可以查看 Linux 中所有正在运行的服务。大多数管理员会在 System V(SysV)初始化系统中使用 或 ,而在 systemd 初始化系统中使用 。 以上命令可以清楚地显示该服务是否在服...

03%
08/14
0
0
又一社区分裂 Systemd的争议引起Debian社区分裂

在过去几个月中,Debian Linux发行版卷入了一场纷争,他们准备用systemd来作为标准的系统和服务管理器,替代之前系统启动时使用的SysV init脚本。围绕这次切换的争论达到了空前热度,以至于一...

第三方支付接口
2014/12/10
0
0
Mageia 3 RC 发布,基于 Mandriva 的发行版

Mageia 3 RC 发布了,下载地址: Mageia-3-RC-x86_64-DVD.iso (3,865MB, MD5) 该版本包含:RPM 4.11, systemd 195, KDE 4.10.2, GNOME 3.6.3 and LibreOffice 4.0.2,详情请看发行说明。 而正......

oschina
2013/04/22
720
1
Parrot OS 开发者吐槽 systemd:计划切换至 Devuan

据透露,他们计划将 Parrot Security OS 的发行版从 Debian 迁移到 Devuan。 上周报道过,Parrot 安全系统的开发团队正在评估是否有可能将其从 Debian GNU/Linux 迁移至 Devuan GNU/Linux。 ...

局长
2017/06/15
2.4K
9
systemd 争议或催生新 Debian 分支

systemd诞生以来争议不断,一个原因是它的复杂性,另一个原因是它只支持Linux。不满的人甚至发起了抵制systemd的 运动,呼吁抵制使用systemd的Linux发行版——这意味着抵制绝大多数主流发行版...

oschina
2014/09/30
4K
29

没有更多内容

加载失败,请刷新页面

加载更多

Caffe(二)-Python-自定义网络

这里我们用一个例子先来体验一下 首先定义一下我们的环境变量 $PYTHONPATH,我这儿是Windows开发环境,至于Windows Caffe怎么编译由读者自己下去搞定 我使用的控制台是 Windows PowerShell 添...

Pulsar-V
33分钟前
2
0
ActiveMQ从入门到精通(二)之可靠性机制

ActiveMQ的可靠性机制 缘由( 确认JMS消息) 只要消息被确认之后,才认为消息被成功消费了。消息的成功消费包括三个阶段:客户端接收消息、客户端处理消息以及客户端确认消息。在事务性会话中...

一看就喷亏的小猿
41分钟前
0
0
源码分析 Mybatis 的 foreach 为什么会出现性能问题

背景 最近在做一个类似于综合报表之类的东西,需要查询所有的记录(数据库记录有限制),大概有1W条记录,该报表需要三个表的数据,也就是根据这 1W 个 ID 去执行查询三次数据库,其中,有一...

TSMYK
今天
7
0
IC-CAD Methodology企业实战之openlava

在云计算解决安全问题并成为IC界主流运算平台之前,私有的服务器集群系统仍然是各大IC公司的计算资源平台首选。 现在主流的服务器集群管理系统包括lsf,openlava,SkyForm,三者都属于lsf一系...

李艳青1987
今天
5
0
http response stream 字节流 接收与解码

在接收图片、音频、视频的时候,需要用到二进制流。 浏览器会发给客户端 字节Byte流,一串串的发过来_int8格式 -128~127(十进制),也就是8bit(位)。 客户端接收的时候,对接收到的字节收集,...

大灰狼wow
今天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部