一 開啟自啟動(dòng) gitlab思考
1在ubantu(linux)系統(tǒng)上 裝了gitlab后 希望添加開機(jī)自動(dòng)啟動(dòng)gitlab服務(wù)。
2 手動(dòng)啟動(dòng)的方式:cd 'prt/gitlab-7.14.3-0' ? ? ? ? ? ? sudo ?.manager-linux.run啟動(dòng)圖形管理 然后點(diǎn)擊全部啟動(dòng)。或者 stlscript.sh start執(zhí)行。
3 linux系統(tǒng) 開機(jī)啟動(dòng)的方式有兩種,一是 etc/rc.local 中的exti 0 前 添加執(zhí)行。 另一種不嘗試不介紹质和。
在打開etc/rc.loacl 后,文件內(nèi)容是空的稚字,并沒有發(fā)現(xiàn)exit 0 饲宿。自己添加。然后學(xué)習(xí) linux腳步的寫法
4利用 一個(gè)自帶的軟件--啟動(dòng)應(yīng)用程序(后來才發(fā)現(xiàn)有這么個(gè)軟件)
二 linux腳本學(xué)習(xí)
1開頭 ?必須是 ? #!/bin/sh ? ? ? ?#胆描!表示以什么程序來執(zhí)行下面的命令
2編譯 chmod +x filename 這樣才能用./filename 來運(yùn)行 ?這句沒理解.
編譯兩個(gè)字 應(yīng)該去掉褒傅,chmod 是修改文件權(quán)限的命令。
r 表示有可讀取的權(quán)限袄友,
w?表示有可寫入的權(quán)限殿托,
x?表示有可執(zhí)行的權(quán)限,
X?表示只有當(dāng)該文件是個(gè)子目錄或者該文件已經(jīng)被設(shè)定過為可執(zhí)行剧蚣。
3 需要輸入密碼支竹,提供自動(dòng)交互旋廷。
方法一(重定向)簡單直觀,也經(jīng)常有實(shí)際應(yīng)用礼搁,但是在自動(dòng)交互領(lǐng)域功能有限饶碘。
方法二(管道)也很簡單直觀,有時(shí)甚至不用sleep配合就能展現(xiàn)強(qiáng)大的自動(dòng)交互實(shí)力馒吴,但是在某些時(shí)候也束手無策扎运。
方法三(expect)在功能上是最為強(qiáng)大的,expect本來就是為實(shí)現(xiàn)自動(dòng)交互功能而生饮戳,但是缺點(diǎn)是需要安裝expect包豪治,在嵌入式等環(huán)境下難以安裝。
方法二:
于是我便寫了一個(gè)腳本扯罐,意圖一鍵即可打開這個(gè)控制臺(tái)程序负拟。
最初是這樣的:
復(fù)制代碼代碼如下:
#!/bin/bash
#執(zhí)行xampp控制臺(tái)
cd /opt/lampp/
sudo ./manager-linux-x64.run
但是執(zhí)行之后還是會(huì)讓你輸入密碼,十分的不方便歹河。
于是想到了管道掩浙,經(jīng)過修改后,終于可以不用輸入密碼秸歧,一鍵sudo并打開程序了厨姚。
格式:echo '你的密碼'|sudo -S 執(zhí)行命令
復(fù)制代碼代碼如下:
#!/bin/bash
#執(zhí)行xampp控制臺(tái)
cd /opt/lampp/
echo 'yourpassword'|sudo -S ./manager-linux-x64.run
三 總結(jié)
最終寫了腳本
#! /bin/sh
cd ?'/opt/gitlab-7.14.3-0'
echo '我的密碼'|sudo -S ./ctlscript.sh start
echo '我的密碼'|sudo -S ./manager-linux.run
echo 'pwd auto input and enter ----run gitlab auto'
并利用 ?啟動(dòng)應(yīng)用程序 這個(gè)ubantu自帶的軟件 ?加入了開機(jī)自啟動(dòng)。其他方式 都或多或少有問題键菱。