Linux Sistem Yönetimi Temelleri

Linux sistem yönetiminin temel kavramları, komutları ve en iyi uygulamaları. Yeni başlayanlar için kapsamlı rehber.

5 min read
802 words

Linux Sistem Yönetimi Temelleri#

Linux sistem yönetimi, modern IT altyapısının temel taşlarından biridir. Bu rehberde, Linux sistemlerini etkili bir şekilde yönetmek için bilmeniz gereken temel kavramları ve uygulamaları ele alacağız.

Sistem Yönetimi Nedir?#

Sistem yönetimi, bilgisayar sistemlerinin güvenilir, verimli ve güvenli bir şekilde çalışmasını sağlamak için yapılan tüm faaliyetleri kapsar. Linux ortamında bu görevler şunları içerir:

  • Kullanıcı ve grup yönetimi
  • Dosya sistemi yönetimi
  • Süreç (process) yönetimi
  • Ağ yapılandırması
  • Güvenlik yönetimi
  • Sistem izleme ve performans optimizasyonu

Temel Linux Komutları#

Dosya ve Dizin İşlemleri#

# Dizin içeriğini listele ls -la # Dizin değiştir cd /path/to/directory # Dosya kopyala cp source.txt destination.txt # Dosya taşı/yeniden adlandır mv oldname.txt newname.txt # Dosya sil rm filename.txt # Dizin oluştur mkdir new_directory # Dosya izinlerini değiştir chmod 755 script.sh # Dosya sahipliğini değiştir chown user:group filename.txt

Sistem Bilgileri#

# Sistem bilgilerini görüntüle uname -a # Disk kullanımını kontrol et df -h # Bellek kullanımını kontrol et free -h # Çalışan süreçleri listele ps aux # Sistem kaynaklarını izle top htop # Ağ bağlantılarını kontrol et netstat -tulpn ss -tulpn

Kullanıcı ve Grup Yönetimi#

Kullanıcı İşlemleri#

# Yeni kullanıcı oluştur sudo useradd -m -s /bin/bash username # Kullanıcı şifresi belirle sudo passwd username # Kullanıcıyı gruba ekle sudo usermod -aG groupname username # Kullanıcı bilgilerini görüntüle id username # Kullanıcıyı sil sudo userdel -r username

Grup İşlemleri#

# Yeni grup oluştur sudo groupadd groupname # Grup bilgilerini görüntüle getent group groupname # Grubu sil sudo groupdel groupname

Dosya Sistemi Yönetimi#

Disk Bölümleme#

# Disk bölümlerini listele lsblk fdisk -l # Yeni bölüm oluştur sudo fdisk /dev/sdb # Dosya sistemi oluştur sudo mkfs.ext4 /dev/sdb1 # Bölümü mount et sudo mount /dev/sdb1 /mnt/data # Kalıcı mount için /etc/fstab düzenle echo '/dev/sdb1 /mnt/data ext4 defaults 0 2' | sudo tee -a /etc/fstab

Dosya İzinleri#

Linux'ta dosya izinleri üç kategoride tanımlanır:

  • Owner (Sahip): Dosyanın sahibi
  • Group (Grup): Dosyanın ait olduğu grup
  • Others (Diğerleri): Diğer tüm kullanıcılar
# İzin türleri: # r (read) = 4 # w (write) = 2 # x (execute) = 1 # Örnek izin kombinasyonları: chmod 755 file.txt # rwxr-xr-x chmod 644 file.txt # rw-r--r-- chmod 600 file.txt # rw-------

Süreç Yönetimi#

Süreç Kontrolü#

# Süreçleri listele ps aux | grep process_name # Süreç öldür kill PID killall process_name # Süreç önceliğini değiştir nice -n 10 command renice 5 PID # Arka planda çalıştır command & nohup command &

Systemd Servisleri#

# Servis durumunu kontrol et sudo systemctl status service_name # Servisi başlat sudo systemctl start service_name # Servisi durdur sudo systemctl stop service_name # Servisi yeniden başlat sudo systemctl restart service_name # Servisi otomatik başlatmayı etkinleştir sudo systemctl enable service_name # Tüm servisleri listele systemctl list-units --type=service

Ağ Yönetimi#

Ağ Yapılandırması#

# Ağ arayüzlerini listele ip addr show ifconfig # IP adresi ata sudo ip addr add 192.168.1.100/24 dev eth0 # Varsayılan gateway ayarla sudo ip route add default via 192.168.1.1 # DNS ayarları (/etc/resolv.conf) echo 'nameserver 8.8.8.8' | sudo tee /etc/resolv.conf

Güvenlik Duvarı (UFW)#

# UFW'yi etkinleştir sudo ufw enable # Port aç sudo ufw allow 22/tcp sudo ufw allow 80/tcp sudo ufw allow 443/tcp # Belirli IP'den bağlantıya izin ver sudo ufw allow from 192.168.1.100 # Kuralları listele sudo ufw status verbose

Sistem İzleme ve Performans#

Log Dosyaları#

# Sistem loglarını görüntüle sudo journalctl -f sudo tail -f /var/log/syslog # Belirli servise ait loglar sudo journalctl -u service_name # Boot logları sudo journalctl -b

Performans İzleme#

# CPU kullanımı top htop sar -u 1 5 # Bellek kullanımı free -h vmstat 1 5 # Disk I/O iostat -x 1 5 iotop # Ağ trafiği iftop nethogs

Yedekleme ve Güvenlik#

Yedekleme Stratejileri#

# rsync ile yedekleme rsync -avz /source/ /backup/ # tar ile arşivleme tar -czf backup.tar.gz /path/to/data # Otomatik yedekleme scripti #!/bin/bash DATE=$(date +%Y%m%d_%H%M%S) tar -czf /backup/system_backup_$DATE.tar.gz /etc /home

Güvenlik En İyi Uygulamaları#

  1. Düzenli güncellemeler:
sudo apt update && sudo apt upgrade -y # Ubuntu/Debian sudo yum update -y # CentOS/RHEL
  1. SSH güvenliği:
# /etc/ssh/sshd_config düzenle PermitRootLogin no PasswordAuthentication no Port 2222
  1. Fail2ban kurulumu:
sudo apt install fail2ban sudo systemctl enable fail2ban

Sonuç#

Linux sistem yönetimi, sürekli öğrenme gerektiren geniş bir alandır. Bu temel kavramları öğrendikten sonra, daha ileri konulara geçebilir ve uzmanlaşmak istediğiniz alanlarda derinleşebilirsiniz.

Sistem yönetiminde başarılı olmak için:

  • Düzenli pratik yapın
  • Logları takip etme alışkanlığı edinin
  • Yedekleme stratejinizi hiç ihmal etmeyin
  • Güvenlik güncellemelerini takip edin
  • Topluluktan yardım almaktan çekinmeyin

Bir sonraki yazımızda, Docker ve konteyner teknolojileri ile sistem yönetimini ele alacağız.