20 Ocak 2016

Linux'da Kullanıcı Çalışma Seviyeleri

Linux'da Kullanıcı Çalışma Seviyeleri

Linux'da çalışma seviyeleri (Run Level) işletim sisteminin hangi kipte çalıştırılacağını ifade eder. Linux işletim sistemi içerisinde Kernel'in OS üzerinde çalışmaya başlamasından itibaren bu süreci aşağıda inceleyeceğiz.

Linux işletim sistemi bilgisayarda başlatıldığı zaman ilk işlem dosyası olarak /sbin/init programı başlatılır. /sbin/init başlatılacak diğer tüm işlemlerin başlangıcıdır. İşlem (Process) ID numarası her zaman 1'dir. /sbin/init sistemin hangi çalışma seviyesinde (Run Level) açılacağını belirleyen /etc/inittab programını çalıştırır.

İlgili dosyayı görüntülemek için;
# cat /etc/inittab

Linux'da çalışma seviyelerine göre servislerin durumu /etc/rc.d dizini içinde tutulur. Her bir RC dizini içerisinde açılış sırasında çalıştırılması gereken programların linkleri yer almaktadır.

RC dizinine gidelim;
# cd /etc/rc.d
# ls

Örneğin /etc/inittab içerisinde 5. çalışma seviyesi seçili ise rc5.d içerisinde yer alan servislerin linkleri tek tek çalıştırılacaktır. İlgili dizine gidelim;

# cd /etc/rc.d/rc5.d
# ls -la

Linux'da Kullanıcı Çalışma Seviyeleri

Yukarıda görünen sembolik linklerin /etc/rc.d/init.d dizinini gösterdiğini görebilirsiniz. Bu dizin işletim sisteminin sahip olduğu servislere ilişkin başlatma, kapatma gibi işlemleri yapan kabuk programlarını barındırır. Elbette bu, yüklü tüm servislerin sadece buradan başlatabileceği anlamına gelmez. Bu betiklerden en önemlisi ise /etc/rc.d/rc.local dosyasıdır. ilgili dosyayı görüntülemek için;

# cat /etc/rc.d/rc.local

İşletim sisteminin açılış sürecinin tamamlanması /etc/rc.d/rc.local dosyasının init tarafından çalıştırılarak sistem açılışı tamamlanır. Sistem kullanıcılarının kendi arzularına göre sistem açılışına ilaveler yapmalarına imkan tanır.

Bu dosyaya birkaç ilave yapacak olursak (Sistem başlangıcında çalıştırmak için);
echo /etc/init.d/ornek_bash_kod.sh >> /etc/rc.d/rc.local
echo SISTEM BASARILI BIR SEKILDE ACILDI >> /etc/rc.d/rc.local

Linux Çalışma Seviyeleri
Linux işletim sistemi 7 farklı kipte çalışmayı destekler. Bu çalışma kiplerinden ilki (runlevel 0) sistemin kapalı olduğu (halt) durumdur. Sonuncusu ise (runlevel 6) sistemin kendini yeniden yükleme (rebooting) durumudur. Diğer 5 seviye ise sistemin farklı biçimlerde açması anlamına gelmektedir.

RHEL ve CentOS için bu 7 farklı seviyeyi özetlersek;
0 - Sistem kapalı (halt)
1- Ağ desteği olmayan tek kullanıcılı kip
2- Kullanılmıyor ancak kullanıcı tanımlayabilir
3- Ağ desteği olan, metin tabanlı çok kullanıcılı kip
4- Kullanılmıyor ancak kullanıcı tanımlayabilir
5- Ağ desteği olan, grafik tabanlı çok kullanıcılı kip
6- Sistemin kendini yeniden yükleme (rebooting) durumu

Sunucu üzerinde çalışma seviyenizi değiştirmek için init komutunu kullanabilirsiniz. Örnekle 5. çalışma seviyesinden 3. seviyeye geçmek için SSH üzerinden # init 3 yazmanız yeterli.

# runlevel (Hangi seviyede olduğunuzu gösterir)
# init 0 (Sistemi kapatmak için kullanılır)
# init 6 (Sistemi yeniden başlatır)

Linux'de sistemin hangi çalışma seviyesinde açılacağını /etc/inittab dosyası içerisinde belirtilmektedir. Diğer önemli dosyalar ise;

Sistemin ağ desteği olup olmadığını kontrol etmek;
# cat /etc/sysconfig/network

Disk sistemini öğrenmek (ext3, ext4);
# cat /etc/fstab

Kaynaklar
belgeler.gen.tr/man/man8/man8-init.html
Linux Sistem ve Ağ Yönetimi (Alper Özbilen)

Hiç yorum yok:

Yorum Gönder