Unix Eğitim Notları – 3. Bölüm de Unix veya Linux sistemlerde her kullanıcı işletim sistemindeki uygulamaları kullanmak için sistem üzerinde bir kullanıcısı olması gerekmektedir.
Kullanıcı Yönetimi
Useradd –d (ev dizini) kullanıcı adı
Useradd –d /export/home/test1 test1
Chown test1:test1 /export/home/test1
Sistemde kullanıcıların tutulduğu dosya : vi /etc/passwd vipw’de kısayoludur.
Alanlar : ile ayrımını yapar.
1. Alan | Kullanıcı Adı |
---|---|
2. Alan | Şifre |
3. Alan | user id |
4. Alan | grup id |
5. Alan | yorum alanı |
6. Alan | kullanıcı ev dizini |
7. Alan | kullanıcı default shell’i |
Örnek-1
test2 kullanıcısı ekleyelim.
Özellikleri :
username = test2
Default Shell : bash
Yorum Alanı : selam
userId = 554
primary grubu : test2
home diretory = /export/home/test2
expire date = 07.07.2012
Cevap-1
Useradd –s /usr/bin/bash –e 07/07/2012 –c “Selam” –u 554 –g test2 –d /export/home/ test2 –m /export/home/ test2
Groups aktif kullanıcıya ait hangi gruplara üye olduğunu söyler. Groups kullanıcı adı ise o kullanıcıya ait gruplarını söyler. Usermod = user’a ait tüm özelliklerini değiştirebiliriz.
Usermod –u 444
Groupdel grubu siler
Passwd kullanıcı adı kullanıcının şifresini değiştirir
Userdel –r test2
Toplu password değiştirmen için program chPasswd
Sistemin Boot Aşaması
Açılış Aşamaları
PowerOn | Makine Açılır. |
BIOS | Post işlemini gerçekleştirir. Öncelikli ekran kartına bakar. |
BIOS MBR | Bu alanı Ram’a yükler. Formatlanamaz. Boyutu değiştirilemez. |
Boot Loader | Hangi işletim sistemini yükleyeceğimizi sorar. |
Kernel’in Ram’a yüklenmesi | Kernel Ram’a yüklenir. Tüm Device’leri ele alınır. |
Modüllerin Yüklenecek UFS’i Mount etmesi | İki farklı mount gerçekleşir. Biri geçici diğeri gerçek mountdur. Geçicide kök dizinine ulaşır. |
a. Mount | Unix sistemleri örnek c0d0s0 partitionları / (kök dizinine) hizmet et. Yani bu partition’bağlamış olduk. Ya da cdrom içinde ya da flash için mount işlemleri bu aşamada belirlenir. |
INIT aşaması | lin başlattığı bir işlem vardır. INIT işletim sisteminde çalışan ilk prosess. kerne7lib/svc/bin/svc.startID : çalışacak servisleri çalıştırır. |
File Sistem Check | Diskteki bad sektör olup olmadığını check eder. |
Gerçek mount işlemi yapılır. | |
Network servisleri ayağa kalkar. |
Grup Boot Loader
Unix sistemlerde grup boot Loader işlemi kullanılıyor.
vi /boot/grup/menu.lst ile dosyayı açarız.
Init
Initin farklı çalışma seviyeleri vardır.
Init : 0 yaptığımızda makine kapatılır.
Init: 1 : Administrator Mod – single user mod tüm file sistem’ler mount edilmiş durumda.
Init 2 : MultiUser mod : birden fazla kullanıcı sisteme login olabilir
Init 3 : standart mode = şu an kullandığımız init’in çalışma seviyesi
Init 4 : unuset :
Init 5 : bu komutda açar. Init sınıftan farkı elektrik’ide kese.r. 0 elektrik kesmeyecektir.
Init 6 : reboot :
Runlevet komutu ile bulunduğumuz run level’i görüntüleyebiliriz. Ya da who –r
Servislerin Çalışma scriptleridir.
Servisler
Svcs – i servicename
Svcs –p : Tüm çalışan, çalışmayan tüm servisleri listeler.
Bu işleme de servislerin durumunu gösterir.
Svccfg delete
Svccfg delete senmail dediğimizde configürasyonunu sildi. Ama dosyayı silmedi. Tekrar çalıştırmak için svcs add sendmail
Scvadm enable , disable
servisAdm enable sendmail komutu ile servisi çalıştırırız.
Svcadm disable
Sistem Prosessleri
ps komutu
Aktif olarak aldığımız shell’leri gösterir. Arka tarafta sh açık sonra da bash shell’i açık görünmekte.
Ctrl + d ile ya da exit ile bash shell’ini kapattığımda bash kapanmış olacaktır.
Ps -ef
Şu anda aktif olan tüm prosess’lerin listesini gösterir.
Bash shell’inin kill etmek için prosess numarası ile öldürmüş oluyoruz.
Pgrep
prosess grepli kullanıcının prosesini gösterir.
prsta
Arka planda canlı size’ını göstermektedir. Windows’taki görev yöneticisi ile aynıdır.
nohup
nohup komut_adi &
Uzaktan bağlantılarda nohup komutu ile çalıştırılması önerilir. Bunun sebebi oturum kapandığı ya da bağlantı koptuğunda nohup siz olarak çalışırken çalışan script ya da komut da kesilecektir. Ancak nohup ile bağlantı kesilse de çalıştırdığımız uygulama halen çalışmaya devam edecektir.
&
Her komutun sonuna & koyarsak işlem background’da yapar. Başka bir işlem yapmamıza olanak sağlar.
Jops
Arka planda çalışanları görmenizi sağlar.
Kill %1
İşlemi öldürmek için %1’den kasıt ise işlem numarasıdır. Ctrl + Z ile de aynı işlemi yapabiliyoruz.
prun ve pstop
Arka planı attığımız işlemi tekrar çalıştırmak ya da durdurmak için kullanılır.
İş Zamanlama Schule
Cron adı verilen servisle tüm schule işlemlerini yürüten servistir.
Crontab –e dediğimizde bir ekran açılacak.
Burada dikkat etmemiz gereken altı tane alan vardır. Her birinin aralarında boşluk vardır.
Örnek bir schule yapıyoruz.
Crontab –l ile de schule’lerimi listelemiş oluruz.
- Dakika (0-59)
- Saat (0-23)
- Ayın günü (1-31)
- Yılın Ayı (1-31)
- Haftanın Günü (0-6)
- 0 = Pazar
- 1 = Pazartesi
Yapılacak işlem örneğin ls –l komutu çalıştırmak olsun.
Bu alanların hepsini doldurma zorunluğu yoktur. Eğer * ile geçersek örneğin saat her saat çalışır
Zamanı geldiğinde aşağıdaki şekilde sonucunu görmüş oluyoruz.
SSH Bağlantısını schule ile yapmak için;
Ssh – keygen
Ssh –copy –id –i 192.168.1.5
Şifre soracak.
İşlem tamamlanmış olacak. Bundan sonra
Ssh 192.168.1.5 dediğimizde şifresiz giriş yapabilecektir.
Schule ‘nin loğlarını görmek için; var cron loj
Örnek
Yılın 2. ve 5. Ayı
Ayın 10, 12, 27. Günleri
Haftanın Pazar ve Salı Günleri
Saat 14’den 18 arası çalışacak.
Her iki dakikada bir çalışacak olan
/var/ klasöründe ismi “root” olan dosyaları /export/home dizinine kopyalayın.
Not: Bu crontab girdisi test2 kullanıcısına git olmalı.
KOD | TANIMI | AÇIKLAMA |
---|---|---|
*/ 2 | Dakika | Her iki dakikada bir çalışır. |
14-18/2 | Saat | Saat : 14 ile 18 arası |
10,12,27 | Ayın Günleri | Ayın 10,12,27. Günleri arasında 2 saatte bir |
2,5 | Yılın Ayı | Yılın 2. Ve 5. ayı |
0,2 | Haftanın Günü | Haftanın Pazar ve Salı günleri |
find /var/ -name root –type f | Kod | Root kullanıcılarını ve tipi dosya olanları var klasöründe bul |
-exec cp {} /export/home \; | Kod Devamı | Bulunan sonucu export/home klasörüne kopyala |
Kod alanları arasında boşluklarla crontab’ın herhangi bir satırına yazılır.
CRONTAB -E test2 ile o kullanıcıya ait işlemleri listeler.
At komutu ile 1 sefer çalışması için
At 16:04 dedikten sonra örnek aşağıdaki işlemi yazıyoruz.
Bunu saat yaptığımız gibi tarih belirterek te yapabiliriz.
At çalışabilmesi içib cron servisinin her zaman çalıştığından emin olmalıyız.
Gzip, bzip ile sıkıştırma yapıyoruz. Tar ile de arşivleme yapmak için kullanılmaktadır.