LINUX.ORG.RU

openSUSE LEAP 15.1 автозапуск

 


0

1

Прям бЯда товарищи. Админю зоопарк операционок, но никогда не думал, что не смогу сделать автозапуск скрипта =(. Нужен разовый запуск скрипта, после старта системы. Везде куча инструкций... но от старых версий сюзи и они не актуальны, что парадоксально и в забугорном сегменте такая же ситуация. В общем, прошу помощи. Пробовал через systemctl enable rc-local с созданием /etc/rc.local, но не взлетело.

Коротко о проблеме: сервер на opensuse является «башкой» для двух сан хранилок подключенных к нему по айскази, но 10г сетевухи долго грузятся, айскази служба не отрабатывает, далее система не находит устройств, указанных в фстабе и как следствие дебаг мод. Если сделать тупо маунт по uuid то все ок. Но для этого нужно понять, как добавить скрипт в автозагрузку с нужным ран левелом... Плиз хелп.



Последнее исправление: philtb (всего исправлений: 2)

а вот юнит написать не судьба

novitchok ★★★★★
()

Нет никакого парадокса, просто про systemd и его универсальность настолько широко известно, что это «вариант по умолчанию». Юнит напиши да и всё.

Vsevolod-linuxoid ★★★★★
()

В слес рц.локал называется /etc/init.d/after.local, возможно в опенсусе там же.

anonymous
()

Решение

Всем спасибо за участие.

Для тех, кто столкнется с похожей проблемой напишу здесь, как в итоге сделал:

Создал фаил /etc/rc.local, сделав его исполняемым. В нем:

sleep 10

mount –uuid=9eece28a-fcdf-40a6-9d48-6b2b91dcc8fe /san1lun1
mount –uuid=34682853-18a4-4cb8-987d-5d3926d7aae2 /san1lun2
mount –uuid=87df5b6c-be71-456d-863d-3b52b1863648 /san1lun3
mount –uuid=811b53ae-2f68-48f3-a5f4-c2c1007ef53e /san2lun1
mount –uuid=260731d0-15be-4043-8db5-210341626d41 /san2lun2
systemctl restart nfsserver

exit 0

Костыль со слипом пришлось сделать, т.к. после того как система считает, что сеть поднята, она по факту поднимается еще через 4 секунды, 10 сек сделано с запасом. Были мысли цикл с пингом на хранилки делать, но стало лень.

Создал фаил /etc/systemd/system/rc-local.service следующего содержания:

[Unit]
Description=/etc/rc.local Compatibility
ConditionPathExists=/etc/rc.local
Wants=network.target
After=network.target network-online.target iscsid.target remote-fs.target

[Service]
Type=oneshot
ExecStart=/etc/rc.local start
RemainAfterExit=true

[Install]
WantedBy=remote-fs.target

Далее: sudo systemctl enable rc-local
sudo systemctl start rc-local

Проверить состояние:
sudo systemctl status rc-local

После правки юнита не забыть:
systemctl daemon-reload

И инструкция операторам кластера на случай чп ;)

  1. Включаем хранилки 2 мин
  2. Включаем бошку 2 мин
  3. Включаем ноды

Всем добра и ясных глаз!

philtb
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.