Linux Zarif Kapatma


17

"-H now" komutunun, "--kill" komutunun aksine, tüm işlemler için -9'u öldürmeye benzer bir şey yaptığı için, "-h now" ifadesinin zarif bir kapatma komutu olmadığını duydum.

Bu doğru mu ve eğer öyleyse, her şeyin kendinden sonra temizlemek için zamana sahip olmasını sağlamak için kapatmanın daha zarif bir yolu nedir?

Ps ağırlıklı CentOS, Ubuntu ve Debian kullanma.


Baţka birinin içeri girmesini bekleyeceđim, ama bu hiç de hoş deđil. -h sadece sistemi yeniden başlatma yerine HALT moduna almasını söylüyor. Ve "şimdi" sadece kullanıcıların kapanması için ek sürenin olmadığı anlamına gelir. Bunlardan herhangi birinin kapanmanın gerçek öldürme davranışını nasıl değiştireceğinden emin değilim
Jeffery Smith

4
Lütfen kapatma için manuel sayfayı okuyun ( man shutdown). Bunu tamamen açıklıyor.
Andrew Schulman

Yanıtlar:


15

shutdown -h nowarayacak /etc/rc.d/rcveya /etc/init.d/rc. rcKomut dosyası (için 0 yeni çalışma seviyesi için öldürmek komut arayacak -h6 için, -rherhangi bir başlangıç komut tarafından takip).

Göreceksin S30killprocsya S00killallya da böyle bir şey dağıtımınız bağlı. Bu, her hizmeti sırayla durdurmaya çalışmak için tüm kill komut dosyalarının çağrılmasından sonra gelir. kill -15Önce dener , ardından kill -9.

Kısa cevap: shutdown -h nowveya shutdown -r nowzarif. haltve rebootzarif olmayanlardı, ancak seçeneği shutdownkullanmadığınız sürece sizi arayacaklar -f.


12

Hayır, bu doğru değil. shutdowninit seviyesini değiştirir ve tüm kapatma komut dosyalarını çalıştırır. Bu komut dosyalarının yaptıkları komut dosyasına bağlıdır. Ancak normalde süreçleri sonlandırmazlar, ancak bitirme sinyallerini gönderirler.

Yani bu manuel alıntı shutdown:

   shutdown  brings  the system down in a secure way.  All logged-in users
   are notified that the system is going down, and  login(1)  is  blocked.
   It is possible to shut the system down immediately or after a specified
   delay.  All processes are first notified that the system is going  down
   by the signal SIGTERM.  This gives programs like vi(1) the time to save
   the file being edited, mail and news processing programs  a  chance  to
   exit  cleanly,  etc.   shutdown  does  its  job  by signalling the init
   process, asking it to change the runlevel.  Runlevel 0 is used to  halt
   the  system, runlevel 6 is used to reboot the system, and runlevel 1 is
   used to put to system into a state where administrative  tasks  can  be
   performed; this is the default if neither the -h or -r flag is given to
   shutdown.  To see which actions are taken on halt  or  reboot  see  the
   appropriate entries for these runlevels in the file /etc/inittab.

1
Eh, kullandığım tüm dağıtımlar olmasa da, runlevel 6 (reboot) rc betiğinin yaptığı son şey, kalan veya asılı işlemleri yakalamak için küresel bir killall çalıştırmaktır. Ancak bu, tüm normal stop komut dosyaları tamamlandıktan sonra çalıştırılır.
adaptr

2
@adaptr Elbette. Ancak süreçlerin incelikle sona erme şansı vardı. Eğer yapmadılarsa, onları öldürmekten başka bir olasılık yoktur.
mailq
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.