Вы когда-нибудь хотели запустить скрипт при запуске с правами root? Если у вас есть домашний сервер или, может быть, даже просто настольный компьютер с Linux, возможно, вам это пришло в голову. Это звучит сомнительно, но если вы понимаете риски, награда за это может быть весьма хорошей.
Основные причины заключаются в том, что больше не нужно будет запускать сервер, входить в систему через ssh, вводить пароль, получать root-оболочку и затем вручную выполнять сценарий за сценарием. Вместо этого используйте возможности cron и настройте свою систему на автоматический запуск этих сценариев при запуске! Вот как это сделать.
Совет. Ознакомьтесь с нашими шпаргалка по регулярным выражениям .
Настройка Cron
Большинство дистрибутивов Linux имеют возможность доступа к cron, просто введя crontab -e
. Однако если вы ввели эту команду и ничего не произошло, вы используете дистрибутив Linux, в котором нет возможности взаимодействовать с cron. Это означает, что вам нужно будет установить инструмент, чтобы продолжить. Самый популярный инструмент, который можно использовать в этой ситуации, — это демон, известный как «cronie». Это очень популярный инструмент, который находится в репозиториях большинства популярных дистрибутивов Linux.
Откро
Contents
Настройка Cron
те cronie с помощью менеджера пакетов. Либо перейдите на страницу страница и загрузите пакет для своего дистрибутива.Настройка скрипта с помощью Cron
Открыть crontab очень просто. Для начала откройте окно терминала и введите следующую команду:
sudo crontab -e
Примечание : sudo
важен, если вы хотите запустить скрипт от имени пользователя root. Вы можете опустить sudo
, если хотите просто запустить скрипт от имени обычного пользователя.
Если система ранее не использовала crontab, пользователю необходимо будет указать редактор, с которым он будет работать. Хотя все редакторы хороши по-своему, выбирайте «нано», так как это самый простой текстовый редактор, с которым не нужно много возиться. Если выбран редактор, cron загрузит файл по умолчанию с подробными инструкциями о том, как все работает.
Внутри редактора nano в терминале прокрутите до конца и начните с написания «@reboot». Команда reboot
здесь является ключевой, поскольку она сообщает cron при перезагрузке, что эта команда будет запускаться каждый раз. Сразу после перезагрузки
Настройка скрипта с помощью Cron
sh.@reboot /home/derrik/startupscript.sh
Теперь, когда команда настроена, crontab можно сохранить. Нажмите «Ctrl + o» на клавиатуре. Это предложит пользователю «записать файл». По умолчанию cron называет crontab, поэтому ничего не меняйте. Нажмите клавишу ввода, чтобы сохранить crontab.
Удалить скрипт из автозагрузки
Так же, как команда была добавлена в crontab, ее можно удалить. Для этого откройте терминал и введите sudo crontab -e
. Это загрузит файл crontab. Просто удалите добавленную команду, сохраните ее и перезагрузите компьютер (или сервер).
Устранение неполадок Cron
Иногда cron не выполняет команды, и это может быть проблемой. Самый простой способ устранить любые проблемы с cron (если они есть) — просмотреть системный журнал. Для этого откройте окно терминала и введите следующую команду:
grep CRON /var/log/syslog
В системном журнале отображаются все системные события, а с помощью команды grep
можно отфильтровать действия cron и crontag. Это должно позволить пользователям легко устранять неполадки и исправлять все, что может пойти не так.
Заключение
Скрипты Bash — замечательная вещь и одна из сильных сторон Linux. Он упрощает администрирование серверов и даже обычных компьютеров Linux благодаря возможности принимать большое количество команд и автоматизировать их. Добавив к картинке cron, эти сценарии могут стать еще более полезными. Больше не нужно ничего делать после загрузки Linux. Просто установите и забудьте!
Какие корневые сценарии вы бы запускали при запуске вашего Linux-компьютера? Расскажите нам ниже!