Linux sunucu yönetimi: temel işlemler ve rutinler
Kullanıcı yetkilerini sınırlayın, güncellemeleri kontrollü uygulayın ve yedekleri geri yükleyerek sınayın. Bu rehber, Linux sunucular için günlük kontrolleri ve düzenli bakım adımlarını komutlarla açıklar.

Bu yazıda neler var?
- Sunucu yönetimi için günlük akış nasıl kurulur?
- Kullanıcı ve dosya izinleri nasıl yönetilir?
- Güncellemeler ve servisler nasıl kontrol edilir?
- CPU, bellek ve disk kullanımı nasıl izlenir?
- Yedekleme nasıl planlanır ve sınanır?
- SSH ve güvenlik kontrolleri nasıl yapılır?
- Rutin bakımda hangi hatalardan kaçınmalı?
- Sık sorulan sorular
- Linux sunucuda yeniden başlatma gerekip gerekmediğini nasıl anlarım?
- journalctl kayıtları sunucu yeniden başlayınca silinir mi?
- SSH bağlantısı kesilirse sunucuya nasıl erişirim?
- Diskte alanı en çok hangi dosyaların kullandığını nasıl bulurum?
Güvenli Linux sunucu yönetimi için en az ayrıcalıklı hesaplar, düzenli güncellemeler, kaynak kontrolleri ve test edilmiş yedekler gerekir. Küçük bir sunucuda günlük durum kontrolüne 10 dakika ayırın; güncelleme ve yedekleme süreçlerini ayrıca planlayın. Kritik güvenlik yamalarını bakım takvimine göre geciktirmeyin.
Sunucu yönetimi için günlük akış nasıl kurulur?
Önce sunucunun görevini, dışarıya açık servislerini ve sorumlu kişileri kaydedin. Bir VPS veya bulut sanal makinesi yönetiyorsanız sağlayıcı konsoluna erişimi de kontrol listesine ekleyin. Böylece SSH erişimi kesilirse kurtarma kanalınız hazır olur.
Bakımı şu sırayla yürütün: erişimi ve servisleri kontrol edin, hata kayıtlarına bakın, güncellemeleri değerlendirin, yedeklerin durumunu doğrulayın. Değişiklik öncesi ve sonrası temel servis durumunu not edin. Uygulama dağıtımını otomatikleştiren ekipler bakım adımlarını CI/CD süreciyle ilişkilendirebilir.
- Sunucuda beklenmeyen oturum veya servis olup olmadığını kontrol edin.
- Disk, bellek ve CPU kullanımını inceleyin.
- Güvenlik güncellemelerini ve yedekleme raporlarını gözden geçirin.
- Yapılan değişiklikleri tarih, işlem ve sonuçla kaydedin.
Kullanıcı ve dosya izinleri nasıl yönetilir?
Her yöneticiye ayrı kullanıcı hesabı açın; günlük işleri root hesabıyla yürütmeyin. Linux dağıtımlarında yönetici grubu adı farklı olabilir: Ubuntu ve Debian'da çoğunlukla sudo, Rocky Linux'ta ise wheel kullanılır. Mevcut yetkinizi sudo -l komutuyla inceleyin.
Yeni kullanıcıyı sudo useradd -m deniz ile oluşturabilir, parolasını sudo passwd deniz ile tanımlayabilirsiniz. Kullanıcıyı uygun yönetici grubuna eklemeden önce görevini doğrulayın. Dosya izinlerinde 750 dizin ve 640 dosya değerleri, yalnızca sahibin yazabildiği yaygın bir başlangıç tercihidir.
chmod ve chown komutlarını yalnızca gerekli dosya veya dizinde kullanın. Tüm sistemi kapsayan özyinelemeli izin değişiklikleri servisleri bozabilir. Bir hesaba artık ihtiyaç kalmadığında erişimini kaldırın; paylaşılan yönetici hesabı bırakmayın.
Güncellemeler ve servisler nasıl kontrol edilir?
Dağıtımınıza uygun paket yöneticisini kullanın. Ubuntu ve Debian'da sudo apt update paket listesini yeniler, sudo apt upgrade kurulu paketleri günceller. Rocky Linux'ta sudo dnf upgrade --refresh güncelleme denetimi ve kurulumu için kullanılır.
Üretim sunucusunda güncelleme öncesinde yedek durumunu ve servis bağımlılıklarını kontrol edin. Paket işlemi tamamlanınca systemctl --failed ile başarısız servisleri, journalctl -p err -b ile mevcut açılıştaki hata kayıtlarını inceleyin. Çekirdek veya temel sistem bileşeni güncellendiyse yeniden başlatma gereksinimini ayrıca değerlendirin.
Servis başlatma, durdurma ve yeniden yükleme işlemlerini systemctl status servis-adi, systemctl restart servis-adi ve systemctl reload servis-adi komutlarıyla yönetin. Yapılandırma dosyasını değiştirdikten sonra servisin durumunu kontrol edin; yalnızca komutun başarılı dönmesine güvenmeyin.
CPU, bellek ve disk kullanımı nasıl izlenir?
uptime sistem yükünü ve çalışma süresini gösterir. free -h bellek ve takas alanını, df -h disk alanını, df -i dosya sistemi inode kullanımını gösterir. İnteraktif süreç incelemesi için top komutunu kullanın.
Disk doluluğu ile inode tükenmesini ayrı değerlendirin; boş alan varken yeni dosya oluşturulamaması inode sorununa işaret edebilir. Yük yükseldiğinde hangi süreçlerin CPU veya bellek kullandığını belirleyin. Ardından servis kayıtlarını ve yakın tarihli yapılandırma değişikliklerini karşılaştırın.
| Kontrol | Komut | Ne gösterir? |
|---|---|---|
| CPU ve yük | uptime, top | Yük ortalaması ve çalışan süreçler |
| Bellek | free -h | Bellek ve takas alanı kullanımı |
| Disk alanı | df -h | Bağlı dosya sistemlerinin kapasitesi |
| Inode | df -i | Dosya oluşturma kapasitesinin kullanımı |
Yedekleme nasıl planlanır ve sınanır?
Yedekleme planı; hangi verinin kopyalanacağını, ne sıklıkta alınacağını ve geri yüklemenin ne kadar sürebileceğini tanımlamalıdır. Veritabanı gibi değişen veriler için uygulamayla tutarlı yedek alın. Yalnızca dosyaları kopyalamak, açık işlem hâlindeki veritabanı için tutarlı bir kopya sağlamayabilir.

Üç kopya, iki farklı ortam ve bir kopyayı ayrı konumda tutma yaklaşımı, tek disk arızasına karşı planlama çerçevesi sunar. Yedekleme işinin başarı kaydını inceleyin; seçilmiş dosyaları ayrı bir konuma geri yükleyerek sonucu doğrulayın. Aylık geri yükleme testi, bozuk veya erişilemeyen kopyaları erken yakalamaya yardımcı olur.
Yedek hedefini sunucudaki yönetici hesabından ayrı kimlik bilgileriyle koruyun. Saklama süresini ve erişim yetkilerini yazılı belirleyin. Geri yükleme adımlarını, gerekli yapılandırma dosyaları ve servis başlatma sırasıyla birlikte kaydedin.
SSH ve güvenlik kontrolleri nasıl yapılır?
SSH erişiminde kişiye özel anahtar kullanın ve gereksiz hesapları kapatın. Parola ile erişimi veya root girişini devre dışı bırakmadan önce ikinci bir yönetici oturumuyla anahtar erişiminin çalıştığını sınayın. Yanlış bir SSH yapılandırması uzaktan erişimi kesebilir.
SSH yapılandırmasını değiştirdikten sonra sudo sshd -t ile sözdizimini test edin. Test başarılıysa servisi yeniden yükleyin ve mevcut oturumu kapatmadan yeni bağlantı açın. Güvenlik duvarında yalnızca gerekli portlara izin verin; dinleyen servisleri sudo ss -tulpn ile inceleyin.
Güvenlik kontrolünde son oturumları, beklenmeyen kullanıcıları ve başarısız servisleri gözden geçirin. Ubuntu ve Debian'da güvenlik duvarı durumu için sudo ufw status, firewalld kullanılan sistemlerde sudo firewall-cmd --state komutunu çalıştırın. Açık portları uygulama gereksinimleriyle karşılaştırın.
Rutin bakımda hangi hatalardan kaçınmalı?
Sunucuda sık görülen sorunlar, izinleri gereğinden fazla açmak, yedek başarı kaydını geri yükleme testi sanmak ve güncelleme sonrası servisleri kontrol etmemektir. Bir değişikliği üretim sistemine uygulamadan önce kapsamını ve geri alma adımını belirleyin. Hata çıktısını ve değişiklik zamanını kayıt altına alın.
- Hata: Herkese yazma izni vermek. Çözüm: Dosya sahibini ve gereken grubu belirleyip en dar izni uygulayın.
- Hata: Yedek işinin tamamlanmasını yeterli görmek. Çözüm: Dosya veya veritabanını ayrı konuma geri yükleyip açıldığını sınayın.
- Hata: Güncelleme sonrası servisleri atlamak. Çözüm: Başarısız servisleri ve sistem kayıtlarını kontrol edin.
- Hata: Tek yönetici hesabını ortak kullanmak. Çözüm: Kişisel hesaplar açıp yetki değişikliklerini kaydedin.
Bakım kaydında tarih, sunucu adı, uygulanan paketler, değişen yapılandırmalar ve doğrulama sonucu bulunsun. Böylece aynı sorunu tekrar incelerken hangi işlemden sonra başladığını saptayabilirsiniz. Bu kayıt, birden fazla sunucuyu yöneten ekiplerde değişikliklerin takibini kolaylaştırır.
Sık sorulan sorular
Linux sunucuda yeniden başlatma gerekip gerekmediğini nasıl anlarım?
Dağıtımın bildirim mekanizmasını ve güncelleme çıktısını kontrol edin. Ubuntu sistemlerde /var/run/reboot-required dosyası varsa yeniden başlatma önerisi bulunur. Çekirdek güncellemesi de yeni çekirdeğin etkinleşmesi için yeniden başlatma gerektirir. Yeniden başlatmadan önce uygulama sahiplerine haber verin ve bakım penceresi belirleyin.
journalctl kayıtları sunucu yeniden başlayınca silinir mi?
Bu, systemd journal yapılandırmasına bağlıdır. Kalıcı günlükleme açıksa kayıtlar genellikle /var/log/journal altında tutulur; geçici günlükler ise yeniden başlatma sonrasında korunmayabilir. journalctl --list-boots ile mevcut ve önceki açılış kayıtlarını kontrol edin. Uzun süreli saklama için merkezi günlükleme de planlayın.
SSH bağlantısı kesilirse sunucuya nasıl erişirim?
Sağlayıcınızın web konsolu veya kurtarma konsolu üzerinden bağlantı kurun. Bulut sunucularında bu erişim, ağ veya SSH yapılandırması hatalarında ayrı bir yönetim kanalı sağlar. Konsoldan SSH servisinin durumunu ve güvenlik duvarı kurallarını inceleyin. Yapılandırmayı düzeltmeden önce dosyanın yedeğini alın.
Diskte alanı en çok hangi dosyaların kullandığını nasıl bulurum?
Önce df -h ile dolu dosya sistemini belirleyin. Ardından ilgili bağlama noktasında sudo du -xhd1 /var gibi bir komutla alt dizinlerin boyutlarını karşılaştırın. Komuttaki /var yolunu incelemek istediğiniz dizinle değiştirin. Günlükleri silmeden önce uygulama ve saklama politikasını kontrol edin.