Created attachment 17513 [details] Скрин из графического интерфейса Здравствуйте, столкнулся с проблемой на Alt K, не выполняются скрипты и команды от пользователя в планировщике задач. Установлены все последние обновления. cat /etc/os-release NAME="ALT" VERSION="10.4" ID=altlinux LOGO="basealt" VERSION_ID=10.4 PRETTY_NAME="ALT Workstation K 10.4 (Sorbaronia Mitschurinii)" ANSI_COLOR="1;33" CPE_NAME="cpe:/o:alt:kworkstation:10" BUILD_ID="ALT 10.4" ALT_BRANCH_ID="p10" HOME_URL="https://www.basealt.ru/" BUG_REPORT_URL="https://bugs.altlinux.org/" DOCUMENTATION_URL="https://docs.altlinux.org/" SUPPORT_URL=https://support.basealt.ru/ $ uname -a Linux alt-test.domain.alt 6.1.121-un-def-alt1 #1 SMP PREEMPT_DYNAMIC Sat Dec 28 13:03:47 UTC 2024 x86_64 GNU/Linux При добавлении в планировщик скриптов или команд через графический интерфейс и после закрытия и повторного открытия, появляется вторая строка с непонятной кодировкой (предположительно комментарии через что и когда была создана задача, Видно при отображении с помощью crontab -l), по таймеру скрипт при этом не запускается, в соответствии рекомендациями в документации, пробовал добавлять через командную строку (crontab -e), при таком добавлении задачи в планировщик, вторая строка не появляется в планировщике графического интерфейса, но опять же не выполняется по таймеру, но оба варианта отрабатываются при ручном запуске из графического интерфейса планировщика Примеры команд и скриптов: 00 17 * * * /sbin/reboot(poweroff) 00 15 * * * /sbin/myscript.sh 00 12 * * * ~/myscript.sh #!/bin/bash systemctl poweroff (reboot) Есть необходимость реализации авто выключения компьютеров в организации в указанное время с возможностью отмены пользователем, данный вопрос я поднимал в качестве рекомендации в https://bugzilla.altlinux.org/50126 с использованием GPO, пример скрипта то же там есть.
Техподдержка дала следующую рекомендацию Для возможности перезагрузки командой с помощью cron, необходимо добавить для этого разрешение. В директории /usr/share/polkit-1/rules.d/ создайте файл shutdown.rules со следующим содержимым: polkit.addRule(function(action, subject) { if ((action.id == "org.freedesktop.login1.reboot" || action.id == "org.freedesktop.login1.power-off") && subject.active == true) { return polkit.Result.YES; } return polkit.Result.NOT_HANDLED; }); После чего перезагрузите ПК и повторно проверьте перезагрузку через планировщик. Я не смог переубедить техподдержку, что данный функционал должен работать по умолчанию для рядового пользователя, считаю что для рядового пользователя минимальные системные команды должны выполнятся из коробки, а для организаций уже блокировать с использованием групповых политик (Polkit) если требуется. Мне еще нужно чтобы zenity из планировщика запускался, даже там ограничение, ну как так, элементарно вывод сообщения невозможно сделать, ну почему у рядового пользователя должна голова болеть для этого?
(Ответ для Murat на комментарий #1) > данный функционал должен работать по умолчанию для рядового пользователя Для рядового пользователя он работает. Вы путаете рядового пользователя и cron.
Хорошо, для рядового пользователя из под cron, по zenity ничего не могу найти в документации https://www.altlinux.org/Polkit, хоть обширнее были бы расписаны возможности.