transmission-daemon으로 작성된 파일의 기본 권한을 변경하는 방법은 무엇입니까?


24

bitorrent를 처리하기 위해 전송 데몬이 실행되는 Ubuntu 12.04 서버를 실행하는 컴퓨터가 있습니다. 전송 데몬이 파일을 사용자 / 그룹으로 작성 debian-transmission하고 744 파일 권한을 갖는 것을 제외하고는 모든 것이 잘 작동합니다 .

  • 이 파일을 삼바 공유에서 삭제하고 이동할 수 있기를 원합니다.

  • debian-transmission 사용자의 기본 그룹을 변경하는 것을 고려했지만 다른 파일에 대한 액세스가 엉망이 될까 걱정했습니다.

  • debian-transmission으로 만든 새 파일의 기본 권한을 774로 변경하고 debian-transmission 그룹에 자신을 추가하는 것이 더 좋을 것이라고 생각했습니다.

    나는 이것이 umask로 수행 될 수 있다는 것을 알고 있지만 이것이 .profile 파일에 설정되고 debian-transmission에 홈 폴더가 없기 때문에 해당 파일이 사용자에게 존재했는지 확실하지 않습니다. 어떻게하면됩니까?

    제안이나 대체 솔루션을 환영합니다. 미리 감사드립니다.


Crystalubuntu에서 전송을 시작할 때 "gid를 113으로 설정할 수 없습니다 (작업이 허용되지 않음)"오류가 발생합니다. 어떤 생각?

crontab 항목 <pre> #! / bin / sh trap ""1 logfile = / dev / null exec> $ logfile 2> & 1 set -x true로 다음과 같이 끝났습니다. a = "$ (inotifywait -q -r -e move -e create -e delete / data / completeddownloads / Movies --format % w % f)"chown -R nobody : 아무도 "$ a"완료 </ pre>

답변:


45

전송 구성 파일 ( /etc/transmission-daemon/settings.json) 에서 umask를 지정할 수 있습니다 . 우리는 일반적으로 8 진수로 표현하는 Umask이지만 불행히도 json은이를 지원하지 않으므로 10을 base 10으로 변환해야합니다. 다음과 같이 쉘에서이를 수행 할 수 있습니다.

$ echo $(( 8#022 ))
18

이것이 기본값이지만 10 진수와 같은 002를 원할 것입니다.

sudo editor /etc/transmission-daemon/settings.json
# change "umask": 18 to "umask": 2 and save
sudo 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/dir
sudo chmod g+s /path/to/transmission/download/dir

이미 존재하는 파일에는 영향을 미치지 않습니다. 자세한 내용은 http://mywiki.wooledge.org/Permissions 를 참조 하십시오 .


정확히 내가 필요한 것. setgid 비트 정보를 포함 해 주셔서 감사합니다. 추가 비트를 잊었습니다.
jpetersen

내가 잘못하고 있다고 생각합니다. chmod 775와 같은 권한을 설정하고 싶습니다. echo $ ((8 # 775)) 명령으로 시도하고 509를 얻었지만 더 이상 토렌트 파일을 다운로드하지 않으므로 전송 데몬이 고장난 것 같습니다.
Fran Marzoa

3
@Fran umask를 0775로 설정하면 파일은 모드 002가됩니다. 마스크는 새 파일에 설정하지 않을 비트를 지정합니다. 파일이 모드 664로, 디렉토리가 모드 775로 작성되도록 기본 umask (002)가 필요합니다.
geirha

오! 나는 이미 002를 넣어야한다는 것을 깨달았지만 그 이유를 몰랐습니다! 설명을 해주셔서 감사합니다! :)
Fran Marzoa

그것은이었다 chmod g+s내가 실종되었다. 감사!
Flith

0

이 시도:

mkdir /your_path/progress
mkdir /your_path/completed
sudo usermod -a -G debian-transmission your_user
chgrp debian-transmission /your_path/progress
chgrp debian-transmission /your_path/completed
chmod 770 /your_path/progress
chmod 770 /your_path/completed
sudo service transmission-daemon stop
sudo adduser your_user debian-transmission
sudo nano /etc/init.d/transmission-daemon
sudo chown your_user -R /var/lib/transmission-daemon/info/
sudo chown your_user -R /your_path/progress
sudo chown your_user -R /your_path/completed
sudo 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
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.