İşletim Sistemleri

Linux Sunucuda "htop" Komutu İle İşlemciyi ve RAM'i Sömüren Scriptleri Bulma

  • 14 dk okuma
  • Hostragons Ekibi
Linux Sunucuda "htop" Komutu İle İşlemciyi ve RAM'i Sömüren Scriptleri Bulma

Linux sunucuda htop komutu, işlemciyi ve RAM'i aşırı tüketen scriptleri gerçek zamanlı olarak bulmak için kullanılan en pratik izleme araçlarından biridir. htop ekranında CPU%, MEM%, PID, USER, TIME+ ve COMMAND sütunlarını inceleyerek hangi PHP, Python, Node.js, cron, veritabanı veya sistem sürecinin sunucuyu yorduğunu görebilir; ardından sürecin sahibini, dosya yolunu ve çalışma amacını kontrol ederek güvenli şekilde müdahale edebilirsiniz.

Paylaşımlı hosting, VPS, VDS veya dedicated sunucu fark etmeksizin, ani yavaşlamaların önemli bir kısmı kontrolsüz çalışan scriptlerden kaynaklanır. Örneğin hatalı bir WordPress eklentisi, sonsuz döngüye giren bir PHP dosyası, yoğun çalışan bir cron görevi, optimize edilmemiş bir veritabanı sorgusu veya ele geçirilmiş bir web dosyası dakikalar içinde CPU kullanımını yüzde 100'e yaklaştırabilir. RAM tüketimi arttığında ise servisler takılabilir, MySQL bağlantıları düşebilir, web siteleri 503 hatası verebilir veya Linux çekirdeği OOM Killer ile bazı süreçleri sonlandırabilir.

Bu rehberde htop kurulumundan başlayarak ekranın nasıl okunacağını, CPU ve RAM'i sömüren scriptlerin nasıl ayırt edileceğini, PID üzerinden dosya yolunun nasıl bulunacağını ve sürece güvenli şekilde nasıl müdahale edileceğini adım adım ele alacağız. Ayrıca güvenlik şüphesi, cron kontrolü, log analizi ve tekrar yaşanmaması için uygulanabilir optimizasyon önerilerine de yer vereceğiz. Eğer sunucunuzda sık sık kaynak limiti sorunu yaşıyorsanız, altyapı seçimini de gözden geçirmek için VPS sunucu paketleri ve yüksek performanslı web hosting sayfalarını inceleyebilirsiniz.

htop Nedir ve Neden top Komutundan Daha Kullanışlıdır?

htop, Linux sistemlerde çalışan süreçleri etkileşimli olarak izlemeye yarayan bir terminal aracıdır. Klasik top komutuna benzer ancak daha okunabilir arayüz, renkli kaynak göstergeleri, kolay sıralama, arama, filtreleme ve süreç yönetimi özellikleri sunar. Bu nedenle özellikle canlı sunucuda hızlı teşhis yaparken htop çoğu sistem yöneticisinin ilk baktığı araçlardan biridir.

htop ile anlık olarak şu bilgileri görebilirsiniz:

  • Her sürecin kullandığı CPU yüzdesi
  • Her sürecin kullandığı RAM yüzdesi ve bellek miktarı
  • Sürecin PID numarası
  • Süreci çalıştıran kullanıcı
  • Komut satırı veya script adı
  • Çalışma süresi ve öncelik değeri
  • Load average, toplam RAM, swap ve CPU çekirdek kullanımı

Özellikle bir hosting ortamında aynı sunucuda birden fazla site, kullanıcı veya servis çalışıyorsa yalnızca toplam kaynak kullanımını görmek yeterli değildir. Sorunun hangi kullanıcıya, hangi web sitesine, hangi cron görevine veya hangi script dosyasına ait olduğunu bulmak gerekir. Linux sunucuda htop komutu bu noktada hızlı bir ilk teşhis sağlar.

htop Kurulumu: Dağıtıma Göre Komutlar

Birçok modern Linux dağıtımında htop hazır gelmeyebilir. Root veya sudo yetkisine sahipseniz birkaç saniyede kurabilirsiniz. Kurulumdan önce paket listesini güncellemek, özellikle yeni kurulan sunucularda hata ihtimalini azaltır.

Ubuntu ve Debian Sunucularda htop Kurulumu

Ubuntu veya Debian tabanlı bir sunucuda şu komutlar kullanılabilir:

sudo apt update

sudo apt install htop -y

Kurulumdan sonra htop komutunu yazarak aracı başlatabilirsiniz. Eğer sudo yetkiniz yoksa hosting sağlayıcınızdan destek talep etmeniz gerekebilir. Yönetilebilir bir VPS kullanıyorsanız root erişimi genellikle size aittir.

AlmaLinux, Rocky Linux, CentOS ve RHEL Kurulumu

RHEL tabanlı sistemlerde paket yöneticisi sürüme göre dnf veya yum olabilir:

sudo dnf install htop -y

Eski CentOS sürümlerinde EPEL deposu gerekebilir:

sudo yum install epel-release -y

sudo yum install htop -y

Kurulum başarılıysa terminalde htop yazdığınızda renkli izleme ekranı açılır. Sunucu yönetimiyle yeni tanışıyorsanız temel Linux komutları için Linux komutları rehberi içeriği de pratik bir başlangıç sağlar.

htop Ekranını Okuma: Hangi Sütun Ne Anlama Gelir?

htop açıldığında ekranın üst kısmında CPU çekirdekleri, RAM, swap, task sayısı, thread sayısı, load average ve uptime bilgileri yer alır. Alt bölümde ise çalışan süreçler listelenir. Sorun teşhisinde en çok kullanılan alanlar aşağıdaki gibidir.

Sütun Anlamı Ne Zaman Şüphelenmeli?
PID Sürecin benzersiz kimlik numarasıdır. Dosya yolunu ve bağlantıları incelemek için gerekir.
USER Süreci çalıştıran Linux kullanıcısıdır. Beklenmeyen kullanıcı altında çalışan işlem varsa kontrol edilmelidir.
CPU% Sürecin anlık işlemci kullanım oranıdır. Uzun süre yüzde 80-100 aralığında kalan süreçler incelenmelidir.
MEM% Sürecin toplam RAM içindeki payıdır. Tek bir script yüzde 20 ve üzeri RAM kullanıyorsa risklidir.
TIME+ Sürecin toplam CPU zamanıdır. Kısa süreli değil, uzun süredir kaynak tüketen işleri gösterir.
COMMAND Çalışan komut, servis veya script bilgisidir. php, python, node, perl, bash, java gibi süreçlerde dosya yolu aranmalıdır.

Burada dikkat edilmesi gereken önemli nokta, anlık bir CPU sıçramasının her zaman sorun olmadığıdır. Örneğin yedekleme, görsel optimizasyon, cache temizleme veya yoğun trafik sırasında CPU kısa süreli yükselebilir. Sorun, aynı sürecin dakikalar boyunca yüksek CPU veya RAM tüketmesi, load average değerinin çekirdek sayısının çok üzerine çıkması ve web servislerinin yanıt veremez hale gelmesidir.

CPU Sömüren Scriptleri htop ile Bulma

İşlemciyi aşırı kullanan scriptleri bulmak için htop ekranındayken F6 tuşu ile sıralama alanını seçebilir veya CPU% sütununa göre sıralama yapabilirsiniz. Bazı terminallerde fare desteği açıksa CPU% başlığına tıklamak da yeterlidir. En üstte görünen süreçler o anda en fazla CPU kullanan işlemlerdir.

Adım 1: CPU% Sütununa Göre Sıralayın

htop çalışırken süreçleri CPU kullanımına göre sıralayın. Örneğin php-fpm, php, python3, node, java, mysqld veya bash gibi süreçlerden biri sürekli üst sıralarda kalıyorsa bu süreci not alın. Tek çekirdekli kullanımda yüzde 100 normal üst sınır gibi görünürken, çok çekirdekli sistemlerde bir süreç yüzde 200 veya yüzde 400 gibi değerler gösterebilir. Bu, sürecin birden fazla çekirdeği kullandığı anlamına gelir.

Adım 2: PID ve USER Bilgisini Not Alın

Şüpheli sürecin PID numarasını ve USER bilgisini kaydedin. Örneğin PID 24819, USER olarak siteuser ve COMMAND alanında php /home/siteuser/public_html/wp-cron.php görüyorsanız, sorunun ilgili web sitesindeki cron veya WordPress mekanizmasıyla ilişkili olma ihtimali yüksektir. Eğer COMMAND alanı çok kısaysa htop ayarlarından komut satırının tamamını göstermeyi etkinleştirebilir veya ps komutuyla detay alabilirsiniz.

Adım 3: Sürecin Gerçek Komutunu Görün

PID üzerinden ayrıntılı komut satırını görmek için şu komut kullanılabilir:

ps -fp PID

Örnek kullanım:

ps -fp 24819

Bu çıktı genellikle scriptin hangi dosyadan çalıştığını gösterir. Eğer komut php /home/kullanici/public_html/index.php gibi görünüyorsa trafik kaynaklı bir web isteği olabilir. Eğer php /home/kullanici/public_html/wp-content/plugins/bilinmeyen-eklenti/task.php görünüyorsa eklenti bazlı bir sorun olabilir.

Adım 4: Dosya Yolunu ve Açık Dosyaları Kontrol Edin

Bir sürecin hangi dosyaları kullandığını görmek için lsof aracı oldukça değerlidir:

lsof -p PID

Bu komut, sürecin açık tuttuğu dosyaları, kütüphaneleri, logları ve ağ bağlantılarını gösterir. Web hosting ortamlarında bu çıktı sayesinde hangi site dizininin aktif olduğunu anlamak mümkündür. Örneğin /home/example/public_html/wp-content/uploads içinde çalışan garip isimli bir PHP dosyası görürseniz bu bir güvenlik ihlali belirtisi olabilir. Böyle bir durumda yalnızca süreci sonlandırmak yetmez; dosya temizliği, parola değişimi, eklenti güncellemesi ve güvenlik taraması yapılmalıdır. SSL ve güvenli bağlantı yapılandırmaları için SSL sertifikası çözümleri sayfası da gözden geçirilebilir.

RAM Sömüren Scriptleri htop ile Bulma

RAM sorunları CPU sorunlarından daha sinsi ilerleyebilir. CPU yükseldiğinde genellikle anlık yavaşlama hissedilir; RAM tükendiğinde ise servisler beklenmedik şekilde kapanabilir, swap yoğun kullanılır ve sunucu genelinde gecikme artar. htop ekranında MEM% sütununa göre sıralama yaparak en çok bellek kullanan süreçleri listeleyebilirsiniz.

MEM%, RES ve Swap İlişkisini Anlamak

htop varsayılan görünümünde MEM% oranını gösterir. Bazı yapılandırmalarda VIRT, RES ve SHR sütunları da görünür. RAM analizi yaparken RES değeri özellikle önemlidir; çünkü sürecin fiziksel bellekte gerçekten kullandığı alanı ifade eder. VIRT değeri her zaman gerçek RAM tüketimi anlamına gelmez, bu nedenle tek başına yanıltıcı olabilir.

Örneğin 4 GB RAM'e sahip bir VPS üzerinde tek bir PHP sürecinin 900 MB RES kullanması normal değildir. Benzer şekilde Node.js uygulamasının zamanla 200 MB'den 1.5 GB'ye çıkması bellek sızıntısı ihtimalini düşündürür. MySQL veya MariaDB tarafında yüksek RAM kullanımı ise bazen normal cache davranışı olabilir; burada sorgu performansı, buffer ayarları ve toplam sistem belleği birlikte değerlendirilmelidir.

RAM Tüketen Scriptlerde Tipik Nedenler

  • Sonsuz döngüye giren PHP, Python veya Node.js kodları
  • Büyük CSV, XML veya JSON dosyalarının belleğe tek seferde alınması
  • Optimize edilmemiş WordPress eklentileri ve tema fonksiyonları
  • Görsel işleme, PDF üretimi veya video dönüştürme işlemleri
  • Yetersiz cache kullanımı nedeniyle tekrar eden ağır sorgular
  • Bot trafiği veya saldırı nedeniyle aynı scriptin çok sayıda çalışması
  • Bellek sızıntısı olan uzun süreli arka plan servisleri

Bu tür sorunlarda sadece kill komutu ile süreci kapatmak geçici rahatlama sağlar. Kalıcı çözüm için scriptin ne yaptığı, hangi girdilerle tetiklendiği ve neden bellek boşaltmadığı analiz edilmelidir.

htop İçinde Arama, Filtreleme ve Ağaç Görünümü

Sunucuda yüzlerce süreç çalışıyorsa liste içinde manuel arama yapmak zorlaşır. htop bu konuda kullanışlı kısayollar sunar. F3 ile arama yapabilir, F4 ile filtre uygulayabilir, F5 ile ağaç görünümüne geçebilirsiniz. Ağaç görünümü özellikle parent-child ilişkisini görmek için önemlidir. Örneğin nginx veya Apache altından çalışan php-fpm child süreçlerini, cron altında tetiklenen scriptleri veya supervisor tarafından yönetilen Node.js servislerini daha net görebilirsiniz.

Pratik Filtre Örnekleri

  • php yazarak yalnızca PHP süreçlerini görüntüleyin.
  • python yazarak Python scriptlerini ayıklayın.
  • wp-cron yazarak WordPress cron davranışını kontrol edin.
  • node yazarak Node.js uygulamalarını inceleyin.
  • kullanıcı adını filtreleyerek tek bir hosting hesabının süreçlerini görün.

Bu filtreler, özellikle çok kullanıcılı sunucularda zaman kazandırır. Örneğin aynı sunucuda 30 farklı site barındırılıyorsa USER sütunu ve komut yolu birlikte incelenerek sorunun hangi hesaptan kaynaklandığı hızlıca anlaşılır. Domain bazlı projeleriniz için yönetim tarafını sadeleştirmek isterseniz domain sorgulama ve kayıt sayfasına göz atabilirsiniz.

Şüpheli PID İçin Uygulanacak Güvenli Müdahale Planı

Kaynak tüketen bir süreç bulduğunuzda refleks olarak hemen kill -9 kullanmak cazip gelebilir. Ancak bu yaklaşım veri kaybına, yarım kalmış yazma işlemlerine veya servis tutarsızlıklarına yol açabilir. Daha güvenli bir plan izlemek gerekir.

1. Süreci Belgeleyin

Önce PID, USER, COMMAND, CPU%, MEM% ve zamanı not alın. Mümkünse htop ekran görüntüsü alın. Bu kayıtlar tekrar eden sorunlarda karşılaştırma yapmayı kolaylaştırır. Özellikle ajans, e-ticaret veya kurumsal projelerde müşteriye teknik açıklama sunarken bu veriler işe yarar.

2. Sürecin Dosya Yolunu Doğrulayın

ps -fp PID ve lsof -p PID çıktılarıyla dosya yolunu doğrulayın. Dosya web kök dizinindeyse ilgili uygulama loglarını inceleyin. WordPress için wp-content/debug.log, web sunucusu için access log ve error log, PHP-FPM için slow log önemli ipuçları verir.

3. Önce Nazik Sonlandırma Deneyin

Süreç gerçekten kontrolsüzse önce standart sonlandırma sinyali gönderin:

kill PID

Birkaç saniye bekleyin ve htop ekranında sürecin kapanıp kapanmadığını kontrol edin. Kapanmıyorsa ve sistem sağlığını ciddi şekilde bozuyorsa son çare olarak şu komut kullanılabilir:

kill -9 PID

kill -9 sinyali sürece temizlik yapma fırsatı vermeden sonlandırır. Bu yüzden veritabanı işlemleri, dosya yazma süreçleri veya yedekleme görevleri için dikkatli kullanılmalıdır.

4. Tekrar Başlıyorsa Tetikleyiciyi Bulun

Bir süreci kapatmanıza rağmen saniyeler içinde yeniden başlıyorsa arkasında cron, systemd service, supervisor, web isteği veya bot trafiği olabilir. Cron kayıtları için crontab -l, sistem servisleri için systemctl status servisadi, web trafiği için access log incelenmelidir. Sorun WordPress wp-cron kaynaklıysa gerçek cron yapılandırması ve cache politikası gözden geçirilmelidir.

htop Bulgularını Loglarla Birleştirme

htop size neyin kaynak tükettiğini gösterir; loglar ise neden tükettiğini anlamanızı sağlar. Bu iki veri birlikte kullanılmadığında teşhis eksik kalır. Örneğin htop üzerinde php-fpm süreci yüzde 180 CPU kullanıyor olabilir; fakat hangi URL'nin veya hangi botun bu süreci tetiklediğini access log olmadan göremeyebilirsiniz.

Kontrol edilebilecek log örnekleri şunlardır:

  • Web sunucusu access log: Yoğun istek alan URL'leri gösterir.
  • Web sunucusu error log: PHP hataları, dosya izinleri ve 500 hatalarını gösterir.
  • PHP-FPM slow log: Yavaş çalışan PHP dosyalarını ve fonksiyonlarını gösterir.
  • MySQL slow query log: Ağır SQL sorgularını tespit eder.
  • Auth log veya secure log: Şüpheli giriş denemelerini gösterir.
  • Cron log: Zamanlanmış görevlerin ne zaman çalıştığını gösterir.

Örneğin htop'ta yüksek CPU tüketen PID'nin aynı dakikada access log içinde /wp-admin/admin-ajax.php adresine binlerce istek aldığı görülürse, sorun bir eklenti, bot trafiği veya kötü tasarlanmış AJAX işlemi olabilir. Bu durumda WAF, rate limit, cache ve eklenti optimizasyonu birlikte düşünülmelidir. Web sitesi performansını daha geniş ölçekte ele almak için web sitesi hız optimizasyonu içeriği faydalı olabilir.

Normal Yük ile Sorunlu Yük Nasıl Ayırt Edilir?

Her yüksek kaynak kullanımı kriz anlamına gelmez. Sunucunun donanımı, trafik seviyesi, uygulama türü ve bakım işlemleri dikkate alınmalıdır. 2 çekirdekli bir VPS için load average değerinin uzun süre 6-8 seviyesinde kalması ciddi bir darboğazdır. 16 çekirdekli bir dedicated sunucuda ise aynı değer normal olabilir. Bu nedenle load average yorumlanırken çekirdek sayısı mutlaka bilinmelidir.

Gözlem Muhtemel Durum Önerilen Aksiyon
CPU kısa süre yüzde 100, sonra normale dönüyor Geçici yoğun işlem Log ile doğrulayın, hemen müdahale etmeyin.
Aynı PID dakikalarca yüksek CPU kullanıyor Sonsuz döngü veya ağır işlem PID yolunu bulun, scripti inceleyin.
RAM sürekli artıyor ve düşmüyor Bellek sızıntısı Servis kodunu ve worker ayarlarını kontrol edin.
Swap kullanımı hızla yükseliyor Fiziksel RAM yetersiz RAM optimizasyonu veya paket yükseltme planlayın.
Çok sayıda aynı PHP süreci var Bot trafiği veya yoğun istek Access log, firewall ve cache kontrolü yapın.

Bu karşılaştırma, gereksiz panik ile gerçek performans krizini ayırmanıza yardımcı olur. Özellikle e-ticaret sitelerinde kampanya dönemleri, ödeme entegrasyonları ve stok güncellemeleri geçici kaynak artışı oluşturabilir. Ancak bu artış kullanıcı deneyimini bozuyorsa uygulama optimizasyonu ve sunucu kapasitesi birlikte değerlendirilmelidir.

Güvenlik Şüphesi: Kaynak Tüketen Script Zararlı Olabilir mi?

CPU veya RAM sömüren script her zaman masum bir hata olmayabilir. Ele geçirilmiş web sitelerinde saldırganlar spam gönderimi, kripto madenciliği, proxy trafiği, DDoS botu veya arka kapı scriptleri çalıştırabilir. htop ekranında beklenmeyen kullanıcı altında çalışan garip komutlar, rastgele isimli dosyalar, /tmp dizininden çalışan ikili dosyalar veya public_html/uploads içinde çalışan PHP dosyaları güvenlik açısından ciddiye alınmalıdır.

Şüpheli Belirtiler

  • COMMAND alanında anlamsız veya rastgele karakterli dosya adları
  • /tmp, /dev/shm veya uploads klasöründen çalışan dosyalar
  • Normalde olmaması gereken perl, python veya bash süreçleri
  • Yüksek dış ağ bağlantısı oluşturan süreçler
  • Aynı kullanıcının kısa sürede çok sayıda süreç başlatması
  • Web dosyalarında yakın tarihli izinsiz değişiklikler

Böyle bir durumda süreci kapatmadan önce mümkünse kanıt niteliğinde komut çıktıları alın. Ardından dosya izinlerini kontrol edin, zararlı dosyaları izole edin, tüm panel ve CMS parolalarını değiştirin, eklenti-tema çekirdek dosyalarını güncelleyin ve güvenlik taraması yapın. Ayrıca yönetici panellerinde iki faktörlü kimlik doğrulama kullanılması ve gereksiz yazma izinlerinin kaldırılması uzun vadede riski azaltır.

Performans Sorunlarının Tekrarını Önlemek İçin En İyi Uygulamalar

htop ile sorunu bulmak önemlidir; ancak asıl değer, aynı problemin tekrar yaşanmasını engellemektir. Aşağıdaki önlemler Linux sunucularda CPU ve RAM kaynaklı kesintileri ciddi ölçüde azaltır.

  • PHP memory_limit, max_execution_time ve pm.max_children değerlerini sunucu kapasitesine göre ayarlayın.
  • WordPress, Joomla veya özel yazılımlarda cache mekanizması kullanın.
  • Gereksiz eklenti, tema ve modülleri kaldırın.
  • MySQL slow query log ile ağır sorguları optimize edin.
  • Cron görevlerini aynı dakikaya yığmayın; aralıklı çalıştırın.
  • Bot trafiği için rate limit, robots.txt ve güvenlik duvarı kuralları uygulayın.
  • Uygulama loglarını düzenli döndürün; devasa log dosyalarının disk ve RAM etkisini izleyin.
  • Sunucu metriklerini yalnızca kriz anında değil, düzenli olarak takip edin.

Eğer optimizasyonlara rağmen kaynak kullanımı sürekli yüksekse, sorun yalnızca yazılım tarafında olmayabilir. Trafik artmış, uygulama büyümüş veya mevcut hosting paketi yetersiz kalmış olabilir. Bu durumda ölçeklenebilir bir VPS, daha fazla RAM, daha hızlı NVMe disk veya izole kaynaklı bir sunucu mantıklı hale gelir. İhtiyaç analizi için hosting paketleri ve kurumsal sunucu çözümleri bağlantıları üzerinden seçenekler karşılaştırılabilir.

Örnek Senaryo: WordPress Sitesinde CPU Patlaması

Gerçekçi bir senaryo üzerinden ilerleyelim. 4 çekirdek ve 8 GB RAM'e sahip bir VPS üzerinde birkaç WordPress sitesi çalışıyor. Kullanıcılar sitenin yavaşladığını ve zaman zaman 502 hatası aldığını bildiriyor. Terminalde htop açıldığında load average 12 seviyesinde, CPU çekirdeklerinin tamamı dolu ve üst sıralarda aynı kullanıcıya ait çok sayıda php-fpm süreci görünüyor.

F4 ile kullanıcı adı filtreleniyor. CPU tüketen süreçlerden birinin PID'si not alınıyor. ps -fp PID çıktısında php-fpm worker görünüyor; lsof -p PID ile /home/site/public_html/wp-content/plugins/example-importer/import.php dosyasına erişim olduğu fark ediliyor. Access log incelendiğinde aynı dakikalarda bu dosyayı tetikleyen yönetici isteği ve ardından tekrar eden AJAX çağrıları görülüyor.

Çözüm olarak import işlemi durduruluyor, eklentinin zamanlanmış görevi kapatılıyor, büyük veri içe aktarma işlemi parçalara bölünüyor ve PHP max_execution_time sınırı yeniden düzenleniyor. Ayrıca wp-cron yerine sistem cron kullanılıyor. Sonuç olarak load average 12'den 1.8 seviyesine düşüyor, CPU kullanımı normale dönüyor ve web yanıt süreleri belirgin şekilde iyileşiyor. Bu örnek, htop'un tek başına değil; ps, lsof ve log analiziyle birlikte kullanıldığında ne kadar etkili olduğunu gösterir.

htop Kullanırken Yapılan Yaygın Hatalar

  • Sadece en üstteki süreci kapatıp kök nedeni araştırmamak.
  • VIRT değerini gerçek RAM kullanımı sanmak.
  • MySQL'in cache amaçlı RAM kullanımını doğrudan sorun kabul etmek.
  • kill -9 komutunu ilk seçenek olarak kullanmak.
  • Logları kontrol etmeden uygulama veya kullanıcıyı suçlamak.
  • Load average değerini CPU çekirdek sayısından bağımsız yorumlamak.
  • Güvenlik ihlali ihtimalinde dosya bütünlüğünü incelememek.

Bu hatalardan kaçınmak, hem kesinti süresini azaltır hem de yanlış müdahale kaynaklı veri kaybı riskini düşürür. Sistem yönetiminde doğru teşhis, çoğu zaman hızlı müdahaleden daha değerlidir.

Sıkça Sorulan Sorular

Linux sunucuda htop komutu ne işe yarar?

Linux sunucuda htop komutu, çalışan süreçlerin CPU, RAM, kullanıcı, PID ve komut bilgilerini gerçek zamanlı gösterir. Bu sayede işlemciyi veya belleği aşırı tüketen scriptleri hızlıca tespit edebilirsiniz.

htop ile CPU tüketen scripti nasıl bulurum?

htop ekranında süreçleri CPU% sütununa göre sıralayın, uzun süre üstte kalan sürecin PID ve USER bilgisini not alın. Ardından ps -fp PID ve lsof -p PID komutlarıyla scriptin dosya yolunu ve ne çalıştırdığını doğrulayın.

RAM tüketiminde MEM% mi VIRT mi dikkate alınmalı?

RAM analizinde MEM% ve özellikle RES değeri daha anlamlıdır. VIRT, ayrılmış sanal bellek miktarını gösterir ve her zaman fiziksel RAM tüketimi anlamına gelmez.

Kaynak tüketen süreci hemen kill -9 ile kapatmak doğru mu?

Genellikle hayır. Önce sürecin ne olduğunu belgelemek, dosya yolunu kontrol etmek ve normal kill PID komutunu denemek daha güvenlidir. kill -9 yalnızca süreç kapanmıyorsa ve sunucu sağlığını ciddi şekilde bozuyorsa son çare olarak kullanılmalıdır.

htop'ta yüksek CPU kullanımı her zaman saldırı belirtisi midir?

Hayır. Yedekleme, import, cache oluşturma veya yoğun trafik de CPU kullanımını artırabilir. Ancak rastgele dosya adları, /tmp veya uploads içinden çalışan scriptler ve beklenmeyen kullanıcı süreçleri güvenlik şüphesi doğurur.

Özetle, Linux sunucuda htop komutu CPU ve RAM'i sömüren scriptleri bulmak için hızlı, pratik ve etkili bir başlangıç noktasıdır. En doğru sonuç için htop verilerini PID analizi, lsof çıktısı, cron kontrolü ve log incelemesiyle birleştirmek gerekir. Sunucunuzda kaynak sorunları sık tekrarlanıyorsa hem yazılım optimizasyonunu hem de altyapı kapasitesini birlikte değerlendirin; ihtiyaç halinde Hostragons'un hosting, VPS ve SSL çözümlerini satış baskısı olmadan karşılaştırarak projenize en uygun yapıyı seçebilirsiniz.

Bu yazıyı paylaş:

Hostragons Ekibi

Hosting, sunucu ve alan adı konularında uzman ekibimizden güncel rehberler. Projeniz için doğru çözümü birlikte bulalım.

Bize Ulaşın