Unix Eğitim Notları – 3. Bölüm

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.
Grup Boot Loader

 

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.

etcinit-d.png

Servisler

Svcs – i servicename

Svcs –p : Tüm çalışan, çalışmayan tüm servisleri listeler.

sccs-p

 

Bu işleme de servislerin durumunu gösterir.

svcs -l sendmail

 

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.

 

Scvadm enable  sendmail

 

 

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.

PS Komutu

Ctrl + d ile ya da exit ile bash shell’ini kapattığımda bash kapanmış olacaktır.

PS Komutu-2

 

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.

ps -f | grep bash

 

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.
prun  ve pstop

 

İş 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.

İş Zamanlama Schule

Crontab –l ile de schule’lerimi listelemiş oluruz.

  1. Dakika (0-59)
  2. Saat (0-23)
  3. Ayın günü (1-31)
  4. Yılın Ayı (1-31)
  5. Haftanın Günü (0-6)
  6. 0 = Pazar
  7. 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.

crontabs Komut Sonucu

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.

echo /atpprogramı

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.

Cevap bırakın