GNU/Linux Notları #5 – Network Yönetimi

NETWORK YÖNETİMİ (NETWORK MANAGEMENT)
Network Komutları
KOMUT | iŞLEV |
---|---|
ip a | Network kartları hakkında bilgi verir. |
ip addr del <IP> dev <interface> | Belirtilen IP’yi, belirtilen interface’ten siler. |
ip addr add <IP> dev <interface> | Belirtilen IP’yi, belirtilen interface’e tanımlar. |
ip route add default via <defaultgw> | Default gateway ekler. |
vi /etc/resolve.conf | DNS sunucu bilgilerini görüntüler. |
ip link set <interfaceadı> down / up | Belirtilen interface’in kapatılmasını/açılmasını sağlar. |
nmcli device status | Interface’lerin bağlantı, aygıt ve tip bilgilerini verir. |
ip r | Route tablosunu görüntüler. |
ip route add <network> via <defaultgw> | Statik route ekler.* |
dev <interface> | Statik route’ u siler. |
ip route del <network> | *Kalıcı olması için /etc/network/interfaces dosyasına “up /sbin/ip route add <network> via <defaultgw> dev” değeri eklenmelidir. |
ip -s link show | Interface istatistiklerini görüntüler. |
/etc/init.d/networking stop / start / restart | Interface’leri kapatır/açar/yeniden başlatır. |
host <adres> | Belirtilen adres için IP çözümlemesi yapar. |
telnet <IP> <port> | Belirtilen IP’de, belirtilen portun açık/kapalı durumunu kontrol eder. |
apt-get install net-tools | ifconfig, netstat, arp, iptables gibi komutları kazandırır. |
netstat -tunae | Sistemin bağlantı kurduğu IP ve portları görüntüler. |
lsof –i | Bağlantı kurmuş olan programları listeler. |
lsof –i :port | Belirtilen porta ait açık bağlantıları listeler. |
KAYIT YÖNETİMİ (LOG MANAGEMENT)
- Log’lar, sistemde gerçekleşen tüm değişikliklerin kaydını tutan, metin tabanlı dosyalardır.
- Log’lar /var/log dizini altında bulunurlar.
DOSYA / DİZİN | AÇIKLAMA |
---|---|
/var/log/auth.log | Kullanıcı login kayıtlarıdır. |
/var/log/lastlog | En son oturum açan kullanıcı kayıtlarıdır. |
/var/log/user.log | Kullanıcı aktivite kayıtlarıdır. |
/var/log/boot.log | Sistem açılışı (boot) kayıtlarıdır. |
/var/log/kern.log | Çekirdek (kernel) kayıtlarıdır. |
/var/log/cron.log | Zamanlanmış görevlerin kayıtlarıdır. |
/var/log/messages | Sistem aktivite kayıtlarıdır. Sistem mesajlarıdır. |
/var/log/syslog | Sistem mesaj servisinin kayıtlarıdır. |
/var/log/debug | Hata ayıklama (debug) için oluştulan kayıtlardır. |
/var/log/deamon.log | Çalışan servislerin kayıtlarıdır. |
/var/log/proftpd | FTP servisinin kayıtlarıdır. |
/var/log/maillog | Mail servisinin kayıtlarıdır. |
/var/log/dpkg.log | DPKG paket yöneticisinin kayıtlarıdır. |
Kayıt Yönetim Komutları
KOMUT | iŞLEV |
---|---|
last -10 –i | Sistemde oturum açmış en son 10 kullanıcıyı, IP bilgisiyle verir. |
lastlog | Uzaktan sisteme oturum açmış kullanıcı bilgilerini verir. |
lastlog –u <user> | İlgili kullanıcının uzaktan en son ne zaman oturum açtığını verir. |
dmesg | Sistem açılışı sırasındaki mesajları görüntüler. |
cat /var/log/auth.log | Kullanıcı login kayıtlarını verir. |
tail -f /var/log/auth.log | Kayıtları gerçek zamanlı olarak listeler. |
GÖREV YÖNETİMİ (TASK MANAGEMENT)
- Linux’ta, zamanlanmış görevleri cron adındaki servis yönetir. Durumunu öğrenmek için service cron status komutuyla kontrol edilmelidir.
- Görev /etc/crontab dosyasına eklenir. Cron servisi, her dakika burayı kontrol eder.
- “*” ifadesi ‘her’ anlamına gelmektedir.
- Zamanlanmış görevler için tanımlar 6 bölümden oluşur:
Değer Cinsi: | Dakika | Saat | Gün | Ay | Hafta Günü | Görev |
---|---|---|---|---|---|---|
Değer Aralığı: | 0-59 | 0-23 | 1-31 | 1-12 | 1-7 | Komut |
- Örn:
0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
–> ‘’Sıfırıncı dk’da, saat 5’te, ayın her günü, her ay, Pazartesi günü /home dizinini, /var/backups dizini altına home.tgz adıyla arşivle.
KOMUT | iŞLEV |
---|---|
crontab -l | Kullanıcının zamanlanmış görevlerini listeler. |
crontab -u <user> -l | İlgili kullanıcının zamanlanmış görevlerini listeler. |
crontab -e | Görev zamanlamak için editör seçimi yaptırır. |
crontab -r | Zamanlanmış görevleri siler. |
ORTAM DEĞİŞKENLERİ (ENVIRONMENT VARIABLES)
- Ortam değişkenleri, istenilen bilgiye kısa yoldan erişebilmek için oluşturulan tanımlardır.
- $ işaretiyle başlar ve büyük harflerden oluşurlar. Örn; $LOGNAME
- Ortam değişkenleri printenv veya env komutuyla görülebilir.
- printenv <DEĞİŞKENADI> veya echo $<DEĞİŞKENADI> şeklinde kullanılabilirler. Örn; printenv SHELL veya echo $SHELL
- Yeni değişken tanımı oluşturmak için DEGİŞKENADI=değer komutu kullanılır. Silmek için de unset DEĞİŞKENADI komutu kullanılır.
- Değişken isimleri sayısal bir değer ile başlayamaz.
DEĞİŞKEN | iŞLEV |
---|---|
$USER | Oturumunda olunan kullanıcıyı ifade eder. |
$HOME | Oturumdaki kullanıcının ev dizinini ifade eder. |
$SHELL | Oturumdaki kullanıcının shell’ini ifade eder. |
$DESKTOP_SESSION , $GDMSESSION | Oturumdaki kullanıcının masaüstü ortamını ifade eder. |
$PWD | Bulunulan path’i ifade eder. |
$PATH | Yazılacak komutların aranacağı path’leri ifade eder. |
$LANG | Sistemde kullanılan dili ifade eder. |
BASH BETİKLERİ (BASH SCRIPTS)
- Bash betikleri (scriptleri), çalıştırıldığında bash’e iş yükler. Bash’in, dosyadan okuyarak otomatik işler yürütmesi içindir.
- Bash script’lerinin ilk satırı #!/bin/bash olarak başlamak zorundadır. Böylelikle, alt satırdaki kodların, bash shell’i tarafından yorumlanacağı belirtilir.
- Bash script’lerinin dosya uzantısı .sh’tır fakat her zaman bulunmak zorunda değildir. Terminalde ./<dosyaadı> şeklinde de çalıştırılabilir. Çalıştırma (execute) yetkisine sahip olmalıdır.
- Bash script’leri varsayılanda /bin dizini içindedir. Buradaki scriptler, path belirtmeden çalışıtırlabilirdir. Terminalde sadece script ismini belirtmek yeterlidir.