Назад | Перейти на главную страницу

Разница между reboot -n и echo b> / proc / sysrq-trigger?

Есть ли разница в Linux (в частности, на производных от RHEL CentOS и Fedora)?

echo b > /proc/sysrq-trigger

«Немедленно перезагрузите систему, не отключая и не синхронизируя файловые системы», - говорится в Википедии.

reboot -n

«Не выполняйте синхронизацию перед перезагрузкой или остановкой. Обратите внимание, что драйверы ядра и хранилища все еще могут синхронизироваться», - говорится в сообщении man 8 reboot. Есть ли какая-нибудь разница в этом поведении?

В /sbin/reboot является обычным исполняемым файлом в файловой системе. Если ваша файловая система закрыта (например, зависание драйвера файловой системы, зависание оборудования SATA или зависание прошивки диска), изменений для успешного выполнения этого исполняемого файла практически нет. С другой стороны, если у вас уже открыта корневая оболочка, echo b > /proc/sysrq-trigger не требует доступа к файловой системе.