LINUX.ORG.RU

Бекап 1с по расписанию: crontab + sh скрипт [fedora 36]

 , ,


1

2

Доброго времени суток. В общем запихиваю в crontab эту задачу:

# m h  dom mon dow   command
13 0 * * * /home/lele/Rezerv/shell/_1c_retail_backup.sh

сам скрипт:

#!/bin/bash
sleep 2
export PATH=/sbin:/bin:/usr/bin:/usr/local/bin
# export HOME=/home/ИМЯ_ПОЛЬЗОВАТЕЛЯ
export HOME=/home/lele
# экспорт дисплея (важно для копирования базы)
export DISPLAY=$(who | grep -m1 -Po '\(\K[^\)]+(?=\)\s*$)')
# [ -e /home/ИМЯ_ПОЛЬЗОВАТЕЛЯ/.bashrc ] && source /home/ИМЯ_ПОЛЬЗОВАТЕЛЯ/.bashrc
[ -e /home/lele/.bashrc ] && source /home/lele/.bashrc
"/opt/1cv8/x86_64/8.3.21.1302/1cv8" DESIGNER /F "/home/lele/Base1C/Retail/" /N "Админ" /P "1337" /DumpIB"/home/lele/Rezerv/1C/Retail/RETAIL-$(date +\%d-\%m-\%Y_\%k-\%M-\%S).dt"

Так вот. В Kubuntu 22.04 (как и в 20.04) этот скрипт работает. В Fedora 36 этот скрипт не работает.

Если просто запустить этот скрипт двумя кликами, то он стартанёт. Речь идёт о том, что crontab его не стартует в fedora 36

Помогите, пожалуйста.


Ответ на: комментарий от lele

Ну так echo $LINENO навтыкай. А вообще, конечно, круто, начинать crontab скрипт со sleep

vodz ★★★★★ ()

В общем запихиваю в crontab эту задачу:

В чей crontab? lele или system-wide (/etc/crontab) ?

/home/lele/Base1C/Retail/

кто хозяин?

stat /home/lele/Base1C/Retail

hint:

cp /home/lele/Rezerv/shell/_1c_retail_backup.sh /home/lele/Rezerv/shell/1cretailbackup

chmod a+x /home/lele/Rezerv/shell/1cretailbackup

потом замените в crontab

13 0 * * * /home/lele/Rezerv/shell/_1c_retail_backup.sh

на

13 0 * * * /home/lele/Rezerv/shell/1cretailbackup

systemctl restart cron

PS А оно без морды не может? Может вам лучше gnome-shedule какой нибудь? )

kindof ()
Последнее исправление: kindof (всего исправлений: 1)
Ответ на: комментарий от PolarFox

РЕШЕНИЕ!

Оно и помогло:

xvfb-run использовать

Это в sh скрипт, остальное без изменений:

#!/bin/bash
/usr/bin/xvfb-run "/opt/1cv8/x86_64/8.3.21.1302/1cv8" DESIGNER /F "/home/lele/Base1C/Retail/" /N "Админ" /P "1337" /DumpIB"/home/lele/Rezerv/1C/Retail/RETAIL-$(date +\%d-\%m-\%Y_\%k-\%M-\%S).dt"

кто хозяин?

lele

От пользователя crontab

А оно без морды не может?

Это 1С, ей морду подавай)

Благодарю всех, кто откликнулся.

lele ()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.