2.4 系統(tǒng)狀態(tài)檢測命令

2022-05-26 16:03 更新

作為一名合格的運維人員,想要更快、更好地了解Linux服務(wù)器,必須具備快速查看Linux系統(tǒng)運行狀態(tài)的能力,因此接下來會逐個講解與網(wǎng)卡網(wǎng)絡(luò)、系統(tǒng)內(nèi)核、系統(tǒng)負(fù)載、內(nèi)存使用情況、當(dāng)前啟用終端數(shù)量、歷史登錄記錄、命令執(zhí)行記錄以及救援診斷等相關(guān)命令的使用方法。這些命令都超級實用,還請讀者用心學(xué)習(xí),加以掌握。

1.ifconfig命令

ifconfig命令用于獲取網(wǎng)卡配置與網(wǎng)絡(luò)狀態(tài)等信息,格式為“ifconfig [網(wǎng)絡(luò)設(shè)備] [參數(shù)]”。

使用ifconfig命令來查看本機當(dāng)前的網(wǎng)卡配置與網(wǎng)絡(luò)狀態(tài)等信息時,其實主要查看的就是網(wǎng)卡名稱、inet參數(shù)后面的IP地址、ether參數(shù)后面的網(wǎng)卡物理地址(又稱為MAC地址),以及RX、TX的接收數(shù)據(jù)包與發(fā)送數(shù)據(jù)包的個數(shù)及累計流量(即下面加粗的信息內(nèi)容):

[root@linuxprobe ~]# ifconfig


    eno16777728: flags=4163  mtu 1500
        inet 192.168.10.10  netmask 255.255.255.0  broadcast 192.168.10.255
        inet6 fe80::20c:29ff:fec4:a409  prefixlen 64  scopeid 0x20
        ether 00:0c:29:c4:a4:09  txqueuelen 1000  (Ethernet)
        RX packets 36  bytes 3176 (3.1 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 38  bytes 4757 (4.6 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    lo: flags=73  mtu 65536


        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10
        loop  txqueuelen 0  (Local Loopback)
        RX packets 386  bytes 32780 (32.0 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 386  bytes 32780 (32.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

2.uname命令

uname命令用于查看系統(tǒng)內(nèi)核與系統(tǒng)版本等信息,格式為“uname [-a]”。

在使用uname命令時,一般會固定搭配上-a參數(shù)來完整地查看當(dāng)前系統(tǒng)的內(nèi)核名稱、主機名、內(nèi)核發(fā)行版本、節(jié)點名、系統(tǒng)時間、硬件名稱、硬件平臺、處理器類型以及操作系統(tǒng)名稱等信息。

[root@linuxprobe ~]# uname -a


Linux linuxprobe.com 3.10.0-123.el7.x86_64 #1 SMP Mon May 5 11:16:57 EDT 2017 x86_64 x86_64 x86_64 GNU/Linux

順帶一提,如果要查看當(dāng)前系統(tǒng)版本的詳細(xì)信息,則需要查看redhat-release文件,其命令以及相應(yīng)的結(jié)果如下:

[root@linuxprobe ~]# cat /etc/redhat-release


Red Hat Enterprise Linux Server release 7.0 (Maipo)

3.uptime命令

uptime用于查看系統(tǒng)的負(fù)載信息,格式為uptime。

uptime命令真的很棒,它可以顯示當(dāng)前系統(tǒng)時間、系統(tǒng)已運行時間、啟用終端數(shù)量以及平均負(fù)載值等信息。平均負(fù)載值指的是系統(tǒng)在最近1分鐘、5分鐘、15分鐘內(nèi)的壓力情況(下面加粗的信息部分);負(fù)載值越低越好,盡量不要長期超過1,在生產(chǎn)環(huán)境中不要超過5。

[root@linuxprobe ~]# uptime


22:49:55 up 10 min, 2 users, load average: 0.01, 0.19, 0.18

4.free命令

free用于顯示當(dāng)前系統(tǒng)中內(nèi)存的使用量信息,格式為“free [-h]”。

為了保證Linux系統(tǒng)不會因資源耗盡而突然宕機,運維人員需要時刻關(guān)注內(nèi)存的使用量。在使用free命令時,可以結(jié)合使用-h參數(shù)以更人性化的方式輸出當(dāng)前內(nèi)存的實時使用量信息。表2-8所示為在劉遄老師的電腦上執(zhí)行free -h命令之后的輸出信息。需要注意的是,輸出信息中的中文注釋是作者自行添加的內(nèi)容,實際輸出時沒有相應(yīng)的參數(shù)解釋。

[root@linuxprobe ~]# free -h

表2-8 執(zhí)行free -h命令后的輸出信息

內(nèi)存總量 已用量 空閑量 進程共享的內(nèi)存量 磁盤緩存的內(nèi)存量 緩存的內(nèi)存量 可用量
total used free shared buffers buff/cache available
Mem: 1.9Gi 1.4Gi 99Mi 20Mi 450Mi 348Mi
Swap: 2.0Gi 80Mi 1.9Gi

5.who命令

who用于查看當(dāng)前登入主機的用戶終端信息,格式為“who [參數(shù)]”。

這三個簡單的字母可以快速顯示出所有正在登錄本機的用戶的名稱以及他們正在開啟的終端信息。表2-9所示為執(zhí)行who命令后的結(jié)果。

[root@linuxprobe ~]# who

表2-9 執(zhí)行who命令的結(jié)果

登陸的用戶名 終端設(shè)備 登陸到系統(tǒng)的時間
root tty2 2020-07-24 06:26 (tty2)

6.last命令

last命令用于查看所有系統(tǒng)的登錄記錄,格式為“l(fā)ast [參數(shù)]”。

使用last命令可以查看本機的登錄記錄。但是,由于這些信息都是以日志文件的形式保存在系統(tǒng)中,因此黑客可以很容易地對內(nèi)容進行篡改。千萬不要單純以該命令的輸出信息而判斷系統(tǒng)有無被惡意入侵!

[root@linuxprobe ~]# last
root       pts/0       :0               Mon Aug  24 17:52   still  logged in
root       :0          :0               Mon Aug  24 17:52   still  logged in
(unknown   :0          :0               Mon Aug  24 17:50 - 17:52   (00:02)
reboot     system boot 3.10.0-123.el7.x Tue Aug  25 01:49 - 18:17   (-7:-32)
root       pts/0       :0               Mon Aug  24 15:40 - 08:54   (7+17:14)
root       pts/0       :0               Fri Jul  10 10:49 - 15:37   (45+04:47)
………………省略部分登錄信息………………

7.history命令

history命令用于顯示歷史執(zhí)行過的命令,格式為“history [-c]”。

history命令應(yīng)該是作者最喜歡的命令。執(zhí)行history命令能顯示出當(dāng)前用戶在本地計算機中執(zhí)行過的最近1000條命令記錄。如果覺得1000不夠用,還可以自定義/etc/profile文件中的HISTSIZE變量值。在使用history命令時,如果使用-c參數(shù)則會清空所有的命令歷史記錄。還可以使用“!編碼數(shù)字”的方式來重復(fù)執(zhí)行某一次的命令。總之,history命令有很多有趣的玩法等待您去開發(fā)。

[root@linuxprobe ~]# history


1 tar xzvf VMwareTools-9.9.0-2304977.tar.gz
2 cd vmware-tools-distrib/
3 ls
4 ./vmware-install.pl -d
5 reboot
6 df -h
7 cd /run/media/
8 ls
9 cd root/
10 ls
11 cd VMware\ Tools/
12 ls
13 cp VMwareTools-9.9.0-2304977.tar.gz /home
14 cd /home
15 ls
16 tar xzvf VMwareTools-9.9.0-2304977.tar.gz
17 cd vmware-tools-distrib/
18 ls
19 ./vmware-install.pl -d
20 reboot
21 history
[root@linuxprobe ~]# !15
anaconda-ks.cfg  Documents  initial-setup-ks.cfg  Pictures  Templates
Desktop          Downloads  Music                 Public    Videos

歷史命令會被保存到用戶home目錄中的.bash_history文件中。Linux系統(tǒng)中以點(.)開頭的文件均代表隱藏文件,這些文件大多數(shù)為系統(tǒng)服務(wù)文件,可以用cat命令查看其文件內(nèi)容。

[root@linuxprobe ~]# cat ~/.bash_history

要清空當(dāng)前用戶在本機上執(zhí)行的Linux命令歷史記錄信息,可執(zhí)行如下命令:

[root@linuxprobe ~]# history -c

8.sosreport命令

sosreport命令用于收集系統(tǒng)配置及架構(gòu)信息并輸出診斷文檔,格式為sosreport。

當(dāng)Linux系統(tǒng)出現(xiàn)故障需要聯(lián)系技術(shù)支持人員時,大多數(shù)時候都要先使用這個命令來簡單收集系統(tǒng)的運行狀態(tài)和服務(wù)配置信息,以便讓技術(shù)支持人員能夠遠(yuǎn)程解決一些小問題,亦或讓他們能提前了解某些復(fù)雜問題。在下面的輸出信息中,加粗的部分是收集好的資料壓縮文件以及校驗碼,將其發(fā)送給技術(shù)支持人員即可:

[root@linuxprobe ~]# sosreport
sosreport (version 3.0)
This command will collect diagnostic and configuration information from
this Red Hat Enterprise Linux system and installed applications.


An archive containing the collected information will be generated in
/var/tmp and may be provided to a Red Hat support representative.
Any information provided to Red Hat will be treated in accordance with
the published support policies at:


https://access.redhat.com/support/


The generated archive may contain data considered sensitive and its
content should be reviewed by the originating organization before being
passed to any third party.


No changes will be made to system configuration.
Press ENTER to continue, or CTRL-C to quit. 此處敲擊回車來確認(rèn)收集信息


Please enter your first initial and last name [linuxprobe.com]:此處敲擊回車來確認(rèn)主機編號
Please enter the case number that you are generating this report for:此處敲擊回車來確認(rèn)主機編號
Running plugins. Please wait ...
Running 70/70: yum...
Creating compressed archive...
Your sosreport has been generated and saved in:


/var/tmp/sosreport-linuxprobe.com-20170905230631.tar.xz
The checksum is: 79436cdf791327040efde48c452c6322
Please send this file to your support representative.
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號