Многие программы мы используем постоянно и запускаем их каждый раз при старте системы, а некоторые, такие, как мессенджеры или различные утилиты должны постоянно работать в фоне чтобы правильно выполнять свою задачу. Для этого в операционных системах существует автозагрузка. Программы запускаются автоматически, после того, как запустилась ОС или графическая оболочка.
В этой статье мы поговорим о том, как работает автозагрузка в Ubuntu, какие существуют способы автозагрузки в этой системе и как добавить туда программы.
АВТОЗАГРУЗКА В UBUNTU
Первым делом нужно сказать, что в Ubuntu существует несколько уровней автозагрузки. Я не буду говорить здесь про systemd и автозагрузку сервисов, так как уже рассматривал это в одной из первых статей. Программу или скрипт можно добавить в автозагрузку такими путями:
- Утилита «Автоматически запускаемые приложения»;
- Папка «Автозапуск»;
- Файл rc.local;
- Файл Xinitrc;
Автозагрузка в Ubuntu
Linux. Добавление скрипта в автозагрузку с помощью systemd
Рассмотрим два варианта автозагрузки программ или скриптов в Ubuntu. Через графический интерфейс и с использованием файла rc.local. В предыдущих версиях автозагрузка в Ubuntu работала именно через файл rc.local, однако в последних версиях её отключили. Мы включим данную возможность.
Автозагрузка через графический интерфейс
Автозагрузка через графический интерфейс настраивается в приложении Startup Application. Заходим в приложения (пункт 1) и запускаем Startup Application (пункт 2)
Появится окно программы, где можно добавить, удалить или изменить текущие программы запускаемые при старте системы.
Нажимаем Add для добавления программы в автозагрузку. Пишем название программы и указываем путь к ней. Для теста я добавил в автозагрузку игру mahjongg.
Нажимаем Save и перезагружаем компьютер. Игра Mahjongg должна запуститься при входе в систему.
Как включить rc.local
Создаем файл rc.local
sudo nano /etc/rc.local
Добавляем в него содержимое:
#!/bin/sh -e # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will «exit 0» on success or any other # value on error. # # In order to enable or disable this script just change the execution # bits. # # By default this script does nothing. exit 0
Делаем файл исполняемым:
sudo chmod +x /etc/rc.local
Включение rc.local в автозагрузку
sudo systemctl enable rc-local
Теперь добавляем свой скрипт либо сервис до строчки exit 0 . Я для теста добавлю команду создания папки в директории tmp
mkdir /tmp/testdir
Сохраняем файл и перезагружаемся. При старте системы будет создана папка testdir в /tmp/
Про автозагрузку в Ubuntu я записал видео с примерами по каждому из способов.
Конечно, с одной стороны, включение rc.local позволяет быстро настроить автозагрузку в Ubuntu, но разработчики посчитали этот инструмент устаревшим. На нашем сайте есть статья по добавлению программы или скрипта в автозагрузку с помощью systemd. Автозагрузка в Ubuntu также возможна с использованием cron, но об этом уже в другой статье.
Источник: newadmin.ru