[Seek Help] 大神们呀,就没有更简单一些的自动启动.sh文件吗?
Tofloor
poster avatar
dgmenghuan
deepin
2022-05-30 18:55
Author

各位大神们,我用的是deepin v20.5,为了让我自己做的lunmp自动运行,现在就差uwsgi和nginx了,其它的装完软件自己就能运行,看到N位大神给的方案,没一个能执行的,愁呀,我就想让uwsgi --ini /home/mymachine/myapp/uwsgi.ini和echo "1234567"|sudo -S /home/mymachine/nginx/sbin/./nginx在开机运行一下,试了NNN种了,重启NNNNNN次了,没一次能成功执行的,在.config/autostart里建了.desktop也试了,就是不好使,求大神给我一好使的方案吧,谢谢,最好是能执行的

Reply Favorite View the author
All Replies
zhangn1985
deepin
2022-05-30 19:04
#1

难道不是应该交给systemd吗?

为嘛要用sudo?

Reply View the author
liwl
deepin
2022-05-30 19:19
#2

image.png

Reply View the author
liwl
deepin
2022-05-30 19:19
#3

建议写rc.local

Reply View the author
gbt
deepin
2022-05-30 20:13
#4

写个服务吧

  • 创建服务:~/.config/systemd/user/service_name.service

    [Unit]  
    Description=service description 
    
    [Service]  
    Environment=DISPLAY=:0  
    ExecStart=[your command]  
    Restart=always  
    RestartSec=10  
    
    [Install]  
    WantedBy=multi-user.target
    
  • 开机自动启动:systemctl --user --now enable service_name.service

Reply View the author
gbt
deepin
2022-05-30 20:18
#5
gbt

写个服务吧

  • 创建服务:~/.config/systemd/user/service_name.service

    [Unit]  
    Description=service description 
    
    [Service]  
    Environment=DISPLAY=:0  
    ExecStart=[your command]  
    Restart=always  
    RestartSec=10  
    
    [Install]  
    WantedBy=multi-user.target
    
  • 开机自动启动:systemctl --user --now enable service_name.service

这个是root权限执行的,不需要加sudo

Reply View the author
蔡EEPIN
deepin
2022-05-30 20:36
#6

systemd 真香

Reply View the author
灵兮之
deepin
2022-05-30 22:13
#7
liwl

image.png

我是想实现在开机启动到桌面之后能自动刷新一下桌面

先创建了一个.sh的执行刷新动作的文件,然后在autostart文件夹下放了个.desktop来执行.sh的文件

但是每次重启之后都很难自动执行,偶尔只有那么一次两次会执行,不知道问题在哪

我以为是其他服务还没全部启动完,鼠标焦点不在桌面,所以就用delay设置了延迟执行,但是效果还是一样

image.pngimage.png

Reply View the author
liwl
deepin
2022-05-30 23:02
#8
灵兮之

我是想实现在开机启动到桌面之后能自动刷新一下桌面

先创建了一个.sh的执行刷新动作的文件,然后在autostart文件夹下放了个.desktop来执行.sh的文件

但是每次重启之后都很难自动执行,偶尔只有那么一次两次会执行,不知道问题在哪

我以为是其他服务还没全部启动完,鼠标焦点不在桌面,所以就用delay设置了延迟执行,但是效果还是一样

image.pngimage.png

这俺也不清楚哪里有问题,可能autostart是xdg的启动,不是系统的启动哈

看楼主的脚本总是无法启动,我也试了试使用autostart来启动shell脚本,貌似是不成功

因为目前不太需求这样的操作,所以不再继续深入,你们有兴趣可以折腾看看

Reply View the author
dgmenghuan
deepin
2022-05-30 23:49
#9

启动不了,说啥也没有用的,怎么设置都没有用😭

Reply View the author
dgmenghuan
deepin
2022-05-30 23:54
#10

[Unit]
Description=service description

[Service]
Environment=DISPLAY=:0
ExecStart=sh /home/mochen/uwsgi.sh
Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target

在/etc/systemd/system/存成uwsgi.service后,利用systemctl enable uwsgi.service查看启动成功,再用systemctl list-unit-files uwsgi.service查看,也成功,但systemctrl reboot后,再启动,利用ps aux|grep uwsgi查看后一样没有启动,郁闷呀,哪位大神给我试一下,如果能成功执行,并重启后也能自动执行,请把方法详细告之,亿万分的感谢呀🤧

Reply View the author
enforcee
deepin
2022-05-31 03:55
#11
dgmenghuan

[Unit]
Description=service description

[Service]
Environment=DISPLAY=:0
ExecStart=sh /home/mochen/uwsgi.sh
Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target

在/etc/systemd/system/存成uwsgi.service后,利用systemctl enable uwsgi.service查看启动成功,再用systemctl list-unit-files uwsgi.service查看,也成功,但systemctrl reboot后,再启动,利用ps aux|grep uwsgi查看后一样没有启动,郁闷呀,哪位大神给我试一下,如果能成功执行,并重启后也能自动执行,请把方法详细告之,亿万分的感谢呀🤧

楼主这个脚本是按守护进程运行的吗?如果不是的话试试加Type=oneshot

还有,如果你用bash当解释器,不要用sh,debian的sh是dash

Reply View the author