Bagaimana cara mengubah izin default file yang dibuat oleh transmisi-daemon?

24

Saya memiliki mesin yang menjalankan server Ubuntu 12.04 dengan daemon transmisi yang dijalankan untuk menangani bitorrents. Semuanya berfungsi dengan baik kecuali transmisi-daemon membuat file sebagai pengguna / grup debian-transmission,, dan dengan 744 izin file.

  • Saya ingin dapat menghapus dan memindahkan file ini dari share samba.

  • Saya mempertimbangkan untuk mengubah grup utama dari transmisi debian pengguna, tetapi saya khawatir akan mengacaukan akses ke file lain.

  • Saya pikir akan lebih baik untuk mengubah izin default dari file baru yang dibuat oleh debian-transmission menjadi 774, dan menambahkan diri saya ke grup debian-transmission.

    Saya tahu ini dapat dilakukan dengan umask, tetapi pemahaman saya adalah bahwa ini akan diatur dalam file .profile dan karena debian-transmission tidak memiliki folder rumah, saya tidak yakin apakah file itu ada untuk pengguna. Jadi bagaimana saya mencapai ini?

    Saran atau solusi alternatif dipersilakan. Terima kasih sebelumnya.

jpetersen
sumber
Apakah itu di Crystalubuntu, sekarang saya mendapatkan kesalahan ketika memulai transmisi - "tidak dapat mengatur gid ke 113 (Operasi tidak diizinkan)". Ada ide?
Saya berakhir dengan mengikuti sebagai entri crontab <pre> #! / Bin / sh trap "" 1 logfile = / dev / null exec> $ logfile 2> & 1 set -x sementara true; do a = "$ (inotifywait -q -r -e pindah -e buat -e delete / data / finisheddownloads / Movies --format% w% f)" chown -R tidak ada: tidak ada "$ a" selesai </pre>

Jawaban:

45

Anda dapat menentukan umask dalam file konfigurasi transmisi ( /etc/transmission-daemon/settings.json). Umask yang biasanya kami wakili dalam oktal, tapi sayangnya, json tidak mendukung itu, jadi kami harus mengubahnya menjadi basis 10. Anda dapat melakukan ini di shell seperti ini:

$ echo $(( 8#022 ))
18

Itu default, tetapi Anda mungkin ingin 002, yang sama dalam desimal, jadi

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

Hal lain. Jika Anda mengubah kepemilikan grup dari dir, dan menambahkan bit setgid di dalamnya, semua file yang dibuat dalam direktori itu akan memiliki kepemilikan grup yang sama dengan direktori itu.

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

Itu tidak akan mempengaruhi file yang sudah ada. Lihat http://mywiki.wooledge.org/Permissions untuk lebih lanjut.

geirha
sumber
Apa yang saya butuhkan. Terima kasih telah memasukkan info bit setgid, saya lupa tentang bit tambahan itu.
jpetersen
Saya pikir saya melakukan sesuatu yang salah. Saya ingin mengatur perizinan seperti chmod 775, jadi saya mencoba dengan perintah echo $ ((8 # 775)) dan mendapat 509, tetapi sepertinya ini baru saja merusak daemon transmisi karena tidak akan mengunduh lagi file torrent.
Fran Marzoa
3
@ Fran Jika Anda mengatur umask ke 0775, maka file akan mendapatkan mode 002; Topeng menentukan bit apa yang TIDAK diatur pada file baru. Anda menginginkan umask default (002) di sini, sehingga file-file tersebut dibuat dengan mode 664, dan direktori dengan mode 775.
geirha
Oh! Saya sudah menyadari bahwa saya harus meletakkan 002, tetapi saya tidak tahu mengapa! Terima kasih banyak untuk klarifikasi! :)
Fran Marzoa
Itu chmod g+syang saya lewatkan. Terima kasih!
flith
0

Coba ini:

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

Dan perubahan dalam file: 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"

Mulai ulang daemon:

service transmission-daemon start
Costales
sumber