Скрипт Ubuntu: сделай это, перезагрузись, сделай это

Я пытаюсь автоматизировать небольшой процесс установки:

  • Элемент списка
  • apt install
  • reboot
  • apt install that
  • закончить кое-что еще

Есть ли способ возобновить работу сценария после перезагрузки ИЛИ какая-то конфигурация требуемого состояния

, которая позволяет мне достичь этого ( без использования какого-либо сервера / облака)?

Спасибо

Томас

2
задан 30 September 2019 в 11:36

1 ответ

Во-первых, добавьте строку к /etc/rc.local:

/path/to/finishinstallscript

Ваш /path/to/startinstallscript похож на это:

#!/bin/bash
list item
apt install this
reboot

Ваш /path/to/finishinstallscript похож на это:

#!/bin/bash
apt install that
finish some other thing
echo "#!/bin/bash" > /path/to/finishinstallscript
exit 0

В перезагрузке, эти finishinstallscript перезаписывается пустым (хорошо, просто хижина) строка. Таким образом, после второй перезагрузки, ничто не выполняется во второй раз. Вы захотите сохранить копию оригинала finishinstallscript, поскольку он потерян после перезагрузки.

Эти exit 0 команда там, чтобы гарантировать, что сценарий запуска заканчивается правильно (иначе, Ваша система не загрузится в случае отказа).

не забывают делать оба исполняемых файла сценариев. Могло также быть полезно уведомить пользователя того, что происходит с notify-send сообщение перед перезагрузкой.

1
ответ дан 23 October 2019 в 09:59

Другие вопросы по тегам:

Похожие вопросы: