Yazılım

Disk alanı doldu ssh giriş yapılamıyor

Sunucunuzda disk alanı tamamen dolduğunda, SSH bağlantısı kurmakta zorlanabilirsiniz. Bu yaygın bir sorundur ve sunucunun tepki vermemesine, işlemlerin başarısız olmasına ve hatta sistemin tamamen çökmesine neden olabilir. Bu rehberde, SSH erişimi olmayan bir sunucuda disk alanını nasıl temizleyebileceğinizi ve gelecekte bu sorunu nasıl önleyebileceğinizi adım adım açıklıyoruz.

🚨 Disk Alanı Dolu: Sorunun Nedenleri

Sunucu disk alanının dolmasına neden olabilecek başlıca faktörler:

  • 📂 Log dosyalarının aşırı büyümesi/var/log/ klasöründeki sistem logları zamanla büyük yer kaplayabilir.
  • 🗄️ Geçici dosyaların birikmesi/tmp/, /var/tmp/ veya sistem önbellekleri büyük yer kaplayabilir.
  • 📥 Büyük dosyaların yanlışlıkla bırakılması – Yedekleme veya medya dosyaları aşırı yer kaplayabilir.
  • 🔄 Çalışan süreçlerin aşırı disk kullanımı – Veritabanı, cache ve işlem logları diski doldurabilir.
  • 🚫 Yanlış yapılandırılmış yedekleme işlemleri – Eski yedek dosyaları otomatik olarak silinmeyebilir.

🔧 SSH Bağlantısı Olmadan Disk Temizleme Yöntemleri

SSH erişimi olmadan disk temizlemek zor olabilir, ancak aşağıdaki yöntemleri deneyerek sunucunuzu tekrar erişilebilir hale getirebilirsiniz.

1️⃣ Kurtarma Moduna Geçerek Disk Temizleme

Eğer SSH erişiminiz tamamen kaybolduysa, sunucunuzu kurtarma modunda başlatabilirsiniz.

🔹 VPS veya Dedicated Sunucu Kullanıcıları İçin:

  1. Hosting panelinize (örn. DigitalOcean, AWS, Hetzner) giriş yapın.
  2. Recovery Mode / Rescue Mode seçeneğini etkinleştirin.
  3. Sunucunuza VNC veya Web Console üzerinden bağlanın.
  4. Disk alanını temizleyin (aşağıdaki adımları uygulayarak).

🔹 Fiziksel Sunucu Kullanıcıları İçin:

  1. Sunucunun fiziksel erişimi varsa, bir Linux Live USB ile başlatabilirsiniz.
  2. Terminalden ilgili disk bölümünü bağlayarak (mount) gereksiz dosyaları temizleyin.

2️⃣ Kurtarma Modundayken Büyük Dosyaları Bulma ve Silme

Sunucuya eriştikten sonra aşağıdaki komutlarla en büyük dosyaları bulabilirsiniz:

# 1GB'dan büyük dosyaları listele
find / -type f -size +1G 2>/dev/null

# En büyük 10 dosyayı listele
du -ah / | sort -rh | head -n 10

Büyük dosyaları silmek için:

rm -rf /var/log/*.log  # Log dosyalarını temizle
rm -rf /tmp/*          # Geçici dosyaları temizle

3️⃣ Disk Kullanımını Kontrol Etme ve Gereksiz Dosyaları Silme

Disk kullanımını analiz etmek için:

df -h   # Diskin doluluk oranını kontrol et

Belirli dizinlerde fazla yer kaplayan dosyaları görmek için:

du -sh /*
du -sh /var/*
du -sh /home/*

Gereksiz dosyaları silmek için:

rm -rf /var/cache/*
rm -rf /var/tmp/*
rm -rf /root/.cache/

4️⃣ Bilinmeyen ve Alternatif Çözümler (Hiçbir Yerde Bulamayacağınız Yöntemler!)

🛠️ LVM Disk Yönetimi ile Alan Açma

Eğer sunucunuz LVM kullanıyorsa, kullanılabilir alanı artırabilirsiniz:

lvextend -L+5G /dev/mapper/centos-root
resize2fs /dev/mapper/centos-root

Bu yöntem, mevcut alanı genişletmeye yardımcı olabilir.

⚡ Disk Dolduğunda Anlık Süreç Durdurma

Eğer disk dolduğunda SSH yanıt vermiyorsa, aktif olarak çalışan büyük dosya oluşturan süreçleri durdurabilirsiniz:

kill -9 $(lsof | grep deleted | awk '{print $2}')

Bu komut, silinmiş ancak hala çalışan işlemler nedeniyle alan kaplayan dosyaları sonlandırır.

🚀 /proc Dizini ile Alan Yaratma

Eğer SSH ile bağlanamıyorsanız ancak fiziksel erişiminiz varsa, /proc üzerinden çalıştırılan süreçleri gözlemleyerek gereksiz dosyaları silebilirsiniz:

ls -lh /proc/*/fd | grep deleted

Eğer büyük yer kaplayan silinmiş bir dosya tespit ederseniz:

echo "" > /proc/<PID>/fd/<FILE_DESCRIPTOR>

Bu işlem, disk alanını anında boşaltabilir.

🛡️ Disk Alanının Dolmasını Önlemek İçin Alınacak Önlemler

Gelecekte disk dolması sorunuyla karşılaşmamak için aşağıdaki önlemleri alın:

Otomatik Log Temizleme:

echo "0 3 * * * find /var/log -type f -name '*.log' -mtime +7 -delete" >> /etc/crontab

Büyük Dosyaları İzleme:

watch -n 3600 'du -sh /var/*'

Disk Alanı Dolmadan Uyarı Almak İçin:

cat <<EOT >> /etc/crontab
*/30 * * * * root df -h | grep '/dev/sda1' | awk '{if ($5 >= 90) print "Disk dolmak üzere!"}' | mail -s "Disk Alanı Uyarısı" admin@domain.com
EOT

Gereksiz Paketleri Kaldırın:

apt autoremove -y
apt clean

Önceden Planlı Disk Kullanımı Denetimi:

cronjob: du -sh /* | sort -rh | head -n 10

🚀 Sonuç

SSH ile giriş yapamıyorsanız, kurtarma modu veya fiziksel erişim yoluyla disk temizliği yaparak sorunu çözebilirsiniz. Disk alanınızı düzenli olarak takip ederek bu tür sorunları önleyebilirsiniz. Yukarıdaki adımları takip ederek sunucunuzu tekrar çalışır hale getirin! 🔥

Sorularınız veya önerileriniz varsa yorum bırakabilirsiniz! 💬

yakın zamanda Gönderilenler

  • Genel

Apple watch çok fazla parola denemesi çözüm

🛑 Apple Watch'ta Çok Fazla Parola Denemesi: Kesin Çözüm Rehberi (En Kapsamlı Anlatım) ⌚ Apple…

1 gün önce
  • Genel

Eski Telefonunuzdan Yeni Telefona Veri Aktarmanın En Kolay Yolu

Yeni bir telefona geçtiğinizde, eski cihazınızdaki tüm verileri eksiksiz ve güvenli bir şekilde aktarmak önemlidir.…

1 gün önce
  • Genel

Google one abonelik nasıl iptal edilir

Google one abonelik nasıl iptal edilir Google One, bulut depolama alanı ve ek avantajlar sunan…

2 gün önce