私はラップトップでFedora 30を使用しています。 powertopに付属のsystemdサービス(powertop.service)を使用して電源チューニングパラメータを設定しようとしましたが、成功しませんでした。その後、起動時に実行するためにシェルスクリプトとカスタム.serviceファイルを生成しようとしましたが、うまくいきませんでした。 powertopで再起動した後、パラメータを確認すると変更されていないことがわかりました。ログインしてスクリプトを実行します。
カスタムスクリプト "/root/bin/powertune-HPEnvy.sh"
#!/bin/sh
echo '1' > '/sys/module/snd_hda_intel/parameters/power_save';
echo 'auto' > '/sys/bus/i2c/devices/i2c-0/device/power/control';
echo 'auto' > '/sys/bus/i2c/devices/i2c-2/device/power/control';
echo 'auto' > '/sys/bus/i2c/devices/i2c-6/device/power/control';
echo 'auto' > '/sys/bus/i2c/devices/i2c-1/device/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:02:00.0/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.2/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:14.0/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:08.0/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.0/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:15.0/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.4/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:00.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';
echo 'auto' > '/sys/bus/pci/devices/0000:00:15.1/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:02.0/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:14.2/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:04.0/power/control';
echo 'auto' > '/sys/bus/pci/devices/0000:00:17.0/power/control';
echo 'enabled' > '/sys/class/net/wlp1s0/device/power/wakeup';
echo 'enabled' > '/sys/bus/usb/devices/usb1/power/wakeup';
echo 'enabled' > '/sys/bus/usb/devices/usb2/power/wakeup';
カスタムシステムサービス '/etc/systemd/system/powertune-HPEnvy.service'
[Unit]
Description=Set HP Envy 15-as133cl powersaving
[Service]
Type=oneshot
ExecStart=/root/bin/powertune-HPEnvy.sh
[Install]
WantedBy=multi-user.target
答え1
変更して動作させました。
WantedBy=multi-user.target
到着
WantedBy=basic.target
sleep 10
次に、シェルスクリプトの先頭にaを追加し、systemdサービスを無効に/再アクティブ化します。これで再起動するとスクリプトが適用されます。