TOP命令监视系统任务及掩码umask的作用
?top 命令使用方法及參數。
top 選擇參數
參數:
- -b ?以批量模式執行。但不能接受命令行輸入;
- -c 顯示命令行,而不不過命令名。
- -d N ?顯示兩次刷新時間的間隔,比方 -d 5,表示兩次刷新間隔為5秒;
- -i 禁止顯示空暇進程或僵尸進程;
- -n NUM ?顯示更新次數,然后退出。
比方 -n 5,表示top更新5次數據就退出。
- -p PID 僅監視指定進程的ID;PID是一個數值;
- -q ?不經不論什么延時就刷新;
- -s ?安全模式執行,禁用一些效互指令;
- -S 累積模式,輸出每一個進程的總的CPU時間,包含已死的子進程。
- space ?馬上更新;
- c 切換到命令名顯示。或顯示整個命令(包含參數);
- f,F 添加顯示字段,或刪除顯示字段。
- h,? 顯示有關安全模式及累積模式的幫助信息;
- k 提示輸入要殺死的進程ID,目的是用來殺死該進程(默人信號為15)
- i 禁止空暇進程和僵尸進程。
- l 切換到顯法負載平均值和正常執行的時間等信息;
- m 切換到內存信息,并以內存占用大小排序;
- n ?提示顯示的進程數。比方輸入3。就在整屏上顯示3個進程;
- o,O 改變顯示字段的順序;
- r 把renice 應用到一個進程。提示輸入PID和renice的值;
- s 改變兩次刷新時間間隔,以秒為單位;
- t 切換到顯示進程和CPU狀態的信息;
- A 按進程生命大小進行排序,最新進程顯示在最前。
- M 按內存占用大小排序。由大到小。
- N 以進程ID大小排序,由大到小;
- P 按CPU占用情況排序,由大到小
- S 切換到累積時間模式。
- T ?按時間/累積時間對任務排序;
- W 把當前的配置寫到~/.toprc中。
語法及參數說明
usage: top -hvbcisqS -d delay -p pid -n iterations
- -s time 設置屏幕刷新的延時,單位為秒,默認值5秒?
- -d count 設置屏幕刷新的次數,刷新顯示完count次后退出?
- -q 假設經過nice授權,使用-q能夠使top執行的更快一些?
- -u 用顯示User ID取代username,提高命令執行速度?
- -h 當系統由多個CPU時,個別CPU的狀態信息被隱藏。僅僅顯示平均狀態值?
- -n number 設置每一屏幕顯示的進程數目。number值超過進程最大數目,則設置無效?
- -f filename 輸出重定向到給定的文件名稱,默覺得16個進程信息?
屏幕控制命令 :當有多個屏幕內容顯示時,能夠用到以下的命令?
鍵盤命令 :?
- j 假設不是最后的屏幕顯示,按下j鍵能夠切換到下一屏幕?
- k 假設不是最初的屏幕顯示,按下k鍵能夠切換到前一屏幕?
- t 按下k鍵能夠切換到最初的屏幕?
- q 退出top命令的運行,能夠在不論什么時候鍵入q鍵就可以?
系統信息: ?
?14:50:01 ?up 83 days, 10 min, ?0 users, ?load average: 0.75, 0.86, 0.86
164 processes: 160 sleeping, 4 running, 0 zombie, 0 stopped
CPU states: ?cpu ? ?user ? ?nice ?system ? ?irq ?softirq ?iowait ? ?idle
? ? ? ? ? ?total ? 38.3% ? ?0.0% ? 19.4% ? 0.0% ? ? 0.0% ? ?0.7% ? 41.5%
? ? ? ? ? ?cpu00 ? 70.8% ? ?0.0% ? 26.2% ? 0.0% ? ? 0.0% ? ?0.0% ? ?2.9%
? ? ? ? ? ?cpu01 ? 51.4% ? ?0.0% ? 33.0% ? 0.0% ? ? 0.0% ? ?0.9% ? 14.5%
? ? ? ? ? ?cpu02 ? 25.2% ? ?0.0% ? 17.4% ? 0.0% ? ? 0.0% ? ?0.0% ? 57.2%
? ? ? ? ? ?cpu03 ? ?5.8% ? ?0.0% ? ?0.9% ? 0.0% ? ? 0.0% ? ?1.9% ? 91.2%
首部的幾行顯示系統的幾個信息,當中包含:?
- + system:系統名和當前日期.?
- + Load averages:1分鐘、5分鐘和15分鐘內執行的負載平均數?
- 一般來說僅僅要每一個CPU的當前活動進程數不大于?3那么系統的性能就是良好的,假設每一個CPU的任務數大于5,那么就表示這臺機器的性能有嚴重問題?
- + 近期一次更新時存在的進程總數,并分別列出run(執行)、sleep(睡眠)、idle(停止)和zomb(‘僵尸’)狀態的進程數?
- + CPU state:用戶占用時間的百分比、系統占用CPU時間的百分比、被nice命令改變優先級的任務占用的CPU時間百分比、以及CPU空暇時間的百分比。
(被nice命令改變優先級的任務僅指那些nice值為負的任務)。花費在被nice命令改變優先級的任務上的時間也將被計算在系統和用戶時間內,因此整個時間加起來可能會超過百分之百?
- + avg:活動進程的平均值 (僅當多處理器系統時列出).?
- 內存信息 ?
- Mem: ?4115792k av, 4056080k used, ? 59712k free, ? ? ? 0k shrd, ? ?7072k buff
- ? ? ? ? ? ? ? ? ? ?2950040k actv, ?263064k in_d, ? 82612k in_c
- Swap: 8289500k av, ?119824k used, 8169676k free ? ? ? ? ? ? ? ? 3517880k cached
- Memory:關于內存使用情況的統計。包含實際(real)內存的活動值/總值。虛擬(virtual)內存的使用值/總值,剩余的內存。?
? PID USER ? ? PRI ?NI ?SIZE ?RSS SHARE STAT %CPU %MEM ? TIME CPU COMMAND
26359 oracle ? ?16 ? 0 ?687M 686M ?685M S ? ? 0.5 17.0 ?16:42 ? 0 oracle
25427 oracle ? ?16 ? 0 ?504M 503M ?502M S ? ? 0.5 12.5 ? 1:25 ? 3 oracle
?1605 oracle ? ?24 ? 0 10516 9.9M ?8848 S ? ? 0.1 ?0.2 ? 0:00 ? 3 oracle
?1607 oracle ? ?24 ? 0 10500 9.8M ?8832 S ? ? 0.1 ?0.2 ? 0:00 ? 1 oracle
? ? 1 root ? ? ?15 ? 0 ? 492 ?460 ? 436 S ? ? 0.0 ?0.0 ?25:58 ? 1 init
? ? 2 root ? ? ?RT ? 0 ? ? 0 ? ?0 ? ? 0 SW ? ?0.0 ?0.0 ? 0:00 ? 0 migration/0
? ? 3 root ? ? ?RT ? 0 ? ? 0 ? ?0 ? ? 0 SW ? ?0.0 ?0.0 ? 0:00 ? 1 migration/1
? ? 4 root ? ? ?RT ? 0 ? ? 0 ? ?0 ? ? 0 SW ? ?0.0 ?0.0 ? 0:00 ? 2 migration/2
? ? 5 root ? ? ?RT ? 0 ? ? 0 ? ?0 ? ? 0 SW ? ?0.0 ?0.0 ? 0:00 ? 3 migration/3
? ? 6 root ? ? ?15 ? 0 ? ? 0 ? ?0 ? ? 0 SW ? ?0.0 ?0.0 ? 0:00 ? 1 keventd
? ? 7 root ? ? ?34 ?19 ? ? 0 ? ?0 ? ? 0 SWN ? 0.0 ?0.0 ? 0:00 ? 0 ksoftirqd/0
? ? 8 root ? ? ?34 ?19 ? ? 0 ? ?0 ? ? 0 SWN ? 0.0 ?0.0 ? 0:00 ? 1 ksoftirqd/1
列出系統里每個處理器的信息,當信息在一個屏幕內無法顯示時,會被分成多個屏幕顯示,能夠前面提到l,k和t命令查看?
- CPU:處理器號(僅當多處理器系統時列出) ?
- TTY:終端名 ?
- PID:進程號 ?
- USERNAME:username ?
- PRI:任務的優先級 ?
- NICE:任務的nice值。一個具有較低值的進程在系統上將具有優先權。能夠通過改變nice值提高某些進程速度。可是這實際上是一種交易,由于那些nice值被升高的進程此時將執行得非常慢。
- NI是Nice值。PR是優先權,Nice值是進程的一個屬性。PR是依據NICE排序的,規則是NICE越小PR越前(小。優先權更大),假設NICE同樣則進程gid或者uid是root的優先權更大 ?
- SIZE:任務的代碼加上數據再加上棧空間的大小。
?
- RES:任務使用的物理內存的總數量。 ?
- STATE:任務的狀態 ?
- TIME:自任務開始時使用的總CPU時間,單位為秒,如153:43,相應是153秒43毫秒 ?
- %WCPU:進程的CPU利用率權重百分比 ?
- %CPU:進程的原始的CPU利用率百分比,自上一次屏幕刷新以來任務占用CPU 時間的份額 ?
- COMMAND:啟動進程的命令名。假設名字太長而不能
linux 權限掩碼 umask??
一 權限掩碼umask
umask是chmod配套的,總共為4位(gid/uid,屬主,組權,其他用戶的權限),只是通經常使用到的是后3個,比如你用chmod 755 file(此時這文件的權限是屬主讀(4)+寫(2)+運行(1),同組的和其他用戶有讀寫權限)
?
二 umask的作用
???默認情況下的umask值是022(能夠用umask命令查看),此時你建立的文件默認權限是644(6-0,6-2,6-2),建立的文件夾的默認權限是755(7-0,7-2,7-2)。能夠用ls -l驗證一下哦 如今應該知道umask的用途了吧。它是為了控制默認權限。不要使默認的文件和文件夾具有全權而設的。
?
三 怎樣計算umask值
umask命令同意你設定文件創建時的缺省模式,相應每一類用戶(文件屬主、同組用戶、其它用戶)存在一個相應的umask值中的數字。
對于文件來說。這一數字的最大值各自是6。系統不同意你在創建一個文本文件時就賦予它運行權限,必須在創建后用chmod命令添加這一權限。
文件夾則同意設置運行權限,這樣針對文件夾來說,umask中各個數字最大能夠到?7。
計算u m a s k值的方法:我們僅僅要記住u m a s k是從權限中“拿走”對應的位就可以。
???????????????????????????????????????????umask值與權限表
| Umask中的某位 | 文件 | 文件夾 |
| 0 | 6 | 7 |
| 1 | 6 | 6 |
| 2 | 4 | 5 |
| 3 | 4 | 4 |
| 4 | 2 | 3 |
| 5 | 2 | 2 |
| 6 | 0 | 1 |
| 7 | 0 | 0 |
假設umask為023,則對于文件全部者。不拿去不論什么權限,而新建的文件默認沒有運行權限,故對文件全部者的權限位rw-(6);對組全部者,拿去寫權限,原本沒有運行權限,故為r--(4);對其它用戶,拿去寫和運行權限。原本沒有運行權限,故為r--(4);
假設umask為023,由于沒有新建文件夾沒有運行權限的限制。則對于文件夾全部者,不拿去不論什么權限,故對文件夾全部者的權限為rwx(7);對組全部者,拿去寫權限,故為r-x(5);對其它用戶,拿去寫和運行權限。故為r--(4);
?
四 經常使用的u m a s k值及相應的文件和文件夾權限
| umask | 文件夾 | 文件 |
| 0 2 2 | 7 5 5 | 6 4 4 |
| 0 2 7 | 7 5 0 | 6 4 0 |
| 0 0 2 | 7 7 5 | 6 6 4 |
| 0 0 6 | 7 7 1 | 6 6 0 |
| 0 0 7 | 7 7 0 | 6 6 0 |
?
五 改動umask值
知道了umask的作用后。你能夠改動umask的值了。比如:umask 024則以后建立的文件和文件夾的默認權限就為642、753了。
?
六 將umask值保存到環境文件
若要長期改動umask的值,能夠把它寫進/etc/profile或~/.profile或~/.bash_profile中。
總結
以上是生活随笔為你收集整理的TOP命令监视系统任务及掩码umask的作用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Vim常用按键操作学习
- 下一篇: 再战“超融合”,戴尔、Nutanix绝世