Estou tentando tornar meus ajustes de energia permanentes. Eu rodei o sudo powertop --html e eu tenho uma lista dos comandos que eu preciso adicionar ao /etc/rc.local. Eu os adicionei ao /etc/rc.local e a maioria deles funciona, mas alguns deles não. Por exemplo, o comando para definir o tempo limite de write-back de VM de ruim para bom é ...
echo '1500' > '/proc/sys/vm/dirty_writeback_centisecs';
Este comando não funciona mesmo que eu tenha adicionado no arquivo /etc/rc.local. Alguns outros comandos relacionados à ativação do gerenciador de energia do link SATA também não funcionam como ...
echo 'min_power' > '/sys/class/scsi_host/host0/link_power_management_policy';
echo 'min_power' > '/sys/class/scsi_host/host1/link_power_management_policy';
echo 'min_power' > '/sys/class/scsi_host/host2/link_power_management_policy';
Estes também estão no arquivo /etc/rc.local. Aqui está uma cópia do meu arquivo 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.
# these commands work
echo '0' > '/proc/sys/kernel/nmi_watchdog';
echo 'auto' > '/sys/bus/pci/devices/0000:00:1a.0/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:01.0/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:1d.0/power/control';
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:00:16.0/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:14.0/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.3/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:01:00.0/power/control';
# these commands don't work
echo '1500' > '/proc/sys/vm/dirty_writeback_centisecs';
echo 'min_power' > '/sys/class/scsi_host/host0/link_power_management_policy';
echo 'min_power' > '/sys/class/scsi_host/host1/link_power_management_policy';
echo 'min_power' > '/sys/class/scsi_host/host2/link_power_management_policy';
echo 'min_power' > '/sys/class/scsi_host/host3/link_power_management_policy';
echo 'min_power' > '/sys/class/scsi_host/host4/link_power_management_policy';
echo 'min_power' > '/sys/class/scsi_host/host5/link_power_management_policy';
echo '1' > '/sys/module/snd_hda_intel/parameters/power_save';
echo 'auto' > '/sys/bus/pci/devices/0000:00:00.0/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:01:00.1/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:1b.0/power/control';
exit 0
Por que esses comandos não funcionam?
ATUALIZAÇÃO:
Quando executo esse script por meio de um prompt de comando, os comandos funcionam bem. Então, se eu iniciar meu sistema, faça o login e abra um prompt de comando e digite ...
sudo /etc/rc.local
O script é executado corretamente e todas as configurações no powertop estão definidas corretamente. Então, isso significa que o script é executável e que a sintaxe do comando está correta.
Estou apostando que o script rc.local é executado corretamente durante a inicialização, mas que outra coisa depois disso é redefinir as configurações de powertop que não estão funcionando. Alguma idéia de por que isso está acontecendo e como posso corrigi-lo?