Problemas com comandos em rc.local

0

Estou tentando adicionar os seguintes comandos ao rc.local:

iptables -A OUTPUT -m owner --gid-owner vpnroute \! -o tun0 -j REJECT

-g vpnroute transmission-gtk

Isso é para forçar a transmissão a usar somente a minha VPN e, em seguida, iniciá-lo. O grupo vpnroute está presente e o lc.local é de propriedade do root e pode ser executado. Também tentei iniciar via gerenciador de inicialização lxsessions sem sorte. Eu também tentei fazer um script, chmod e chamá-lo de rc.local.

O script em si pode ser executado sem problemas no terminal, no entanto, nada acontece na inicialização. Então eu tentei fazer um arquivo .desktop para executar o script, colocá-lo em /home/username/.config/autostart, não funcionou também.

Eu adicionei >> /var/log/rc.local.log 2>&1 , mas não há log criado após a inicialização. Se eu executar o rc.local manualmente, recebo um log que diz /etc/rc.local: 15:/etc/rc.local:-g: not found . Se eu adicionar o sudo aos comandos, o rc.local é executado manualmente (com senha), ainda não na inicialização.

My rc.local:
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing. sleep 5 sudo 
iptables -A OUTPUT -m     owner --gid-owner vpnroute \! -o tun0 -j REJECT >> /var/log/rc.local.log 2>&1
sudo -g vpnroute transmission-gtk >> /var/log/rc.local.log 2>&1 
exit 0

E a versão do script, ao tentar iniciar assim:

#!/bin/bash
sleep 3
sudo iptables -A OUTPUT -m owner --gid-owner vpnroute \! -o tun0 -j REJECT
sudo -g vpnroute transmission-gtk
exit

Eu mudei os dois tantas vezes agora, para tentar sugestões diferentes em fóruns on-line.

Qualquer ajuda seria muito apreciada! Atenciosamente Alex

    
por Alex.L 01.03.2016 / 13:31

1 resposta

0

Como já mencionado, use iptables-persistent para a regra iptables. Em relação à transmissão inicial, você deve usar o daemon que já vem com um script rc-service. Então configure o daemon de transmissão de acordo com os documentos Docs do Ubuntu e habilitá-lo:

service transmission-daemon enable

Você pode acessá-lo com o cliente de transmissão ou em uma interface web dependendo de sua configuração.

    
por Phlogi 01.03.2016 / 21:39