Làm thế nào để xử lý App / OS đóng băng trong Linux
Các hệ điều hành dựa trên Linux được coi là ổn định hơn các hệ điều hành khác. Chứng thực cho điều này là thực tế là Linux chiếm hơn 95% siêu máy tính trên thế giới. Tuy nhiên, tính ổn định và hiệu suất không có nghĩa là các hệ thống Linux không bị đóng băng ứng dụng hoặc hệ điều hành.
Có thể có nhiều loại đóng băng khác nhau như tình huống trong đó một hoặc nhiều ứng dụng bị đóng băng, chuột dừng đáp ứng cùng với các ứng dụng và cuối cùng, nơi mọi thứ (kể cả bàn phím) bị đóng băng. Trong bài viết này, chúng tôi sẽ thảo luận chi tiết các giải pháp khác nhau có sẵn cho từng trường hợp và theo thứ tự bạn nên áp dụng chúng.
Lưu ý : Tất cả các giải pháp / kỹ thuật được đề cập trong bài viết này đã được thử nghiệm trên Ubuntu (phiên bản 16.04). Họ có thể, hoặc có thể không, làm việc trên các bản phân phối khác.
Đóng băng ứng dụng
Khi một ứng dụng bị đóng băng, bước đầu tiên và rõ ràng nhất là đóng ứng dụng bằng cách nhấn vào nút đóng (nút hình tròn với 'x' bên trong nó) nằm ở phía trên bên trái của cửa sổ ứng dụng. Thông thường, trong trường hợp đóng băng, khi bạn làm điều này, một hộp cửa sổ nhỏ bật lên nói rằng ứng dụng không phản hồi, cho bạn tùy chọn để giết quá trình hoặc chờ ứng dụng phản hồi.
Bạn có thể nhấp vào nút "Buộc thoát" để loại bỏ ứng dụng. Tuy nhiên, nếu điều này không làm việc, bước tiếp theo sẽ là chạy lệnh xkill
trên thiết bị đầu cuối dòng lệnh. (Bạn cũng có thể tạo lối tắt bàn phím cho nó.) Ngay sau khi lệnh được chạy, con trỏ chuột của bạn sẽ biến thành X.
Bây giờ, trong trạng thái này, nhấp chuột trái vào bất kỳ cửa sổ ứng dụng nào sẽ giết ứng dụng đó.
Trong khi "xkill" là một giải pháp tuyệt vời để loại bỏ các ứng dụng đã bị đóng băng, bạn không thể sử dụng kỹ thuật này trên các quy trình / ứng dụng không có GUI. Đừng lo, vì chúng tôi đã có một số giải pháp phổ biến như gửi tín hiệu SIGINT đến ứng dụng / quy trình bằng cách nhấn “Ctrl + C” hoặc giết quá trình bằng lệnh kill
.
Khi chuột ngừng hoạt động
Điều gì nếu con chuột của bạn bị đóng băng là tốt? Trong trường hợp đó, tùy chọn thuận tiện nhất là nắm giữ một thiết bị đầu cuối dòng lệnh, bạn có thể khởi chạy bằng cách nhấn "Alt + F2", nhập gnome-terminal
, sau đó nhấn Enter.
Không cần phải nói, một khi bạn đang ở trên dòng lệnh, bạn có thể dễ dàng giết chết một tiến trình / ứng dụng, bất kể nó có dựa trên GUI hay không.
Nếu vì lý do nào đó, giải pháp trên không hoạt động, bạn có thể chuyển sang thiết bị đầu cuối ảo bằng cách nhấn “Alt + Ctrl + F1.” Khi đó, chỉ cần nhập chi tiết đăng nhập của bạn và bây giờ bạn có quyền truy cập dòng lệnh vào hệ thống của mình. Khi bạn thực hiện xong việc giết các tiến trình không phản hồi, bạn có thể quay trở lại phiên giao diện GUI (đó là giao diện điều khiển nơi máy chủ X đang chạy) bằng cách nhấn “Ctrl + Alt + F7.” Hoặc, nếu muốn, bạn cũng có thể khởi động lại GUI từ bên trong bảng điều khiển ảo bằng cách chạy lệnh sau:
dịch vụ sudo lightdm khởi động lại
Khi mọi thứ bị đóng băng
Thật không may, có những lúc mọi thứ (kể cả bàn phím của bạn) trở nên không phản hồi. Bạn nên giải quyết tình huống này như thế nào? Khóa SysRq ma thuật đến để giải cứu bạn ở đây. Không giống như tên gọi của nó, khóa SysRq ma thuật thực tế là sự kết hợp các phím cho phép bạn nói chuyện trực tiếp với hạt nhân, bất kể trạng thái hệ thống của bạn đang hoạt động, cho phép bạn giải quyết sự đóng băng / treo mà không có gì phản hồi.
Dưới đây là các kết hợp chính mà chúng ta đang nói về:
- Alt + SysReq + F : Tổ hợp phím này yêu cầu hạt nhân giết một quá trình (một quá trình đắt nhất) tại một thời điểm.
- Alt + SysReq + K : Tổ hợp phím này yêu cầu hạt nhân giết tất cả các ứng dụng / quy trình trong một lần.
- Alt + SysReq + REISUB : Tổ hợp phím này yêu cầu hạt nhân thực hiện khởi động lại hệ thống.
Dưới đây là cách tổ hợp phím thứ ba (trong danh sách ở trên) thực hiện khởi động lại sạch sẽ:
- R : Chuyển sang chế độ XLATE
- E : Gửi SIGTERM tới tất cả các tiến trình ngoại trừ init
- Tôi : Gửi SIGKILL cho tất cả các quy trình ngoại trừ init
- S : Đồng bộ hóa tất cả các hệ thống tệp được gắn kết
- U : Đặt lại tất cả các hệ thống tệp dưới dạng chỉ đọc
- B : Khởi động lại
M TO: bạn có thể nhớ sự kết hợp REISUB như ngược lại của BUSIER.
Rõ ràng là tổ hợp phím "Alt + SysReq + REISUB" là một sự lựa chọn tốt hơn là khởi động lại hệ thống của bạn.
Lưu ý : để khóa SysRq ma thuật hoạt động, hãy đảm bảo rằng tham số “kernel.sysrq” trong tệp “/etc/sysctl.d/10-magic-sysrq.conf” được đặt thành 1.
Phần kết luận
Có rất nhiều kỹ thuật mà bạn có thể sử dụng để thoát khỏi tình trạng đóng băng ứng dụng / HĐH trong Ubuntu. Điều đáng nhấn mạnh ở đây - và quan trọng để bạn hiểu - là những kỹ thuật này có để giúp bạn không thể thực hiện cài đặt lại hoặc bật / tắt nguồn, lý tưởng nhất là phương sách cuối cùng trong hầu hết các trường hợp.
Tín dụng hình ảnh: / home