Как добавить в автозапуск программу в linux

Linux systemctl

Автозагрузка программ в Linux используется для автозапуска определённых программ, скриптов и служб операционной системы. Как правило, это сервисы, которые пользователь или ОС используют чаще всего либо постоянно.

Необходимые системе службы запускаются автоматически. Службы, которые необходимы пользователю, нужно настроить вручную.

Может возникнуть обратная ситуация: программа или служба запускается автоматически, а пользователь хочет отключить её автоматический старт.

Утилита systemctl

В системах Linux управление службами можно осуществлять с помощью специальной команды systemctl.

systemctl — это командный инструмент, который используется для управления системой systemd в Linux. В свою очередь, systemd — это система инициализации и менеджер служб, который используется в большинстве дистрибутивов Linux для загрузки служб и управления ими во время работы системы.

Автозапуск Приложений | linux ubuntu обзор для начинающих

systemctl позволяет управлять состоянием systemd и его службами. Вы можете использовать его, чтобы:

  • Запустить, остановить или перезапустить службы
  • Включить или отключить автоматический запуск служб при загрузке системы
  • Проверить статус службы или весь системный статус
  • Управлять монтированием файловых систем
  • Управлять сеансами пользователя

Например, если у вас есть служба под названием my_service, вы можете использовать следующие команды для управления ею:

  • Запустить службу: sudo systemctl start my_service
  • Остановить службу: sudo systemctl stop my_service
  • Перезапустить службу: sudo systemctl restart my_service
  • Включить автоматический запуск службы при загрузке: sudo systemctl enable my_service
  • Отключить автоматический запуск службы при загрузке: sudo systemctl disable my_service
  • Проверить статус службы: systemctl status my_service

В целом, systemctl является мощным инструментом для управления службами и состоянием системы в Linux.

Настройка автозапуска в Linux

Все опции systemctl можно посмотреть в терминале, набрав команду вывода справки:

man systemctl
systemctl —help

Рассматривать все функции команды systemctl, в рамках данной статьи не будем. Ниже будет описан процесс поиска нужной службы, добавление её в автозагрузку или отключение автоматического старта.

Читайте также:
Выберите программу в которой нельзя сделать базу данных

Смотрим все имеющиеся службы и их статус, команда для исполнения в терминале:

systemctl list-unit-files

Чтоб посмотреть, уже добавленные, службы в автозагрузке используйте команду:

systemctl list-unit-files | grep enabled

Вы увидите список служб и справа её статус.

linux список сервисов запускаемых при автозагрузке системы

Enabled — загружается во время старта системы.

Linux. Добавление скрипта в автозагрузку с помощью systemd

Disabled — автозагрузка отключена.

Находите необходимую вам службу и смотрите её статус.

Чтоб включить службу во время автозагрузки системы, используем команду:

sudo systemctl enable имя_службы

Чтоб отключить службу во время автозагрузки системы, используем команду:

sudo systemctl disable имя_службы

Запустить нужную службу немедленно, используем команду в терминале:

sudo systemctl start имя_службы

Остановить службу можно командой:

sudo systemctl stop имя_службы

Если хотите что-то добавить или поделиться своим опытом пишите в комментариях.

Источник: propk.ru

Как в Arch Linux / BlackArch добавить программу в автозагрузку

Если вы хотите, чтобы какая-то программа или скрипт запускались вместе со стартом системы, то это можно реализовать с помощью systemctl. Этот метод универсален – автозапуск срабатывает и на безголовых серверах, а не только при входе в графическое окружение рабочего стола.

Чтобы добавить скрипт в автозагрузку в Arch Linux и его производных, вам нужно создать в каталоге /etc/systemd/system/ файл определённого содержания. Название файла выберите своё. К примеру, я хочу, чтобы при запуске запускался скрипт, который содержит несколько правил для затруднения DOS-атак. Этот файл размещён по пути /root/firewall.sh

Начинаем с того, что файлу присвоены надлежащие права:

chmod 755 /root/firewall.sh

Убедитесь, что у файла присутствует шебанг #!/bin/bash (или другой соответствующий содержимому файла).

Я создаю файл anti-dos.service (название вы можете выбрать своё):

vim /etc/systemd/system/anti-dos.service

Содержимое моего файла

[Unit] Description=Начальная анти DOS-защита. [Service] ExecStart=/root/firewall.sh [Install] WantedBy=multi-user.target

  • Description=Начальная анти DOS-защита. – это описание, замените описание на своё.
  • ExecStart=/root/firewall.sh – указан полный путь до файла, который я хочу добавить в автозагрузку.
Читайте также:
Как называется программа с котом

Не пишите что-то вроде ExecStart=/bin/sh /path/to/script.sh, поскольку это не будет работать. Если вы действительно хотите указать интерпретатор и скрипт, то используйте конструкцию вида:

/usr/bin/bash -c ‘ИНТЕРПРЕТАТОР /ПУТЬ/ДО/СКРИПТА’
/usr/bin/bash -c ‘php /root/bin/translator.php’

Пример файла с использованием этой конструкции

[Unit] Description=Запуск переводчика. [Service] ExecStart=/usr/bin/bash -c ‘php /root/bin/translator.php’ [Install] WantedBy=multi-user.target

  • WantedBy=multi-user.target – означает, что автозапуск сделан для всех пользователей.

Чтобы запустить службу выполните команду (название anti-dos.service поменяйте на название своего файла):

systemctl start anti-dos.service

Для проверки статуса службы:

systemctl status anti-dos.service

Чтобы включить автозапуск нужно сделать так (название anti-dos.service поменяйте на название своего файла):

systemctl enable anti-dos.service

Создание ссылки говорит о том, что добавление в автозапуск сработало:

Для проверки давайте перезагрузим сервер ))

Скриншот выше показывает, что всё отработало штатно. Тот факт, что процесс показан как умерший, в моём случае, является нормальным. Поскольку я добавил в автозапуск не службу, а одноразовый скрипт.

Чтобы уже совсем убедиться, что настройки файервола вступили в силу, я набираю:

iptables —list

Да, мои правила файервола на месте.

Также можно найти свой автозапускаемый файл в списке всего, что добавлено в автозагрузку:

systemctl list-unit-files

После редактирования файлов с расширением .service, чтобы изменения вступили в силу, вам нужно выполнить команду:

systemctl daemon-reload

Близкие статьи

  • Включение функциональности /etc/rc.local в Arch Linux (75.9%)
  • Работа с дисками в BlackArch (монтирование, решение проблем) (51.8%)
  • Графический интерфейс и цветной вывод pacman (51.8%)
  • Как настроить Bluetooth на Arch Linux / BlackArch (51.8%)
  • Решение проблемы с отсутствие сети из-за Dependency failed (51.8%)
  • Учётные данные (логин и пароль) в BlackArch (RANDOM — 1.8%)

Источник: blackarch.ru

Как добавить программу в автозагрузку Linux Astra через терминал?

Друзья, продолжаем изучение отечественной операционной системы Astra Linux. Очередь дошла до пользовательских программ. Сегодня расскажу о самых очевидных способах добавления или удаления программ из автозапуска в Linux.

Читайте также:
Топ программ для взлома игр на ПК

Большинство пользовательских программ, таких как torrent клиент (или яндекс браузер) можно добавить в автозагрузку через меню «Пуск»- «Панель управления». Знакомо, не правда ли?

Открыв оснастку мы увидим список программ. Недавно мы с вами делали скриншоты в linux и устанавливали для этого программу Shutter. Можно установить флажок напротив нее и тем самым, добавить ее в автозапуск:

Не все программы, установленные в Astra Linux попали в список Автозапуска. Например, торрент клиент. Как добавить торрент в автозагрузку?

Первый способ — через меню автозапуска:

Файлы устанавливаемых программ попадают в папки /bin. По сути мы сейчас должны добавить команду на запуск:

Можно здесь же прописать команды на запуск в терминале. Имя команды всегда можно посмотреть в свойствах ярлыка нужной программы в меню или на рабочем столе. Не забываем указать имя приложения, чтобы в списке было понятно, и ярлык можно выбрать

Если программы устанавливаются в качестве службы, то их автозапуск можно определять командой systemctl

смотреть список уже запущенных служб можно так:

systemctl list-unit-files | grep enabled

Список неработающих служб выводим так:

systemctl list-unit-files | grep disabled

Добавить службу в автоЗапуск вместе с ситстемой можно так:

systemctl enable «имя службы»

Отключение запуска служб вместе с системой:

systemctl disable «имя службы»

Останов запущенной службы принудительно:

systemctl start «имя службы»

Запуск остановленной службы принудительно:

systemctl stop»имя службы»

Удаление программы из списка автозапуска в Linux Astra происходит легко и привычно:

Можно достаточно гибко настраивать автозапуск, используя команду sleep. Очень простая в использовании и полезная вещь, когда требуется тонкая настройка.

Если вам нужно отсрочить запуск нужной программы — указываем число секунд ( минут m, часов h, d дней) задержки:

Способов настройки автозапуска достаточно много. Можно настраивать его даже на уровне запуска ядра. Но это материал других статей, все это подробно мы еще изучим! Удачи!

Источник: fast-wolker.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru