Иногда возникает необходимость выполнить свой скрипт во время загрузки системы. Например, чтобы запустить определенную программу, поменять настройки разрешения экрана или выполнить обновление необходимой программы.
Сделать это можно несколькими способами. С помощью графической оболочки или с помощью системы инициализации systemd, которая используется сейчас практически во всех дистрибутивах.
Автозагрузка с помощью стандартной утилиты Ubuntu
Создайте скрипт в удобном месте и сделайте его выполняемым:
sudo gedit /путь_к_скрипту/имя_скрипта.sh
#!/bin/bash
echo “Hello world”
Наш скрипт просто выводит строчку Hello world на экран, более подробно о создании скриптов читайте в статье написание скриптов на Bash. Когда скрипт будет готов, сделайте его исполняемым:
sudo chmod ugo+x /путь_к_скрипту/имя_скрипта.sh
Запустите утилиту Автоматически запускаемые приложения в главном меню системы:
Нажмите кнопку Добавить и в поле Команда введите полный путь к файлу вашего скрипта или выберите его с помощью кнопки Обзор, затем нажмите Добавить:
Скрипт будет выполнен после загрузки графической оболочки Ubuntu.
Автозагрузка скриптов Linux в systemd
Создайте файл сервиса systemd с помощью следующей команды:
sudo systemctl edit –force myscript
Добавьте в него такое содержимое:
[Unit]
Description=My Script Service
After=multi-user.target
[Service]
Type=idle
ExecStart=/полный/путь/к/скрипту/имя_скрипта.sh
[Install]
WantedBy=multi-user.target
В строчке ExecStart можно прописать либо путь к скрипту, который надо выполнить, либо саму команду. Теперь добавьте этот скрипт в автозагрузку: