Как настроить автоматическое выполнение команд/скриптов во время перезагрузки или запуска системы

Как настроить автоматическое выполнение команд/скриптов во время перезагрузки или запуска системы

Новости

Сегодня поговорим о том, как настроить автоматическое выполнение команд/скриптов во время перезагрузки системы. Вы когда-то задумывались, что происходит «за кулисами», когда вы загружаете систему Linux и входите в систему? Нажимая кнопку питания или запуская виртуальной машины, вы провоцируете ряд событий, которые приводят к активации полностью функциональной системы — иногда менее чем за минуту. То же самое происходит при выходе из системы и/или выключение системы.

Что еще интереснее, так это то, что вы можете заставить операционную систему выполнять определенные действия при её загрузке и при входе/выходе из системы.

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

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

 

Выполнение скриптов Linux во время перезагрузки или запуска

Существует два традиционных метода выполнения команды или запуска скриптов во время запуска:

 

Метод № 1 — Использование планировщика задач cron

Помимо обычного формата (минута / час / день месяца / месяц / день недели), который широко используется для указания расписания, планировщик cron также позволяет использовать @reboot. Эта директива, за которой следует абсолютный путь к скрипту, заставляющий её работать при запуске машины.

Однако для этого подхода есть два важных нюанса:

  •  Обязательно должен быть запущен демон cron;
  •  Сценарий или файл crontab должен включать переменные среды (если они есть), которые понадобятся.

 

Метод № 2 — Использование /etc/rc.d/rc.local

Этот метод действителен даже для системных задач. Чтобы этот метод работал, вы должны установить разрешения на выполнение для файла /etc/rc.d/rc.local следующим образом:

# chmod +x /etc/rc.d/rc.local

 

Затем добавьте скрипт в конце файла.

Ниже показано, как запустить два примера скриптов (/home/gacanepa/script1.sh и /home/gacanepa/script2.sh) с использованием задания cron и rc.local соответственно и их соответствующих результатов.

 

script1.sh:

#!/bin/bash
DATE=$(date +'%F %H:%M:%S')
DIR=/home/gacanepa
echo "Current date and time: $DATE" > $DIR/file1.txt

 

script2.sh:

#!/bin/bash
SITE="Tecmint.com"
DIR=/home/gacanepa
echo "$SITE rocks... add us to your bookmarks." > $DIR/file2.txt

 

Run-Linux-Scripts-at-Startup

Имейте в виду, что оба сценария должны иметь разрешения на выполнение:

$ chmod +x /home/gacanepa/script1.sh
$ chmod +x /home/gacanepa/script2.sh

 

Выполнение скриптов Linux при входе/выходе из системы

Чтобы выполнить скрипт при входе в систему или выходе из системы, используйте ~/.bash_profile и ~/.bash_logout, соответственно. Скорее всего, вам нужно будет создать последний файл вручную. Просто оставьте строку, ссылающуюся на ваш скрипт в нижней части каждого файла так же, как и раньше, и все будет работать.

 

Итоги

В этой статье мы объяснили, как запустить скрипт при перезагрузке, входе в систему или выходе из системы. Теперь вы сможете без труда настроить автоматическое выполнение команд/скриптов во время перезагрузки системы.

 

Спасибо за уделенное время на прочтение статьи!

Если возникли вопросы, задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco от Академии Ciscoкурсы Linux от Linux Professional Institute на платформе SEDICOMM University.

Курсы Cisco и Linux с трудоустройством!

Спешите подать заявку! Осталось пару мест. Группы стартуют 22 июля, а следующая 19 августа, 23 сентября, 21 октября, 25 ноября, 16 декабря, 20 января, 24 февраля.
Что Вы получите?
  • Поможем стать экспертом в сетевом администрировании и получить международные сертификаты Cisco CCNA Routing & Switching или Linux LPI.
  • Предлагаем проверенную программу и учебник экспертов из Cisco Networking Academy и Linux Professional Institute, сертифицированных инструкторов и личного куратора.
  • Поможем с трудоустройством и сделать карьеру. 100% наших выпускников трудоустраиваются.
Как проходит обучение?
  • Проводим вечерние онлайн-лекции на нашей платформе или обучайтесь очно на базе Киевского офиса.
  • Спросим у вас об удобном времени для практик и подстроимся: понимаем, что времени учиться мало.
  • Если хотите индивидуальный график — обсудим и осуществим.
  • Выставим четкие дедлайны для самоорганизации. Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
А еще поможем Вам:
  • отредактировать резюме;
  • подготовиться к техническим интервью;
  • подготовиться к конкурсу на понравившуюся вакансию;
  • устроим на работу в Cisco по программе Cisco Incubator, New Graduate и Experienced. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
Чтобы учиться на курсах Cisco CCNA Routing & Switching и Linux LPI, подайте заявку или получите бесплатную консультацию.
Новости

Больше похожих постов

2 комментария. Оставить новый

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Заполните поле
Заполните поле
Пожалуйста, введите корректный адрес email.
Вы должны согласиться с условиями для продолжения

Самое читаемое
Меню