Одна из моих проблем с Ubuntu, когда мои перегрузки ПК, мои зависания системы Ubuntu и я пытаемся заставить это отвечать путем открытия дисковода для компакт-дисков вручную, чтобы вызвать прерывание и получить доступ к системному монитору для закрытия некоторых задач.
В Windows, когда эта ситуация происходит, я могу обычно выходить из нее путем нажатия Ctrl+Alt+Del для переключения в Диспетчер задач, который обычно вытаскивает меня из зависающей ситуации.
Так, я хотел бы знать: есть ли что-то, что я могу сделать с Ubuntu для выхода из зависающей ситуации (like нажатие Ctrl+Alt+Del on Windows)?
Обновление:
Acording @Grumpy_Old_Man информационный запрос:
Какой процессор Вы использование и какого возраста это. Существует известная проблема с ранними центральными процессорами Ryzen, которые зависают при низкой загрузке. bugzilla.kernel.org/show_bug.cgi?id=196683
Моя информация о ЦП:
$ cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 142
model name : Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz
stepping : 9
microcode : 0xca
cpu MHz : 3278.317
cache size : 4096 KB
physical id : 0
siblings : 4
core id : 0
cpu cores : 2
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp md_clear flush_l1d
bugs : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit
bogomips : 5808.00
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:
processor : 1
vendor_id : GenuineIntel
cpu family : 6
model : 142
model name : Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz
stepping : 9
microcode : 0xca
cpu MHz : 3274.188
cache size : 4096 KB
physical id : 0
siblings : 4
core id : 1
cpu cores : 2
apicid : 2
initial apicid : 2
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault invpcid_single pti tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp
bugs : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit
bogomips : 5808.00
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:
processor : 2
vendor_id : GenuineIntel
cpu family : 6
model : 142
model name : Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz
stepping : 9
microcode : 0xca
cpu MHz : 3271.793
cache size : 4096 KB
physical id : 0
siblings : 4
core id : 0
cpu cores : 2
apicid : 1
initial apicid : 1
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp md_clear flush_l1d
bugs : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit
bogomips : 5808.00
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:
processor : 3
vendor_id : GenuineIntel
cpu family : 6
model : 142
model name : Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz
stepping : 9
microcode : 0xca
cpu MHz : 3285.540
cache size : 4096 KB
physical id : 0
siblings : 4
core id : 1
cpu cores : 2
apicid : 3
initial apicid : 3
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp md_clear flush_l1d
bugs : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit
bogomips : 5808.00
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:
И моя Информация о Ubuntu:
hostnamectl
Static hostname: so-notebook
Icon name: computer-laptop
Chassis: laptop
Machine ID: 34a2eb65afa64d60a60ed02d972e884d
Boot ID: 9ee34ad4bff84b908e8719ab83029836
Operating System: Ubuntu 18.04.3 LTS
Kernel: Linux 5.0.0-37-generic
Architecture: x86-64
Вы можете установить короткий путь, чтобы открыть системный монитор в Ubuntu с сочетанием клавиш, которое Вы любите (в этом случае, Ctrl + Высокий звук + Del ).
Вы можете установить пользовательские короткие пути для пользовательского сочетания клавиш в Settings (между прочим, эти шаги для Ubuntu 18.04):
Open System Monitor
). gnome-system-monitor
). Вы можете испытать короткий путь, нажав сочетание клавиш ( Ctrl + Высокий звук + Del ), Вы назначали на короткий путь.
Наименее агрессивная опция состоит в том, чтобы использовать Ctrl + Высокий звук + F3 , чтобы переключиться на пульт.
От пульта, Вы можете исследовать то, что продолжает использовать инструменты, которые Вы обычно использовали бы, как top
, htop
, free
, или spelunking через /proc
и /sysfs
файловые системы. Как только Ваше расследование определило преступника, Вы можете послать, делают то, что Вы должны исправить ситуацию.
, Например, если у Вас есть безудержный процесс, Вы можете попытаться послать его SIGTERM
сигнал, используя kill -s TERM <PID>
. Если это не работает, Вы можете быть более агрессивными и послать его SIGKILL
сигнал, используя kill -s KILL <PID>
.
, Если Вам настраивали сервер SSH, Вы можете также войти в систему удаленно через SSH. Обратите внимание, однако, что, если что-то на Вашей системе выходит из строя, SSH не мог бы работать правильно, например, потому что это не может получить достаточно времени центрального процессора или памяти или сетевых гнезд.
, Если у Вас есть последовательный настроенный пульт, Вы можете зарегистрировать на пути последовательный терминал.
, Если Вы не можете добраться до пульта, у Ядра Linux есть особенность, названная" Волшебный Ключ SysRq ".
Волшебный Ключ SysRq - способ привлечь внимание ядра при почти всех обстоятельствах (единственная главная ситуация, где это не работает, находится в ядерной панике, которая имеет смысл: ядро потерпело крах, оно не может сделать дальнейшей работы).
Вы можете получить доступ к функциональности Волшебного Ключа SysRq удержанием Высокий звук + SysRq и ввод серии команд, которые являются всеми одними буквами.
, Если у Вас нет отдельного ключа SysRq , это обычно - альтернативный режим ключа PrtScr , даже если это не маркировано. Если у Вас нет этого или, Вы должны будете искать его в руководстве Вашей клавиатуры или Вашего ноутбука.
Примечание, что ключи основаны на их scancodes на американской английской QWERTY-клавиатуре. Другими словами, Linux не знает, какое письмо напечатано на Вашем ключе, это только заботится о местоположение из ключа на клавиатуре. Если у Вас будет другая раскладка клавиатуры, то Вы должны будете использовать ключи в том же положении , как будто у Вас было американское английское расположение СТАНДАРТНОГО РАСПОЛОЖЕНИЯ БУКВ НА КЛАВИАТУРЕ.
Одна общая последовательность команды:
SIGTERM
сигнал ко всем процессам кроме PID 1 (init
). Это приятно попросит, чтобы все процессы закрыли себя. SIGKILL
сигнал ко всем процессам кроме PID 1 (init
). Это будет очень не , приятно спрашивают все процессы, которые все еще бегут за предыдущим шагом, чтобы передать непосредственное самоубийство. sync
все в настоящее время установленные файловые системы. Это смоет кэш страницы и заблокирует кэш к диску. umount
все в настоящее время установленные файловые системы, или скорее повторно устанавливают всю в настоящее время установленную файловую систему, только для чтения. reboot
или альтернативно o : shutdown
последовательность могла быть выписана как REISUB. Общая мнемосхема, чтобы помнить это является "Перезагрузкой Даже если Система, Крайне Сломанная".
Удержание Высокого звука и SysRq (который является клавишей Print Screen), медленно вводя REISUB перезапустит Вас безопасно. REISUO сделает закрытие, а не перезапуск.
Если Вы знаете программу, которая не отвечает, пойдите в раковину TTY CTRL + ВЫСОКИЙ ЗВУК + F4 тогда использует следующий скрипт, чтобы убить ту программу. Скопируйте код и сохраните его, поскольку exterminate.sh
в /bin
#!/bin/bash
userName=$(whoami);
programName="$1";
main(){
pidVar=$(top -n 1 -d 1 -b | grep -i "$programName" | cut -c -6 );
kill $pidVar >& /dev/null;
echo "killed all \"$programName\" instances.";
}
if [ "$userName" == "root" ] ; then main ; else echo "run as root" ; fi;
тогда делают исполняемый файл скрипта
sudo chmod +x /bin/exterminate.sh
и выполняют его как суперпользователя. Будьте осторожны относительно аргумента, что Вы проходите к скрипту, поскольку Вы непреднамеренно могли бы закончить тем, что нанесли больше ущерба, чем Вы заключили сделку на.
, например, если бы, например, программа работы со сбоями transmission
sudo exterminate.sh transmission
, добился бы цели.
, когда мои перегрузки PC, моя система Ubuntu висит
Для меня, это обычно означает исчерпывать оперативную память и начинать обмениваться в большой степени.
то, Что может помочь в этой ситуации, является Высоким звуком + SysRq + F комбинация, которая приказывает, чтобы система убила задачу, берущую большую часть памяти.
Вы должны будете включить ключ SysRq сначала, как объяснено в этом вопросе . Также некоторые ноутбуки требуют удержания ключ Fn одновременно.
Нажмите ctrl+alt+f3, чтобы вступить в TTY. Оттуда это будет похоже на полный предельный опыт. Введите reboot/poweroff, и нажатие входят, и это должно решить Вашу проблему. Другое решение состояло бы в том, чтобы нажать ctrl+alt+f1, чтобы блокировать Вашего пользователя и пароль ввода снова, чтобы вступить в Ubuntu.
Вы можете быть в состоянии использовать Ctrl + Высокий звук + Клавиша Backspace , чтобы убить X серверов.