Ubuntu20.04--开机自动运行脚本(命令)--方法/实例
原文網(wǎng)址:Ubuntu20.04--開機自動運行腳本(命令)--方法/實例_IT利刃出鞘的博客-CSDN博客
簡介
? ? ? ? 本文介紹Ubuntu20.04如何開機自動運行命令。(也適用于Ubuntu22.04版本)
新版本方案(20.04版本及之后)
1.創(chuàng)建rc-local.service文件
sudo cp /lib/systemd/system/rc-local.service /etc/systemd/system然后修改/etc/systemd/system/rc-local.service,在文件最下方添加如下兩行:
[Install] WantedBy=multi-user.target Alias=rc-local.service2.創(chuàng)建rc.local文件
創(chuàng)建/etc/rc.local,里邊寫自己想要運行的命令。例:
#!/bin/shecho "This is test" > /tmp/my.logexit 0給/etc/rc.local加上可執(zhí)行權(quán)限?
sudo chmod +x /etc/rc.local3.測試
重啟虛擬機
啟動后可以發(fā)現(xiàn):/tmp下已經(jīng)有了my.log文件,里邊內(nèi)容為:"This is test"。
systemctl命令
啟動服務(wù)
sudo systemctl start rc-local.service查看服務(wù)狀態(tài)
sudo systemctl status rc-local.service老版本Ubuntu的方案
下邊的方案在Ubuntu2018及之后的版本無效。
方案1:update-rc.d(2018及之前)
1.創(chuàng)建腳本
新建名為run_all_server.sh,內(nèi)容如下:
#!/bin/bash# 運行redis服務(wù) cd /work/server/redis/ nohup redis-server redis.conf > redis.log 2>&1 &2.添加執(zhí)行權(quán)限
chmod +x run_all_server.sh3.將腳本放入/etc/init.d路徑下
sudo cp run_all_server.sh /etc/init.d/4.將腳本添加到啟動腳本
cd /etc/init.d/ update-rc.d run_all_server.sh defaults 9090的含義:表明優(yōu)先級,越大表示執(zhí)行的越晚。
下邊的命令會失敗:
sudo update-rc.d /etc/init.d/run_all_server.sh defaults 90錯誤信息:update-rc.d: error: unable to read /etc/init.d//etc/init.d/run_all_server.sh
5.移除腳本
update-rc.d -f run_all_server.sh remove方案2:修改rc.local(2016及之前)
修改/etc/r.local
#!/bin/sh -e ## 在這里寫自己的命令exit 0一定要將命令添加在exit 0之前。里面可以直接寫命令或者執(zhí)行Shell腳本文件sh。
總結(jié)
以上是生活随笔為你收集整理的Ubuntu20.04--开机自动运行脚本(命令)--方法/实例的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: UL-1973-2022 储能电池安全标
- 下一篇: 入门学习次世代游戏3D建模,你应该弄懂这