Я використовую Ubuntu. Іноді система не має жодної відповіді за допомогою миші та клавіатури. Чи є якийсь спосіб вирішити цю проблему, крім натискання кнопки скидання на машині?
Я використовую Ubuntu. Іноді система не має жодної відповіді за допомогою миші та клавіатури. Чи є якийсь спосіб вирішити цю проблему, крім натискання кнопки скидання на машині?
Відповіді:
Якщо ви хочете спосіб перезавантажити, не зберігаючи відкриті документи, але не натискаючи кнопку скидання, то існують способи, з якими менше шансів спричинити втрату даних. Спочатку спробуйте Ctrl+ Alt+ F1. Це повинно привести вас до віртуальної консолі , як сказав ixtmixilix . Щойно ви перебуваєте у віртуальній консолі, Ctrl+ Alt+ Deleteвимкнеться та перезавантажить машину.
Якщо ця методика не працює, завжди є Alt+ SysRq+REISUB .
Щодо виправлення проблеми без перезавантаження, без додаткової інформації про те, що відбувається, важко було б дати хорошу відповідь. Якщо ви могли б описати обставини, за яких це відбувається (найкращий спосіб зробити це - відредагувати своє запитання, щоб додати інформацію), то це може допомогти людям дати хороші відповіді. Інша річ, яку слід врахувати, це те, що якщо ваш комп’ютер стає невідповідним - особливо якщо на Ctrl+ Alt+ F1потрібно зайняти більше декількох секунд, щоб створити віртуальну консоль - тоді ви майже напевно маєте помилку, і повідомивши про це, ви можете обидва допомагають громаді та, можливо, отримають відповідь.
Це може статися через взаємодію програми та менеджера вікон - або сервера X11 або Wayland. Ознакою того, що така природа проблеми, є те, якщо програма перестає реагувати і заважає вам вводити дані за допомогою клавіатури чи миші до інших вікон додатків. (Жоден додаток не повинен робити цього; для деяких компонентів GUI в ньому має бути помилка.) Якщо це відбувається, то ви можете вбити процес правопорушника у віртуальній консолі (як натякає ixtmixilix ):
Натисніть Ctrl+ Alt+ F1.
Увійдіть. Під час введення пароля ви нічого не побачите. Це нормально.
Використовуйте утиліту, як, ps
щоб визначити назву процесу, що порушує програму. Іноді в Ubuntu це легко, а в інший раз - ні. Наприклад, ім'я процесу Archive Manager - це file-roller
. Якщо у вас виникли труднощі з їх розібранням, зазвичай ви можете знайти інформацію в Інтернеті без особливих проблем (або якщо ви не можете, можете залишити питання про неї).
Ви можете підключити ps
вихід, grep
щоб звузити речі. Припустимо, що це було причиною проблеми саме менеджера архівів. Тоді ви можете запустити:
ps x | grep file-roller
Ви побачите запис для своєї власної grep
команди плюс запис для file-roller
.
Спроба вбити злочинця шляхом SIGTERM
. Це дає йому можливість проводити очищення в останню хвилину, як промивання буферів файлів, сигналізація віддаленим серверам, що він збирається відключити (для протоколів, які це роблять), і випустити інші види ресурсів. Для цього скористайтеся kill
командою:
kill PID
де PID
це ідентифікатор процесу номер процесу ви хочете вбити, отриманий від роботи ps
на кроці 3.
SIGTERM
це спосіб твердо попросити процес вийти. Процес може ігнорувати цей сигнал і буде робити це при несправності при певних обставинах. Тож слід перевірити, чи спрацювало це. Якщо цього не сталося, вбийте його SIGKILL
, який він не може ігнорувати, і який завжди працює, за винятком рідкісного випадку, коли процес перебуває у режимі безперебійного сну (або якщо він насправді не працює, але це швидше процес зомбі ).
Ви можете обидві перевірити, чи процес все ще запущений, і вбити його, SIGKILL
якщо він є, лише однією командою:
kill -KILL PID
Якщо ви отримаєте таке повідомлення, як , ви знаєте, як його вбити . Якщо у вас немає результату, ви знаєте, що не працювало. У цьому випадку, мабуть, так і було, але варто перевірити, запустивши його ще раз. (Для зручності введення натисніть клавішу зі стрілкою вгору, щоб відкрити попередні команди.)kill: (PID) - No such process
SIGTERM
SIGTERM
SIGKILL
У рідкісних випадках для власних процесів, або завжди з процесами, що належать root
іншому користувачеві, окрім себе, ви повинні вбити процес як root
. Для цього sudo
передбачте вищевказані kill
команди (включаючи пробіл) перед вказаними вище командами. Якщо вищезазначені команди не працюють або вам сказали, що ви не маєте необхідного доступу для вбивства процесу, спробуйте це як root
і раніше sudo
.
(До речі, kill -KILL
це те саме, що широко популярний kill -9
. Я рекомендую, kill -KILL
оскільки SIGKILL
не гарантується 9
його номер сигналу на всіх платформах. Він працює на x86, але це не означає, що він обов'язково буде працювати всюди. Таким чином, kill -KILL
з більшою ймовірністю успішно закінчити процес, ніж kill -9
. Але вони еквівалентні на x86, тому сміливо використовуйте його там, якщо хочете.)
Якщо ви знаєте, що немає інших процесів з таким самим іменем, як той, який ви хочете вбити, ви можете використовувати killall
замість kill
і ім'я процесу замість ідентифікаційного номера процесу.
Якщо процес запускається або знаходиться поблизу найвищого можливого пріоритету (або заявляє його більш правильно, на рівні або біля мінімальної можливої приємності ), він може потенційно вивести ваш графічний інтерфейс користувача повністю або майже повністю безвідповідальним. Однак у цій ситуації ви, швидше за все, не зможете перейти на віртуальну консоль і запустити команди (а може, навіть перезавантажити).
Якщо процес або комбінація процесів, що працюють з нормальним або помірно підвищеним пріоритетом, уповільнюють роботу Вашої машини, ви повинні мати змогу вбити їх, використовуючи методику, наведену вище. Але якщо вони графічні програми, ви, ймовірно, також можете їх вбити, натиснувши кнопку закриття на їхніх вікнах - середовище робочого столу дасть вам можливість вбити їх, якщо вони не відповідають. Якщо це не працює, звичайно, ви можете (майже) завжди вбивати їх kill -KILL
.
Баггі введення / виведення може викликати тривалу (навіть вічну) безвідповідальність. Це може бути пов’язано з помилкою ядра та / або драйверами помилок. Часткове вирішення полягає у тому, щоб уникнути важких та одночасних операцій читання та / або запису (наприклад, не копіюйте два великих файли одразу, у двох одночасних процесах копіювання; не копіюйте великий файл під час перегляду відео у форматі HD або встановлення ОС у віртуальній машині).
Це, очевидно, незадовільно, і справжнє рішення - знайти проблему та повідомити про неї. Якщо ви не запускаєте основне ядро з kernel.org , про помилки ядра слід повідомляти проти пакета linux
в Ubuntu (оскільки Ubuntu дає спеціальні збірки ядра, що інтегрують конкретні патчі, а звіти про помилки, не підтверджені проти ядра основної лінії, буде відхилено на kernel.org ). Ви повинні зробити це, запустивши ubuntu-bug linux
(або apport-cli linux
) на ураженій машині. Спершу перегляньте документацію звіт про помилки Ubuntu ; це пояснює, як це зробити правильно.
Деякі блокування з графічним інтерфейсом можуть бути спричинені проблемами з графічною карткою. Щоб полегшити це, ви можете спробувати декілька речей:
Шукайте в Інтернеті, щоб переконатися, що інші люди мали подібні проблеми з тією ж відеокартою (та / або виготовленням і моделлю машини) в Ubuntu або інших дистрибутивах GNU / Linux Можуть бути рішення, більш конкретні, ніж те, що я можу запропонувати у цій відповіді, без конкретнішої інформації, ніж зараз у вашому питанні.
Подивіться, чи доступні різні драйвери відео для вас. Це можна зробити, зареєструвавши додаткові драйвери; ви також можете шукати в Інтернеті, щоб побачити, які драйвери Linux доступні для вашої відеокарти. Більшість власних відеокарт - це Intel, AMD / ATi або Nvidia (натисніть ці посилання, щоб переглянути документацію спільноти про встановлення та використання власницьких драйверів для цих карт в Ubuntu). Для Intel вам найкраще дотримуватися драйверів FOSS, які є в Ubuntu, але ви можете використовувати корисну інформацію . Незалежно від того, яку картку ви маєте, ця загальна інформація може допомогти.
Якщо ви зараз використовуєте власні драйвери, ви можете спробувати використовувати різні фірмові драйвери (наприклад, безпосередньо від NVidia або AMD / ATi), або ви можете спробувати використовувати безкоштовні драйвери з відкритим кодом.
Спробуйте вибрати тип сеансу графічного входу , який не потребує / використовуйте прискорення графіки. Для цього вийдіть із системи та на графічному екрані входу натисніть логотип Ubuntu або значок шестірні біля вашого імені для входу. З'являється спадне меню. Змініть вибір з Ubuntu на Ubuntu 2D . Це змушує вас використовувати Unity 2D замість Unity . (Якщо ви використовуєте GNOME Shell , ви можете вибрати GNOME Fallback / GNOME Classic замість цього.) Якщо ви сумніваєтесь і є вибір, який говорить "без ефектів", виберіть це, оскільки це, мабуть, найбезпечніше.
У цьому питанні є додаткова інформація про різні графічні інтерфейси, які ви можете обрати в Ubuntu.
У нових версіях Ubuntu ви можете вибрати між X.org та Wayland на екрані входу. Що б ви не використовували, спробуйте інше. Іноді проблему з Wayland можна усунути за допомогою X.org або навпаки.
Сподіваємось, що вищенаведена інформація передала загальну інформацію про те, що може спричинити подібні проблеми. Він також повинен слугувати для висвітлення того, який тип інформації може бути корисним для вас, щоб додати до свого запитання (залежно від конкретних деталей проблеми), щоб можна було отримати ще кращу відповідь. (Або вдосконалити цю відповідь додатковою інформацією, характерною для вашої ситуації.)
Так, найпростіший спосіб досягти цього - ввімкнути ключі, щоб вбити Xorg-сервер та повторно запустити X-сеанс.
Щоб увімкнути це, відкрийте Налаштування системи -> Параметри розкладки клавіатури (або скористайтеся
keyboard
командою в інтерфейсі Unity, натисніть AltF2), і перевірте цю опцію:
Ctrl + Alt + Backspace
Отже, коли він зависне, удар CtrlAltBackspaceвбиває X-сервер, і lightdm знову запустить інтерфейс входу
Alt+Print+K
зробить те ж саме з коробки, ні?