Полная инструкция по переделке (согласно методичке)
Шаг 1. Установка необходимых пакетов
Откройте терминал под вашим основным пользователем (судя по вашим скриншотам, это ubuntu) и установите требуемые утилиты:
Bash
sudo apt update
sudo apt install xterm dialog -y
Шаг 2. Создание и наполнение скрипта
Создайте файл и откройте его в текстовом редакторе:
Bash
cd ~
touch crontest.sh
nano crontest.sh
Вставьте в него следующий код (замените данные на свои):
Bash
#!/bin/sh
xterm -e dialog --title 'Ваша Группа' --msgbox 'Ваши ФИО' 10 30
Сохраните изменения (Ctrl+O, Enter, Ctrl+X).
Шаг 3. Выдача прав и проверка скрипта (Скриншот 1)
Сделайте файл исполняемым:
Bash
chmod +x crontest.sh
Запустите его вручную:
Bash
./crontest.sh
На экране должно появиться синее окно с вашим ФИО. Сделайте скриншот этого окна поверх терминала — это будет аналог «Рис. 49» из методички. Нажмите Enter, чтобы закрыть его.
Шаг 4. Настройка доступа к экрану
Чтобы фоновый процесс Cron мог «нарисовать» окно на вашем рабочем столе, разрешите это командой:
Bash
xhost +
Проверьте номер вашего дисплея:
Bash
echo $DISPLAY
(Обычно выводит :0 или :1. Запомните эту цифру для следующего шага).
Шаг 5. Настройка Cron
Убедитесь, что служба работает:
Bash
sudo systemctl start cron
Откройте расписание:
Bash
crontab -e
В самый конец файла добавьте строку из методички, но обязательно укажите правильный путь к вашему пользователю (вместо $user напишите ubuntu, если вы делаете это под ним). Если echo $DISPLAY выдал :1, то пишите DISPLAY=:1. Строка должна выглядеть так:
Bash
*/5 * * * * export DISPLAY=:0 && xterm -hold -e '/home/ubuntu/crontest.sh'
Сохраните и закройте файл.
Шаг 6. Демонстрация логов (Скриншот 2)
Дождитесь, когда Cron сработает (это происходит каждые 5 минут: в 12:00, 12:05, 12:10 и т.д.). У вас самопроизвольно откроется синее окно на экране.
Сразу после этого в терминале введите команду просмотра системных логов:
Bash
tail -f /var/log/syslog | grep CRON
Сделайте скриншот терминала с выводом логов о запуске crontest.sh. Это заменит ваш текущий Рис. 7.
Что написать в самом отчете (замена вашего текста)
Замените текст после слов «В качестве примера осуществления перехода между каталогами...» на следующий:
8. Выполнение операции с помощью Cron и показ логов.
Для выполнения графической операции по расписанию были установлены пакеты xterm и dialog. Был создан и открыт для редактирования скрипт командами touch crontest.sh и nano crontest.sh. В файл был помещен следующий код:
#!/bin/sh
xterm -e dialog --title 'ККСО-00-22' --msgbox 'Иванов И.И.' 10 30
Файл сделан исполняемым командой chmod +x crontest.sh и успешно протестирован ручным запуском (Рис. 6).
(Вставить Скриншот 1)
Рис. 6 – Проверка работы скрипта вызова диалогового окна
Для работы Cron с графическим интерфейсом был проверен номер дисплея (echo $DISPLAY) и выданы права на использование графического сервера командой xhost +. Далее служба была запущена (sudo systemctl start cron), а расписание открыто командой crontab -e. Было добавлено задание на выполнение скрипта каждые 5 минут:
*/5 * * * * export DISPLAY=:0 && xterm -hold -e '/home/ubuntu/crontest.sh'
Результат срабатывания планировщика зафиксирован в системных логах командой tail -f /var/log/syslog (Рис. 7).
(Вставить Скриншот 2)
Рис. 7 – Выполнение операции Cron в системных логах