Metody płatności Abuse

Jak dodać skrypt do autoloadera Ubuntu

24.02.2021, 20:29

W niektórych przypadkach konieczne jest wykonanie skryptu podczas uruchamiania systemu. Takie przypadki obejmują potrzebę zmiany rozdzielczości ekranu, uruchomienia niektórych aplikacji i aktualizacji określonego narzędzia. Uruchamianie skryptu można zaimplementować na wiele sposobów. Można to zrobić za pomocą powłoki graficznej lub systemu inicjalizacji systemd, który jest obecnie używany w prawie wszystkich dystrybucjach.

Automatyczne ładowanie przy użyciu standardowego narzędzia Ubuntu

Pierwszą rzeczą do zrobienia jest utworzenie skryptu w dogodnym miejscu i wykonanie go:

$ sudo gedit /script_path/script_name.sh

#!/bin/bash

echo "Hello world"

Skrypt ten będzie wyświetlał użytkownikowi komunikaty "Hello world". Gdy program jest już gotowy, należy uczynić go wykonywalnym. Do tego celu służy poniższe polecenie:

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

Następnie w menu głównym systemu należy uruchomić narzędzie "Automatycznie uruchamiaj aplikacje".

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

Kliknij przycisk "Dodaj" i wprowadź pełną ścieżkę do pliku skryptu w polu "Polecenie". Możesz nacisnąć przycisk "Przeglądaj", znaleźć i wybrać plik skryptu, a następnie nacisnąć przycisk "Dodaj".

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

Od tego momentu program będzie wykonywany przy każdym uruchomieniu powłoki graficznej Ubuntu.

Automatyczne ładowanie skryptów Linux w Systemd

Użyj specjalnego polecenia, aby utworzyć plik usługi systemd

Oto polecenie:

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

Następnie w linii o nazwie ExecStart należy spełnić jeden z następujących warunków: wpisać ścieżkę do skryptu lub polecenia, które ma zostać wykonane. Następnie skrypt jest dodawany do autoloadera:

$ sudo systemctl daemon-reload

$ sudo systemctl enable mysrcipt

Program uruchomi się po inicjalizacji systemu. W tym celu można użyć "starej" metody: można użyć rc.local, aby utworzyć plik /etc/rc.local i zapisać ścieżkę do niego w linii ExecStart pliku usługi.