欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

CentOS如何運(yùn)行與控制后臺進(jìn)程?

  發(fā)布時(shí)間:2016-12-19 14:12:30   作者:佚名   我要評論
一些朋友不知道CentOS如何運(yùn)行與控制后臺進(jìn)程?今天小編為大家?guī)淼氖荂entOS運(yùn)行與控制后臺進(jìn)程的方法;有需要的朋友一起去看看吧

我們經(jīng)常會(huì)碰到這樣的問題,用ssh登錄了遠(yuǎn)程的Linux服務(wù)器,運(yùn)行了一些耗時(shí)較長的任務(wù),結(jié)果卻由于網(wǎng)絡(luò)等的不穩(wěn)定導(dǎo)致任務(wù)中途失敗。

這是由于在用戶注銷(logout)或者網(wǎng)絡(luò)斷開時(shí),終端會(huì)收到 HUP(hangup)信號從而關(guān)閉其所有子進(jìn)程。

解決辦法有兩種:讓進(jìn)程忽略HUP信號,或讓進(jìn)程運(yùn)行在新的會(huì)話里從而成為不屬于此終端的子進(jìn)程。

下面是對Linux下運(yùn)行與控制后臺進(jìn)程的各種方法的介紹:

1.nohup

顧名思義,nohup的用途就是讓提交的命令忽略所有的hangup信號。

使用方法:nohup COMMAND [ARG]...

2.setsid

在一個(gè)新的會(huì)話中運(yùn)行命令,從而可以避開當(dāng)前終端發(fā)出的HUP信號。

使用方法:setsid COMMAND [ARG]...

3.&

可以結(jié)合()產(chǎn)生一個(gè)新的子shell并在這個(gè)子shell中將任務(wù)放置到后臺運(yùn)行,從而不受當(dāng)前shell終端的HUP信號影響。

使用方法:(COMMAND [ARG]... &)

而我通常的使用方式為:

nohup ./filename.sh > filename.log 2>&1 &

nohup ./filename.sh &> filename.log &

三點(diǎn)理由:

1)nohup保障進(jìn)程不會(huì)被hangup信號異常中斷;

2)將任務(wù)放置到后臺運(yùn)行,不占用當(dāng)前的終端;

3)將錯(cuò)誤輸出也打印到log中,默認(rèn)>只有標(biāo)準(zhǔn)輸出,錯(cuò)誤輸出沒有。

4.控制進(jìn)程

通過以下命令,我們可以對放入到后臺的命令進(jìn)行控制

查看當(dāng)前終端下的后臺進(jìn)程:

直接執(zhí)行:jobs

將查看到的某個(gè)后臺進(jìn)程放回到前臺:

直接輸入:fg {jobid} //這里的{jobid}是通過jobs命令中看到的進(jìn)程前[]中的數(shù)字。

將當(dāng)前正在前臺運(yùn)行的進(jìn)程放到后臺運(yùn)行:

先敲下快捷鍵:ctrl +z //暫停當(dāng)前正在運(yùn)行的進(jìn)程。

再執(zhí)行:bg

終止當(dāng)前正在前臺運(yùn)行的進(jìn)程:

直接敲下快捷鍵:ctrl +c

5.disown

亡羊補(bǔ)牢,為沒有使用nohup與setsid的進(jìn)程加上忽略HUP信號的功能。

使用方法:

將當(dāng)前正在前臺運(yùn)行的進(jìn)程放到后臺運(yùn)行;

然后執(zhí)行disown -h %{jobid} //這里的{jobid}是通過jobs命令中看到的進(jìn)程前[]中的數(shù)字。

6.通過screen來實(shí)現(xiàn)穩(wěn)定的后臺運(yùn)行

screen是建立一個(gè)新的全屏虛擬會(huì)話終端,這個(gè)會(huì)話只有在手動(dòng)輸入exit的時(shí)候才會(huì)退出,在這個(gè)會(huì)話里執(zhí)行的命令不用擔(dān)心HUP信號會(huì)對我們的進(jìn)程 造成影響,因此也不用給每個(gè)命令前都加上“nohup”或“setsid”了,非常適合我們有規(guī)劃的執(zhí)行大量的后臺任務(wù),可以非常方便的讓我們對這些后臺 任務(wù)進(jìn)行管理。

使用方法:

screen //立即創(chuàng)建并進(jìn)入一個(gè)會(huì)話。

screen -dmS {name} //建立一個(gè)處于斷開模式下的會(huì)話,并根據(jù)我們的需要指定其會(huì)話名稱。

screen -list //列出所有會(huì)話。

screen -r {name} //以獨(dú)占方式進(jìn)入指定會(huì)話。

screen -x {name} //以并行方式進(jìn)入指定會(huì)話。

ctrl +ad //輸入快捷鍵ctrl +a和d,可暫時(shí)退出當(dāng)前會(huì)話。

exit //進(jìn)入指定會(huì)話后執(zhí)行exit即可關(guān)閉該會(huì)話。

相關(guān)文章

最新評論