Làm gì khi gui Linux đóng băng


24

Tôi đang chạy Gnome với compiz trong Ubuntu 10.04. Đôi khi gui sẽ đóng băng. Tôi có thể di chuyển chuột, nhưng tôi không thể tương tác với các chương trình. Điều duy nhất tôi có thể làm là đi đến một cửa sổ đầu cuối với Alt + Ctrl + F (n). Từ đó tôi đăng nhập và thực hiện khởi động lại sudo. Tôi có thể làm gì khác tại thiết bị đầu cuối thay vì khởi động lại để giải quyết vấn đề này khi nó xuất hiện?

Câu trả lời:


14

Một giải pháp mà tôi sử dụng theo thời gian khi mọi thứ trở nên điên rồ là chuyển sang bảng điều khiển khác, sử dụng Ctrl-AltFx (F1-F6). Ctrl-Alt-F7 sẽ đưa bạn trở lại màn hình đồ họa. Điều này sẽ đưa bạn đến một dấu nhắc đăng nhập văn bản.

Nếu điều này không hoạt động và bạn đã cài đặt OpenSSH (sudo apt-get install openssh), bạn có thể ssh vào hộp của bạn từ xa và nhận được cùng một dấu nhắc.

Sau đó, bạn có thể đăng nhập như chính mình, su vào root và xem ứng dụng nào đang chạy. Điều này cần một chút kinh nghiệm với một số lệnh như ps, kill, grep và ít hơn.

ps - ef | hơn

Lệnh trên sẽ hiển thị cho bạn tất cả các quy trình hiện đang chạy và bạn có dấu nhắc "Khác ..." để kết nối để đọc đầu ra.

giết -9 ####

Lệnh trên sẽ giết tiến trình được đánh số ####.

ps -ef | grep ora | hơn

Lệnh trên sẽ hiển thị cho bạn tất cả các quy trình với các chữ cái "ora", chẳng hạn như các chương trình của Oracle. Cũng sẽ cho phép bạn xem lời nhắc "Khác ...".

Bạn cần cẩn thận khi làm điều này. bạn có thể giết toàn bộ hệ thống. Cách của tôi để làm điều này là xem xét các quy trình ở dưới cùng của danh sách, sẽ có các quy trình mới nhất được bắt đầu. Những thứ đó có nhiều khả năng là những thứ đóng băng hệ thống, và giết chết những thứ đó có khả năng giải phóng môi trường X mà không thực sự khôi phục toàn bộ hệ thống. Trong danh sách quy trình, bạn sẽ thấy hai số. Đầu tiên (ngoài cùng bên trái) là số tiến trình, và cái bên cạnh nó là quá trình đưa ra nó.

Trong các lệnh của các quy trình, bạn có thể nhận ra tên của các chương trình mới nhất bạn đã bắt đầu và giết chúng trước.

Tốt nhất, bạn có thể tìm và giết chương trình vi phạm. Tệ nhất, bạn sẽ đóng băng hệ thống cho đến khi bạn cấp nguồn cho nó. Tiến hành cẩn thận ............................

Nhưng bạn có cơ hội sao chép các tệp quan trọng, thực hiện các thao tác khác, v.v.


8

Giống như private_meta đã nói, có lẽ bạn sẽ muốn khởi động lại X. Điều này dừng tất cả các quy trình GUI đang chạy, bao gồm tất cả các quy trình được bắt đầu từ cửa sổ đầu cuối gui.

Ctrl + Alt + Backspace không hoạt động trên Ubuntu, họ đã tắt lối tắt này. Bạn có thể kích hoạt nó (không nhớ chính xác làm thế nào, nhưng nó phải dễ google) hoặc chỉ sử dụng kết hợp đúng, đó là SysRq + K. SysRq có thể là chức năng phụ của một khóa khác trên một số bố cục, ví dụ như trên một bàn phím qwertz bạn thực sự đang nhấn AltGr + Print + K

Đối với các mục đích sử dụng khác của tổ hợp phím SysRq, hãy đọc bài viết Wikipedia này . Nó cung cấp cho bạn nhiều điều khiển trên hệ thống hơn bạn có thể cần.


1
howto phép ctrl-alt-backspace ubuntugeek.com/...
Matthias Krull

Tôi vừa thử Alt + SysRq + K trên một hệ thống không bị đóng băng và nó cho tôi một màn hình trống trắng, nơi tôi không thể làm bất cứ điều gì (còn gọi là đóng băng hoàn toàn?). Làm thế nào điều đó có thể hữu ích, hoặc tôi đã làm gì sai?
phunehehe

4

Trong các phiên bản Ubuntu gần đây (khởi động - đã bật), bạn có thể nhập:

sudo restart gdm

Đôi khi, bạn không thể chuyển sang bảng điều khiển văn bản, nhưng sau đó vẫn có thể đăng nhập bằng ssh từ một PC khác. Khởi động lại gdm sau đó cũng có thể và có thể khắc phục bạn treo trình điều khiển hiển thị.


1
Điều này làm gì với các chương trình đang chạy trong gui?
tony_sid

2
Tất cả đều bị chấm dứt vì họ mất kết nối với X.
IanH

2

Nếu ALT F (n) và chuột đều hoạt động, bạn cũng có thể cố gắng giết chết các chương trình riêng lẻ để xem liệu một trong số chúng có giải phóng mọi thứ hay không. Đây là ít kỹ thuật hơn nhưng là một cách nhanh chóng theo định hướng gui để xem nếu một cái gì đó bắt đầu gần đây là vấn đề.

ALT-F2: Để hiển thị hộp thoại chương trình chạy mà theo kinh nghiệm của tôi thường hoạt động ngay cả khi mọi thứ khác bị khóa.

xkill: Để buộc một ứng dụng gui đóng.

Nhấp vào ứng dụng vi phạm và xem những gì sẽ xảy ra.


1

Chủ yếu là có thể khởi động lại Trình quản lý cửa sổ thông qua Ctrl + Alt + Backspace. Mặc dù điều này giết chết các ứng dụng tiền cảnh của bạn, nhưng nó vẫn không phải là một khởi động lại đầy đủ, nó có thể là một sự thỏa hiệp cho bạn.


1
cái này bị tắt theo mặc định kể từ ngày 9.04 nên nó sẽ không hoạt động. thay vì khởi động lại, bạn có thể gõ /etc/init.d/gdm khởi động lại.
matthias krull

0

Sau khi GUI máy bị đóng băng ... Tôi nghĩ khởi động lại là điều tốt nhất bạn có thể làm, trừ khi bạn có thứ gì đó quan trọng và chạy lâu trong nền .... Dù sao, khởi động lại gdm sẽ giết chết ứng dụng của bạn.


0

Mở một terminal ảo với CTRL- ALT- F[number]shortcut, đăng nhập sudo killall [dm](nơi [dm]là một trong những gdm, gdm3, kde, wdm, lightdm, lxdm,vv), và bắt đầu một phiên x mới vớistartx

Nếu bạn không giết dm, nó sẽ không tạo ra sự khác biệt quá lớn. Một dm đông lạnh / hung không sử dụng một lượng lớn sức mạnh xử lý.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.