Как заблокировать мой Ubuntu?

ПРЕДУПРЕЖДЕНИЕ !!!: задается вопрос о временном нарушении Ubuntu. Не должно быть никаких безопасных ответов. Если у вас есть важные сервисы, важные документы / файлы редактируются, обратите внимание, что вы не сможете восстановить / сохранить свою работу. Обратите внимание, что попытка этих ответов не рекомендуется, если вы не знаете, что и почему вы это делаете, и это не ошибка ответчика (или искателя, FWIW), если вы что-то сломаете.

Мне нужно, чтобы мой Ubuntu стал невосприимчивым. Нет сценариев завершения работы, нет восстановления из состояния висит. Просто быстрый и грязный способ перехода системы на , временно нарушающий режим Ubuntu .

Предположим, что три вещи:

Я корень Решение без bash (так что никаких бомб вилки, пожалуйста, но решение командной строки в порядке) файловая система должна оставаться неповрежденной

Чтобы ответить на комментарий пользователя dobey:

Я root «То, что вы на самом деле пытаетесь достичь». Я думаю, что название объясняет это довольно четко. Я хочу, чтобы ОС не реагировала по своему усмотрению, где она ничего не сможет сделать. Это именно то, чего я пытаюсь достичь. Там нет отладки, нет проблемы с XY. Мне просто нужен способ блокировки / сбоя / зависания системы, где я ничего не могу сделать, кроме как удерживать кнопку отключения питания.
3
задан 25 November 2017 в 05:41

6 ответов

Один из возможных способов сделать вашу систему непригодной - это сбой:

sudo sh -c 'echo c > /proc/sysrq-trigger'

Или (если для параметра /proc/sys/kernel/sysrq установлено что-то не столь ограничительное, например 1), нажмите Alt + SysRq + C для такого же эффекта.

Эти файлы задокументированы в руководстве proc(5):

/ proc / sys / kernel / sysrq Этот файл управляет функциями, разрешенными для вызывается ключом SysRq. [..] / proc / sysrq-trigger (начиная с Linux 2.4.21) Запись символа в этот файл вызывает ту же функцию SysRq, что и при вводе ALT-SysRq- & lt; character & gt; (см. описание / proc / sys / kernel / sysrq). Обычно этот файл можно записывать только с помощью root. Для получения дополнительной информации см. Исходный файл ядра Linux Documentation / admin-guide / sysrq.rst (или Documentation / sysrq.txt перед Linux 4.10).

Для получения дополнительной информации об этой функции «sysrq» см. proc(5)

4
ответ дан 22 May 2018 в 15:55
  • 1
    В зависимости от системы вам может потребоваться включить SysRQ сначала с echo 1 >/proc/sys/kernel/sysrq, хотя, см. Нижнюю часть моего ответа ... – dessert 25 November 2017 в 04:20

Один из возможных способов сделать вашу систему непригодной - это сбой:

sudo sh -c 'echo c > /proc/sysrq-trigger'

Или (если для параметра /proc/sys/kernel/sysrq установлено что-то не столь ограничительное, например 1), нажмите Alt + SysRq + C для такого же эффекта.

Эти файлы задокументированы в руководстве proc(5):

/ proc / sys / kernel / sysrq Этот файл управляет функциями, разрешенными для вызывается ключом SysRq. [..] / proc / sysrq-trigger (начиная с Linux 2.4.21) Запись символа в этот файл вызывает ту же функцию SysRq, что и при вводе ALT-SysRq- & lt; character & gt; (см. описание / proc / sys / kernel / sysrq). Обычно этот файл можно записывать только с помощью root. Для получения дополнительной информации см. Исходный файл ядра Linux Documentation / admin-guide / sysrq.rst (или Documentation / sysrq.txt перед Linux 4.10).

Для получения дополнительной информации об этой функции «sysrq» см. proc(5)

4
ответ дан 18 July 2018 в 02:38

Один из возможных способов сделать вашу систему непригодной - это сбой:

sudo sh -c 'echo c > /proc/sysrq-trigger'

Или (если для параметра /proc/sys/kernel/sysrq установлено что-то не столь ограничительное, например 1), нажмите Alt + SysRq + C для такого же эффекта.

Эти файлы задокументированы в руководстве proc(5):

/ proc / sys / kernel / sysrq Этот файл управляет функциями, разрешенными для вызывается ключом SysRq. [..] / proc / sysrq-trigger (начиная с Linux 2.4.21) Запись символа в этот файл вызывает ту же функцию SysRq, что и при вводе ALT-SysRq- & lt; character & gt; (см. описание / proc / sys / kernel / sysrq). Обычно этот файл можно записывать только с помощью root. Для получения дополнительной информации см. Исходный файл ядра Linux Documentation / admin-guide / sysrq.rst (или Documentation / sysrq.txt перед Linux 4.10).

Для получения дополнительной информации об этой функции «sysrq» см. proc(5)

4
ответ дан 24 July 2018 в 17:37

Пожалуйста, не пытайтесь, если вы точно не знаете, что делаете!

меняет настройки /proc/sys/kernel, связанные с паникой ядра
echo 1 >/proc/sys/kernel/hung_task_panic
echo 1 >/proc/sys/kernel/panic_on_io_nmi
echo 1 >/proc/sys/kernel/panic_on_oops
echo 1 >/proc/sys/kernel/panic_on_stackoverflow
. Это немедленно установит ядро ​​в случае зависания task (!), NMI, вызванный ошибкой ввода-вывода, oops или BUG и переполнение ядра, IRQ и стеков исключений. Хотя это и не вызывает панику сразу, это должно сделать намного проще добраться до точки. выводить порты ввода / вывода системы
cat /dev/port
, перезаписывать устройство памяти с помощью нулевых портов ввода / вывода с нулями
cp /dev/zero /dev/mem
с произвольными номерами
dd if=/dev/random of=/dev/port
с использованием SysRq, выполнять сбой системы с помощью разыменования NULL:
echo 1 >/proc/sys/kernel/sysrq # make sure SysRQ is fully enabled
echo c >/proc/sysrq-trigger    # pull the trigger
[!d2 ]

Я не пробовал ни одного из них. (источник 01, источник 02, Как вызвать панику ядра с помощью одной команды ?, источник 04)

4
ответ дан 22 May 2018 в 15:55
  • 1
    @George Я знаю , но другие, которые спотыкаются на этот вопрос, не знают. – Sergiy Kolodyazhnyy 25 November 2017 в 03:41
  • 2
    Я только что попробовал переписать /dev/mem с dd, и все, что он сделал, это печать «Killed». – Byte Commander 25 November 2017 в 03:50
  • 3
    На самом деле я просто попробовал все четыре твои предложения в виртуальной машине, и ни один из них не имел ни малейшего эффекта. Это была живая система 16,04, если это имеет значение. – Byte Commander 25 November 2017 в 03:56
  • 4
    @dessert panic_on_oops изменит поведение в случае возникновения ошибки ядра, это не сразу приведет к краху вашей машины (см. man proc(5) ). – Lekensteyn 25 November 2017 в 04:07

Пожалуйста, не пытайтесь, если вы точно не знаете, что делаете!

меняет настройки /proc/sys/kernel, связанные с паникой ядра echo 1 >/proc/sys/kernel/hung_task_panic echo 1 >/proc/sys/kernel/panic_on_io_nmi echo 1 >/proc/sys/kernel/panic_on_oops echo 1 >/proc/sys/kernel/panic_on_stackoverflow . Это немедленно установит ядро ​​в случае зависания task (!), NMI, вызванный ошибкой ввода-вывода, oops или BUG и переполнение ядра, IRQ и стеков исключений. Хотя это и не вызывает панику сразу, это должно сделать намного проще добраться до точки. выводить порты ввода / вывода системы cat /dev/port , перезаписывать устройство памяти с помощью нулевых портов ввода / вывода с нулями cp /dev/zero /dev/mem с произвольными номерами dd if=/dev/random of=/dev/port с использованием SysRq, выполнять сбой системы с помощью разыменования NULL: echo 1 >/proc/sys/kernel/sysrq # make sure SysRQ is fully enabled echo c >/proc/sysrq-trigger # pull the trigger

Я не пробовал ни одного из них. (источник 01, источник 02, Как вызвать панику ядра с помощью одной команды ?, источник 04)

4
ответ дан 18 July 2018 в 02:38

Пожалуйста, не пытайтесь, если вы точно не знаете, что делаете!

меняет настройки /proc/sys/kernel, связанные с паникой ядра echo 1 >/proc/sys/kernel/hung_task_panic echo 1 >/proc/sys/kernel/panic_on_io_nmi echo 1 >/proc/sys/kernel/panic_on_oops echo 1 >/proc/sys/kernel/panic_on_stackoverflow . Это немедленно установит ядро ​​в случае зависания task (!), NMI, вызванный ошибкой ввода-вывода, oops или BUG и переполнение ядра, IRQ и стеков исключений. Хотя это и не вызывает панику сразу, это должно сделать намного проще добраться до точки. выводить порты ввода / вывода системы cat /dev/port , перезаписывать устройство памяти с помощью нулевых портов ввода / вывода с нулями cp /dev/zero /dev/mem с произвольными номерами dd if=/dev/random of=/dev/port с использованием SysRq, выполнять сбой системы с помощью разыменования NULL: echo 1 >/proc/sys/kernel/sysrq # make sure SysRQ is fully enabled echo c >/proc/sysrq-trigger # pull the trigger

Я не пробовал ни одного из них. (источник 01, источник 02, Как вызвать панику ядра с помощью одной команды ?, источник 04)

4
ответ дан 24 July 2018 в 17:37
  • 1
    @George Я знаю , но другие, которые спотыкаются на этот вопрос, не знают. – Sergiy Kolodyazhnyy 25 November 2017 в 03:41
  • 2
    Я только что попробовал переписать /dev/mem с dd, и все, что он сделал, это печать «Killed». – Byte Commander 25 November 2017 в 03:50
  • 3
    На самом деле я просто попробовал все четыре твои предложения в виртуальной машине, и ни один из них не имел ни малейшего эффекта. Это была живая система 16,04, если это имеет значение. – Byte Commander 25 November 2017 в 03:56
  • 4
    @dessert panic_on_oops изменит поведение в случае возникновения ошибки ядра, это не сразу приведет к краху вашей машины (см. man proc(5) ). – Lekensteyn 25 November 2017 в 04:07

Другие вопросы по тегам:

Похожие вопросы: