linux啟動(dòng)app命令:做 Linux 嵌入式開發(fā),經(jīng)常會(huì)遇到要設(shè)置自己的應(yīng)用程序在系統(tǒng)開機(jī)的時(shí)候自動(dòng)啟動(dòng),并且一般情況我們不想安裝一些額外的軟件去實(shí)現(xiàn)此種需求。那么直接根據(jù)當(dāng)前系統(tǒng)自帶的默認(rèn)的一些工具實(shí)現(xiàn)用戶軟件的開機(jī)自啟動(dòng)。
公司主營業(yè)務(wù):成都網(wǎng)站制作、成都做網(wǎng)站、外貿(mào)營銷網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。成都創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來驚喜。成都創(chuàng)新互聯(lián)推出八公山免費(fèi)做網(wǎng)站回饋大家。
??本次測(cè)驗(yàn)的系統(tǒng)環(huán)境為 Ubuntu 16.04 LTS,測(cè)試內(nèi)容均得到正確的驗(yàn)證,如果其他環(huán)境出現(xiàn)不一致的現(xiàn)象,請(qǐng)查閱相關(guān)的差異。
??比如先要實(shí)現(xiàn)下面的應(yīng)用程序的開機(jī)自啟動(dòng)(實(shí)現(xiàn)的代碼最下面給出,有需要的可以查看):
1. 應(yīng)用程序的名稱:app.bin
2. 應(yīng)用程序的保存路徑:/home/ubuntu/app/ 下
3. 應(yīng)用程序的工作路徑:/home/ubuntu/app/ 下
用戶想要在linux開機(jī)的時(shí)候自啟動(dòng)相關(guān)的程序。那我們要怎么設(shè)置呢?下面由我為大家整理了linux下開機(jī)自啟動(dòng)命令的相關(guān)知識(shí),希望對(duì)大家有所幫助!
linux下開機(jī)自啟動(dòng)命令
1.開機(jī)啟動(dòng)時(shí)自動(dòng)運(yùn)行程序
Linux加載后, 它將初始化硬件和設(shè)備驅(qū)動(dòng), 然后運(yùn)行第一個(gè)進(jìn)程init。init根據(jù)配置文件繼續(xù)引導(dǎo)過程,啟動(dòng)其它進(jìn)程。通常情況下,修改放置在 /etc/rc或 /etc/rc.d 或 /etc/rc?.d 目錄下的腳本文件,可以使init自動(dòng)啟動(dòng)其它程序。
例如:編輯 /etc/rc.d/rc.local 文件,在文件最末加上一行"xinit"或"startx",可以在開機(jī)啟動(dòng)后直接進(jìn)入X-Window。
擴(kuò)展:其他情況下linux自啟動(dòng)程序命令
2.登錄時(shí)自動(dòng)運(yùn)行程序
用戶登錄時(shí),bash首先自動(dòng)執(zhí)行系統(tǒng)管理員建立的全局登錄script :/etc/profile。然后bash在用戶起始目錄下按順序查找三個(gè)特殊文件中的一個(gè):/.bash_profile、/.bash_login、 /.profile,但只執(zhí)行最先找到的一個(gè)。
因此,只需根據(jù)實(shí)際需要在上述文件中加入命令就可以實(shí)現(xiàn)用戶登錄時(shí)自動(dòng)運(yùn)行某些程序(類似于DOS下的Autoexec.bat)。
3.退出登錄時(shí)自動(dòng)運(yùn)行程序
退出登錄時(shí),bash自動(dòng)執(zhí)行個(gè)人的退出登錄腳本/.bash_logout。例如,在/.bash_logout中加入命令"tar -cvzf c.source.tgz *.c",則在每次退出登錄時(shí)自動(dòng)執(zhí)行 "tar" 命令備份 *.c 文件。
4.定期自動(dòng)運(yùn)行程序
linux有一個(gè)稱為crond的守護(hù)程序,主要功能是周期性地檢查 /var/spool/cron目錄下的一組命令文件的內(nèi)容,并在設(shè)定的時(shí)間執(zhí)行這些文件中的命令。用戶可以通過crontab 命令來建立、修改、刪除這些命令文件。
例如,建立文件crondFile,內(nèi)容為"00 9 23 Jan * HappyBirthday",運(yùn)行"crontab cronFile"命令后,每當(dāng)元月23日上午9:00系統(tǒng)自動(dòng)執(zhí)行"HappyBirthday"的程序("*"表示不管當(dāng)天是星期幾)。 (/etc/crontab中配置命令即可)也可以
5.定時(shí)自動(dòng)運(yùn)行程序一次
定時(shí)執(zhí)行命令at 與crond 類似(但它只執(zhí)行一次):命令在給定的時(shí)間執(zhí)行,但不自動(dòng)重復(fù)。at命令的一般格式為:at [ -f file ] time ,在指定的時(shí)間執(zhí)行file文件中所給出的所有命令。也可直接從鍵盤輸入命令:
6.創(chuàng)建開機(jī)自啟動(dòng)腳本
1) 將你的啟動(dòng)腳本復(fù)制到 /etc/init.d目錄下
以下假設(shè)你的腳本文件名為 test。
2) 設(shè)置腳本文件的權(quán)限
$ sudo chmod 755 /etc/init.d/test
3) 執(zhí)行如下命令將腳本放到啟動(dòng)腳本中去:
$ cd /etc/init.d
$ sudo update-rc.d test defaults 95
注:其中數(shù)字95是腳本啟動(dòng)的順序號(hào),按照自己的需要相應(yīng)修改即可。在你有多個(gè)啟動(dòng)腳本,而它們之間又有先后啟動(dòng)的依賴關(guān)系時(shí)你就知道這個(gè)數(shù)字的具體作用了。該命令的輸出信息參考如下:
update-rc.d: warning: /etc/init.d/test missing LSB informationupdate-rc.d: see
卸載啟動(dòng)腳本的方法:
$ cd /etc/init.d
$ sudo update-rc.d -f test remove
命令輸出的信息參考如下:
Removing any system startup links for /etc/init.d/test … /etc/rc0.d/K95test /etc/rc1.d/K95test /etc/rc2.d/S95test /etc/rc3.d/S95test /etc/rc4.d/S95test /etc/rc5.d/S95test /etc/rc6.d/K95test
Linux技術(shù)的發(fā)展引起了很多企業(yè)和個(gè)人的關(guān)注。市場(chǎng)對(duì)Linux運(yùn)維的需求逐漸增加,學(xué)習(xí)Linux技術(shù)的人越來越多。在Linux運(yùn)維中,進(jìn)程是必須學(xué)習(xí)掌握的技能。那么Linux中如何啟動(dòng)進(jìn)程?常用的進(jìn)程調(diào)度命令有哪些?
執(zhí)行中的程序稱作進(jìn)程。當(dāng)程序的可執(zhí)行文件存儲(chǔ)在存儲(chǔ)器中并運(yùn)行時(shí),每個(gè)進(jìn)程將被動(dòng)態(tài)分配系統(tǒng)資源、內(nèi)存、安全屬性和相關(guān)狀態(tài)。多個(gè)進(jìn)程可以與同一個(gè)程序相關(guān)聯(lián),并在同一時(shí)間執(zhí)行,而不會(huì)相互干擾。操作系統(tǒng)將有效地管理和跟蹤所有正在運(yùn)行的進(jìn)程。
Linux中如何啟動(dòng)進(jìn)程?啟動(dòng)進(jìn)程的方法是什么?
手工啟動(dòng)。用戶在輸入端發(fā)出命令,直接啟動(dòng)進(jìn)程。分為前臺(tái)啟動(dòng)和后臺(tái)啟動(dòng)。前臺(tái)啟動(dòng):直接在SHELL中輸入命令進(jìn)行啟動(dòng)。后臺(tái)啟動(dòng):?jiǎn)?dòng)一個(gè)目前并不緊急的進(jìn)程。
調(diào)度啟動(dòng)。系統(tǒng)管理員根據(jù)系統(tǒng)資源和進(jìn)程占用資源的情況,事先進(jìn)行調(diào)度安排,指定任務(wù)運(yùn)行的時(shí)間和場(chǎng)合,到時(shí)候系統(tǒng)會(huì)自動(dòng)完成該任務(wù)。
常用的進(jìn)程調(diào)度命令有哪些?
常用的進(jìn)程調(diào)度命令有:at、batch、crontab。
以上便是關(guān)于“如何啟動(dòng)或終止進(jìn)程?常用的進(jìn)程調(diào)度命令有哪些?”的相關(guān)介紹。想要成為一名優(yōu)秀的Linux運(yùn)維工程師,需要掌握更多的Linux知識(shí)。
linux啟動(dòng)進(jìn)程的命令可以用sh,python ,./文件名。
下面是有關(guān)進(jìn)程的操作:
1.查進(jìn)程
ps命令查找與進(jìn)程相關(guān)的PID號(hào):
ps a 顯示現(xiàn)行終端機(jī)下的所有程序,包括其他用戶的程序。
ps -A 顯示所有程序。
ps c 列出程序時(shí),顯示每個(gè)程序真正的指令名稱,而不包含路徑,參數(shù)或常駐服務(wù)的標(biāo)示。
ps -e 此參數(shù)的效果和指定"A"參數(shù)相同。
ps e 列出程序時(shí),顯示每個(gè)程序所使用的環(huán)境變量。
ps f 用ASCII字符顯示樹狀結(jié)構(gòu),表達(dá)程序間的相互關(guān)系。
ps -H 顯示樹狀結(jié)構(gòu),表示程序間的相互關(guān)系。
ps -N 顯示所有的程序,除了執(zhí)行ps指令終端機(jī)下的程序之外。
ps s 采用程序信號(hào)的格式顯示程序狀況。
ps S 列出程序時(shí),包括已中斷的子程序資料。
ps -t終端機(jī)編號(hào) 指定終端機(jī)編號(hào),并列出屬于該終端機(jī)的程序的狀況。
ps u 以用戶為主的格式來顯示程序狀況。
ps x 顯示所有程序,不以終端機(jī)來區(qū)分。
最常用的方法是ps aux,然后再通過管道使用grep命令過濾查找特定的進(jìn)程,然后再對(duì)特定的進(jìn)程進(jìn)行操作。
ps aux | grep program_filter_word,ps -ef |grep tomcat
ps -ef|grep java|grep -v grep 顯示出所有的java進(jìn)程,去處掉當(dāng)前的grep進(jìn)程。
2.殺進(jìn)程
使用kill命令結(jié)束進(jìn)程:kill xxx
常用:kill -9 324
Linux下還提供了一個(gè)killall命令,可以直接使用進(jìn)程的名字而不是進(jìn)程標(biāo)識(shí)號(hào),例如:# killall -9 NAME
1. 更改檔案擁有者
命令 : chown [-cfhvR] [--help] [--version] user[:group] file...
功能 : 更改文件或者文件夾的擁有者
參數(shù)格式 :
user : 新的檔案擁有者的使用者 IDgroup : 新的檔案擁有者的使用者群體(group)
-c : 若該檔案擁有者確實(shí)已經(jīng)更改,才顯示其更改動(dòng)作
-f : 若該檔案擁有者無法被更改也不要顯示錯(cuò)誤訊息
-h : 只對(duì)于連結(jié)(link)進(jìn)行變更,而非該 link 真正指向的檔案
-v : 顯示擁有者變更的詳細(xì)資料
-R : 對(duì)目前目錄下的所有檔案與子目錄進(jìn)行相同的擁有者變更(即以遞回的方式逐個(gè)變更)
例如:chown -R oracle:oinstall /oracle/u01/app/oracle
更改目錄擁有者為oracle
2. 修改權(quán)限
命令:chmod (change mode)
功能:改變文件的讀寫和執(zhí)行權(quán)限。有符號(hào)法和八進(jìn)制數(shù)字法。
選項(xiàng):(1)符號(hào)法:
命令格式:chmod {u|g|o|a}{+|-|=}{r|w|x} filename
u (user) 表示用戶本人。
g (group) 表示同組用戶。
o (oher) 表示其他用戶。
a (all) 表示所有用戶。
+ 用于給予指定用戶的許可權(quán)限。
- 用于取消指定用戶的許可權(quán)限。
= 將所許可的權(quán)限賦給文件。
r (read) 讀許可,表示可以拷貝該文件或目錄的內(nèi)容。
w (write) 寫許可,表示可以修改該文件或目錄的內(nèi)容。
x (execute)執(zhí)行許可,表示可以執(zhí)行該文件或進(jìn)入目錄。
(2)八進(jìn)制數(shù)字法:
命令格式:chmod abc file
其中a,b,c各為一個(gè)八進(jìn)制數(shù)字,分別表示User、Group、及Other的權(quán)限。
4 (100) 表示可讀。
2 (010) 表示可寫。
1 (001) 表示可執(zhí)行。
若要rwx屬性則4+2+1=7;
若要rw-屬性則4+2=6;
若要r-x屬性則4+1=5。
例如:# chmod a+rx filename
讓所有用戶可以讀和執(zhí)行文件filename。
# chmod go-rx filename
取消同組和其他用戶的讀和執(zhí)行文件filename的權(quán)限。
# chmod 741 filename
讓本人可讀寫執(zhí)行、同組用戶可讀、其他用戶可執(zhí)行文件filename。
# chmod -R 755 /home/oracle
遞歸更改目錄權(quán)限,本人可讀寫執(zhí)行、同組用戶可讀可執(zhí)行、其他用戶可讀可執(zhí)行
3. 修改文件日期
命令:touch
格式:touch filenae
功能:改變文件的日期,不對(duì)文件的內(nèi)容做改動(dòng),若文件不存在則建立新文件。
例如:% touch file
4. 鏈接文件
命令:ln (link)
格式:ln [option] filename linkname
ln [option] directory pathname
功能:為文件或目錄建立一個(gè)鏈。其中,filename和directory是源文件名和
源目錄名;linkname和pathname分別表示與源文件或源目錄名相鏈接的
文件或目錄。
選項(xiàng):-s 為文件或目錄建立符號(hào)鏈接。不加-s表示為文件或目錄建立硬鏈接
注釋:鏈接的目地在于,對(duì)一個(gè)文件或目錄賦予兩個(gè)以上的名字,使其可以出
現(xiàn)在不同的目錄中,既可以使文件或目錄共享,又可以節(jié)省磁盤空間。
例如:% ln -s filename linkname
5. 顯示日期
命令:date
例如:% date
6. 顯示日歷
命令:cal (calendar)
格式:cal [month] year
功能:顯示某年內(nèi)指定的日歷
例如:% cal 1998
7. 顯示文件頭部
命令:head
格式:head [option] filename
功能:顯示文件的頭部
選項(xiàng):缺省 顯示文件的頭10行。
-i 顯示文件的開始 i行。
例如:% head filename
8. 顯示文件尾部
命令:tail
格式:tail [option] filename
功能:顯示文件的尾部
選項(xiàng):缺省 顯示文件的末10行。
-i 顯示文件最后 i行。
+i 從文件的第i行開始顯示。
例如:% tail filename
9. 顯示用戶標(biāo)識(shí)
命令:id
格式:id [option] [user]
功能:顯示用戶標(biāo)識(shí)及用戶所屬的所有組。
選項(xiàng):-a 顯示用戶名、用戶標(biāo)識(shí)及用戶所屬的所有組
注釋:
例如:% id username
10. 查看當(dāng)前登錄的用戶
命令:users
11. 顯示都誰登錄到機(jī)器上
命令:who
格式:who
功能:顯示當(dāng)前正在系統(tǒng)中的所有用戶名字,使用終端設(shè)備號(hào),注冊(cè)時(shí)間。
例如:% who
12. 顯示當(dāng)前終端上的用戶名
命令:whoami
格式:whoami
功能:顯示出當(dāng)前終端上使用的用戶。
例如:% whoami
13. 尋找文件
命令:find
格式:find pathname [option] expression
功能:在所給的路經(jīng)名下尋找符合表達(dá)式相匹配的文件。
選項(xiàng):-name 表示文件名
-user 用戶名,選取該用戶所屬的文件
-size 按大小查找,以block為單位,一個(gè)block是512B
-mtime n 按最后一次修改時(shí)間查找,選取n天內(nèi)被修改的文件
-perm 按權(quán)限查找
-type 按文件類型查找
-atime 按最后一次訪問時(shí)間查找
例如:% find ./ -name '*abc*' -print
14. 搜索文件中匹配符
命令:grep
格式:grep [option] pattern filenames
功能:逐行搜索所指定的文件或標(biāo)準(zhǔn)輸入,并顯示匹配模式的每一行。
選項(xiàng):-i 匹配時(shí)忽略大小寫
-v 找出模式失配的行
例如:% grep -i 'java*' ./test/run.sh
15. 統(tǒng)計(jì)文件字?jǐn)?shù)
命令:wc [option] filename
功能:統(tǒng)計(jì)文件中的文件行數(shù)、字?jǐn)?shù)和字符數(shù)。
選項(xiàng):-l 統(tǒng)計(jì)文件的行數(shù)
-w 統(tǒng)計(jì)文件的單詞數(shù)
-c 統(tǒng)計(jì)文件的字符數(shù)
注釋:若缺省文件名則指標(biāo)準(zhǔn)輸入
例如:% wc -c ./test/run.sh