Servis ve systemctl arasındaki fark nedir?


33

Belki bu önemsiz bir sorudur, fakat benim için tamamen açık değil. Sunucularımızdan birinde, başlatılmakta olan bazı arkaplan işlemlerimiz serviceve bununla başlamış bazılarımız var systemctl:

$ service nginx start
$ systemctl start gunicorn

İki komut arasındaki fark nedir? Arka plan hizmetleriyle başa çıkmak için tercih edilen yol hangisidir? Tercih edilen komut nasıl yapılandırılır?


3
orada çok iyi bir açıklama var
Félix Brunet

Bu acı kısmı, bazı diyelim hizmeti 'feshedilmiş' dir ve o değilse neden oldu da 'bulunacak / grep / bulmak' vb ... linux sürümleri içinde hiçbir tutarlılığı :( olduğu gibi argümanlar sırasını değiştiririm
killjoy

Yanıtlar:


37

servicefarklı unix ve linuxlardaki servisleri başlatmak ve durdurmak için kullanılan "üst düzey" bir komuttur. "Alt seviye" servis yöneticisine bağlı olarak, servicefarklı ikili dosyalara yönlendirir.

Örneğin, CentOS 7'de yönlendirilir systemctl, CentOS 6'da doğrudan ilgili /etc/init.dbetiği çağırır . Öte yandan, daha eski Ubuntu sürümlerindeupstart

serviceTemel servis yönetimi için yeterliyken, doğrudan arama systemctldaha büyük kontrol seçenekleri sunar.


9

systemctltemelde daha güçlü bir sürümüdür service.

İle serviceyalnızca hizmetle ilgili komutlar yapabilirsiniz (yani status, reload, restart) ile oysa systemctlsen gibi daha gelişmiş komutları kullanabilirsiniz:

systemctl is-failed name.service # check if service failed to load

Veya maskeleme hizmetleri:

systemctl mask name.service

Bu sayfada Ask Ubuntu'dan bir sürü iyi bilgi var .


1

systemctliçinde cinler / hizmetlerini denetlemek ana aracıdır systemd,
iken servicekomut geleneksel aracıdır SysVinitdünyada.

Sistemin özelliklerinden biri, SysVinit / legacy komutları ile uyumlu olmaktır,
bu yüzden eğer systemctlemir varsa,
service foo startetrafta bir sarmalayıcı olacaktır systemctl start foo.

Aynı hikaye chkconfig.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.