Không gì bực bội hơn cài Linux trên PC mà hệ thống vẫn chậm chạp. Sau khi đầu tiền build, mua hoặc nâng cấp máy, bạn mong nó mượt mà. Tuy nhiên, không phải lúc nào cũng vậy, và với Linux, bạn có thể điều tra khá nhiều để tìm ra vấn đề. Hôm nay, chúng tôi chỉ cách tìm nguyên nhân máy Linux chạy chậm.
Tại sao máy Linux chạy chậm?
Máy Linux có thể chậm do một trong các nguyên nhân sau:
- Service không cần thiết khởi động cùng boot bởi
systemd(hoặc init system bạn dùng) - Tài nguyên cao do nhiều ứng dụng nặng mở cùng lúc
- Sự cố hoặc misconfiguration phần cứng
Trước khi biết cách tăng tốc Linux, cần biết phương pháp nào giúp tìm: service khởi động boot, process chạy priority cao/thấp, sức khỏe CPU, RAM có bị lấp đầy dữ liệu thừa không, swap memory có full không, ổ cứng có hoạt động tốt không.
Kiểm tra thông tin CPU
Muốn tăng tốc Linux chậm, bước đầu kiểm tra CPU. Nếu máy khó mở Firefox hay LibreOffice, có thể CPU không đủ mạnh cho app nặng.
Mở terminal chạy một trong hai lệnh:
cat /proc/cpuinfo
lscpu
Hai lệnh hiển thị chi tiết CPU: vendor_id, model name, CPU MHz, cache size, microcode, bogomips.
Xem một số chi tiết quan trọng:
- bogomips: Bogus Millions of instructions per second. Chương trình độc lập hiển thị hiệu năng hệ thống.
- model_name: hãng, model, tốc độ CPU. Ví dụ: Intel(R) Celeron(R) CPU 1.73GHz.
- cpu MHz: MegaHertz đo tốc độ truyền kênh, bus, clock nội bộ. Ví dụ: 1733.329 GHz.
Rõ ràng vấn đề: Intel Celeron 1.73 GHz là CPU cũ, sức mạnh yếu. Single core, tốc độ thấp, trong khi CPU mới 16 cores gần 5 GHz.
Giải pháp
CPU cũ chậm → chỉ giải pháp là thay CPU mới. Xem hướng dẫn chọn CPU mới.
Kiểm tra service khởi động cùng boot
Có nhiều phương pháp kiểm tra service boot. Dùng một trong các lệnh sau.
Liệt kê service boot:
service --status-all
Liệt kê service boot (tương thích CentOS, AlmaLinux, Fedora, RHEL):
chkconfig --list
Cũng liệt kê service boot:
initctl list
initctl là daemon control tool cho sysadmin giao tiếp/tương tác với Upstart daemon.
Nếu hệ thống dùng systemd, dùng lệnh sau tìm service chạy lúc boot:
sudo systemctl list-unit-files --state=enabled
Giải pháp
Distro dùng systemd, dùng systemctl quản lý service để chúng không chạy lúc boot.
Kiểm tra tải CPU (CPU Load)
Ngoài service boot, kiểm tra CPU có bị quá tải process không. Dùng lệnh top hoặc công cụ giám sát hệ thống khác.
top sắp xếp process usage cao lên đầu. Rõ ràng process/app nào lạm dụng CPU, kill nếu cần bằng lệnh kill.
Giải pháp
Nếu chạy quá nhiều app (foreground và background) mà CPU yếu, tốt nhất đóng app không dùng. Cũng disable app background không dùng.
Thay thế: dùng preload load app thường dùng. Preload là daemon chạy background phân tích app thường chạy.
Mở terminal chạy:
# Ubuntu/Debian sudo apt install preload # Fedora sudo dnf install preload
Preload chạy background, không cần config. Load phần app thường dùng vào memory để load nhanh hơn.
Kiểm tra không gian bộ nhớ trống
RAM lưu app thường dùng. Dùng lệnh free kiểm tra info bộ nhớ: free space RAM v.v. Thiếu RAM cũng làm chậm máy.
Giải pháp
Nâng cấp RAM hoặc thay app tốn RAM bằng nhẹ hơn. LibreOffice khá nặng RAM. Thay bằng Abiword.
Kiểm tra ổ cứng có overworking không
Đèn ổ cứng chớp liên tục mà bạn không biết nó đang làm gì? I/O bí ẩn có thể là vấn đề. Có tool kiểu top tên iotop chuyên chẩn đoán loại này.
Mở terminal chạy:
# Ubuntu/Debian sudo apt install iotop # Fedora/CentOS sudo dnf install iotop
Hệ thống idle bình thường nên hầu như toàn 0, thỉnh thoáng burst nhỏ khi ghi dữ liệu.
Nếu chạy tiện ích disk-intensive như find, sẽ thấy tên và throughput rõ ràng trong iotop.
Bây giờ dễ dàng tìm ra program nào dùng I/O, ai chạy nó, tốc độ đọc dữ liệu, v.v.
Kết luận
Mặc dù nhiều thứ có thể gây chậm, CPU, RAM, disk I/O đứng sau đa số vấn đề hiệu năng. Các phương pháp ở đây giúp xác định nguyên nhân và cách khắc phục.
Tiếp theo: tăng tốc Ubuntu. Nếu gặp vấn đề Wi-Fi, xem hướng dẫn fix Wi-Fi không hoạt động trên Linux.