Лично я бы strace
процесс qmgr
и, надеюсь, посмотрел, откуда возникает ошибка.
Dovecot работает?
Есть ли на website-internal.com
запись MX?
Что происходит при запуске:
echo "test" | /usr/sbin/sendmail -fuser@website-internal.com user@website-internal.com
Я нашел способ осуществить то, что мы искали. Спасибо go @jc__ за подсказку с grubenv, а также @Anthon.
Вот мое решение: Поместите двоичный файл ядра iPXE (.lkrn) с настраиваемым сценарием для связи с сервером управления загрузкой в / boot
Затем настройте Grub
1- для использования переменной from grubenv
GRUB_DEFAULT=saved
2- Последовательная загрузка iPXE при загрузке из Grub и включение следующей команды перед загрузкой iPXE
set saved_entry='<menuentry to boot from local drive>'
save_env saved_entry
3- Добавьте пункт меню Grub, который загружает ОС с локального диска, с помощью
set saved_entry='<menuentry iPXE>'
save_env saved_entry
4- Если ничего не нужно done сервер управления загрузкой дает команду iPXE загрузиться с локального диска с помощью
sanboot --no-describe --drive 0x80
5 - Grub загружается снова и загружается на локальный диск, снова настраивая iPXE для следующей загрузки.
Время загрузки Windows 10, включая запрос сервера управления загрузкой, составляет около 25 секунд. Так что на самом деле довольно быстро. :)
Я использовал следующий метод обновления удаленной системы, который также может вам помочь. В этой системе я мог только инициировать сброс, а не смотреть на экран (загрузки). Система загрузилась в grub (в Ubuntu 12.04), и
имел как дополнительный раздел, так и раздел данных. Хитрость заключается в том, чтобы вставить в
/ etc / default / grub
:
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=false
, что вы всегда загружаетесь в запись 0 (Ubuntu 12.04), если:
grub-reboot X
при входе в Ubuntu и перезагружаетесь Из Ubuntu я бы загрузил и перенес tar-файл в дополнительный раздел (или сделал небольшие изменения вручную), затем запустите update-grub
, чтобы обновить меню grub (которое сканирует только что заполненный дополнительный раздел и создает пункты меню для своей ОС), затем используйте grub-reboot
и reboot
].
Если машина не вернется (т.е. не сможет ssh
после льготного периода), я могу перезагрузить машину, и она будет перезагружена в Ubuntu, готовая к анализу, что пошло не так, и к следующему циклу.
С помощью соответствующей программы, запускаемой при загрузке, вы можете проверить, какой следующий «образ» вам нужно загрузить, посмотреть, есть ли он у вас (если не загружен), и установить. Затем перезагрузитесь, как указано выше.
При использовании дистрибутива на основе упрощенного systemd
процесс перезагрузки должен быть относительно быстрым, а загрузка / установка альтернативной ОС / дистрибутива займет большую часть времени.
Для этого есть как минимум два способа:
Взгляните на http://ipxe.org/appnote/work_around_bios_halting_on_ipxe_exit# examples , одна из этих команд может сработать для вас:
chain $ {server} /grub4dos.exe --config-file = "find --set-root / BOOTMGR; chainloader / BOOTMGR" {{1} } chain $ {server} /grub4dos.exe --config-file = "root (hd0,1); chainloader +1"
В настоящее время я использую следующее, поскольку я построил это, прежде чем я обнаружил, что страницу в GRUB4DOS на сайте iPXE. Создайте ISO-образ, содержащий ISOLINUX и эту конфигурацию:
NOESCAPE 1
PROMPT 0
ALLOWOPTIONS 0
DEFAULT chain-hd0-2
LABEL chain-hd0-2
СКАЗАТЬ Цепочку hd0 2 ...
COM32 chain.c32
ДОБАВИТЬ hd0 2
И загрузить его, используя (у вас чтобы использовать здесь 0x81, потому что по умолчанию используется 0x80, который переопределяет локальный диск):
sanboot --drive 0x81 $ {server} /chain-hd0-2.iso