我已经检查了几个教程,但是在启动操作系统时我无法运行我的脚本。我已经把文件放在 /etc/init.d , /boot, /bin, /urs/bin 中。我想我已经把它放在了每一个可能的地方。这是我的代码。
#!/bin/bash
echo "Starting command to put resolution on 1920x1080"
echo "Password_of_sudo" | sudo -S xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync &&
sudo xrandr --addmode Virtual1 1920x1080_60.00 &&
sudo xrandr --output Virtual1 --mode 1920x1080_60.00
echo "Finished.
Run Code Online (Sandbox Code Playgroud)
注意:在 VM 中运行。它在手动启动时工作,问题是我不想手动运行我希望它在系统加载时启动。
Gry*_*ryu 11
使用以下命令创建一个/etc/systemd/system/xrandr.service
文件(您可以指定您喜欢的服务名称):
sudo -H gedit /etc/systemd/system/xrandr.service
Run Code Online (Sandbox Code Playgroud)把下一个放在里面:
[Unit]
After=multi-user.target
[Service]
User=your_user
ExecStart=/home/your_user/scripts/xrandr.sh
[Install]
WantedBy=default.target
Run Code Online (Sandbox Code Playgroud)将脚本放入/home/your_user/scripts
文件夹或指定脚本的路径。
sudo chmod 664 /etc/systemd/system/xrandr.service
sudo systemctl enable xrandr.service
sudo systemctl start xrandr.service
此外,您可以通过以下方式修改您的文件:
#!/bin/bash
echo "Starting command to put resolution on 1920x1080" | logger
export DISPLAY=:0 && xhost + local
echo "Password_of_sudo" | sudo -S xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync &&
sudo xrandr --addmode Virtual1 1920x1080_60.00 &&
sudo xrandr --output Virtual1 --mode 1920x1080_60.00
echo "Finished." | logger
Run Code Online (Sandbox Code Playgroud)
但sudo
如果命令不需要它,最好不要使用或管理员权限:
#!/bin/bash
echo "Starting command to put resolution on 1920x1080" | logger
export DISPLAY=:0
xrandr --newmode "1920_new_name" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync &&
xrandr --addmode Virtual1 1920x1080_60.00 &&
xrandr --output Virtual1 --mode 1920x1080_60.00
echo "Finished." | logger
Run Code Online (Sandbox Code Playgroud)
通过 来检查您的显示echo $DISPLAY
,如果没有:0
,则在您的脚本中更改它。
要查看您的脚本有什么问题,您可以使用下一个命令在终端中进行监控:
$ journalct -f
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
954 次 |
最近记录: |