Como você define uma senha para o daemon de transmissão, o servidor cliente BitTorrent?


58

O arquivo de configuração é ambíguo e continua sendo substituído quando você reinicia o daemon no Debian, de qualquer maneira.

Em /etc/transmission-daemon/settings.json, existem estas opções:

rpc-username
rpc-password
proxy-auth-username
proxy-auth-password

Toda vez que eu reinicio o daemon com:

/etc/init.d/transmission-daemon restart

Ele substitui rpc-passworde a senha impressa não funciona de qualquer maneira.

Alguém sabe como definir a senha corretamente? Eu não quero desativá-lo.


2
Basta colocar isso aqui para quem pode se deparar no futuro, mas você também tem que definir rpc-authentication-requireda trueno arquivo de configurações, caso contrário Transmissão não irá verificar se há uma senha.
Robmathers

Eu relatei esse comportamento porque não é construtivo em bugs.launchpad.net/ubuntu/+source/transmission/+bug/1644091 , mas foi ignorado como muitos bugs do Ubuntu.
Karl Richter

Respostas:


113

Faça estas coisas na ordem exata:

  1. Encerramento: /etc/init.d/transmission-daemon stop
  2. Escreva rpc-passwordno /etc/transmission-daemon/settings.jsonarquivo, entre aspas duplas.
  3. Salve esse arquivo
  4. Inicialização: /etc/init.d/transmission-daemon start
  5. Entre na página, está na porta 9091
  6. Digite sua senha.

A senha que está sendo substituída é um hash. O programa é mais inteligente do que o habitual e detecta que sua senha não é um hash; portanto, ele substitui a senha pelo hash para garantir a segurança. Portanto, sua senha deve funcionar.

No entanto, lembre-se de que ele grava a senha carregada quando é desligada. Isso /etc/init.d/transmission-daemon restartnão fará o que você espera se tiver gravado o arquivo enquanto estiver em execução.


9
Você não precisa parar e reiniciar o daemon. Apenas /etc/init.d/transmission-daemon recarregue.
Brad

11
Pelo menos no momento em que escrevi a resposta, você realmente edita o arquivo enquanto está parado, porque o daemon de transmissão grava o arquivo de perto.
Neil

11
init.d / reload é específico da distribuição. Mais geralmente, você acabou de enviar um SIGHUP - embora este não é na página de homem, só aqui: trac.transmissionbt.com/wiki/EditConfigFiles
Yardena

Comentário de um usuário anônimo: No meu caso, havia um script (em /etc/init.d) para iniciar o daemon que passava a senha: Eu tive que editar esse script (chamado "transmissiond") para alterar a senha e, portanto, funcionou.
terdon

Sobrescrever um arquivo de configuração dessa maneira é inteligente ou não, é definitivamente uma boa fonte para problemas desnecessários (em comparação com apenas forçar o usuário a escrever hashs no arquivo de configuração e fornecer feedback útil em todos os níveis). Tentei fazer a transmissão funcionar há alguns anos e documentei as tentativas. Normalmente, outros campos também são substituídos. Eu arquivei alguns erros sobre isso que foram ignorados.
Karl Richter

2

Você também pode tentar outra solução para encontrar a senha:

ps -ef | grep transmission

(para minha versão era admin: password1)


2
Na minha instalação do ubuntu, pelo menos, a senha é definida no arquivo, portanto, listar os processos não informará qual é a senha.
Damon Smith

2

Geralmente, o daemon grava suas configurações quando sai (ou é reiniciado). Você pode forçar o daemon a recarregar novas configurações enviando-o SIGHUP:

kill -HUP 1234

... então ele não substituirá mais as suas configurações ao parar.

BTW: Não estou feliz que o remote-remote-cli da transmissão queira ter a senha na linha de comando. Péssima ideia!


1

Embora este post já tenha uma resposta aceita, acho que vale a pena acrescentar que, no Ubuntu, o daemon de transmissão não pode ser interrompido uma vez iniciado.

Isso significa que todas as alterações feitas em settings.json serão substituídas na próxima reinicialização, sempre que for.

Isso também significa que você deve desativar completamente o daemon-startup na inicialização , reinicializar, editar o settings.json e reativá-lo para fazer as alterações persistentes.

Muito chato, mas quando você está ciente do que está acontecendo, é bastante fácil lidar com isso.


4
Quando você diz que não pode ser interrompido, tentou executar: "sudo service transmission-daemon stop"? para pará-lo da maneira usual? Isso funciona para mim. Em seguida, você pode editar o arquivo de configurações e reiniciá-lo.
Damon Smith

11
-1, isso está incorreto. O método @ Neil funciona como descrito e, se o que você disse era verdade, o método dele não funcionaria. O arquivo settings.json somente será sobrescrito se você o modificar enquanto a transmissão estiver em execução e reinicie a transmissão.
Ubiquibacon

Se você fizer o que a maioria clara dos usuários com um init-background no estilo sysv faz instintivamente ( /etc/init.d/transmission restart), de fato não funciona. Se você tiver que fazer alguma coisa estranha de "serviço" ou algo inicial ou outro Ubuntu-ism especial para fazê-lo funcionar, então, por definição, não funciona.
Jostein Kjønigsen 5/05

2
"Não funciona do jeito que estou acostumado" não é o mesmo que "não funciona". Funciona.
suriv 28/05
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.