0

On Manjaro Linux (kernel 5.5) I created a script for overclocking my GPU, and a systemd service to start it at boot:

/usr/local/bin/amdoverclock

#!/bin/bash
echo 'manual' > power_dpm_force_performance_level
echo 's 1 1925' > pp_od_clk_voltage
echo 'm 1 900' > pp_od_clk_voltage
echo 'vc 0 800 750' > pp_od_clk_voltage
echo 'vc 1 1363 918' > pp_od_clk_voltage
echo 'vc 2 1925 1085' > pp_od_clk_voltage
echo 'c' > pp_od_clk_voltage

/etc/systemd/system/amdoverclock.service

[Unit]
Description=Tweaks GPU core and memory clocks

[Service]
Type=oneshot
WorkingDirectory=/absolute/path/to/powerstates/files
ExecStart=/usr/local/bin/amdoverclock

[Install]
WantedBy=multi-user.target

When enabled, the service fails but only at startup with a PERMISSION DENIED on each echo script line. If I REBOOT system, everything works flawlessly. Chmod is 755 for script, 644 for service unit. Deleting WorkingDirectory and putting the absolute path in the script changes nothing.

How can I make this thing work?

1 Answer 1

0

As I found here the problem is resolved adding After=multi-user.target to Unit section and changing WantedBy=multi-user.target into WantedBy=graphical.target in the Install section.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .