linux 利用nohup來檢測目前備份的情況
執行程式例如備份資料時要跑得比較久,nohup就是你的好朋友!又或者你利用wget抓取一些需要好幾小時才能抓完的檔案時,你也可以利用nohup來幫祝你在離線後繼續抓取。
nohup是什麼?
nohup是由兩個字組成的命令:no-hup,hup指的是SIGHUP(hangup)這個信號,nohup就是忽略SIGHUP這個信號的意思。當我們從一個連線登出的時候,每個process都會收到一個SIGHUP信號,透過nohup所下達的命令就可以不受影響,繼續執行。
nohup如何使用?
nohup最傳統的用法就是在你要執行的命令之前加上nohup,然後在後面加上一個背景執行的 &,像這樣:
# nohup /root/backup.sh &
所有執行產生的輸出,將自動導出到nohup.out。
你可以利用cat察看nohup執行結果
# cat nohup.out
一旦透過nohup執行命令,所有的輸出都會存到檔案,而不是直接顯示在螢幕上。如果你想要看執行結果的話,你可以用 tail 命令加上 -f 參數,讓shell自動為你在檔案有所更新時一併印出,也就是說看起來就好像你在看螢幕上的執行結果一樣:
# tail –f nohup.out
會跑出類似下面這樣的結果
tms_apply/sysdata/page/index/login.modules.json
tms_apply/sysdata/page/service/
tms_apply/sysdata/page/service/auth.modules.json
tms_apply/sysdata/page/service/mailServer.modules.json
tms_apply/sysdata/page/site/
tms_apply/sysdata/page/site/list.modules.json
tms_apply/sysdata/page/site/new.modules.json
sent 618856191 bytes received 211004 bytes 7690275.71 bytes/sec
total size is 722493455 speedup is 1.17
有時我們需要檢查目前的備份資料流量我們可以利用top、iftop指令進行查詢
# top
top - 09:41:03 up 54 min, 1 user, load average: 0.00, 0.00, 0.02
Tasks: 87 total, 1 running, 86 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.7%us, 0.5%sy, 0.0%ni, 94.7%id, 4.0%wa, 0.1%hi, 0.0%si, 0.0%st
Mem: 1020288k total, 914204k used, 106084k free, 24708k buffers
Swap: 835580k total, 0k used, 835580k free, 442160k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2452 root 20 0 15052 1152 868 R 2.0 0.1 0:00.01 top
1 root 20 0 19232 1396 1108 S 0.0 0.1 0:00.47 init
2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd
3 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
4 root 20 0 0 0 0 S 0.0 0.0 0:00.02 ksoftirqd/0
5 root RT 0 0 0 0 S 0.0 0.0 0:00.00 stopper/0
6 root RT 0 0 0 0 S 0.0 0.0 0:00.01 watchdog/0
7 root 20 0 0 0 0 S 0.0 0.0 0:01.31 events/0
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cgroup
9 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khelper
10 root 20 0 0 0 0 S 0.0 0.0 0:00.00 netns
11 root 20 0 0 0 0 S 0.0 0.0 0:00.00 async/mgr
12 root 20 0 0 0 0 S 0.0 0.0 0:00.00 pm
13 root 20 0 0 0 0 S 0.0 0.0 0:00.02 sync_supers
14 root 20 0 0 0 0 S 0.0 0.0 0:00.02 bdi-default
15 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kintegrityd/0
16 root 20 0 0 0 0 S 0.0 0.0 0:00.49 kblockd/0
17 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kacpid
18 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kacpi_notify
19 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kacpi_hotplug
20 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ata_aux
21 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ata_sff/0
22 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ksuspend_usbd
23 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khubd
24 root 20 0 0 0 0 S 0.0 0.0 0:00.02 kseriod
# iftop
12.5Kb 25.0Kb 37.5Kb 50.0Kb 62.5Kb
└───────────────────────┴───────────────────────┴─────────
mgr.anthony.tw => 192.168.1.213 3.55Kb 2.93Kb 3.35Kb
<= 160b 160b 200b
192.168.1.255 => 192.168.1.12 0b 0b 0b
<= 312b 624b 585b
mgr.anthony.tw => 192.168.1.12 284b 170b 500b
<= 544b 326b 958b
192.168.1.255 => 192.168.1.24 0b 0b 0b
<= 1.22Kb 312b 273b
192.168.1.255 => 192.168.1.73 0b 0b 0b
<= 312b 312b 234b
192.168.1.255 => 192.168.1.68 0b 0b 0b
<= 0b 187b 195b
192.168.1.255 => 192.168.1.27 0b 0b 0b
<= 572b 114b 72b
mgr.anthony.tw => 192.168.1.41 0b 67b 42b
<= 0b 45b 28b
255.255.255.255 => 192.168.1.254 0b 0b 0b
<= 532b 106b 230b
192.168.1.255 => 192.168.1.34 0b 0b 0b
<= 0b 105b 66b
192.168.1.255 => 192.168.1.43 0b 0b 0b
<= 0b 0b 702b
255.255.255.255 => 192.168.1.33 0b 0b 0b
<= 0b 0b 164b
192.168.1.255 => 192.168.1.23 0b 0b 0b
<= 0b 0b 117b
──────────────────────────────────────────────────────────
TX: cum: 7.77KB peak: 5.68Kb rates: 3.82Kb 3.17Kb 3.88Kb
RX: 7.70KB 13.2Kb 3.59Kb 2.24Kb 3.85Kb
TOTAL: 15.5KB 18.9Kb 7.42Kb 5.40Kb 7.73Kb
如此一來我們就知道目前的正在備份中的狀態 ,相關指令應用於幾百G以上的備份中大型資料庫會非常有利於系統維護管理人員檢測
nohup是什麼?
nohup是由兩個字組成的命令:no-hup,hup指的是SIGHUP(hangup)這個信號,nohup就是忽略SIGHUP這個信號的意思。當我們從一個連線登出的時候,每個process都會收到一個SIGHUP信號,透過nohup所下達的命令就可以不受影響,繼續執行。
nohup如何使用?
nohup最傳統的用法就是在你要執行的命令之前加上nohup,然後在後面加上一個背景執行的 &,像這樣:
# nohup /root/backup.sh &
所有執行產生的輸出,將自動導出到nohup.out。
你可以利用cat察看nohup執行結果
# cat nohup.out
一旦透過nohup執行命令,所有的輸出都會存到檔案,而不是直接顯示在螢幕上。如果你想要看執行結果的話,你可以用 tail 命令加上 -f 參數,讓shell自動為你在檔案有所更新時一併印出,也就是說看起來就好像你在看螢幕上的執行結果一樣:
# tail –f nohup.out
會跑出類似下面這樣的結果
tms_apply/sysdata/page/index/login.modules.json
tms_apply/sysdata/page/service/
tms_apply/sysdata/page/service/auth.modules.json
tms_apply/sysdata/page/service/mailServer.modules.json
tms_apply/sysdata/page/site/
tms_apply/sysdata/page/site/list.modules.json
tms_apply/sysdata/page/site/new.modules.json
sent 618856191 bytes received 211004 bytes 7690275.71 bytes/sec
total size is 722493455 speedup is 1.17
有時我們需要檢查目前的備份資料流量我們可以利用top、iftop指令進行查詢
# top
top - 09:41:03 up 54 min, 1 user, load average: 0.00, 0.00, 0.02
Tasks: 87 total, 1 running, 86 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.7%us, 0.5%sy, 0.0%ni, 94.7%id, 4.0%wa, 0.1%hi, 0.0%si, 0.0%st
Mem: 1020288k total, 914204k used, 106084k free, 24708k buffers
Swap: 835580k total, 0k used, 835580k free, 442160k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2452 root 20 0 15052 1152 868 R 2.0 0.1 0:00.01 top
1 root 20 0 19232 1396 1108 S 0.0 0.1 0:00.47 init
2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd
3 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
4 root 20 0 0 0 0 S 0.0 0.0 0:00.02 ksoftirqd/0
5 root RT 0 0 0 0 S 0.0 0.0 0:00.00 stopper/0
6 root RT 0 0 0 0 S 0.0 0.0 0:00.01 watchdog/0
7 root 20 0 0 0 0 S 0.0 0.0 0:01.31 events/0
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cgroup
9 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khelper
10 root 20 0 0 0 0 S 0.0 0.0 0:00.00 netns
11 root 20 0 0 0 0 S 0.0 0.0 0:00.00 async/mgr
12 root 20 0 0 0 0 S 0.0 0.0 0:00.00 pm
13 root 20 0 0 0 0 S 0.0 0.0 0:00.02 sync_supers
14 root 20 0 0 0 0 S 0.0 0.0 0:00.02 bdi-default
15 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kintegrityd/0
16 root 20 0 0 0 0 S 0.0 0.0 0:00.49 kblockd/0
17 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kacpid
18 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kacpi_notify
19 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kacpi_hotplug
20 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ata_aux
21 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ata_sff/0
22 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ksuspend_usbd
23 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khubd
24 root 20 0 0 0 0 S 0.0 0.0 0:00.02 kseriod
# iftop
12.5Kb 25.0Kb 37.5Kb 50.0Kb 62.5Kb
└───────────────────────┴───────────────────────┴─────────
mgr.anthony.tw => 192.168.1.213 3.55Kb 2.93Kb 3.35Kb
<= 160b 160b 200b
192.168.1.255 => 192.168.1.12 0b 0b 0b
<= 312b 624b 585b
mgr.anthony.tw => 192.168.1.12 284b 170b 500b
<= 544b 326b 958b
192.168.1.255 => 192.168.1.24 0b 0b 0b
<= 1.22Kb 312b 273b
192.168.1.255 => 192.168.1.73 0b 0b 0b
<= 312b 312b 234b
192.168.1.255 => 192.168.1.68 0b 0b 0b
<= 0b 187b 195b
192.168.1.255 => 192.168.1.27 0b 0b 0b
<= 572b 114b 72b
mgr.anthony.tw => 192.168.1.41 0b 67b 42b
<= 0b 45b 28b
255.255.255.255 => 192.168.1.254 0b 0b 0b
<= 532b 106b 230b
192.168.1.255 => 192.168.1.34 0b 0b 0b
<= 0b 105b 66b
192.168.1.255 => 192.168.1.43 0b 0b 0b
<= 0b 0b 702b
255.255.255.255 => 192.168.1.33 0b 0b 0b
<= 0b 0b 164b
192.168.1.255 => 192.168.1.23 0b 0b 0b
<= 0b 0b 117b
──────────────────────────────────────────────────────────
TX: cum: 7.77KB peak: 5.68Kb rates: 3.82Kb 3.17Kb 3.88Kb
RX: 7.70KB 13.2Kb 3.59Kb 2.24Kb 3.85Kb
TOTAL: 15.5KB 18.9Kb 7.42Kb 5.40Kb 7.73Kb
如此一來我們就知道目前的正在備份中的狀態 ,相關指令應用於幾百G以上的備份中大型資料庫會非常有利於系統維護管理人員檢測
留言
張貼留言