Способи оплати Abuse

Як додати скрипт в автозавантаження Ubuntu

24.02.2021, 20:29

У деяких випадках під час завантаження системи виникає необхідність виконати свій скрипт. До таких випадків належить потреба у зміні роздільної здатності екрана, запуску певних додатків та оновленні конкретної утиліти. Запуск скрипта можна реалізувати різними способами. Зробити це можна шляхом використання графічної оболонки або системи ініціалізації systemd, яка використовується зараз практично у всіх дистрибутивах.

Автозавантаження за рахунок стандартної утиліти Ubuntu

Перше, що слід зробити, це в зручному місці створити скрипт і виконати його:

$ sudo gedit /script_path/script_name.sh

#!/bin/bash

echo "Hello world"

Цей скрипт виведе на екран користувача повідомлення "Hello world". Коли програма готова, її необхідно зробити виконуваною. Для цього використовується така команда:

$ sudo chmod ugo+x /script_path/script_name.sh

Далі в головному меню системи необхідно запустити утиліту "Автоматично запускаються додатки".

Автоматически запускаемые приложения

Тиснемо кнопку "Добавить" і вводимо повний шлях до файлу скрипта в поле "Команда". Можна натиснути кнопку "Обзор", знайти, вибрати файл скрипта і натиснути "Добавить".

Графическая оболочка Ubuntu

Надалі програма виконуватиметься щоразу під час запуску графічної оболонки Ubuntu.

Автозавантаження скриптів Linux у Systemd

Скористайтеся спеціальною командою, щоб створити файл сервісу system

Це команда:

sudo systemctl edit --force myscript

You need to add the contents to this file:

[Unit]

Description=My Script Service

After=multi-user.target

[Service]

Type=idle

ExecStart=/full/path/to/script/script_name.sh

[Install]

WantedBy=multi-user.target

Создание файла сервиса systemd

Далі в рядку під назвою ExecStart потрібно виконати одну з наступних вимог: прописати шлях до виконуваного скрипту або команду. Після чого скрипт додається в автозавантаження:

$ sudo systemctl daemon-reload

$ sudo systemctl enable mysrcipt

Програма запуститься після ініціалізації системи. З цією метою можна користуватися "старим" способом: за допомогою rc.local. створюється файл /etc/rc.local і прописується шлях до нього в рядку ExecStart сервіс-файлу.