CPU yang penuh muncul sebagai laman perlahan, taipan SSH tersekat dan kerja cron tamat masa. Puncanya mungkin pertumbuhan sah, program lari kawalan, atau trojan perlombongan kripto. Berikut urutan diagnosis.

Langkah 1: kenal pasti pengguna

Jalankan top (tekan P untuk susun ikut CPU) atau htop yang lebih mesra, dan catat nama proses teratas serta PID. Tiga senario:

  • Proses perniagaan yang anda kenali (mysql, php-fpm, node…) → pergi ke langkah 2;
  • Nama asing atau menyamar (rentetan rawak, kdevtmpfsi, xmrig…) → berkemungkinan trojan perlombongan, lompat ke langkah 4;
  • iowait tinggi dan bukan CPU pengguna (nilai wa besar dalam top) → kesesakan sebenar ialah cakera; siasat IO cakera.

Langkah 2: punca biasa untuk proses perniagaan

  • MySQL: pertanyaan perlahan tanpa indeks. Aktifkan log pertanyaan perlahan dan tambah indeks pada imbasan jadual penuh;
  • PHP / Node: gelung tak terhingga, atau diserang crawler. Semak log akses untuk IP berfrekuensi tinggi yang tidak normal dan gunakan had kadar atau sekatan firewall;
  • Kerja cron bertindih: larian seterusnya bermula sebelum yang sebelumnya selesai dan tugas bertimbun — lindungi skrip dengan kunci (flock).

Langkah 3: adakah pelan terlalu kecil?

Jika purata beban kekal melebihi bilangan teras semasa puncak sedangkan setiap proses normal, trafik sebenar telah melebihi konfigurasi. Apabila ruang pengoptimuman tipis, menaik taraf CPU ialah penyelesaian jimat.

Langkah 4: mengendalikan trojan perlombongan yang disyaki

Gejala: CPU terpaku 100% sepanjang masa, nama proses pelik, proses hidup semula selepas dibunuh, entri crontab asing. Urutan tindakan: putuskan rangkaian proses mencurigakan, periksa crontab -l dan /etc/cron.* untuk kerja asing, dan semak ~/.ssh/authorized_keys untuk kunci awam yang disuntik. Penting: trojan sukar dibuang sepenuhnya — jalan paling selamat ialah sandarkan data dan pasang semula OS, kemudian lakukan pengukuhan firewall dan log masuk kunci sahaja seperti dalam artikel keselamatan kami. Hubungi sokongan 00Shark jika perlu bantuan.