Как изменить разрешения по умолчанию для файлов, созданных transmission-daemon?

У меня есть машина, на которой работает сервер Ubuntu 12.04 с запущенным демоном передачи для обработки bitorrents. Все работает нормально, за исключением передачи-демон создает файлы от имени пользователя / группы, debian-transmission, и с 744 правами доступа к файлам.

  • Я хотел бы иметь возможность удалять и перемещать эти файлы из общего ресурса samba.

  • Я рассматривал возможность изменения основной группы пользователя debian-transmission, но я беспокоился, что это может испортить доступ к другим файлам.

  • Я подумал, что было бы лучше изменить разрешение по умолчанию для новых файлов, созданных debian-transmission, на 774 и добавить себя в группу debian-transmission.

    Я знаю, что это можно сделать с помощью umask, но, насколько я понимаю, это будет задано в файле .profile, а поскольку в debian-transmission нет домашней папки, я не уверен, существовал ли этот файл для пользователя. Итак, как мне это сделать?

    Предложения или альтернативные решения приветствуются. Заранее спасибо.

Попробуй пройти бота-учителя. Он научит тебя Linux в виде игры: Курсы Linux и DevOPS Бесплатный урок

Вы можете указать umask в конфигурационном файле transmission (/etc/transmission-daemon/settings.json). Umask мы обычно представляем в восьмеричном формате, но, к сожалению, json это не поддерживает, поэтому нам приходится преобразовывать его в базовое значение 10. Вы можете сделать это в оболочке следующим образом:

$ echo $(( 8#022 ))18

Это значение по умолчанию, но вы, вероятно, хотите 002, которое совпадает с десятичным, так что

sudo editor /etc/transmission-daemon/settings.json# change "umask": 18 to "umask": 2 and savesudo reload transmission-daemon # tells transmission-daemon to re-read the config                                 # file. This is important, otherwise, the changes                                # will be lost

Еще кое-что. Если вы измените групповое владение каталогом загрузки и добавите к нему бит setgid, все файлы, созданные в этом каталоге, будут иметь то же групповое владение, что и этот каталог.

sudo chgrp "$USER" /path/to/transmission/download/dirsudo chmod g+s /path/to/transmission/download/dir

Это не повлияет на уже существующие файлы. Видеть http://mywiki .wooledge.org/Permissions для большего.

Попробуй пройти бота-учителя. Он научит тебя Linux в виде игры: Курсы Linux и DevOPS Бесплатный урок

Попробуйте это:

mkdir /your_path/progressmkdir /your_path/completedsudo usermod -a -G debian-transmission your_userchgrp debian-transmission /your_path/progresschgrp debian-transmission /your_path/completedchmod 770 /your_path/progresschmod 770 /your_path/completedsudo service transmission-daemon stopsudo adduser your_user debian-transmissionsudo nano /etc/init.d/transmission-daemonsudo chown your_user -R /var/lib/transmission-daemon/info/sudo chown your_user -R /your_path/progresssudo chown your_user -R /your_path/completedsudo chown your_user -R /etc/transmission-daemon/settings.json

И внесите изменения в файл: sudo nano /etc/transmission-daemon/settings.json

"rpc-whitelist": "127.0.0.1" > "rpc-whitelist": "*.*.*.*","rpc-password": "password" > "rpc-password": "your_password","download-dir": "/var/lib/transmission-daemon/downloads" > "download-dir": "/your_path/completed""incomplete-dir": "/var/lib/transmission-daemon/downloads" > "incomplete-dir": "/your_path/progress"

Просто перезапустите демон:

service transmission-daemon start

Сделал это на Crystalubuntu, теперь я получаю ошибку при запуске передачи - “не удалось установить gid на 113 (операция запрещена)”. Есть какие-нибудь идеи?

I ended up with following as crontab entry

>>#!/bin/shtrap “” 1logfile=/dev/nullexec $logfile 2&1set -x while true; do a=“$(inotifywait -q -r -e move -e create -e delete /data/completeddownloads/Movies --format %w%f)” chown -R никто: никто “$a” не сделал

Попробуй пройти бота-учителя. Он научит тебя Linux в виде игры: Курсы Linux и DevOPS Бесплатный урок