Корневое задание Крона не выполняет chmod

У меня есть a root cron задание, которое создает каталог в смонтированном другом жестком диске и затем использовании rsync Я копирую все файлы с ИСТОЧНИКА для ПРЕДНАЗНАЧЕНИЯ. Сценарий похож на это:

 date_cmd='date +%Y_%m_%d_%H_%M_%S'
 TS_SUFFIX=`eval ${date_cmd}`
 SOURCE_DIR=/
 TARGET_DIR=/mnt/backup_hdd/system_backup_${TS_SUFFIX}

 LOG_DIR=/shared_utils/logs/backupper
 LOG_FILE=${LOG_DIR}/backupper_${TS_SUFFIX}.log

 mkdir -p ${TARGET_DIR}
 chmod 770 ${TARGET_DIR}
 rsync -a --append-verify --info=progress2 --exclude-from=${EXCLUDE_LIST} ${SOURCE_DIR} ${TARGET_DIR}

Проблема - это chmod 770 не изменяется TARGET полномочия dir к 770. Поскольку Вы видите, что это создается с 755 полномочиями.:

drwxr-xr-x  19 root root       4096 Mar 18 11:47 system_backup_2018_03_18_17_57_01/

Мой root cron задание:

57 17 * * * umask 007; /path/to/script.sh

Поскольку Вы видите, что я устанавливаю umask 007 прежде, чем выполнить сценарий. Так, это перестало работать на 2 передних сторонах:

  1. Хотя я устанавливаю umask на 007, фактические полномочия не как ожидалось.
  2. Хотя я явно изменяю полномочия (chmod 770) к TARGET dir, полномочия все еще не изменяются.

Какие-либо идеи, почему эти 2 случая не работают?

ОБНОВЛЕНИЕ

Запущение скрипта с sudo script.sh не изменяет полномочия TARGET, также.

0
задан 18 March 2018 в 10:35

1 ответ

Благодаря PerlDuck и Cyrus тайна решена.

rsync -a создает ЦЕЛЕВОЙ dir с теми же полномочиями как ИСТОЧНИК (в моем случае 755).

0
ответ дан 30 October 2019 в 05:41

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

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