Как настроить работу Cron?

Это скорее намек, чем ответ, но он слишком большой для комментария.

Вероятно, вам стоит посмотреть на это. В соответствии с документацией эта команда запускается из ОС хоста (я предполагаю, что хост Ubuntu и гостевой Windows):

VBoxManage guestcontrol "Windows XP Pro" execute --image "cmd.exe" --username javier --verbose "/c" "regedit.exe"

Должен открыть regedit в Windows (гость), но я никогда не был способный заставить его работать.

Вы также можете использовать

VBoxManage showvminfo "Windows XP Pro" | grep State

, чтобы проверить, работает ли виртуальная машина или нет.

1
задан 18 August 2015 в 14:26

5 ответов

Если задание, которое вы хотите запустить, может выполняться с теми же привилегиями, что и ваш пользователь, я рекомендую использовать пользовательский crontab, который вы можете редактировать, запустив EDITOR="gedit" crontab -e (который будет использовать gedit для редактирования файла crontab) или просто crontab -e (который будет использовать редактор по умолчанию) в терминале.

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

*/10 * * * * /usr/bin/somedirectory/somecommand

и сохраните файл.

Вы можете увидеть содержимое пользователя crontab с помощью crontab -l.

Самый гибкий способ - использовать систему crontab, которую вы можете редактировать, запустив sudo crontab -e в терминале. Это позволит вам запускать ваши команды как root (если вам нужен этот уровень привилегий) или любого другого пользователя в системе.

Затем, если вы хотите запускать что-то каждые 10 минут с правами root, например , вы добавите такую ​​строку

*/10 * * * * root /usr/bin/somedirectory/somecommand

и сохраните файл. gedit

Вы можете увидеть содержимое файла crontab системы с помощью sudo crontab -l.

Подробнее о: https://help.ubuntu.com/community/CronHowto

92
ответ дан 29 May 2018 в 12:46
  • 1
    Вот сладостный интерактивный манипулятор cron, который даст вам англичанам время cron crontab.guru – CTS_AE 11 October 2017 в 12:32

Если вы предпочитаете делать это с помощью графического интерфейса, вы можете перейти в Центр программного обеспечения и установить запланированные задачи (или запустить sudo apt-get install gnome-schedule). Это даст мощный графический интерфейс для добавления задач cron.

Обратите внимание: если вы используете этот метод, задачи по умолчанию будут выполняться как ваш собственный пользователь, а не как root. Обычно это хорошо.

51
ответ дан 29 May 2018 в 12:46

Я рекомендую планировщик заданий KDE (kde-config-cron). Доступ к ним из системных настроек в модуле планировщика заданий есть.

Он управляет как личными, так и системными Crontabs, а простота создания временных границ сильно меня удивила (см. Скриншот ниже). Я думаю, что эта часть действительно недооценена.

23
ответ дан 29 May 2018 в 12:46

Планировщик заданий KDE не будет работать в обычном Ubuntu. Он работает только в системах KDE, таких как KUbuntu. Для системы без KDE вы предпочтете использовать gnome-schedule

$ sudo apt-get install gnome-schedule

Приложение запланировано в Dash.

11
ответ дан 29 May 2018 в 12:46

Я хотел установить задание Cron для запуска скрипта bash, поэтому выполнение скрипта добавит задание cron.

Я понял, что когда вы используете:

crontab -e 

Затем он создает файл:

/var/spool/cron/crontabs/root

Где root - это имя пользователя, выполняющего команду crontab. Поэтому, основываясь на этом и в 14.04, по крайней мере, мы можем выполнить следующие команды bash для создания нового задания Cron:

echo "30 17 * * 1 /path/to/command" > /var/spool/cron/crontabs/root

Нам также необходимо установить правильное право собственности на файл:

chown root:root /var/spool/cron/crontabs/root

И установите правильные разрешения:

chmod 600 /var/spool/cron/crontabs/root

Если при запуске crontab -e в списке уже есть задания Cron, вы можете добавить их в список, используя следующую команду: :

echo "30 17 * * 1 /path/to/command" >> /var/spool/cron/crontabs/root
7
ответ дан 29 May 2018 в 12:46

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

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