Установка параметра transmission UMASK 000 в файле settings.json раз в минуту
Для чего
В transmission флаг UMASK 000 разрешает всем пользователям полные права на редактирование и изменения файлов и папок, созданных им. Это предотвращает проблемы с доступом через сетевой диск в Windows и другие проблемы с отсутствием доступа на перемещение, редактирование или удаление. Это не лучший способ, но в своей небольшой сети достаточно беспроблеммный и простой. Только каждый раз при перезапуски контейнера transmission происходит восстановление конфиг файла settings.json и установка UMASK 002 вместо 000.
Решение
Для решения этой проблемы необходимо создать скрипт, который бы каждую минуту просматривал конфиг файл и если в нем установлено UMASK 002 менял бы в UMASK 000. Для этого создадим файл следующего содержания и назовем его umask.sh
#!/bin/bash
sed -i '77 s/002/000/' /config/settings.json
Далее этот файл кладем по пути /config/1min и делаем его исполняемым. При этом папка /config должна быть примаунтинина к host системе через изначальное создание контейнера (т.е. это папка конфигов transmission вне контейнера) - это позволит не обновляться ей при каждом перезапуске контейнера.
Далее через Portainer подключаемся внутрь контейнера и добавляем правило Cron
crontab -e
Далее нажимае i и вставляем строку
* * * * * run-parts /config/1min
Нажимаем Esc и :wq
Это создаст новое правило Cron - каждую минуту будут выполняться скрипты из папки 1min, в которой лежит наш скрипт unmask.sh
Теперь пробуем перезапустить контейнер и проверяем через пару минут, что в файле settings.json сменился UMASK 002 на UMASK 000