Eu tenho um script .sh, tentando fazer com que as mudanças de energia permaneçam permanentes.
'auto' > '/sys/bus/pci/devices/0000:00:02.1/power/control';
os comandos neste script .sh são todos desse tipo.
Eu tenho um systemd-service em / etc / systemd / system com este conteúdo:
[Unit]
Description=My Script
After=network.target
[Service]
Type=forking
ExecStart=/home/my_username/.autostart_sudo.sh
[Install]
WantedBy=multi-user.target
O script ".autostart_sudo.sh" é chamado corretamente após a inicialização (por exemplo, "bluetooth off" - comando neste arquivo é chamado perfeclty) mas os comandos echo- > -não são chamados com sucesso.
Eu notei que digitar
sudo 'auto' > '/sys/bus/pci/devices/0000:00:02.1/power/control';
em um terminal dá um erro de restrição,
mas
sudo su
'auto' > '/sys/bus/pci/devices/0000:00:02.1/power/control';
funciona.
como eu tenho que mudar meu systemd + bash-script para obter as mudanças de powertop funcionando na inicialização?
Obrigado antecipadamente!
Editar:
Ok, tento descrever o fluxo novamente:
Eu tenho o serviço systemd postado no topo deste post.
Este serviço chama o ".autostart_sudo.sh" em meu / home / user /.
Existem muitos comandos neste arquivo .autostart_sudo.sh com esta aparência:
echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.0/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.2/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:04:00.0/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:03:00.0/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:1a.0/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:03.3/power/control';
(...)
thinkfan start
O "thinkfan start" também precisa de privilégios de root para iniciar corretamente, este funciona, mas os comandos "echo" não.
Eu também tentei
bash -c 'echo auto > /sys/bus/pci/devices/0000:00:1d.0/power/control;'
bash -c 'echo auto > /sys/bus/pci/devices/0000:00:1a.7/power/control;'
bash -c 'echo auto > /sys/bus/pci/devices/0000:00:1a.2/power/control;'
bash -c 'echo auto > /sys/bus/pci/devices/0000:00:02.0/power/control;'
bash -c 'echo auto > /sys/bus/pci/devices/0000:00:02.1/power/control;'
não funciona: /
As coisas do sudo-test que mencionei acima eram apenas testes em um Terminal .
algum conselho?