linux系統管理之工作管理

工作管理簡介

  • 工作管理指的是在單個登錄終端中(也就是登錄的shell界面中)同時管理多個工作的行爲

注意事項

  • 當前的登錄終端只能管理當前終端的工作,而不能管理其他登錄終端的工作

  • 放入後臺的命令必須可以持續運行一段時間,這樣我們才能捕捉和操作這個工作

  • 放入後臺執行的命令不能和前臺用戶有交互或者需要前臺輸入,否則放入後臺只能暫停而不能執行

把進程放入後臺

  • tar -zcf etc.tat.gz /etc & 命令後面加上 & 把命令放入到後臺,並在後臺執行

  • top 執行命令按下ctrl +z快捷鍵,放在後臺暫停;(Ctrl + C終止命令執行)

查看後臺的工作

  • jobs -[l] : 選項 -l 顯示工作的 PID

  • 如下圖top命令是用來查看系統的健康狀態的,放入後臺會停止,和用戶有交互的需要輸入的或者需要用戶查看的,都無法在後臺運行

img

注意:+號代表最近一個放入後臺的工作,也是工作恢復時,默認恢復的工作,-號代表倒數第二個放入後臺的工作;

  • 壓縮解壓縮或者find查找是可以放入到後臺的(雖然需要用戶查看結果,但是一旦執行就不需要用戶交互了)
    • find / -name abc & 從根目錄開始查找 abc字符串, 用jobs 命令查看會經歷 Running ,Done ,再次查看就不在後臺了

將後臺暫停的工作恢復到前臺執行

  • fg %工作號 ,如果直接執行fg那麼恢復由+號標識的命令恢復到前臺執行
  • 參數 -%工作號: %可以省略,但是注意工作號和PID的區別;

把後臺暫停的工作恢復到後臺執行

  • bg %工作號, 如果直接執行bg那麼恢復由+號標識的命令恢復到後臺執行

  • 注意:後臺恢復執行的命令,是不能和前臺有交互的,否則不能恢復到後臺執行,只能使用fg命令恢復到前臺執行

    • 例如之前執行的 top命令和vi編輯命令就不可以放在後臺執行,只能恢復到前臺執行,然後正確操作然後退出即可

後臺命令脫離終端

  • 簡介:把命令放入後臺,只能在當前終端執行,一旦退出或者關閉終端,後臺程序就會停止

    • 正常退出終端 logout或者被強制踢出,都會關閉當前終端的後臺程序 ,相當於 kill -l 查看的信號1 SIGHUB
    • 關閉終端系統發出SIGHUB 信號,終止當前終端後臺任務,重啓重新加載配置
  • /usr/local/mysql/bin/mysqld --user=mysql & 啓動mysql並且在後臺執行,但是該條命令比較特殊不會隨着終端的關閉而停止運行,mysql將其作爲守護進程daemon啓動 ,相當於服務

    • 但在實際的系統管理中添加守護進程比較複雜,並且增加了系統管理的難度,不常使用

後臺命令脫離登錄終端執行的方法

  • 第一種方法是把需要後臺執行的命令加入 /etc/rc.local文件,配置自啓動文件,開機自動執行,不需要手動重新啓動
    • 裏面自帶一句 touch /var/lock/subsys/local 用於記錄系統啓動時間
  • 第二種方法就是使用系統定時任務,讓系統在指定的時間執行某個後臺命令
    • 這種方法不夠穩定,有時候不會生效
  • 第三種方法就是使用 nohup 命令;標準方法讓後臺任務脫離當前終端
    img
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章