Рейтинг:1

Что включает mariadb при первой загрузке

флаг lk

Немного предыстории того, что я пытаюсь сделать: мы создаем образ Ubuntu, который мы развертываем на тысячах рабочих станций. Нам нужно, чтобы MariaDB была доступна на рабочих станциях, но мы хотим, чтобы она запускалась только тогда, когда это необходимо, чтобы не влиять негативно на время загрузки на машинах, на которых она не нужна.

Итак, мой план состоял в том, чтобы сделать systemctl отключить mariadb.service когда мы собираем образ, а затем запускаем его через агента, который знает, когда это необходимо. я это проверил systemctl отключить mariadb.service удаляет .хочет символическая ссылка:

Удален файл /etc/systemd/system/multi-user.target.wants/mariadb.service.
Удален файл /etc/systemd/system/mysqld.service.
Удален файл /etc/systemd/system/mysql.service.

И я подтвердил, что /etc/systemd/system/multi-user.target.wants/mariadb.service на изображении не существует.

Однако, когда мы загружаем образ, mariadb.service включен, в соответствии с выводом статус systemctl mariadb и /etc/systemd/system/multi-user.target.wants/mariadb.service существовать. Кажется, что-то, что включает его при первой загрузке. Я хотел бы знать, что это делает, поэтому я могу отключить это.

Я просмотрел файлы, перечисленные в dpkg -L mariadb-сервер-10.3 mariadb-сервер-ядро-10.3 но ничего не нашел.

флаг in
Хм… это неожиданное поведение для современной версии Ubuntu.Какую версию вы рисуете? Я бы предположил, что это сборка для рабочего стола, но это 20.04 или что-то другое?
флаг cn
1 вещь для проверки: journalctl показывает, что это запустило? :)
флаг lk
@matigo Да, сейчас 20.04. Это не десктопная сборка. Мы создаем образ с помощью `debootstrap`, а затем запускаем `chroot image apt install...` и вносим кучу других изменений.
флаг lk
@Rinzwind Я вижу, что systemd запускает mariadb: «05 октября, 09:00:33 fnb-pop-image systemd[1]: запуск сервера базы данных MariaDB 10.3.31 ...» Я искал в журнале, что его активировало, но ничего не нашел.
флаг cn
Таким образом, это будет systemd, который запускает его. Возможно, установка mariadb активирует systemd; например: «вы установили его, поэтому хотите, чтобы он запустился». Если это произойдет после того, как вы сделаете его неактивным, он снова станет активным. Не могли бы вы попробовать замаскировать его, а не отключать?
флаг lk
@Rinzwind Исправьте s/active/enabled/. Большинство служб включаются после выполнения «подходящей установки», мы отключаем их после выполнения «подходящей установки», но они включаются при первой загрузке. Маскировка работает, но она также препятствует ручному запуску. Маскирование изображения, а затем снятие маски и запуск вручную сработают, но это выглядит грязно. Я хотел бы попытаться найти то, что включает его при первой загрузке.
Рейтинг:1
флаг lk

Это было включено systemd-предустановка

Я смог предотвратить это, добавив этот файл:

# /etc/systemd/system-preset/10-mariadb.preset

отключить mariadb.service
флаг cn
Отлично :-) Есть 2 плюса

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.