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

Иногда (это довольно редко), мой поставщик VPS должен перезагрузить мой VPS, чтобы устранить проблемы или применить патч. Там какой-либо путь к командам выполнения как мой пользователь автоматически однажды перезагрузки VPS? Я читал о вставлении сценариев /etc/rc.local но мое понимание - то, что те скрипты будут запущены как корень. В особенности я хотел бы выполнить следующие команды:

screen -U -S Irssi irssi
screen -S rtorrent rtorrent

Таким образом, Irssi автоматически снова соединится со своими серверами IRC, и rtorrent начнет отбор снова так, чтобы они не ожидали меня, чтобы видеть электронную почту от моего поставщика VPS, войти в систему и перезапустить их вручную. Любой совет очень ценился бы!

0
задан 26 August 2017 в 08:03

1 ответ

См. /etc/crontab

, можно настроить его, чтобы запустить что-то с "пользователя" и иметь опции

string         meaning
------         -------
@reboot        Run once, at startup.
@yearly        Run once a year, "0 0 1 1 *".
@annually      (same as @yearly)
@monthly       Run once a month, "0 0 1 * *".
@weekly        Run once a week, "0 0 * * 0".
@daily         Run once a day, "0 0 * * *".
@midnight      (same as @daily)
@hourly        Run once an hour, "0 * * * *".

Значение по умолчанию на любой машине Ubuntu:

# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# m h dom mon dow user  command
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
<час>

Так в основном Вы хотите somerthing как:

@reboot {your_user} {your_script}
0
ответ дан 6 October 2019 в 06:27

Другие вопросы по тегам:

Похожие вопросы: