Мне нужно установить сценарий инициализации, который запускается только при первой загрузке после установки. Как я могу сделать это в Ubuntu?
Вы можете использовать подобный трюк, чтобы не запускать скрипт более одного раза:
#!/bin/bash
test ! -e /path/to/chosen/file || exit 0
touch /path/to/chosen/file
echo "Executing my job"
Вы можете запустить приведенный выше сценарий только один раз. Другие исполнения будут завершены, потому что файл должен быть создан при первом выполнении. Конечно, для создания файла у вас должно быть достаточно прав.
Чтобы это оставалось действительным после перезагрузки, вам нужно избегать создания файла во временной файловой системе, например /tmp
. Кроме того, это предотвращает многократное выполнение сценария независимо от того, выполняется он вручную или является частью процесса запуска.
В пакетах oem-config есть несколько инструментов для выполнения начальной настройки сразу после установки.