
私はDebian 8 x64を実行しており、まだ学んでいます。 DebianとUbuntuシステムで繰り返し直面する混乱の1つは、サービスを実行して管理する2つの方法があることです。
service
systemctl
私はDebianのページを読んだ。システム(systemctl) と同様systemdは/etc/init.dスクリプトをどのように使用しますか?
私が知っている限り、現在DebianやUbuntuを含む多くのLinuxディストリビューションは以前のSysV(System Five)から離れており、以下を受け入れています。システム。
/sbin/init
myがへのシンボリックリンクであることがわかります/lib/systemd/systemd
。
問題は次のとおりです。
- systemdがSysVを置き換えた場合、SysV(
service
)がまだ存在するのはなぜですか? - なぜ2つを交換して使用できますか?そのうちの1つでデーモンを起動すると、もう1つがこれについて知ります。どうすればいいですか?どちらが実行されていますか?
- 使い続けるべき本当の理由はありますか
service
?それとも、単に使い続けるべきですかsystemctl
?
答え1
このservice
コマンドは、人々がsysvinitからsystemdに移行するのに役立つ「互換性」ツールです。これは、現在のシステムを特定し、init
必要に応じてsysvinit、upstart、またはsystemd呼び出しを実行するスマートプログラムです。
あなたの質問は本質的に少し「未来的」です。今日、Debian はさまざまな初期化システムの動作を許可し、このservice
コマンドはすべての問題を解決しようとします。しかし、Debian 9はどうですか?それが何をサポートしているのか誰が知っていますか…私たちは最終的にsuperinit
それを交換し、systemd
コマンドservice
は更新されます。
問題は、このソリューションがプラットフォーム全体で一貫性がない可能性があることです。service
CentOSまたはSuSEで動作しますか?しますかsystemctl
?
私が自分で書くならば、その基盤となるすべてのsystemctl
プラットフォームに固執しますが、私がサポートするすべてのOSバリアントで規模に合わせてテストします。systemd