Как точно определить, почему Systemd переходит в аварийный режим

Случай SFTP:

Мне нужно было скопировать эту структуру на мой ftp:

mainfolder --- folder --- subfolder
                  |           |
              file1.txt   file2.txt

Это решило мою проблему:

cd ./mainfolder
mkdir folder
put -r /from/source/folder/* /mainfolder/folder/
cd ./folder
mkdir subfolder
put -r /from/source/folder/subfolder/* /mainfolder/folder/subfolder/
10
23.09.2017, 22:47
2 ответа

Время от времени я сталкиваюсь с подсказкой «режим обслуживания», и мне также приходится прокручивать журнал на наличие ошибок. Так как journalctl использует less в качестве пейджера, вы должны иметь возможность применять меньше ярлыков к вашему поиску.

Как правило, я полагаюсь на функцию поиска (/ )и ищу что-либо эквивалентное «ошибке», «предупреждению» или «сбою». И обязательно -i для принудительного поиска без учета регистра.

Таким образом, мои нажатия клавиш будут иметь вид:

-i (case insensitive)
g (move to start)
/error
nnnn (skip through results)
g (move to start)
/fail
nnnn (skip through results)
g (move to start)
/warn
nnnn (skip through results)

Технически это не исчерпывающий или точный поиск точной проблемы, но я никогда не пропускал проблемы с загрузкой таким образом.

Некоторые связанные сочетания клавиш ниже:

http://www.thegeekstuff.com/2010/02/unix-less-command-10-tips-for-effective-navigation/

2
27.01.2020, 20:03

Сбой должен был отображаться красным [ FAIL ]на консоли (вместо[ OK ])с описанием юнита рядом с ним. Как правило, первые неудачи являются наиболее важными. Используйте Shift+PageUp на консоли для прокрутки вверх и просмотра последних нескольких экранов вывода. Это может не сработать, если выходных данных слишком много.

Это работает, даже если вы обычно не видите сообщения [ OK ], например. из-за quietв командной строке ядра, используемой Debian. При первом сбое systemd переключается в подробный режим.

В противном случае вы можете использовать systemctl. Без каких-либо опций он показывает огромный список известных устройств с неисправностями, выделенными красным цветом. Чтобы показать только неудачные, используйте systemctl --state=failedили systemctl --failed.


Если вы просматриваете юнит-файлы, существует всего несколько способов возврата загрузки к emergency.target.Обычно это происходит, когда происходит сбой модуля .mountдля локальной файловой системы, что приводит к сбою local-fs.target. Или когда вашей initramfs не удается смонтировать корневую файловую систему, если ваша initramfs использует systemd.

local-fs.targetимеет OnFailure=emergency.target. И это терпит неудачу, потому что модули для локальных файловых систем автоматически добавляются в список Requires локального -fs.target (, если они не имеютDefaultDependencies=no).

$ systemctl show --property Requires local-fs.target
Requires=-.mount home.mount boot.mount boot-efi.mount
8
27.01.2020, 20:03

Теги

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