[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"page-ru-/guides/linux/setup-automated-tasks":3,"mdc--ls7d66-key":795,"mdc-rkj1a9-key":821,"mdc--ng492t-key":846,"mdc--6tkp4o-key":870,"mdc-v9s719-key":894,"mdc-qgkxry-key":930,"mdc-cyc3ni-key":955,"mdc--5enkei-key":978,"related-/guides/linux/use-cron,/guides/linux/setup-systemd-timers,/guides/linux/monitor-logs":1001,"mdc-gp84pb-key":1002},{"id":4,"title":5,"appliesTo":6,"author":11,"body":12,"canonical":728,"code":81,"createdAt":729,"description":730,"difficulty":731,"draft":732,"estimatedTime":733,"extension":734,"faq":735,"howToSteps":748,"howToTotalTime":764,"image":728,"keywords":765,"locale":775,"meta":776,"navigation":125,"path":777,"platform":778,"related":779,"section":783,"seo":784,"severity":81,"stem":785,"summary":786,"tags":787,"twitterCreator":728,"twitterSite":728,"type":793,"updatedAt":729,"__hash__":794},"content_ru/guides/linux/setup-automated-tasks.md","Настройка автоматических задач в Linux с помощью cron и systemd",[7,8,9,10],"Ubuntu 20.04 LTS","Debian 11","Fedora 36","CentOS 8","FixPedia Team",{"type":13,"value":14,"toc":715},"minimark",[15,20,33,37,57,61,66,75,150,153,215,229,233,236,249,252,286,289,292,296,304,313,373,381,414,417,447,450,454,457,494,497,501,591,595,619,626,630,700,711],[16,17,19],"h2",{"id":18},"введение","Введение",[21,22,23,24,28,29,32],"p",{},"Автоматизация рутинных операций — ключ к эффективной работе с любым Linux-сервером или рабочей станцией. Встроенные инструменты планирования ",[25,26,27],"code",{},"cron"," и ",[25,30,31],{},"systemd timers"," позволяют запускать скрипты, команды и даже графические приложения по заданному расписанию без вмешательства пользователя. После выполнения этого руководства вы сможете настраивать и управлять как задачами cron, так и таймерами systemd, а также диагностировать распространённые ошибки.",[16,34,36],{"id":35},"требования","Требования",[38,39,40,44,51,54],"ul",{},[41,42,43],"li",{},"Любой современный дистрибутив Linux (Ubuntu, Debian, Fedora, CentOS и др.).",[41,45,46,47,50],{},"Права администратора (",[25,48,49],{},"sudo","), если вы создаёте системные задачи.",[41,52,53],{},"Базовые знания bash и понимание путей к файлам.",[41,55,56],{},"Желательно наличие текстового редактора для изменения конфигурационных файлов.",[16,58,60],{"id":59},"пошаговая-инструкция","Пошаговая инструкция",[62,63,65],"h3",{"id":64},"шаг-1-подключите-репозиторий-и-установите-необходимые-пакеты","Шаг 1: Подключите репозиторий и установите необходимые пакеты",[21,67,68,69,28,71,74],{},"Большинство дистрибутивов поставляются с ",[25,70,27],{},[25,72,73],{},"systemd"," предустановленными, но убедитесь, что они присутствуют:",[76,77,82],"pre",{"className":78,"code":79,"language":80,"meta":81,"style":81},"language-bash shiki shiki-themes github-light github-dark","# Для Debian/Ubuntu\nsudo dpkg -l | grep -E 'cron|systemd'\n\n# Для RHEL/CentOS/Fedora\nsudo rpm -q cron systemd\n","bash","",[25,83,84,93,120,127,133],{"__ignoreMap":81},[85,86,89],"span",{"class":87,"line":88},"line",1,[85,90,92],{"class":91},"sJ8bj","# Для Debian/Ubuntu\n",[85,94,96,99,103,107,111,114,117],{"class":87,"line":95},2,[85,97,49],{"class":98},"sScJk",[85,100,102],{"class":101},"sZZnC"," dpkg",[85,104,106],{"class":105},"sj4cs"," -l",[85,108,110],{"class":109},"szBVR"," |",[85,112,113],{"class":98}," grep",[85,115,116],{"class":105}," -E",[85,118,119],{"class":101}," 'cron|systemd'\n",[85,121,123],{"class":87,"line":122},3,[85,124,126],{"emptyLinePlaceholder":125},true,"\n",[85,128,130],{"class":87,"line":129},4,[85,131,132],{"class":91},"# Для RHEL/CentOS/Fedora\n",[85,134,136,138,141,144,147],{"class":87,"line":135},5,[85,137,49],{"class":98},[85,139,140],{"class":101}," rpm",[85,142,143],{"class":105}," -q",[85,145,146],{"class":101}," cron",[85,148,149],{"class":101}," systemd\n",[21,151,152],{},"Если пакеты отсутствуют, установите их:",[76,154,156],{"className":78,"code":155,"language":80,"meta":81,"style":81},"# Debian/Ubuntu\nsudo apt-get update && sudo apt-get install cron systemd\n\n# RHEL/CentOS/Fedora\nsudo yum install cronie systemd   # или sudo dnf install cronie systemd\n",[25,157,158,163,188,192,197],{"__ignoreMap":81},[85,159,160],{"class":87,"line":88},[85,161,162],{"class":91},"# Debian/Ubuntu\n",[85,164,165,167,170,173,177,179,181,184,186],{"class":87,"line":95},[85,166,49],{"class":98},[85,168,169],{"class":101}," apt-get",[85,171,172],{"class":101}," update",[85,174,176],{"class":175},"sVt8B"," && ",[85,178,49],{"class":98},[85,180,169],{"class":101},[85,182,183],{"class":101}," install",[85,185,146],{"class":101},[85,187,149],{"class":101},[85,189,190],{"class":87,"line":122},[85,191,126],{"emptyLinePlaceholder":125},[85,193,194],{"class":87,"line":129},[85,195,196],{"class":91},"# RHEL/CentOS/Fedora\n",[85,198,199,201,204,206,209,212],{"class":87,"line":135},[85,200,49],{"class":98},[85,202,203],{"class":101}," yum",[85,205,183],{"class":101},[85,207,208],{"class":101}," cronie",[85,210,211],{"class":101}," systemd",[85,213,214],{"class":91},"   # или sudo dnf install cronie systemd\n",[216,217,218],"blockquote",{},[21,219,220,224,225,228],{},[221,222,223],"strong",{},"💡 Совет:"," После установки перезапустите службу cron: ",[25,226,227],{},"sudo systemctl restart cron",".",[62,230,232],{"id":231},"шаг-2-создайте-задачу-cron","Шаг 2: Создайте задачу cron",[21,234,235],{},"Откройте редактор кронтаб:",[76,237,239],{"className":78,"code":238,"language":80,"meta":81,"style":81},"crontab -e\n",[25,240,241],{"__ignoreMap":81},[85,242,243,246],{"class":87,"line":88},[85,244,245],{"class":98},"crontab",[85,247,248],{"class":105}," -e\n",[21,250,251],{},"Добавьте строку, например, для запуска скрипта каждые 15 минут:",[76,253,255],{"className":78,"code":254,"language":80,"meta":81,"style":81},"*/15 * * * * /opt/myscript.sh >> /var/log/myscript.log 2>&1\n",[25,256,257],{"__ignoreMap":81},[85,258,259,262,265,267,270,272,274,277,280,283],{"class":87,"line":88},[85,260,261],{"class":109},"*",[85,263,264],{"class":175},"/15 ",[85,266,261],{"class":109},[85,268,269],{"class":109}," *",[85,271,269],{"class":109},[85,273,269],{"class":109},[85,275,276],{"class":175}," /opt/myscript.sh ",[85,278,279],{"class":109},">>",[85,281,282],{"class":175}," /var/log/myscript.log ",[85,284,285],{"class":109},"2>&1\n",[21,287,288],{},"Сохраните файл и выйдите. Новая задача автоматически активируется.",[290,291],"in-article-ad",{},[62,293,295],{"id":294},"шаг-3-создайте-таймер-systemd","Шаг 3: Создайте таймер systemd",[21,297,298,299,303],{},"Система systemd предлагает более гибкое планирование через ",[300,301,302],"em",{},"таймеры",". Создайте два файла: один для таймера, другой для сервиса.",[21,305,306],{},[221,307,308,309,312],{},"Файл таймера (",[25,310,311],{},"/etc/systemd/system/mytimer.timer","):",[76,314,318],{"className":315,"code":316,"language":317,"meta":81,"style":81},"language-ini shiki shiki-themes github-light github-dark","[Unit]\nDescription=My scheduled task timer\n\n[Timer]\n# Выполнять каждые 15 минут\nOnCalendar=*:0/15\nPersistent=true\n\n[Install]\nWantedBy=timers.target\n","ini",[25,319,320,325,330,334,339,344,350,356,361,367],{"__ignoreMap":81},[85,321,322],{"class":87,"line":88},[85,323,324],{},"[Unit]\n",[85,326,327],{"class":87,"line":95},[85,328,329],{},"Description=My scheduled task timer\n",[85,331,332],{"class":87,"line":122},[85,333,126],{"emptyLinePlaceholder":125},[85,335,336],{"class":87,"line":129},[85,337,338],{},"[Timer]\n",[85,340,341],{"class":87,"line":135},[85,342,343],{},"# Выполнять каждые 15 минут\n",[85,345,347],{"class":87,"line":346},6,[85,348,349],{},"OnCalendar=*:0/15\n",[85,351,353],{"class":87,"line":352},7,[85,354,355],{},"Persistent=true\n",[85,357,359],{"class":87,"line":358},8,[85,360,126],{"emptyLinePlaceholder":125},[85,362,364],{"class":87,"line":363},9,[85,365,366],{},"[Install]\n",[85,368,370],{"class":87,"line":369},10,[85,371,372],{},"WantedBy=timers.target\n",[21,374,375],{},[221,376,377,378,312],{},"Файл сервиса (",[25,379,380],{},"/etc/systemd/system/mytimer.service",[76,382,384],{"className":315,"code":383,"language":317,"meta":81,"style":81},"[Unit]\nDescription=My scheduled task service\n\n[Service]\nType=oneshot\nExecStart=/opt/myscript.sh\n",[25,385,386,390,395,399,404,409],{"__ignoreMap":81},[85,387,388],{"class":87,"line":88},[85,389,324],{},[85,391,392],{"class":87,"line":95},[85,393,394],{},"Description=My scheduled task service\n",[85,396,397],{"class":87,"line":122},[85,398,126],{"emptyLinePlaceholder":125},[85,400,401],{"class":87,"line":129},[85,402,403],{},"[Service]\n",[85,405,406],{"class":87,"line":135},[85,407,408],{},"Type=oneshot\n",[85,410,411],{"class":87,"line":346},[85,412,413],{},"ExecStart=/opt/myscript.sh\n",[21,415,416],{},"Обеспечьте правильные права:",[76,418,420],{"className":78,"code":419,"language":80,"meta":81,"style":81},"sudo systemctl daemon-reload\nsudo systemctl enable --now mytimer.timer\n",[25,421,422,432],{"__ignoreMap":81},[85,423,424,426,429],{"class":87,"line":88},[85,425,49],{"class":98},[85,427,428],{"class":101}," systemctl",[85,430,431],{"class":101}," daemon-reload\n",[85,433,434,436,438,441,444],{"class":87,"line":95},[85,435,49],{"class":98},[85,437,428],{"class":101},[85,439,440],{"class":101}," enable",[85,442,443],{"class":105}," --now",[85,445,446],{"class":101}," mytimer.timer\n",[21,448,449],{},"Таймер теперь будет активироваться согласно расписанию.",[62,451,453],{"id":452},"шаг-4-проверьте-задания","Шаг 4: Проверьте задания",[21,455,456],{},"Убедитесь, что задачи зарегистрированы:",[76,458,460],{"className":78,"code":459,"language":80,"meta":81,"style":81},"# Список задач cron\ncrontab -l\n\n# Список таймеров systemd\nsystemctl list-timers --all\n",[25,461,462,467,474,478,483],{"__ignoreMap":81},[85,463,464],{"class":87,"line":88},[85,465,466],{"class":91},"# Список задач cron\n",[85,468,469,471],{"class":87,"line":95},[85,470,245],{"class":98},[85,472,473],{"class":105}," -l\n",[85,475,476],{"class":87,"line":122},[85,477,126],{"emptyLinePlaceholder":125},[85,479,480],{"class":87,"line":129},[85,481,482],{"class":91},"# Список таймеров systemd\n",[85,484,485,488,491],{"class":87,"line":135},[85,486,487],{"class":98},"systemctl",[85,489,490],{"class":101}," list-timers",[85,492,493],{"class":105}," --all\n",[21,495,496],{},"Вы увидите запланированные и активные записи.",[62,498,500],{"id":499},"шаг-5-отслеживайте-вывод-и-журналы","Шаг 5: Отслеживайте вывод и журналы",[38,502,503,539],{},[41,504,505,508,509,512,513],{},[221,506,507],{},"cron:"," Перенаправляйте вывод в лог-файл (как показано в шаге 2) или используйте ",[25,510,511],{},"logger",":",[76,514,516],{"className":78,"code":515,"language":80,"meta":81,"style":81},"*/5 * * * * logger \"Ежечасовая проверка системы\"\n",[25,517,518],{"__ignoreMap":81},[85,519,520,522,525,527,529,531,533,536],{"class":87,"line":88},[85,521,261],{"class":109},[85,523,524],{"class":175},"/5 ",[85,526,261],{"class":109},[85,528,269],{"class":109},[85,530,269],{"class":109},[85,532,269],{"class":109},[85,534,535],{"class":175}," logger ",[85,537,538],{"class":101},"\"Ежечасовая проверка системы\"\n",[41,540,541,544,545,564,567,568,571,572,512,575],{},[221,542,543],{},"systemd:"," Читайте журналы в режиме реального времени:",[76,546,548],{"className":78,"code":547,"language":80,"meta":81,"style":81},"journalctl -u mytimer.service -f\n",[25,549,550],{"__ignoreMap":81},[85,551,552,555,558,561],{"class":87,"line":88},[85,553,554],{"class":98},"journalctl",[85,556,557],{"class":105}," -u",[85,559,560],{"class":101}," mytimer.service",[85,562,563],{"class":105}," -f\n",[565,566],"br",{},"Для задач cron проверьте ",[25,569,570],{},"/var/log/syslog"," или ",[25,573,574],{},"/var/log/cron",[76,576,578],{"className":78,"code":577,"language":80,"meta":81,"style":81},"grep CRON /var/log/syslog\n",[25,579,580],{"__ignoreMap":81},[85,581,582,585,588],{"class":87,"line":88},[85,583,584],{"class":98},"grep",[85,586,587],{"class":101}," CRON",[85,589,590],{"class":101}," /var/log/syslog\n",[16,592,594],{"id":593},"проверка-результата","Проверка результата",[596,597,598,605,612],"ol",{},[41,599,600,601,604],{},"Запустите скрипт вручную, чтобы убедиться, что путь ",[25,602,603],{},"/opt/myscript.sh"," корректен.",[41,606,607,608,611],{},"Проверьте лог-файл ",[25,609,610],{},"/var/log/myscript.log"," после ожидаемого интервала (для cron — через 15 минут, для systemd — через несколько минут).",[41,613,614,615,618],{},"Используйте ",[25,616,617],{},"journalctl -u mytimer.service --since \"now - 5 minutes\""," для подтверждения записей от таймера.",[21,620,621,622,625],{},"Если вывод отсутствует, проверьте права выполнения скрипта (",[25,623,624],{},"chmod +x /opt/myscript.sh",") и убедитесь, что пользователь, от имени которого задача выполняется, имеет доступ к необходимым ресурсам.",[16,627,629],{"id":628},"возможные-проблемы","Возможные проблемы",[38,631,632,645,663,677],{},[41,633,634,637,638,641,642,644],{},[221,635,636],{},"Задача cron не запускается:"," Проверьте синтаксис с помощью ",[25,639,640],{},"crontab -l",", убедитесь, что файл не пуст, и проверьте ",[25,643,570],{}," на ошибки cron.",[41,646,647,650,651,654,655,658,659,662],{},[221,648,649],{},"Таймер systemd не срабатывает:"," Убедитесь, что ",[25,652,653],{},"Persistent=true"," и таймер включён (",[25,656,657],{},"systemctl is-enabled mytimer.timer","). Используйте ",[25,660,661],{},"journalctl -u mytimer.timer"," для отладки.",[41,664,665,668,669,672,673,676],{},[221,666,667],{},"Скрипт завершается с ошибкой:"," Добавьте ",[25,670,671],{},"set -e"," в начало скрипта и перенаправляйте stderr в лог. В systemd вы также можете включить ",[25,674,675],{},"StandardError=journal"," в сервисном файле.",[41,678,679,682,683,28,686,689,690,693,694,571,697,228],{},[221,680,681],{},"Графическое приложение не отображается:"," Для cron установите ",[25,684,685],{},"export DISPLAY=$DISPLAY",[25,687,688],{},"export XAUTHORITY=$XAUTHORITY"," перед командой. Для systemd создайте пользовательский сервис в ",[25,691,692],{},"~/.config/systemd/user/"," с ",[25,695,696],{},"XDG_SESSION_TYPE=wayland",[25,698,699],{},"XDG_SESSION_TYPE=x11",[21,701,702,703,706,707,710],{},"Не стесняйтесь адаптировать расписание, добавлять mehrere условия (",[25,704,705],{},"OnCalendar="," для systemd) или использовать ",[25,708,709],{},"at"," для разовых заданий в зависимости от конкретных потребностей.",[712,713,714],"style",{},"html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}",{"title":81,"searchDepth":95,"depth":95,"links":716},[717,718,719,726,727],{"id":18,"depth":95,"text":19},{"id":35,"depth":95,"text":36},{"id":59,"depth":95,"text":60,"children":720},[721,722,723,724,725],{"id":64,"depth":122,"text":65},{"id":231,"depth":122,"text":232},{"id":294,"depth":122,"text":295},{"id":452,"depth":122,"text":453},{"id":499,"depth":122,"text":500},{"id":593,"depth":95,"text":594},{"id":628,"depth":95,"text":629},null,"2026-06-29 15:01:32","Пошаговое руководство по созданию и управлению автоматическими задачами в Linux. Узнайте, как использовать cron и systemd timers для автоматизации рутинных операций за 10 минут.","medium",false,"10-15 мин","md",[736,739,742,745],{"answer":737,"question":738},"Используйте `crontab -l` для задач cron и `systemctl list-timers --all` для таймеров systemd.","Как просмотреть список уже созданных автоматических задач?",{"answer":740,"question":741},"Проверьте журналы: `journalctl -u \u003Cservice>` для systemd timers или `grep CRON /var/log/syslog` для cron.","Что делать, если запланированный скрипт не выполняется?",{"answer":743,"question":744},"Для cron это можно сделать через `export DISPLAY` и `XAUTHORITY`, либо предпочтительно использовать systemd user services.","Можно ли запускать графические приложения через автоматические задачи?",{"answer":746,"question":747},"В cron используйте звёздочку с шагом (`*/5 * * * *`), в systemd timer задайте `OnCalendar=*:0/5`.","Как настроить повторяющееся выполнение задачи каждые несколько минут?",[749,752,755,758,761],{"name":750,"text":751},"Подключите репозиторий и установите необходимые пакеты","Для большинства дистрибутивов Linux пакеты `cron` и `systemd` уже установлены. Убедитесь, что они присутствуют: `sudo dpkg -l | grep -E 'cron|systemd'` или `sudo rpm -q cron systemd`.",{"name":753,"text":754},"Создайте задачу cron","Откройте табличный редактор задач cron: `crontab -e`. Добавьте строку, например `*/15 * * * * /path/to/script.sh > /var/log/script.log 2>&1`. Сохраните и выйдите.",{"name":756,"text":757},"Создайте таймер systemd","Создайте файл таймера в `/etc/systemd/system/mytimer.timer`:\n\n```ini\n[Unit]\nDescription=My scheduled task\n\n[Timer]\nOnCalendar=*:0/15\nPersistent=true\n\n[Install]\nWantedBy=timers.target\n```\n\nЗатем создайте сервисный файл `/etc/systemd/system/mytimer.service`:\n\n```ini\n[Unit]\nDescription=My scheduled task service\n\n[Service]\nType=oneshot\nExecStart=/path/to/script.sh\n```\n\nВключите и запустите таймер: `sudo systemctl enable --now mytimer.timer`.",{"name":759,"text":760},"Проверьте задания","Для cron: `crontab -l`. Для systemd: `systemctl list-timers --all`. Оба списка покажут запланированные и активные задачи.",{"name":762,"text":763},"Отслеживайте вывод и журналы","Для cron перенаправляйте вывод в лог-файл или используйте `logger`. Для systemd читайте журналы: `journalctl -u mytimer.service -f`.","PT15M",[766,767,768,769,770,771,772,773,774],"автоматические задачи linux","cron пример","systemd timer настройка","планировщик задач linux","запланированный скрипт linux","кронтаб редактор","установка автоматического выполнения linux","планирование задач в ubuntu","создать cron задачу","ru_RU",{},"/guides/linux/setup-automated-tasks","linux",[780,781,782],"/guides/linux/use-cron","/guides/linux/setup-systemd-timers","/guides/linux/monitor-logs","Гайды Linux",{"title":5,"description":730},"guides/linux/setup-automated-tasks","В этой статье вы узнаете, как настроить автоматическое выполнение команд и скриптов в Linux с помощью встроенных инструментов планирования — cron и systemd timers. После выполнения руководства вы сможете создавать, редактировать и отслеживать автоматические задачи.",[788,789,790,791,792],"Linux","Cron","Systemd","Планировщик","Automation","guide","KGfCwPY9npkU52BJU_daz7I5B3Y4esdYvj-hTjGvulU",{"data":796,"body":797},{},{"type":798,"children":799},"root",[800],{"type":801,"tag":21,"props":802,"children":803},"element",{},[804,806,811,813,819],{"type":805,"value":614},"text",{"type":801,"tag":25,"props":807,"children":809},{"className":808},[],[810],{"type":805,"value":640},{"type":805,"value":812}," для задач cron и ",{"type":801,"tag":25,"props":814,"children":816},{"className":815},[],[817],{"type":805,"value":818},"systemctl list-timers --all",{"type":805,"value":820}," для таймеров systemd.",{"data":822,"body":823},{},{"type":798,"children":824},[825],{"type":801,"tag":21,"props":826,"children":827},{},[828,830,836,838,844],{"type":805,"value":829},"Проверьте журналы: ",{"type":801,"tag":25,"props":831,"children":833},{"className":832},[],[834],{"type":805,"value":835},"journalctl -u \u003Cservice>",{"type":805,"value":837}," для systemd timers или ",{"type":801,"tag":25,"props":839,"children":841},{"className":840},[],[842],{"type":805,"value":843},"grep CRON /var/log/syslog",{"type":805,"value":845}," для cron.",{"data":847,"body":848},{},{"type":798,"children":849},[850],{"type":801,"tag":21,"props":851,"children":852},{},[853,855,861,862,868],{"type":805,"value":854},"Для cron это можно сделать через ",{"type":801,"tag":25,"props":856,"children":858},{"className":857},[],[859],{"type":805,"value":860},"export DISPLAY",{"type":805,"value":28},{"type":801,"tag":25,"props":863,"children":865},{"className":864},[],[866],{"type":805,"value":867},"XAUTHORITY",{"type":805,"value":869},", либо предпочтительно использовать systemd user services.",{"data":871,"body":872},{},{"type":798,"children":873},[874],{"type":801,"tag":21,"props":875,"children":876},{},[877,879,885,887,893],{"type":805,"value":878},"В cron используйте звёздочку с шагом (",{"type":801,"tag":25,"props":880,"children":882},{"className":881},[],[883],{"type":805,"value":884},"*/5 * * * *",{"type":805,"value":886},"), в systemd timer задайте ",{"type":801,"tag":25,"props":888,"children":890},{"className":889},[],[891],{"type":805,"value":892},"OnCalendar=*:0/5",{"type":805,"value":228},{"data":895,"body":896},{},{"type":798,"children":897},[898],{"type":801,"tag":21,"props":899,"children":900},{},[901,903,908,909,914,916,922,923,929],{"type":805,"value":902},"Для большинства дистрибутивов Linux пакеты ",{"type":801,"tag":25,"props":904,"children":906},{"className":905},[],[907],{"type":805,"value":27},{"type":805,"value":28},{"type":801,"tag":25,"props":910,"children":912},{"className":911},[],[913],{"type":805,"value":73},{"type":805,"value":915}," уже установлены. Убедитесь, что они присутствуют: ",{"type":801,"tag":25,"props":917,"children":919},{"className":918},[],[920],{"type":805,"value":921},"sudo dpkg -l | grep -E 'cron|systemd'",{"type":805,"value":571},{"type":801,"tag":25,"props":924,"children":926},{"className":925},[],[927],{"type":805,"value":928},"sudo rpm -q cron systemd",{"type":805,"value":228},{"data":931,"body":932},{},{"type":798,"children":933},[934],{"type":801,"tag":21,"props":935,"children":936},{},[937,939,945,947,953],{"type":805,"value":938},"Откройте табличный редактор задач cron: ",{"type":801,"tag":25,"props":940,"children":942},{"className":941},[],[943],{"type":805,"value":944},"crontab -e",{"type":805,"value":946},". Добавьте строку, например ",{"type":801,"tag":25,"props":948,"children":950},{"className":949},[],[951],{"type":805,"value":952},"*/15 * * * * /path/to/script.sh > /var/log/script.log 2>&1",{"type":805,"value":954},". Сохраните и выйдите.",{"data":956,"body":957},{},{"type":798,"children":958},[959],{"type":801,"tag":21,"props":960,"children":961},{},[962,964,969,971,976],{"type":805,"value":963},"Для cron: ",{"type":801,"tag":25,"props":965,"children":967},{"className":966},[],[968],{"type":805,"value":640},{"type":805,"value":970},". Для systemd: ",{"type":801,"tag":25,"props":972,"children":974},{"className":973},[],[975],{"type":805,"value":818},{"type":805,"value":977},". Оба списка покажут запланированные и активные задачи.",{"data":979,"body":980},{},{"type":798,"children":981},[982],{"type":801,"tag":21,"props":983,"children":984},{},[985,987,992,994,1000],{"type":805,"value":986},"Для cron перенаправляйте вывод в лог-файл или используйте ",{"type":801,"tag":25,"props":988,"children":990},{"className":989},[],[991],{"type":805,"value":511},{"type":805,"value":993},". Для systemd читайте журналы: ",{"type":801,"tag":25,"props":995,"children":997},{"className":996},[],[998],{"type":805,"value":999},"journalctl -u mytimer.service -f",{"type":805,"value":228},[],{"data":1003,"body":1004},{},{"type":798,"children":1005},[1006,1017,1027,1038,1046,1058],{"type":801,"tag":21,"props":1007,"children":1008},{},[1009,1011,1016],{"type":805,"value":1010},"Создайте файл таймера в ",{"type":801,"tag":25,"props":1012,"children":1014},{"className":1013},[],[1015],{"type":805,"value":311},{"type":805,"value":512},{"type":801,"tag":76,"props":1018,"children":1022},{"className":1019,"code":1020,"language":317,"meta":81,"style":1021},"language-ini","[Unit]\nDescription=My scheduled task\n\n[Timer]\nOnCalendar=*:0/15\nPersistent=true\n\n[Install]\nWantedBy=timers.target\n","undefined",[1023],{"type":801,"tag":25,"props":1024,"children":1025},{"__ignoreMap":81},[1026],{"type":805,"value":1020},{"type":801,"tag":21,"props":1028,"children":1029},{},[1030,1032,1037],{"type":805,"value":1031},"Затем создайте сервисный файл ",{"type":801,"tag":25,"props":1033,"children":1035},{"className":1034},[],[1036],{"type":805,"value":380},{"type":805,"value":512},{"type":801,"tag":76,"props":1039,"children":1041},{"className":1019,"code":1040,"language":317,"meta":81,"style":1021},"[Unit]\nDescription=My scheduled task service\n\n[Service]\nType=oneshot\nExecStart=/path/to/script.sh\n",[1042],{"type":801,"tag":25,"props":1043,"children":1044},{"__ignoreMap":81},[1045],{"type":805,"value":1040},{"type":801,"tag":21,"props":1047,"children":1048},{},[1049,1051,1057],{"type":805,"value":1050},"Включите и запустите таймер: ",{"type":801,"tag":25,"props":1052,"children":1054},{"className":1053},[],[1055],{"type":805,"value":1056},"sudo systemctl enable --now mytimer.timer",{"type":805,"value":228},{"type":801,"tag":712,"props":1059,"children":1060},{},[1061],{"type":805,"value":81}]