Re: [闲聊] systemd

楼主: kenduest (小州)   2016-07-07 22:01:33
个人表达一点看法。
其实基本上 systemd 好坏各有定论,若要在这边讨论基本上当然很正常,
只是原帖只是提供国外的网址内容说里面有许多抱怨的声音说他不好,
那我想问的是原帖自己有没有用过 systemd 呢?有的话又是多久时间了,
能够表达一下自己的心得想法,而不是这边起个火然后大家来发表高见。
systemd 包含太多议题,个人以 init script 个项目表达他的一些优点
1. daemon 服务启动后要把服务停止结束,使用 /etc/init.d/name stop
方式其实无法确保整个 process 都结束,很有机会程式本身 fork
出去或者是执行外部程式这类动作都无法在所谓 stop 这个参数之后
正确都被关闭。
systemd 本身整合 cgroup,整合运作资源功能先不谈,其实在 systemd
架构内透过 cgroup 执行的程序都可以被追踪到,执行的程式与资源都
能够被正确结束。
2. 各家的 /etc/init.d 目录内 init script 都没有一个标准,大家都有
自己 function 有自己的语法实作,所以常写了 init script 可能只有
适合 rh-based 的系统,换成 debian or suse 就无法正常工作。
若使用 systemd 的话就可以依据他的标准设定档案就有个规范,就算是
有需要调整地方也不多,可携性比较高。
另外 systemd 内可以 override 某个 service unit 设定,原本的
service unit 档案可以不用异动就拉出额外的设定,以往要改就是动
原本档案内容
3. init script 要指定优先级甚至相依性单纯化,以往还要去检查自家
linux 版本相关服务的启动顺序数字来当作撰写 script 时候带给
chkconfig 这类工具使用的启动与结束的优先数字。其中建立必要 rc?.d
相关 script 档案会产生必要数字决定启动与结束顺序...
在 systemd unit 档案内只有注明相依,与包含需要在哪些服务启动
之前还是之后,systemd 就自动协助处理,这不用仰赖上面提到数字优先性
4. 服务的 unit 档案内可以很简单指定自己的启动模式,是开机跑一次还是
成为持续运作的服务,若程式结束了要不要每隔多久自己就重新启动,
其中也包含重试启动的次数等。
透过 systemd 工具就可以自己服务启动的状态。在传统架构内要监视该
服务是很麻烦的,要看状态也只能够自己查看 log 来判断...
5. 传统 init script 服务可能有相依性,一般来说 init script 前面会写
可能相依哪些服务,不过实际上手动执行相关服务时候若该服务需要另外
一个服务先启动,这样手动启动服务方式并检查到。
systemd 基本上会协助处力这部分的相依需求,会预先执行某个服务后再来
执行原本服务。另外服务可以有相依指定当然也可以有互斥指定,某个服务
启用了与执行了,另外一个服务就不能够启用与执行。这个在传统 init
script 服务架构上要支援会比较麻烦。
6. 有遇过某个服务可能因为某个原因导致要启动很久所以卡住,导致系统无法
完全开起来情况吧?卡多久没人知道,得慢慢等。这个在 systemd 内就比较
难发生,而且也可以自己指定某个 service 启动要求的时间,没有指定
也会有自己默认的配置设定。
另外有一些 service 可能启动时候会有一些初始化需要等待,以 systemd
来说会判断所需相依性,所以该服务可以执行然后等它完成,其他服务部分
就可以先启动,整个服务启动的流程也可以更有效率。另外关机庾重开时候
也可以指定服务结束执行等待时间。
systemd 只有优点没缺点吗,答案是未必,只是很多东西可以看正面而都非负面
的事情。最后个人感觉,linux distro 的 developer 对于换不换 systemd 是
有他们的考量在,对于末端 end user 或者是 sysadm 的人来说影响不大,就算
有其实也不是问题...
不过老实说系统架构换 systemd 应该很多 sysadm 会担心吧! 因为是全新的东西,
一般习惯旧架构的人对新事物难免会害怕,就像是 centos 7 改用全新的网络设定
架构都用 Network Manager 管理,有人还是会选择关闭他直接改设定档案...
不过常言到进厨房就不要怕热,走这行也不就是如此?有新的改变其实真的不熟悉
只需要了解一下就好... 再者以 sysadm 来说,牵涉的议题其实也不是很深,
带来的影响其实相当有限....
最后要论 systemd 好坏,一开始贴文不是给个 url 然后要大家表达看法,就算是
我有看法要回应也是回应给那些网络上写反对意见的人,回应在这边基本上是根本
没有必要。再来这篇其实我对于 systemd 陈述也只是 systemd 内冰山一角的好处,
上面表达都是纯个人的意见,不是拿来批斗传统 init script 的缺点用。
作者: EdwardGJLee (LGJ)   2016-07-07 22:17:00
不就是闲聊,已经说了 n 遍了,硬要说成是“批斗”,就是去了解一下,他们为什么会反对 systemd。文中早就说了。architecture 的东西本就可讨论,不管你有没有用过,还是用了多久,是就架构去做比较。回应是就论点在回应,不是就人身在回应。那篇 po 文,其实最先跳下来战的就是 kenduest你自己
作者: crazydogx   2016-07-07 22:22:00
systemd 的作者才是到处对批评 systemd 的人引战好吗?推错篇
作者: bibo9901 (function(){})()   2016-07-07 22:35:00
推到处引战并不奇怪. Linus本人也呛得很.
楼主: kenduest (小州)   2016-07-07 22:39:00
楼上说 linus 比中指事情吗:))文章内个人只有陈述systemd好处,不是批斗 init script的坏,这是针对两者,不是一开始原始楼主陈述的意思
作者: crazydogx   2016-07-07 22:42:00
嗯,只陈述好处,对我而言跟写手有九成像
作者: EdwardGJLee (LGJ)   2016-07-07 22:45:00
好像要依你的说法来 po 文才是正确的。
楼主: kenduest (小州)   2016-07-07 22:47:00
基本上随便了。至少我陈述了个人systemd的优点分析个人认为比较实在。至于有人只是丢个议题出来也好的确有兴趣的人会参与,没兴趣自动略过
作者: EdwardGJLee (LGJ)   2016-07-07 22:49:00
我在推文已经说为什么 Slack 不用 systemd,那当然找的都是反对/负面的论点。并没有在否定正面的论点,只是没有 po 出来罢了。
楼主: kenduest (小州)   2016-07-07 22:50:00
简单说你只负责丢议题出来?这样不是不好,只是实在有点
作者: EdwardGJLee (LGJ)   2016-07-07 22:50:00
只是在找 Slack 不用 systemd 的可能理由。
楼主: kenduest (小州)   2016-07-07 22:51:00
个人认为 linux distro 是否采用 systemd 都随便主要就是大头决定,他们有他们规划想法systemd 个人感觉是以 linux distro 来说整个系统要
作者: EdwardGJLee (LGJ)   2016-07-07 22:52:00
一堆 FYI 的文章,也只是引 url 及一点简单的介绍。
楼主: kenduest (小州)   2016-07-07 22:52:00
调整是需要许多整合功夫,很辛苦....个人我自己看法是采用了这个绝对应该是经过思考过结果多了解体验一下,了解个中的改变与实际带来得好处网络上负面抱怨systemd文章这几年很多,个人也看过不少有一些是比较深入架构问题个人无法评论,但是有一些基本
作者: EdwardGJLee (LGJ)   2016-07-07 22:54:00
我觉得你老师做久了,有职业病出现了。:)
楼主: kenduest (小州)   2016-07-07 22:54:00
上并不是问题,不过其中还牵涉不同人的系统管理认知对我来说用systemd还是传统init sript其实影响不大旗下管理清一色超过百台还不是传统的 init script 架构的 server, 剩余用 systemd 的确少,因为大多是新起的 server 服务没有与旧的放在一起时候的有的嵌入式系统来说用 systemd 会复杂吗?个人认为小复杂因为他有太多元件划分开,无法像是传统 init 单纯我目前已经不当老师了,专心都在商业上为主题外话其实果正兄个人网络上认识你应该也超过10年了我想这次你应该感觉我回应上态度很硬,不过我还是针对就事论事为主,focus 还是在这个 systemd 上我一开始回比较强烈回应是,若技术人员讨论这档事情的话,若可以放出一些自己对 systemd 使用相关心得比较等,也许内容是真的才好参与个人对目前有处理一些旧的server把服务转移到新架构的一些经验,感觉这systemd还蛮有意思的当然,为何某个 linux distro 没采用我个人是不大关心
作者: EdwardGJLee (LGJ)   2016-07-07 23:03:00
我是有些心得,但不准备现在 po 出,因为我的确还在
楼主: kenduest (小州)   2016-07-07 23:03:00
或者是他坚持要用原本架构不导入systemd 其实我也没意见
楼主: kenduest (小州)   2016-07-07 23:07:00
有时候搞系统整合技术,是需要点坚持的要广纳意见每个人都赞成,个人认为很难....回应一下之前楼上的 crazydogx,只是当 systemd 专门的写手也怪怪的... 网络上说好处的文章不少了个人只是针对自己系统管理的小心得简单写写而已里面基本上没有很技术性的内容,纯管理系统心得开个玩笑目前网络上许多所谓的打手还有钱可以领我写这篇可是半毛钱都没有...
作者: Debian (Debian)   2016-07-08 05:01:00
倒是遇过systemd关机时砍不掉某个程序,然后跑了等待时间,不过改完等待时间好像就没有了。
作者: hizuki (ayaka)   2016-07-08 07:37:00
systemd 仅能用于Linux,所以有bsd的debian本来不打算支援的
作者: Sidney0503 (Sidney0503)   2016-07-08 14:06:00
EdwardGJLee: 我是有些心得,但不准备现在 po你的话语真的很幽默风趣
作者: aeolus0829 (阿洽)   2016-07-08 16:30:00
对于没很熟的 sysadm 来说 kenduest 的文章显然较有价值 而 Edward 兄也就真的只是闲聊而已
作者: EdwardGJLee (LGJ)   2016-07-08 17:07:00
我本来就一再强调是在闲聊,标题也是这么下,但有人就是听不进去,有什么办法。跑到人家舞会去大调古典钢琴,然后说你们的音乐好俗
作者: Sidney0503 (Sidney0503)   2016-07-08 21:48:00
[闲聊] 我们来聊量子力学 然后看近两年IEEE就好我还在观望风向 虽然我有想法但是还不想说重点都在IEEE 不用去看SCI 我跟你说都在这边了我只是闲聊喔 重要内容都在2015~2016IEEE你们很奇怪耶 我只是闲聊 你们又叫我表态还砲轰我发文没内容不然就是说我引战我只是闲聊 都说了重点都在这两年的IEEEE自己去看很难吗 我很想飙三字经
作者: wgst88w (清楚明“熙”)   2016-07-08 23:39:00
这系列文真是不错
作者: kenwufederer (Nash)   2016-07-09 01:53:00
centos 7,很多人不愿意去使用新架构不管是network,firewall等等
楼主: kenduest (小州)   2016-07-09 01:54:00
fedora 纳入 systemd 测试一大段时间了,所以在
作者: kenwufederer (Nash)   2016-07-09 01:55:00
虽然说本质上是相同的,但其实在应用上有差异
楼主: kenduest (小州)   2016-07-09 01:55:00
rhel7 正式纳入 systemd, 其他 suse 其实也纳入了
作者: kenwufederer (Nash)   2016-07-09 01:56:00
可是多Zone,永久与暂时等等
楼主: kenduest (小州)   2016-07-09 01:56:00
方式能够使用 firewall 配置,然后也整合 dbus后续就算换成 nftables 的 firewall 架构,firewalld那边会直接处理,使用者也无须担心语法变更问题
作者: kenwufederer (Nash)   2016-07-09 01:57:00
这些对我来说,就是方便许多一个firewalld-cmd就能实现所以可能一般管理员只会知道指令改变而已知道Systemd这东西没有几个甚至我身边就有整天抱怨CentOS7的改变为什么不沿用原本指令,实在很想说对于任何一个东西还是去了解原理比较实在
楼主: kenduest (小州)   2016-07-09 02:01:00
是啊,以管理系统人来说,这是相当必要的
作者: kenwufederer (Nash)   2016-07-09 02:01:00
假如,Systemd不好,FreeBSD,Debian也不会改变我个人是没有什么立场,但既然那些大头决定一定有优异之处,相信那些开发者吧Linux本身就是因为架构选择多,才会像现在一样是好处也是坏处,没办法像MS那样统一想换掉就是换掉,连旧的也不会留给你systemd 我最喜欢的功能就是status,确实方便应该说,是log整合,不能说是功能
作者: Sidney0503 (Sidney0503)   2016-07-09 07:20:00
Linux架构选择多其实就是会出现使用者黏着度高大部分的使用者是不喜欢换环境工具像我第一次学Linux是Arch 其他的发行版都觉得不好用最近被强迫使用VC++14 其实很快上手 只是心态上不能接受目前版上都是支持systemd的居多 看来某个测风向的人不会战systemd了吧
作者: Debian (Debian)   2016-07-09 08:42:00
喜好与否我想这个人想法,应该不用这么激烈吧,其各有优缺,没有必要一定要争所谓的一定最好一定不好,这样很无聊。
作者: kenwufederer (Nash)   2016-07-09 13:47:00
主要是问法不对,如果说使用之后发现问题来问可能会有人分享差异,解法,而不是丢别人意见上来然后说为什么不能FYI……通常有接触使用才会特地询问这不是比较合理吗?至于架构好坏,我习惯有新的都会玩一下并且去了解差异,评估身份使用是否
作者: danny8376 (钓到一只猴子@_@)   2016-07-09 18:04:00
我不懂systemd跟FreeBSD有啥关联...
作者: filiaslayers (司马云)   2016-07-09 19:41:00
你第二点说可携性比较高,你都绑systemd了,还谈什么可携?
作者: Bellkna (柔弱气质伪少女)   2016-07-09 19:51:00
在有systemd的环境下 有可携性没说错吧
作者: WolfLord (呆呆小狼￾ ￾ N￾ ￾ )   2016-07-09 21:50:00
我想Filiaslayers可能误会我前篇所说的可携性与通用性的意义了...我是System builder所以用什么init对我而言意义重大,而且我的init script是有透通与可携性需求但是,对于使用者货运行管理员而言。系统的可携性不在这些东西上。其实我也有帮我的客户写了一些shell cmd warpwarp什么? 把一般传统(COS5)的unix指令warp到新指令所以,我前篇也讲了:用什么init对中酖用户来讲差异不大事实是,只要付费。就能请人把新的系统涛整成任何你想要的OS的样子,我也曾把RH7调整成与 NextStep相容然后把Slackware11伪装成SunOS...基本上只要用户愿意付钱,伪装成Windows我都可以干.. :)或运行 终端

Links booklink

Contact Us: admin [ a t ] ucptt.com