Используйте BEGIN
в команде awk
для печати заголовков:
systemctl list-units --type service --all | awk 'BEGIN{print "Unit State Status"};$4 ~ /^running$/{print $1,$2,$4}' | column -t
Вы можете передать это в column -t
, чтобы получить хорошо читаемый вывод. Вы также можете использовать awk
вместо grep
, чтобы проверить, соответствует ли столбец 4 running
.
Как упоминалось в других комментариях, вы также можете запустить systemctl list-units --type service --state=running
вместо использования grep
или awk
для фильтрации запущенных служб.
Проблема заключалась в том, что /etc/lvm/lvm.conf
не перезагружался простым вызовом update-grub
. Эта статья дала мне правильный намек (позже также эта на немецком языке):
Take a backup of the existing initramfs and rebuild it, so that the changed /etc/lvm/lvm.conf file will be used for subsequent reboots.
Для пересборки я нашел команду update -initramfs и выполнил ее следующим образом:
update-initramfs -u -k all
Поскольку у меня было несколько версий ядра, и я ожидал, что в некоторых (могут возникнуть проблемы, как и в моих предыдущих тестах ), я пересобрал все. Обычно бывает достаточно пересобрать последнюю версию без переключателя -k all
.
Теперь сервер перезагрузился без проблем, и я смог убедиться, что микрокод был обновлен:
# dmesg | grep -i microcode
[ 0.000000] microcode: microcode updated early to revision 0x28, date = 2019-11-12
[ 0.200700] SRBDS: Mitigation: Microcode
[ 0.929176] microcode: sig=0x306c3, pf=0x2, revision=0x28
[ 0.929231] microcode: Microcode Update Driver: v2.2.
Раньше у меня было 0x19, теперь 0x28, как и ожидалось от proxmox. Похоже, что эти обновления не применялись, пока я не обновил их вручную. Я предполагаю, что это связано с недопустимым шаблоном регулярного выражения (now )без |
в конце, что препятствует применению обновления.