shutdown(8)

İSİM
shutdown - sistemi kapatır

KULLANIM
/sbin/shutdown [-t saniye] [-arkhncfF] zaman [uyarı-iletisi]

AÇIKLAMA
shutdown, sistemi güvenli bir şekilde kapatır. O an sisteme bağlı bütün kullanıcılar, sistemin kapatılmakta olduğu hakkında uyarılır ve login(1) baskılanır. Sistemi hemen kapatmak veya belirli bir süre sonra kapatmak tercihe bağlıdır. SIGTERM sinyali ile, bütün süreçler sistemin kapatılacağı konusunda uyarılır. Böylece, yazılımlara, yapmakta oldukları işi kaydetmeleri için süre tanınmış olur. Örneğin vi(1) üzerinde çalıştığı belgeyi kaydeder, posta ve haber programlarına düzgün bir şekilde kapanma şansı verilmiş olur, vs... shutdown, init(8) sürecine sinyal göndererek, çalışma seviyesini değiştirmesini söyler. Çalışma seviyesi 0 sistemi durdurmak, 6 sistemi yeniden başlatmak ve 1 tek kullanıcılı kipe geçmek için kullanılır. -h veya -r seçeneklerinden hiçbiri belirtilmemişse bu öntanımlıdır. Sistemi kapatma (halt) ve yeniden bağlatma (reboot) işlemleri esnasında neler olup bittiğini görmek için, /etc/inittab dosyası içindeki ilgili girdilere bakınız.

SEÇENEKLER
-a  /etc/shutdown.allow kullanılır.

-t saniye
    init(8)'e, çalışma seviyesini değiştirmeden önce, uyarı ve kill sinyali süreçleri arasında saniye saniye beklemesini söyler.

-k  Gerçekte kapatma işlemi yapılmaz, sadece sisteme bağlı bulunan kullanıcılara uyarı gönderilir.

-r  Sistemi kapattıktan sonra yeniden başlatır.

-r  Sistemi durdurduktan sonra kapatır.

-n  [ÖNERİLMEZ] kapatma işlemi için init(8)'i çağırmaz, bu işlemi kendi başına yapar. Bu seçeneği kullanmak tavsiye edilmez ve bu işlemin sonuçları, her zaman beklenildiği gibi olmaz.

-f  Sistemi yeniden başlattığında fsck yapılmaz.

-F  Sistemi yeniden başlattığında fsck mutlaka yapılır.

-c  Çalışmakta olan shutdown sürecini iptal eder. Elbette, bu seçenek ile zaman argümanını belirtmek mümkün değildir, fakat bütün kullanıcılara göndermek üzere açıklayıcı bir uyarı girilebilir.

zaman
    kapatma zamanı.

uyarı-iletisi
    Tüm kullanıcılara gönderilecek uyarı iletisi.

zaman argümanı değişik biçimlerde kullanılabilir. Birincisi, ss:dd biçiminde olabilir (ss, saat, dd ise dakikadır). Saat bölümü bir ya da iki basamak olabilir, dakika ise iki basamaklı olmalıdır. İkinci biçim olarak; +d biçimi kullanılabilir. Burada d beklenecek dakikayı gösterir. now kelimesi +0 ile aynı anlama gelir. Yani sistemi kapatmak için hiç beklenmez.

Şayet shutdown komutu, bir gecikme belirtilerek çağrılırsa, login(1) gibi yazılımların sisteme yeni kullanıcı girişlerini önlemek amacı ile /etc/nologin adında bir uyarı dosyası oluşturur. shutdown komutu init(8)'e gerekli sinyali göndermeden önce durdurulur ya da bir hata meydana gelirse shutdown bu dosyayı siler. Çalışma seviyesini değiştirmesi için init'i çağırmadan önce shutdown dosyayı siler.

-f seçeneğinin anlamı `sistemi çabucak yeniden başlat'tır. Bu seçenekle sadece, tekrar açılışta sistem tarafından varlığı aranan /fastboot adında bir dosya oluşturulur. Şayet bu dosya mevcut ise, açılışta çalışan rc betiği bu dosyanın varlığına bakarak sistemin düzgün kapandığına karar verip fsck(1)'yı çalıştırmaz. Bundan sonra, açılış süreci /fastboot dosyasını sistemden siler.

-F seçeneğinin anlamı `fsck için zorla'dır. Bu seçenekle sadece, tekrar açılışta sistem tarafından varlığı aranan /forcefsck adında bir dosya oluşturulur. Şayet bu dosya mevcut ise, açılışta çalışan rc betiği bu dosyanın varlığına bakarak sistem düzgün kapanmış bile olsa, fsck(1)'yı özel bir 'force' argümanı ile çalışmaya zorlar. Daha sonra, açılış süreci /forcefsck dosyasını sistemden siler.

-n seçeneği, shutdown'a init'i çağırmamasını, bunun yerine çalışan bütün süreçlerin shutdown tarafından öldürülmesini söyler. Bundan sonra, shutdown, bütün kotaları, hesapları ve takaslamayı kapatıp dosya sistemlerini ayırır.

ERİŞİM DENETİMİ
shutdown, CTRL-ALT-DEL tuşlarına aynı anda basılmak sureti ile init(8) üzerinden de çağrılabilir. Bunun için /etc/inittab dosyası içinde bu tanımlamanın yapılmış olması gerekir. Şayet bu tanımlama yapılmış ise, konsol klavyesine fiziksel erişime sahip bütün kullanıcılar sistemi kapatabilir. Bunu önlemek için, shutdown, sanal konsollardan birine yetkili bir kullanıcının bağlanmış olup olmadığını kontrol edebilir. Şayet shutdown komut -a seçeneği ile çağrılmış ise (bunu /etc/inittab içindeki shutdown çağrısına ekleyin), shutdown /etc/shutdown.allow dosyasının var olup olmadığını kontrol edecektir. Daha sonra burada liste içindeki yetkili isimler ile sanal konsoldan bağlanmış kullanıcıların listesini (/var/run/utmp'den) karşılaştırır. Şayet, burada belirtilen yetkili kişilerden birisi veya root kullanıcı sisteme bağlanmış ise, bu kapatma işlemini gerçekleştirilir. Aksi taktirde şöyle bir hata mesajı ekrana basılır:

shutdown: no authorized users logged in (sistemde yetkili kullanıcı yok)

/etc/shutdown.allow dosyasının biçimi, her satırda tek bir kullanıcı ismi şeklindedir. Bu dosyada yorum satırları (# ile başlayan) veya boş satırlar bulunabilir. Bu dosya 32 kullanıcı ismi ile sınırlıdır.

İLGİLİ DOSYALAR

/fastboot
/etc/inittab
/etc/init.d/halt
/etc/init.d/reboot
/etc/shutdown.allow

NOTLAR
Kullanıcıların çoğu zaman argümanını vermeyi unutur ve shutdown tarafından üretilen hata iletisi karşısında şaşırırlar. zaman argümanı zorunludur. Hemen hemen bütün durumların yüzde doksanında bu argümanın değeri now sözcüğü olacaktır.

Inıt sadece CTRL-ALT-DEL'i yakalayabilir ve shutdown'ı konsol kipinde başlatır. Sistemde X pencere sistemi çalışıyorsa, X sunucusu tüm tuş vuruşlarını işleyebilir. Bazı X11 ortamlarında CTRL-ALT-DEL'in yakalanması mümkündür ancak tam olarak nasıl bir eylemle sonuçlanacağı ortama bağlıdır.

shutdown setuid olarak çalışmak üzere tasarlanmamıştır. /etc/shutdown.allow dosyası shutdown'ı kimin kullandığını bulmak için kullanılmaz, SADECE o an konsollarda kimlerin olduğuna bakar.

İLGİLİ BELGELER
init(8), fsck(8), halt(8), halt(8).

YAZAN
Miquel van Smoorenburg, <miquels (at) cistron.nl> tarafından yazılmıştır.

ÇEVİREN
Yalçın Kolukısa <yalcink01 (at) yahoo.com>, Aralık 2003