10周年のSPコンテンツ!

moriwaka、systemdを語る

現在のLinuxに搭載されているサービス管理システム「systemd」について、使うとどういったメリットがあるかを断片的につぶやいたまとめのようなもの。詳しい内容については、森若さんのブログを参照ください。http://moriwaka.blogspot.com/2018/06/systemd.html
システム管理 運用 systemd プログラミング Linux
8
Kazuo Moriwaka @moriwaka
まだsystemdがこわい人へ…… 主要Linuxディストリビューションにsystemdを回避できるルートはありません…… もしどうしても無理であればSoralisなりBSDなりに行ってください…… サポートされない環境で粘るよりはずっとマシなはず……
densuke_open @DensukeO
@moriwaka ここまでやるなら、カーネルにsystemd入れようぜ、と。
336 @33ZXV33
いまこそコンテナを触り、initやsystemdの呪縛から解き放たれるとき twitter.com/moriwaka/statu…
Norihito Nishioka🌻 @n_nishioka
えー。systemdってsolarisのsmfのパクリちゃうん?とか言ったら怒られる? twitter.com/moriwaka/statu…
Kazuo Moriwaka @moriwaka
@n_nishioka ある程度パクリですよ。まあ「どうしてもsystemd無理!」みたいに一度なっちゃったら勉強するのも嫌って人もいますから、そういう場合にはsmfのほうは勉強できるかもしれません…… :-P
Kazuo Moriwaka @moriwaka
当然ながらsystemdが唯一正しいinitの実装とかいうわけではなく、今典型的なLinuxディストロを作りたいときに丁度いい性質をもった実装であるというだけ。なので凄く良い別の何かがでてくれば数年後にsystemdがなくなるというのはごく普通にありうる話。
henrich @henrich
@moriwaka initを統べる者がsystemdと呼ばれる世界
Lyiase @lyiase
systemdが怖いのはむしろ、systemdじゃないシステムを併用してるとき_ twitter.com/moriwaka/statu…
キュラ太郎@レベル44 @qurataro
@moriwaka systemd 好きなのに… init よりも使いやすいし、軽い、早い、安定している…と思うのですが…何か問題ですか?
Kazuo Moriwaka @moriwaka
TODO: systemdのめっちゃ嬉しい機能をダラダラと説明する。20-30くらいはすぐ出せそうな気がする。
Kazuo Moriwaka @moriwaka
sysvinitのスクリプトちょっといじってulimit文足したあとにパッケージupdateしたら消えたりしたことがある人はsystemdならその不幸はもう起きない
Kazuo Moriwaka @moriwaka
/etc/init.d/hoge を直接実行してserviceコマンド経由での起動時と環境変数やらが違うからハマった人、systemdならその不幸はもう起きない
Kazuo Moriwaka @moriwaka
同じサービスを1システム内で複数インスタンス構築してpidファイル被ったりログがどれがどれやら混乱したり、そういうことはsystemdをちゃんと使えば回避できる(残念ながら対応したパッケージは少ない)
Kazuo Moriwaka @moriwaka
一時ファイルを/tmpに作って置き換え可能なタイミングが発生する典型的なセキュリティホール作っちゃった人、systemdならそのサービス専用の/tmpをbind mountして分離する緩和策が1行書くだけで実施できるよ
Kazuo Moriwaka @moriwaka
なぜか時々死ぬサービスを再起動するためにdaemontools入れたことある人、systemdならそれ最初からあるよ
Kazuo Moriwaka @moriwaka
「ん、このサービスいつ起動したっけ、先週月曜だっけ……?」ってログ漁ったことある人、systemdなら各サービス毎にいつ起動したかちゃんと覚えてるよ
Kazuo Moriwaka @moriwaka
謎のbashが動いてて「え、これ何から呼ばれてるの」と思ったけどpstreeで見たらinitの子になってて「なんだろー」ってなったことある人、systemdならどのサービスか、それともユーザーセッションから出てきたプロセスか即わかるよ
Kazuo Moriwaka @moriwaka
libvirtが起動するdnsmasqがサービス終了しても継続して動作してて、killall -9 dnsmasqしてNetworkManagerが呼んでる関係ないdnsmasqまで殺したことがある人、systemdならlibvirt関連の全プロセスだけを一発でkillできるよ
btnrouge @btnrouge
今のSolarisはsvcadm/svcsという、systemdと類似のサービス制御をするので、状況はほぼ変わらない(むしろ部分的にはsystemdより複雑) twitter.com/moriwaka/statu…
Kazuo Moriwaka @moriwaka
複数台の/var/log/messagesを見比べて「何で時間が秒単位なん!どっちが先か後かわからん! (>_<)」ってなったことがある人、systemd-journaldならマイクロ秒まで保持してるよ
Kazuo Moriwaka @moriwaka
トラブルシューティングでsyslogでためてるメッセージを解析する時に"warning"とかで検索してcriticalなメッセージ見逃したことがある人、systemd-journaldならログレベル保持してるからあらかじめ分けておかなくても「warn以上」とかですぐ絞りこめるよ
Kazuo Moriwaka @moriwaka
全然ログらしいの吐かないデーモンについて詳しい人に聞いたら「daemonizeさせずにforegroundで動かしてstderr見ればいいんだよ」とか言われて「そんなん知らんがな」と思ったことがある人、systemd + systemd-journaldならサービスのstdout,stderrもきっちりログに収集するよ
Kazuo Moriwaka @moriwaka
/etc/init.d以下のスクリプトがしれっとタイムアウトしてるくせにexit 0してて「フザケンナ」ってなったことがある人、残念ながらsystemdでも敢えてやればできちゃうけど普通の使い方ならちゃんと失敗したらnon zeroなexit code返すよ
(Ǝ)ɐsıɥıɥso⅄ ouɐɓnS @koshian
@moriwaka @bravotan systemd の話題さがすのちょっとたいへんそうだけどよんでみるー。ありがとー☆
残りを読む(11)

コメント

densuke_open @DensukeO 2018年6月12日
たしかに便利なんだろうけど、こんなに万能に入れていいのか? というのがUNIXの考え方に反する現実主義者systemd
ログインして広告を非表示にする
ログインして広告を非表示にする