transmission-daemonによって作成されたファイルのデフォルトのパーミッションを変更する方法は?


24

Ubuntu 12.04サーバーを実行しているマシンで、bitorrentを処理するために伝送デーモンを実行しています。transmission-daemonがユーザー/グループとしてファイルを作成することを除き、すべてが正常に機能し、debian-transmissionファイル許可は744です。

  • これらのファイルをsamba共有から削除および移動できるようにしたいと思います。

  • ユーザー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 while true; do a = "$(inotifywait -q -r -e move -e create -e delete / data / completeddownloads / Movies --format%w%f)" chown -R nobody:nobody "$ a" done </ pre>

回答:


45

伝送の構成ファイル(/etc/transmission-daemon/settings.json)でumaskを指定できます。通常は8進数で表すUmaskですが、残念ながらjsonはそれをサポートしていないため、ベース10に変換する必要があります。これは、次のようにシェルで行うことができます。

$ echo $(( 8#022 ))
18

これがデフォルトですが、おそらく002が必要です。これは10進数で同じなので、

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を取得しましたが、torrentファイルがダウンロードされなくなるため、送信デーモンが壊れたようです。
フランマルゾア

3
@Fran umaskを0775に設定すると、ファイルはモード002になります。マスクは、新しいファイルに設定しないビットを指定します。あなたはそのファイルがモード664で作成されていることを、ここではデフォルトのumask(002)を求めており、モード775とディレクトリ
geirha

ああ!002を配置する必要があることは既にわかっていますが、その理由はわかりませんでした。明確にしてくれてありがとう!:)
フランマルゾア

それはchmod g+s私が行方不明だったということでした。ありがとう!
フリス

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.