WSL設定開機啟動程式(含Root許可權啟動配置)

2021-10-24 19:23:47 字數 956 閱讀 5399

啟動任務計畫程式(win+r執行 taskschd.msc 或通過控制面板-系統與安全-管理工具-計畫任務)

在右側操作欄裡點【建立基本任務】彈出如下視窗

填寫基本任務名稱,觸發器選擇【計算機啟動時】

下一步選擇【啟動程式】,然後彈出如下頁面

在程式框中填寫cmd

在新增引數框中填寫想要執行的wsl命令,例如開機啟動pm2,再通過pm2維護其他任務,可以這樣寫:/c wsl pm2 update

如果需要執行的命令需要root許可權(例如開機啟動ssh服務或crontab等),有兩種方法:

第一種是我自己用的,程式保持為cmd,啟動引數改為/c "wsl -u root bash -c 'service ssh restart' "這種寫法在啟動wsl時選擇登入使用者為root,這樣就可以執行root命令了。但這並不需要cmd是帶有管理員許可權的,也就是說配置計畫任務的時候不用配置最高管理員許可權。

第二種是網上教程普遍存在的,將某個指令碼或某個程式寫入到sudo visudo啟動的編輯器的檔案中,例如%sudo all=nopasswd: /etc/init.d/cron start這樣雖然也能達到效果,但是會導致在wsl內部這個程式一直可以不需要sudo驗證就可以獲取到root許可權,相對而言還是比較危險的,而且不優雅。

Ubuntu 程式開機啟動設定

假設指令碼manager.sh,用來管理我的程序,想設定開機啟動 將指令碼拷貝到 etc init.d下面 sudo cp manager.sh etc init.d 為指令碼新增可執行許可權 sudo chmod x etc init.d manager.sh 更新系統啟動配置 cd etc in...

WSL服務開機啟動的方法

wsl中的服務不會隨著windows系統啟動而啟動,需要人工去啟動它。但我們可以使用批處理指令碼來達到開機啟動wsl中服務程式的目的。建立乙個批處理檔案。比如命名為init.bat,內容如下 cd d dp0 ubuntu2004.exe run etc init.d ssh start 其他更多需...

設定MFC程式開機自動啟動

設定程式開機啟動 bool autobootset 得到程式自身的全路徑 dword dwret getmodulefilename null,pfilename,max path tcscat pfilename,t auto 新增乙個子key,並設定值,下面應用程式名字 不加字尾.exe 關閉登...