У меня есть машина, на которой работает сервер 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 Бесплатный урок