Kernel bị crash: kernel panic và bước tiếp theo
Phải làm gì khi máy không khởi động được và thông báo kernel đứng yên trên màn hình: ghi lại văn bản lỗi, khôi phục kernel, và sửa fstab từ đĩa cứu hộ.
Cập nhật 23 tháng 8, 2026
Kernel panic là trạng thái kernel đã dừng và không thể tiếp tục. Máy không phản hồi qua SSH hay mạng, nhưng vẫn hiển thị là đang chạy. Mọi thứ bạn cần để khắc phục đều có sẵn trong bảng điều khiển: console hiển thị toàn bộ màn hình, và đĩa cứu hộ cho bạn quyền truy cập vào các tệp hệ thống.
Bước 1. Đọc thông báo
Mở /hosting/vds/m/<id>, tab “Console”, chế độ xem “Screen” (VNC). Console văn bản cũng hiển thị đầu ra của kernel, nhưng kernel panic thường được vẽ bởi bộ đệm đồ họa, và hiển thị đáng tin cậy hơn trên “Screen”. Điều quan trọng không phải là dòng đầu tiên mà là dòng có nghĩa thấp nhất, thường là một trong các dòng sau:
VFS: Unable to mount root fs on unknown-block(0,0)— kernel không tìm thấy phân vùng gốc;Kernel panic - not syncing: Attempted to kill init— tiến trình số một đã chết, thường là do/sbin/initbị hỏng sau một lần cập nhật thất bại;Kernel panic - not syncing: No working init found— cùng vấn đề;- lỗi driver kèm theo stack trace — thường xảy ra sau khi cài đặt một kernel module của bên thứ ba.
Hãy chụp ảnh hoặc sao chép văn bản ngay lập tức: màn hình sẽ bị xóa sau khi khởi động lại.
Bước 2. Thử kernel trước đó
Nếu kernel panic xuất hiện ngay sau khi cập nhật, GRUB vẫn còn kernel cũ. Khởi động lại máy từ bảng điều khiển và bắt menu trên “Screen”: nhấn Shift hoặc Esc trong những giây đầu tiên, sau đó chọn “Advanced options” và phiên bản trước đó.
Sau khi khởi động bằng kernel cũ, hãy khóa trạng thái hoạt động và xử lý gói mới:
uname -r
dpkg -l | grep linux-image
apt install --reinstall linux-image-amd64
Bước 3. Đĩa cứu hộ
Nếu menu bootloader không xuất hiện hoặc kernel cũ cũng gặp lỗi, hãy bật chế độ khởi động “SystemRescue recovery disk” trên tab “Access” và khởi động lại máy. Đăng nhập với tư cách root không cần mật khẩu; đĩa của máy sẽ xuất hiện dưới dạng /dev/sda.
lsblk
mount /dev/sda1 /mnt
ls /mnt
Kiểm tra hệ thống tệp nếu bạn nghi ngờ có hỏng hóc:
umount /mnt
fsck -f /dev/sda1
Nguyên nhân điển hình của kernel panic sau khi chỉnh sửa thủ công là lỗi trong /etc/fstab: một dòng trỏ đến phân vùng không tồn tại hoặc UUID không đúng sẽ chặn quá trình khởi động. Hãy kiểm tra:
blkid /dev/sda1
cat /mnt/etc/fstab
Để làm việc bên trong hệ thống (cài lại kernel, chỉnh sửa bootloader), hãy truy cập qua chroot:
mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
chroot /mnt /bin/bash
Khi hoàn tất, nhớ chuyển lại chế độ khởi động bình thường trên tab “Access”. Nếu không, máy sẽ khởi động vào SystemRescue mỗi lần khởi động lại, và bạn sẽ tưởng rằng hệ thống không bao giờ khởi động được.
Bước 4. Khi cài lại dễ hơn
Chúng tôi không có bản sao lưu tự động hay ảnh chụp trạng thái của máy, nên quyết định là ở bạn. Nếu có dữ liệu quý trên đĩa, trước tiên hãy sao chép dữ liệu ra khỏi SystemRescue qua scp về máy của bạn, rồi mới bắt đầu cài lại hệ điều hành từ tab “Access” — thao tác này sẽ xóa sạch đĩa.
Thứ tự là: sao chép dữ liệu, đảm bảo dữ liệu đọc được ở phía bạn, cài lại. Không thể quay lại sau khi cài lại.
Cách tránh lặp lại điều này
Hãy giữ bản sao dữ liệu của bạn bên ngoài máy, cập nhật kernel riêng biệt với các gói khác, và khởi động lại ngay sau khi cập nhật — như vậy bạn sẽ biết về sự cố vào thời điểm thuận tiện, chứ không phải một tháng sau trong một lần khởi động lại tình cờ. Để khắc phục các lỗi dịch vụ thông thường, xem Dịch vụ không khởi động: khắc phục systemd.