imported>Vix |
imported>Vix |
Строка 1: |
Строка 1: |
| При выполнении:
| | '''Установка и настройка''' |
| /sbin/vboxconfig
| |
|
| |
|
| vboxdrv.sh: Stopping VirtualBox services.
| | Прежде всего обновите локальный список пакетов с помощью вашего пакетного менеджера, например на Ubuntu и Debian это можно сделать с помощью apt: |
| vboxdrv.sh: Building VirtualBox kernel modules.
| | apt-get update |
| vboxdrv.sh: Starting VirtualBox services.
| |
| vboxdrv.sh: Building VirtualBox kernel modules.
| |
| vboxdrv.sh: failed: modprobe vboxdrv failed. Please use 'dmesg' to find out why. | |
|
| |
| There were problems setting up VirtualBox. To re-start the set-up process, run
| |
| /sbin/vboxconfig
| |
| as root.
| |
|
| |
|
| <h1> VirtualBox + Безопасная загрузка + Ubuntu = сбой </h1>
| | Для установки выполните команду: |
|
| | apt-get install exim4 |
| <p> Проблема заключается в том, что все модули ядра должны быть подписаны
| |
| ключом, которому доверяет система UEFI, иначе загрузка не удастся.
| |
| Ubuntu не подписывает сторонние модули vbox * kernel, а скорее
| |
| дает пользователю возможность отключить Безопасную загрузку после установки
| |
| пакет виртуальных боксов. Я мог бы это сделать, но тогда я увижу
| |
| раздражающее сообщение «Загрузка в небезопасном режиме» каждый раз, когда машина
| |
| запускается, а также установка с двойной загрузкой Windows 10 у меня будет
| |
| не функция. </p>
| |
|
| |
| <p> Ubuntu 16.04 на Dell Latitude E7440 с BIOS A18 и с двойной загрузкой Windows 10. </p>
| |
|
| |
| <h1> Шаги, чтобы заставить его работать, в частности, для Ubuntu /Debian </h1>
| |
|
| |
| <ol>
| |
| <li> <p> Установите пакет виртуальных боксов. Если установка обнаруживает, что безопасная загрузка включена, вам будет предоставлена проблема
| |
| и предоставляется возможность отключить безопасную загрузку. Выберите «Нет». </p> </li>
| |
| <li>
| |
| <p> Создайте персональную общедоступную /приватную пару ключей RSA, которая будет использоваться для подписи модулей ядра. Я решил использовать учетную запись root и каталог
| |
| /root /module-signature /для хранения всех вещей, связанных с подписью ядра
| |
| модули. </p>
| |
|
| |
|
| $ sudo -i
| | Примечание: если вам необходимо использовать ACL и другие расширенные функции, то установите exim4-daemon-heavy: |
| # mkdir /root/module-signing
| | apt-get install exim4-daemon-heavy |
| # cd /root/module-signing | |
| # openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=YOUR_NAME/"
| |
| [...]
| |
| # chmod 600 MOK.priv
| |
| </li>
| |
| <li>
| |
| <p> Используйте служебную программу MOK («Ключ владельца машины») для импорта открытого ключа, чтобы система могла доверять ей. Это двухэтапный процесс
| |
| где ключ сначала импортируется, а затем должен быть зарегистрирован, когда
| |
| машина загрузится в следующий раз. Простой пароль достаточно хорош,
| |
| поскольку он предназначен только для временного использования. </p>
| |
|
| |
|
| # mokutil --import /root/module-signing/MOK.der | | Чтобы перейти к настройке, выполните команду: |
| input password:
| | dpkg-reconfigure exim4-config |
| input password again:
| |
|
| |
|
| </li>
| | Нажмите Ok для начала настройки. |
| <li> <p> Перезагрузите компьютер. Когда запускается загрузчик, утилита MOK manager EFI должна автоматически запускаться. Он попросит части
| | '''РЕШЕНИЕ ПРОБЛЕМ''' |
| пароль, предоставленный на шаге 3. Выберите «Записаться MOK», затем вы должны
| | <hr> |
| см. ключ, импортированный на шаге 3. Заполните шаги регистрации, затем
| | * '''defer (-53): retry time not reached for any host''' |
| продолжить загрузку. Ядро Linux будет записывать ключи, которые
| | Повреждены ваши exim db Это возможно связанно с недоступостью почтового сервера какой-то время. |
| и вы сможете увидеть свой собственный ключ с помощью команды:
| | |
| dmesg|grep 'EFI: Loaded cert'</li> | | '''решение:''' |
| <li>
| | |
| <p> Используя утилиту подписи, поставляемую с файлами сборки ядра, подпишите все модули VirtualBox, используя закрытый ключ MOK, сгенерированный на шаге 2.
| | cd /var/spool/exim/db |
| Я помещал это в маленький скрипт <code>/root/module-signing/sign-vbox-modules</code>, поэтому его можно легко запустить, когда новые ядра установлены как часть регулярных обновлений: </p>
| | rm -f retry retry.lockfile |
| | rm -f wait-remote_smtp wait-remote_smtp.lockfile |
| | service exim restart |
| | |
| | В дальнейшим имеет смысл: внести изменения в /etc/exim/exim.conf |
| | в раздел |
|
| |
|
| echo > /root/module-signing/sign-vbox-modules | | begin retry |
| mcedit /root/module-signing/sign-vbox-modules | | * rcpt_451 F,1h,15m |
| | * refused F,1h,2m |
| | * timeout_connect F,2h,2m; F,6h,1h; F,4d,6h |
| | * * F,2h,2m; G,16h,1h,1.5; F,4d,6h |
|
| |
|
| * Текст скрипта: | | также обратите внимание на запуск с какой опцией он стартует: -q5m |
| | * [https://www.linuxshop.ru/forum/f7/t31431--resheno-remote-smtp-defer-53-retry-time-not-reached-for-any-host-exchange-exim.html взято тут] |
|
| |
|
| #!/bin/bash
| | * Для решения проблемы с ssl в exim4.conf.template изменить: |
| | | ... |
| for modfile in $(dirname $(modinfo -n vboxdrv))/*.ko; do
| | REMOTE_SMTP_SMARTHOST_TLS_VERIFY_HOSTS = * |
| echo "Signing $modfile"
| |
| /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 \
| |
| /root/module-signing/MOK.priv \
| |
| /root/module-signing/MOK.der "$modfile"
| |
| done | |
|
| |
| <p> И затем: </p>
| |
|
| |
|
| # chmod 700 /root/module-signing/sign-vbox-modules
| | на |
| | | ... |
| </li>
| | REMOTE_SMTP_SMARTHOST_TLS_VERIFY_HOSTS = !* |
| <li> Запустите скрипт с шага 5 с правами root. Вам нужно будет запустить скрипт подписи каждый раз, когда будет установлено новое обновление ядра, поскольку это
| |
| приведет к восстановлению сторонних модулей VirtualBox. Использовать
| |
| скрипт только после загрузки нового ядра, поскольку он полагается на
| |
| modinfo -n
| |
| и
| |
| uname -r | |
| , чтобы указать версию ядра для подписания. </li>
| |
| <li>
| |
| <p> Загрузите модуль vboxdrv и запустите VirtualBox: </p>
| |
|
| |
|
| # modprobe vboxdrv | | * Если нужно жестко указать порт smtp, то: |
| | | ... |
| </li>
| | dc_smarthost='mail.myhost.ru::25' |
| </ol>
| | ... |
| <p> Процедура также может использоваться для подписи другого стороннего ядра
| |
| модули, такие как графические драйверы nvidia, если это необходимо. (Я имею
| |
| не испытал это сам.) </p>
| |
| </blockquote>
| |
|
| |
|
| ИСТОЧНИК:
| | '''ИСТОЧНИКИ:''' |
| <hr> | | <hr> |
| * [https://sprosi.pro/questions/80322/vboxdrvsh-failed-ne-udalos-vyipolnit-modprobe-vboxdrv-ispolzuyte-dmesg-chtobyi-uznat-pochemu VirtualBox + Безопасная загрузка + Ubuntu = сбой] | | * [https://qna.habr.com/q/146009 Exim и внешний SMTP сервер, как заставить ходить почту?] |
| | * [https://1cloud.ru/help/linux/nastrojka-exim4 Настройка EXIM4 для отправки почтовых сообщений в Linux] |
| | * [https://serverspace.by/support/help/nastroika-exim-4-na-ubuntu/ Ubuntu. Настройка Exim4] |
Установка и настройка
Прежде всего обновите локальный список пакетов с помощью вашего пакетного менеджера, например на Ubuntu и Debian это можно сделать с помощью apt:
apt-get update
Для установки выполните команду:
apt-get install exim4
Примечание: если вам необходимо использовать ACL и другие расширенные функции, то установите exim4-daemon-heavy:
apt-get install exim4-daemon-heavy
Чтобы перейти к настройке, выполните команду:
dpkg-reconfigure exim4-config
Нажмите Ok для начала настройки.
РЕШЕНИЕ ПРОБЛЕМ
- defer (-53): retry time not reached for any host
Повреждены ваши exim db Это возможно связанно с недоступостью почтового сервера какой-то время.
решение:
cd /var/spool/exim/db
rm -f retry retry.lockfile
rm -f wait-remote_smtp wait-remote_smtp.lockfile
service exim restart
В дальнейшим имеет смысл: внести изменения в /etc/exim/exim.conf
в раздел
begin retry
* rcpt_451 F,1h,15m
* refused F,1h,2m
* timeout_connect F,2h,2m; F,6h,1h; F,4d,6h
* * F,2h,2m; G,16h,1h,1.5; F,4d,6h
также обратите внимание на запуск с какой опцией он стартует: -q5m
- Для решения проблемы с ssl в exim4.conf.template изменить:
...
REMOTE_SMTP_SMARTHOST_TLS_VERIFY_HOSTS = *
на
...
REMOTE_SMTP_SMARTHOST_TLS_VERIFY_HOSTS = !*
- Если нужно жестко указать порт smtp, то:
...
dc_smarthost='mail.myhost.ru::25'
...
ИСТОЧНИКИ: