1、進程管理apache
1. 進程簡介vim
1.1 什麼進程centos
進程是正在被執行的一個程序或命令,每個進程都是一個運行的實體,都有本身的地址空間,並佔用必定的系統資源。程序是人使用計算機語言編寫的能夠實現特定目標或解決特定問題的代碼集合。api
程序是人使用計算機語言編寫的,能夠實現必定的功能,而且能夠執行的代碼集合。緩存
進程是正在執行中的程序。程序被執行時,執行人的權限和屬性、以及程序的代碼都會被加載,如內存,操做系統給這個進程分配一個ID號,咱們稱爲PID(進程ID)。安全
1.2 進程管理的做用服務器
判斷服務器健康狀態多線程
查看系統中全部的進程:查看系統中全部正在運行的進程,經過這些進程能夠判斷系統中運行了哪些服務,是否有非法服務運行。ssh
殺死進程函數
2. 進程的查看
2.1 ps命令
ps命令是用來靜態顯示系統中進程的命令。部分命令的選項不能加"-",好比"ps aux",其中"aux"是選項,可是這個選項不能加入"-"。這是由於ps命令的部分選項須要遵照BSD操做系統的格式。全部ps命令的經常使用選項的組合是固定的。
[root@centos2 ~]# ps aux #查看系統中全部的進程 [root@centos2 ~]# ps -el #查看系統中全部進程,使用Linux標準命令格式 a 顯示一個終端的全部進程,除了會話引線 u 顯示進程的歸屬用戶及內存的使用狀況 x 顯示沒有控制終端的進程 e 長格式顯示。顯示更加詳細的信息 l 顯示全部進程
[root@centos2 ~]# ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 1.0 0.2 191280 4184 ? Ss 00:02 0:07 /usr/lib/systemd/systemd --switched-root --system --deserialize 22 root 2 0.0 0.0 0 0 ? S 00:02 0:00 [kthreadd]
USER:該進程是由哪一個用戶產生的
PID:進程的ID號
%CPU:該進程佔用CPU資源的百分比,佔用越高,進程越耗費資源
%MEM:該進程佔用物理內存的百分比,佔用越高,進程越耗費資源
VSZ:該進程佔用虛擬內存的大小,單位KB
RSS:該進程佔用實際物理內存的大小,單位KB
TTY:該進程是在哪一個終端中運行的。其中tty1-tty7表明本地控制檯終端(能夠經過alt+F1-F7鍵切換不一樣的終端),tty1-tty6是本地的字符界面終端,tty7是圖形終端。pts/0-255表明虛擬終端,通常是遠程鏈接的終端,第一個遠程鏈接佔用的是pts/0終端,第二個遠程鏈接佔用pts/1,依次增加
STAT:進程狀態。常見的狀態有:
D:不可被喚醒的睡眠狀態,一般用於I/O狀況
R:該進程正在運行
S:該進程在睡眠狀態,可被喚醒
T:中止狀態,多是在後臺暫停或進程在除錯狀態
W:內存交互狀態(從2.6內核開始無效)
X:死掉的進程(應該不會出現)
Z:殭屍進程。進程已經終止,可是部分程序還在內存當中
<:高優先級(如下狀態在BSD格式當中出現)
N:低優先級
L:被鎖入內存
s:包含子進程
l:多線程(小寫L)
+:位於後臺
START:該進程的啓動時間
TIME:該進程佔用CPU的運算時間,注意不是系統時間
COMMAND:產生此進程的命令名
[root@centos2 ~]# ps -le F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD 4 S 0 1 0 0 80 0 - 47820 ep_pol ? 00:00:07 systemd 1 S 0 2 0 0 80 0 - 0 kthrea ? 00:00:00 kthreadd
F:進程標誌,說明進程的權限,常見的標誌有:
1:進程能夠複製,可是不能執行
4:進程使用超級用戶權限
S:進程狀態。具體的狀態和「ps aux」命令中STAT狀態一致
UID:進程是哪一個UID用戶調用運行的
PID:進程的ID號
PPID:父進程的ID號
C:該進程的CPU使用率,單位是百分比
PRI:進程的優先級,數值越小該進程優先級越高,越快被CPU執行
NI:進程的優先級,也是數值越小越早被執行
ADDR:該進程在內存的哪一個位置
SZ:該進程佔用多大內存
WCHAN:該進程是否運行。「-」表明正在運行
TTY:該進程由哪一個終端產生
TIME:該進程佔用CPU的運算時間,注意不是系統時間
CMD:產生此進程的命令名
2.2 top命令
top [選項] -d 秒數 指定top命令每隔幾秒更新。默認3秒 -b 使用批處理模式輸出。通常和"-n"選項合用,用於把top命令重定向到文件中 -n 次數 指定top命令執行的次數。通常和"-b"選項合用 -p 指定PID。只查看某個PID的進程 -s 使top在安全模式運行,避免在交互模式中出現錯誤 -u 用戶名 只監聽某個用戶的進程 在top命令的交互模式當中能夠執行的命令: ?或h 顯示交互模式的幫助 P 以CPU使用率排序,默認 M 之內存的使用率排序 N 以PID排序 T 按照CPU的累積運算時間排序,也就是用TIME+項排序 k 按照PID號,給予某個進程一個信號。通常用於終止某個進程,信號9 是強制終止的信號 r 按照PID號,給某個進程重設優先級(Nice)值 q 退出top
top - 00:54:21 up 52 min, 1 user, load average: 0.00, 0.01, 0.05 Tasks: 172 total, 1 running, 171 sleeping, 0 stopped, 0 zombie %Cpu(s): 0.2 us, 0.2 sy, 0.0 ni, 99.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 1863104 total, 1019364 free, 436312 used, 407428 buff/cache KiB Swap: 2097148 total, 2097148 free, 0 used. 1264596 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 790 root 20 0 324680 6924 5404 S 0.7 0.4 0:12.76 vmtoolsd 10176 root 20 0 162020 2316 1592 R 0.7 0.1 0:07.93 top 800 root 20 0 21680 1296 988 S 0.3 0.1 0:01.71 irqbalance 10410 root 20 0 0 0 0 S 0.3 0.0 0:00.31 kworker/0:1
top命令的輸出內容是動態的,默認每3秒刷新一次。命令的輸出主要分爲兩大部分;第一部分是前五行,顯示的是整個系統的資源使用情況,咱們就是經過這些輸出判斷服務器的健康狀態;第二部分是從第六行開始,顯示的是系統中進程的信息。
第一部分的做用:
第一行信息爲任務隊列信息
內容 | 說明 |
00:54:21 |
系統當前時間 |
up 52 min |
系統的運行時間,本機已運行52分鐘 |
1 user |
當前登陸了一個用戶 |
load average: 0.00, 0.01, 0.05 |
系統在以前1分鐘,5分鐘,15分鐘的平均負載。若是CPU是單核,則這個數超過1,就是高負載。若是CPU是四核,則這個數超過4,就是高負載。(這個平均負載徹底是我的經驗來進行判斷的,通常認爲不該該超過服務器CPU的核數。) |
第二行爲進程信息
內容 | 說明 |
Tasks: 172 total |
系統中的進程總數 |
1 running |
正在運行的進程數 |
171 sleeping |
睡眠的進程 |
0 stopped |
正在中止的進程 |
0 zombie |
殭屍進程。若是不是0,須要手工檢查殭屍進程 |
第三列爲CPU信息
內容 | 說明 |
%Cpu(s): 0.2 us |
用戶模式佔用的CPU百分比 |
0.2 sy |
系統模式佔用的CPU百分比 |
0.0 ni |
改變過優先級的用戶進程佔用的CPU百分比 |
99.7 id |
空閒CPU的CPU百分比 |
0.0 wa |
等待輸入/輸出的進程的佔用CPU百分比 |
0.0 hi |
硬中斷請求服務佔用的CPU百分比 |
0.0 si |
軟中斷請求服務佔用的CPU百分比 |
0.0 st |
st(Steal time)虛擬時間百分比。就是當有虛擬機時,虛擬CPU等待實際CPU的時間百分比 |
第四列爲物理內存信息
內容 | 說明 |
Mem:1863104 total |
物理內存的總量,單位KB |
1019364 free |
空閒的物理內存數量 |
436312 used |
已經使用的物理內存數量 |
407428 buff/cache |
做爲緩衝的內存數量 |
第五列爲交換分區(swap)信息
內容 | 說明 |
Swap: 2097148 total |
交換分區(虛擬內存)的總大小 |
2097148 free |
空閒交換分區的大小 |
0 used |
已經使用的交互分區的大小 |
1264596 avail Mem |
做爲緩存的交互分區的大小 |
top命令的第二部分輸出,主要是系統進程信息。這部分和ps命令的輸出比較相似,只是在終端中執行top命令不能看到全部的進程,只能看到佔比靠前的進程。
PID:進 程ID
USER:該進程所屬的用戶
PR:優先級,數值越小優先級越高
NI:優先級,數值越小優先級越高
VIRT:該進程使用的虛擬內存的大小,單位KB
RES:該進程使用的物理內存的大小,單位KB
SHR:共享內存大小,單位KB
S:進程狀態
%CPU:該進程佔用CPU的百分比
%MEM:該進程佔用內存的百分比
TIME+:該進程總共佔用的CPU時間
COMMAND:進程的命令名
例:
[root@centos2 ~]# top -p 10857
#只查看PID爲10857的apache進程
top - 01:30:14 up 1:28, 1 user, load average: 0.07, 0.09, 0.07 Tasks: 1 total, 0 running, 1 sleeping, 0 stopped, 0 zombie %Cpu(s): 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 1863104 total, 778008 free, 454860 used, 630236 buff/cache KiB Swap: 2097148 total, 2097148 free, 0 used. 1243096 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 10857 root 20 0 230420 5180 3288 S 0.0 0.3 0:00.10 httpd
在top命令的交互界面中按「q」鍵會退出top命令。也能夠按「?」或「h」獲得top命令交互界面的幫助信息。也能夠按「k」鍵終止某個進程
[root@centos2 ~]# top -p 10941 top - 01:32:38 up 1:30, 1 user, load average: 0.01, 0.05, 0.06 Tasks: 1 total, 0 running, 1 sleeping, 0 stopped, 0 zombie %Cpu(s): 0.0 us, 0.0 sy, 0.0 ni, 99.8 id, 0.2 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 1863104 total, 777936 free, 455016 used, 630152 buff/cache KiB Swap: 2097148 total, 2097148 free, 0 used. 1243000 avail Mem PID to signal/kill [default pid = 10941] <- 按「k」鍵,會提示輸入要殺死進程的PID PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 10941 root 20 0 230420 5172 3284 S 0.0 0.3 0:00.07 httpd
在操做終端執行top命令,並不能看到系統中全部的進程,默認看到的只是CPU佔比靠前的進程。若是咱們想要看到全部的進程能夠把top命令的結果重定向到文件當中便可。不過top命令是持續運行的,這時就須要「-b」和「-n」選項了
[root@centos2 ~]# top -b -n 1 > /root/top.log
2.3 pstree命令
ps [選項] -p 顯示進程的PID -u 顯示進程的所屬用戶
3. 進程的管理
系統中能夠識別的信號較多,咱們可使用命令"kill -l"或"man 7 signal"來查詢。
[root@centos2 ~]# kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM 16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP 21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ 26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR 31) SIGSYS 34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3 38) SIGRTMIN+4 39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8 43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13 48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12 53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7 58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2 63) SIGRTMAX-1 64) SIGRTMAX
信號代號 | 信號名稱 | 說明 |
1 | SIGHUP | 該信號讓進程當即關閉,而後從新讀取配置文件以後重啓 |
2 | SIGINT | 程序終止信號,用於終止前臺進程。至關於輸出ctrl+c快捷鍵 |
8 | SIGFPE | 在發生致命的算術運算錯誤時發出. 不只包括浮點運算錯誤, 還包括溢出及除數爲0等其它全部的算術的錯誤 |
9 | SIGKILL | 用來當即結束程序的運行. 本信號不能被阻塞、處理和忽略。通常用於強制終止進程 |
14 | SIGALRM | 時鐘定時信號, 計算的是實際的時間或時鐘時間. alarm函數使用該信號 |
15 | SIGTERM | 正常結束進程的信號,kill命令的默認信號。有時若是進程已經發生問題,這個信號是沒法正常終止進程的,咱們纔會嘗試SIGKILL信號,也就是信號9 |
18 | SIGCONT | 該信號可讓暫停的進程恢復執行,本信號不能被阻斷 |
19 | SIGSTOP | 該信號能夠暫停前臺進程,至關於輸入ctrl+z快捷鍵。本信號不能被阻斷 |
3.1 kill命令
kill [選項] PID
[root@centos2 ~]# ps -ef |grep "httpd" root 2329 1 4 17:30 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND apache 2338 2329 0 17:30 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND apache 2339 2329 0 17:30 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND apache 2340 2329 0 17:30 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND apache 2341 2329 0 17:30 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND apache 2342 2329 0 17:30 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND root 2346 1828 0 17:30 pts/0 00:00:00 grep --color=auto httpd [root@centos2 ~]# kill -1 2329
#使用「-1」信號,讓httpd的主進程重啓
[root@centos2 ~]# vim test.sh #編輯文件,不退出 [root@centos2 ~]# ps aux |grep "vim" root 2424 1.4 0.2 149756 5396 pts/0 S+ 17:33 0:00 vim test.sh root 2436 0.0 0.0 112728 972 pts/1 R+ 17:34 0:00 grep --color=auto vim [root@centos2 ~]# ps aux |grep "vim" | grep -v "grep" root 2424 1.0 0.2 149756 5396 pts/0 S+ 17:33 0:00 vim test.sh #換另一個終端,查看下這個進程的狀態。進程狀態S(休眠)和+(位於後臺),由於是在另一個終端運行的命令 [root@centos2 ~]# kill -19 2424 [root@centos2 ~]# ps aux |grep "vim" | grep -v "grep" root 2424 0.2 0.2 149756 5396 pts/0 T 17:33 0:00 vim test.sh #2424的狀態變成了T(暫停)。切回原來的終端,vim命令已暫停。 #不過2424進程就會卡在後臺,若是想要恢復可使用「kill -9 2424」強制終止進程 [root@centos2 ~]# vim test.sh [1]+ 已中止 vim test.sh [root@centos2 ~]#
3.2 killall命令
killall [選項] [信號] 進程名 -i 交互式,詢問是否要殺死某個進程 -I 忽略進程名的大小寫
[root@centos2 ~]# ps aux | grep "sshd" root 1250 0.0 0.2 112920 4320 ? Ss 17:12 0:00 /usr/sbin/sshd -D root 1812 0.0 0.3 163612 6124 ? Ss 17:12 0:00 sshd: root@pts/0 root 2380 0.0 0.3 163616 6128 ? Ss 17:33 0:00 sshd: root@pts/1 root 2524 0.0 0.0 112732 972 pts/0 S+ 17:42 0:00 grep --color=auto sshd [root@centos2 ~]# ps aux | grep "sshd" | grep -v "grep" root 1250 0.0 0.2 112920 4320 ? Ss 17:12 0:00 /usr/sbin/sshd -D root 1812 0.0 0.3 163612 6124 ? Ss 17:12 0:00 sshd: root@pts/0 root 2380 0.0 0.3 163616 6128 ? Ss 17:33 0:00 sshd: root@pts/1 [root@centos2 ~]# killall -i sshd 殺死 sshd(1250) ? (y/N) n 殺死 sshd(1812) ? (y/N) n 殺死 sshd(2380) ? (y/N) y
3.3 pkill命令
pkill命令和killall命令很是相似,也是按照進程名來殺死進程的。
pkill [選項] [信號] 進程名
-t 終端號 按照終端號踢出用戶
[root@centos2 ~]# pkill -9 -t pts/1
2、工做管理
1. 工做管理簡介
注意事項:
前臺是指當前能夠操控和執行命令的這個操做環境,後臺是指工做能夠自動運行,可是不能直接用ctrl+c來終止它,只能使用fg/bg來調用工做;
當前的登陸終端,只能管理當前終端的工做,而不能管理其餘登陸終端的工做。
放入後臺的命令必須能夠持續運行一段時間,這樣咱們才能捕捉和操做這個工做。若是把ls命令放入後臺執行,他很快就會執行完成,咱們很難操做它。
放入後臺執行的命令不能和前臺用戶有交互或須要前臺輸入,不然放入後臺只能暫停,而不能執行。好比vi命令放入後臺只能暫停,而不能執行,由於vi須要前臺輸入信息。top命令也不能放入後臺執行,而只能放入後臺暫停,由於top命令須要和前臺有交互
2. 如何把命令放入後臺
2.1 第一種方法"命令 &",把命令放入後臺執行
第一種把命令放入後臺的方法是在命令的後面加上"空格&",這種方法放入後臺的命令,在後臺是執行狀態。注意,放入後臺執行的命令不能與前臺有交互,不然這個命令是不能在後臺執行的。
[root@centos2 ~]# find / -name install.log & [1] 4060 #[工做號] 進程號 #find命令放入後臺執行,每一個後臺命令會分配一個工做號,命令既然能夠執行,就會有進程產生,因此也會有進程號 [root@centos2 ~]# ps -ef |grep find root 4085 4006 0 19:16 pts/1 00:00:00 grep --color=auto find [1]+ 完成 find / -name install.log
第二種方法是在命令執行過程當中按Ctrl+z快捷鍵,命令在後臺是暫停狀態
使用這種方法放入後臺的命令,就算是不和前臺有交互,能在後臺執行的命令,也是暫停狀態,ctrl+z快捷鍵就是暫停的快捷鍵
[root@centos2 ~]# top #執行過程當中按下Ctrl+z快捷鍵 [1]+ 已中止 top #示命令被放入後臺,工做號是1,狀態是暫停。並且雖然top命令沒有結束,也能取得控制檯權限。
3. 後臺管理命令
3.1 查看後臺的工做
jobs [-l]
-l 顯示工做的PID
3.2 將後臺暫停的工做恢復到前臺執行
fg %工做號
%工做號 %能夠省略,但要注意工做號和PID的區別
3.3 把後臺暫停的工做恢復到後臺執行
bg %工做號
3.4 後臺命令脫離終端運行
咱們已經知道把命令放入後臺,只能在當前登陸終端執行。那若是我是遠程管理的服務器,在遠程終端中執行了後臺命令,這時我退出登陸,這個後臺命令還能繼續執行嗎?固然是不行的,這個後臺命令會被終止。可是咱們確實須要在遠程終端中執行某些後臺命令,該如何執行呢?
第一種方法是把須要後臺執行的命令加入/etc/rc.local文件,讓系統在啓動時執行這個後臺程序。這種方法的問題是,服務器時不能隨便重啓的,萬一有臨時後臺任務,就不能執行
第二種方法是使用系統定時任務,讓系統在指定的時間執行某個後臺命令。這樣放入後臺的命令與終端無關,是不依賴登陸終端的
最後一種方法是使用nohup命令
nohup命令的做用就是讓後臺工做在離開操做終端時,也可以正確的在後臺執行
[root@centos2 ~]# nohup [命令] & [root@centos2 ~]# nohup find / -name httpd.conf & [1] 5385 [root@centos2 ~]# nohup: 忽略輸入並把輸出追加到"nohup.out"
3、系統資源查看
1. vmstat命令監控系統資源
vmstat [刷新延時 刷新次數] [root@centos2 ~]# vmstat procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 1 0 0 1082904 2116 346368 0 0 309 21 103 220 1 2 96 0 0 [root@centos2 ~]# vmstat 1 3 procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 1 0 0 1083160 2116 346368 0 0 306 21 102 219 1 2 96 0 0 0 0 0 1083160 2116 346368 0 0 0 0 69 82 0 0 99 0 0 0 0 0 1083160 2116 346368 0 0 0 0 42 54 0 0 100 0 0
命令的輸出:
procs:進程信息字段
r:等待運行的進程數,數量越大,系統越繁忙
b:不可被喚醒的進程數量,數量越大,系統越繁忙
memory:內存信息字段
swpd::虛擬內存的使用狀況,單位KB
free:空閒的內存容量,單位KB
buff:緩衝的內存容量,單位KB
cache:緩存的內存容量,單位KB
swap:交換分區的信息字段
si:從磁盤中交換到內存中數據的數量,單位KB
so:從內存中交換到磁盤中數據的數量,單位KB。此兩個數越大,證實數據須要常常在磁盤和內存之間交換,系統性能越差
io:磁盤讀寫信息字段
bi:從塊設備讀入數據的總量,單位是塊
bo:寫到塊設備的數據的總量,單位是塊。此兩個數越大,表明系統的I/O越繁忙
system:系統信息字段
in:每秒被中斷的進程次數
cs:每秒鐘進行的事件切換次數。此兩個數越大,表明系統與接口設備的通訊很是繁忙
CPU:CPU信息字段
us:非內核進程消耗CPU運算時間的百分比
sy:內核進程消耗CPU運算時間的百分比
id:空閒CPU的百分比
wa:等待I/O所消耗的CPU百分比
st:被虛擬機所盜用的CPU百分比
2. dmesg顯示開機時內核檢測信息
[root@centos2 ~]# dmesg |grep CPU #查看CPU信息 [root@centos2 ~]# dmesg |grep ens33 #查詢第一塊網卡信息
3. free命令查看內存使用狀態
[root@centos2 ~]# free [-b|-k|-m|-g] -b:以字節爲單位顯示 -k:以KB爲單位顯示,默認 -m:以MB爲單位顯示 -g:以GB爲單位顯示 [root@centos2 ~]# free total used free shared buff/cache available Mem: 1863104 431544 1082804 12608 348756 1272688 Swap: 2097148 0 2097148
4. 查看CPU信息
CPU的主要信息保存在/proc/cpuinfo這個文件當中,咱們只有查看這個文件,就能夠知道cpu的相關信息
[root@centos2 ~]# cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 78 model name : Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz stepping : 3 microcode : 0x33 cpu MHz : 2400.299 cache size : 3072 KB physical id : 0 siblings : 2 core id : 0 cpu cores : 2 apicid : 0 initial apicid : 0 fpu : yes fpu_exception : yes cpuid level : 22 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid mpx rdseed adx smap clflushopt xsaveopt xsavec arat bogomips : 4800.59 clflush size : 64 cache_alignment : 64 address sizes : 43 bits physical, 48 bits virtual power management:
5. 查看本機登錄用戶信息
若是咱們想要知道Linux服務器上目前已經登陸的用戶信息,可使用w或who命令來進行查詢。先看看w命令
[root@centos2 ~]# w 01:11:52 up 39 min, 1 user, load average: 0.01, 0.02, 0.05 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 192.168.80.1 00:38 0.00s 1.06s 0.04s w
第一行其實和top命令的第一行很是相似,主要顯示了系統當前時間,開機多久(up),有多少用戶登錄(users),1分鐘、5分鐘、15分鐘前的平均負載(load average)
第二行是項目的說明,第三行開始每行表明一個用戶。這些項目是
USER:登錄的用戶名
TTY:登錄終端
FROM:從哪一個IP地址登錄
LOGIN@:登錄時間
IDLE:用戶閒置時間
JCPU:指的是和該終端鏈接的全部進程佔用的CPU運算時間。這個時間不包括過去的後臺做業時間,但包括當前正在運行的後臺做業所佔用的時間
PCPU:指當前進程所佔用的CPU運算時間
WHAT:當前正在運行的命令
who命令比w命令稍微簡單一點,也能夠用來查看系統中已經登陸的用戶
[root@centos2 ~]# who root pts/0 2019-11-13 00:38 (192.168.80.1)
#用戶密碼 登錄終端 登錄時間(登錄來源IP)
6. uptime命令
uptime命令的做用就是顯示系統的啓動時間和平均負載,也就是top命令的第一行。其實w命令也能看到這一行的數據,具體原意使用哪一個命令看我的習慣
[root@centos2 ~]# uptime 01:19:02 up 46 min, 1 user, load average: 0.00, 0.01, 0.05
7. 查看系統與內存相關信息
咱們使用uname命令查看內核的相關信息
[root@centos2 ~]# uname [選項]
-a:查看系統全部相關信息
-r:查看內核版本
-s:查看內核名稱
若是咱們想要判斷當前系統的位數,能夠經過file命令來判斷系統文件(主要是系統命令)的位數來判斷系統的位數。
[root@centos2 ~]# file /bin/ls /bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=aaf05615b6c91d3cbb076af81aeff531c5d7dfd9, stripped