Làm cách nào để thay đổi quyền mặc định của các tệp được tạo bởi truyền-daemon?


24

Tôi có một máy đang chạy máy chủ Ubuntu 12.04 với trình truyền tải daemon đang chạy để xử lý các lỗi. Mọi thứ đều hoạt động tốt, ngoại trừ trình truyền tải tạo các tệp dưới dạng người dùng / nhóm debian-transmissionvà với 744 quyền truy cập tệp.

  • Tôi muốn có thể xóa và di chuyển các tệp này từ một chia sẻ samba.

  • Tôi đã xem xét việc thay đổi nhóm chính của việc truyền debian người dùng, nhưng tôi lo lắng rằng có thể làm rối tung quyền truy cập vào các tệp khác.

  • Tôi nghĩ sẽ tốt hơn nếu thay đổi quyền mặc định của các tệp mới được tạo bởi truyền debian thành 774 và thêm bản thân mình vào truyền debian nhóm.

    Tôi biết rằng điều này có thể được thực hiện với một ô, nhưng tôi hiểu rằng điều này sẽ được đặt trong tệp .profile và vì truyền debian không có thư mục chính nên tôi không chắc liệu tệp đó có tồn tại cho người dùng hay không. Vậy làm thế nào để tôi thực hiện điều này?

    Đề xuất hoặc giải pháp thay thế đều được chào đón. Cảm ơn trước.


Có phải điều đó trên Crystalubfox, bây giờ tôi gặp lỗi khi bắt đầu truyền - "không thể đặt gid thành 113 (Không cho phép thao tác)". Bất kỳ ý tưởng?

Tôi đã kết thúc với việc theo sau là mục crontab <pre> #! / Bin / sh bẫy "" 1 logfile = / dev / null exec> $ logfile 2> & 1 set -x trong khi true; do a = "$ (inotifywait -q -r -e move -e tạo -e xóa / dữ liệu / đã hoàn thành tải xuống / Phim --format% w% f)" chown -R none: none "$ a" xong </ pre>

Câu trả lời:


45

Bạn có thể chỉ định một ô trong tệp cấu hình của truyền ( /etc/transmission-daemon/settings.json). Umask chúng ta thường đại diện cho bát phân, nhưng thật không may, json không hỗ trợ điều đó, vì vậy chúng tôi phải chuyển đổi nó thành cơ sở 10. Bạn có thể làm điều này trong shell như thế này:

$ echo $(( 8#022 ))
18

Đó là mặc định, nhưng bạn có thể muốn 002, giống như số thập phân, vì vậy

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

Cái khác. Nếu bạn thay đổi quyền sở hữu nhóm của thư mục tải xuống và thêm bit setgid trên đó, tất cả các tệp được tạo trong thư mục đó sẽ có cùng quyền sở hữu nhóm với thư mục đó.

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

Nó sẽ không ảnh hưởng đến các tập tin đã tồn tại. Xem http://mywiki.wooledge.org/Permissions để biết thêm.


Chính xác những gì tôi cần. Cảm ơn vì đã bao gồm thông tin bit setgid, tôi đã quên những bit thừa đó.
jpeteren

Tôi nghĩ rằng tôi đang làm một cái gì đó sai. Tôi muốn đặt các quyền như chmod 775, vì vậy tôi đã thử với lệnh echo $ ((8 # 775)) và nhận được 509, nhưng có vẻ như điều này chỉ phá vỡ trình truyền tải vì nó sẽ không tải xuống các tệp torrent nữa.
Fran Marzoa

3
@Fran Nếu bạn đặt umask thành 0775, thì các tệp sẽ có chế độ 002; Mặt nạ chỉ định bit nào KHÔNG được đặt trên các tệp mới. Bạn muốn có ô mặc định (002) tại đây, để các tệp được tạo với chế độ 664 và các thư mục có chế độ 775.
geirha

Oh! Tôi đã nhận ra rằng tôi đã đặt 002, nhưng tôi không biết tại sao! Cảm ơn một triệu đã làm rõ! :)
Fran Marzoa

Đó là cái chmod g+smà tôi đã mất tích. Cảm ơn!
với

0

Thử đi:

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

Và thay đổi trong tệp: sudo nano /etc/transmission-daemon/sinstall.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"

Chỉ cần khởi động lại daemon:

service transmission-daemon start
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.