国产99久久久国产精品成人免费_日韩 亚洲 制服 欧美 综合_亚洲国产中文激情在线一区_欧美特黄一级AAA免费看_51久久夜色精品国产水果派解说_欧美国产综合一区二区_另类小说 在线日韩 欧美_精品无码免费专区毛片_好爽好大www视频在线播放_国产色欲视频偷自精品一二

賦能企業(yè)發(fā)展數(shù)字化經(jīng)濟(jì)   7X24服務(wù)熱線:400-613-6156

Linux常用命令:系統(tǒng)狀態(tài)篇

發(fā)布時間:11-10      

Linux常用命令中,有些命令可以用于查看系統(tǒng)的狀態(tài),通過了解系統(tǒng)當(dāng)前的狀態(tài),能夠幫助我們更好地維護(hù)系統(tǒng)或定位問題。本文就簡單介紹一下這些命令。

1、查看系統(tǒng)運(yùn)行時間--uptime有時候我們想知道系統(tǒng)上一次復(fù)位是在什么時候或者系統(tǒng)已經(jīng)運(yùn)行了多長時間,我們可以通過uptime命令獲取這些信息:
  • uptime20:47:06 up 50 min, 1 user, load average: 0.75, 0.84, 0.93 
  • 從左往右顯示的信息依次為:當(dāng)前時間、已運(yùn)行時間、用戶登錄數(shù)、1分鐘、5分鐘和15分鐘內(nèi)系統(tǒng)的平均負(fù)載。
2、查看系統(tǒng)已登錄用戶--who
  • who -ahyb tty7 2018-09-30 19:57 (:0) 
  • 通過who命令可以查看到哪些用戶通過哪個ip登錄到了這臺主機(jī)。

3、查看系統(tǒng)版本相關(guān)信息--uname
  • uname -aLinux ubuntu16.04 4.15.0-34-generic #37~16.04.1-Ubuntu SMP Tue Aug 28 10:44:06 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux 
  • 從結(jié)果可以看到操作系統(tǒng)版本(ubuntu16.04),CPU類型(x86_64)等信息

4、查看當(dāng)前環(huán)境變量--export
環(huán)境變量影響著程序的運(yùn)行,因此有時候需要查看當(dāng)前環(huán)境的環(huán)境變量:
  • export 
5、查看目錄和文件占用空間--du
du命令直接顯示當(dāng)前目錄下每個目錄及其文件占用空間。結(jié)合--max-depth參數(shù)可以指定顯示的目錄層級。
例如,如果只想顯示當(dāng)前目錄下各個目錄所占總空間,可以使用:
du -h --max-depth=1  
19M        ./python 
9.0M        ./git 
321M        ./hexo 
17M        ./lua 
28K        ./vim 
1.4M        ./shell 
81M        ./redis 
316M        ./books 
48M        ./c 
810M        . 
du -sh     #僅統(tǒng)計(jì)當(dāng)前目錄總大小 
810M 
其中-h表示以易讀的單位顯示大小,即M,--max-depth=1表明目錄層級。通過命令結(jié)果,我們可以看到當(dāng)前目錄下各個子目錄占用空間大小,以及總空間大小。

6、查看各掛載點(diǎn)空間--df
例如:
df -h 
文件系統(tǒng)        容量  已用  可用 已用% 掛載點(diǎn) 
udev            3.9G     0  3.9G    0% /dev 
tmpfs           786M  9.5M  776M    2% /run 
/dev/sda10       24G  9.8G   13G   45% / 
tmpfs           3.9G   43M  3.8G    2% /dev/shm 
tmpfs           5.0M  4.0K  5.0M    1% /run/lock 
tmpfs           3.9G     0  3.9G    0% /sys/fs/cgroup 
/dev/sda11      454M  274M  153M   65% /boot 
/dev/sda15       55G  5.2G   47G   10% /home 
/dev/sda1       256M   31M  226M   12% /boot/efi 
/dev/sda14      4.6G  9.9M  4.4G    1% /tmp 
tmpfs           786M   60K  786M    1% /run/user/1000 
從結(jié)果中,我們可以看到各個掛載點(diǎn)總空間以及可用空間。當(dāng)磁盤文件占用空間較大時,可能導(dǎo)致系統(tǒng)運(yùn)行緩慢,因此,可根據(jù)該結(jié)果進(jìn)行相應(yīng)的磁盤清理。

7、查看內(nèi)存可用情況--free
free命令可用于顯示系統(tǒng)中可用的物理內(nèi)存,交換區(qū)內(nèi)存以及內(nèi)核使用的buffer:
free -h 
              total        used        free      shared  buff/cache   available 
Mem:           7.7G        2.3G        2.6G        268M        2.8G        4.7G 
Swap:          7.6G          0B        7.6G 
從執(zhí)行結(jié)果可以看到已用內(nèi)存和空閑內(nèi)存的情況。同樣地,當(dāng)內(nèi)存不足時,可能導(dǎo)致程序運(yùn)行異?;蛳到y(tǒng)卡頓。

8、查看進(jìn)程的內(nèi)存使用情況--pmap
pmap命令用于查看進(jìn)程內(nèi)存相關(guān)信息:
pmap pid    #pid為進(jìn)程id,可通過ps命令獲取 
6030:   ./main 
0000000000400000      4K r-x-- main 
0000000000600000      4K r---- main 
0000000000601000      4K rw--- main 
00000000017d2000    132K rw---   [ anon ] 
00007fc3843e8000   1792K r-x-- libc-2.23.so 
00007fc3845a8000   2048K ----- libc-2.23.so 
00007fc3847a8000     16K r---- libc-2.23.so 
00007fc3847ac000      8K rw--- libc-2.23.so 
00007fc3847ae000     16K rw---   [ anon ] 
00007fc3847b2000    152K r-x-- ld-2.23.so 
00007fc3849b9000     12K rw---   [ anon ] 
00007fc3849d7000      4K r---- ld-2.23.so 
00007fc3849d8000      4K rw--- ld-2.23.so 
00007fc3849d9000      4K rw---   [ anon ] 
00007ffcf2018000    132K rw---   [ stack ] 
00007ffcf2175000     12K r----   [ anon ] 
00007ffcf2178000      8K r-x--   [ anon ] 
ffffffffff600000      4K r-x--   [ anon ] 
 total             4356K 
我們可以根據(jù)進(jìn)程各部分占用空間情況,來不斷優(yōu)化我們的程序。

9、查看虛擬內(nèi)存統(tǒng)計(jì)信息--vmstat
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 2214960 407828 2572148    0    0   126    57  377 1006  8  2 88  2  0 
vmstat的輸出值能夠幫助我們了解當(dāng)前系統(tǒng)的性能。比如說,如果si(每秒從交換區(qū)寫到內(nèi)存的大小)和so(每秒寫入交換區(qū)的內(nèi)存大小)的值經(jīng)常大于0,說明內(nèi)存可能不夠用,因此才需要用到交換空間。再比如說,us(用戶進(jìn)程執(zhí)行時間百分比)的值比較高時,說明用戶進(jìn)程消耗的CPU資源較多。而wa(IO等待時間百分比)值較高時,說明IO等待情況嚴(yán)重。

10、查看ip地址--ip
有時候使用ifconfig命令并不一定能夠看到所有的ip地址,因此可以使用:
  • ip addr 

11、查看網(wǎng)絡(luò)連接狀態(tài)--netstat
netstat命令可以查看網(wǎng)絡(luò)連接狀態(tài),通常用于診斷網(wǎng)絡(luò)相關(guān)問題。例如查看端口是否被占用,連接是否已經(jīng)釋放,服務(wù)是否在監(jiān)聽等等。

12、查看進(jìn)程間關(guān)系--pstree
通過pstree命令可以看到進(jìn)程間的父子關(guān)系,它以樹形結(jié)構(gòu)顯示這些信息:
pstree 
systemd─┬─ModemManager─┬─{gdbus} 
        │              └─{gmain} 
        ├─NetworkManager─┬─dhclient 
        │                ├─dnsmasq 
        │                ├─{gdbus} 
        │                └─{gmain} 
        ├─accounts-daemon─┬─{gdbus} 
        │                 └─{gmain} 
        ├─acpid 
        ├─atd 
        ├─avahi-daemon───avahi-daemon 
        ├─bluetoothd 
        ├─colord─┬─{gdbus} 
        │        └─{gmain} 
        ├─cron 
        ├─cups-browsed─┬─{gdbus} 
        │              └─{gmain} 
        ├─cupsd───3*[dbus] 
        ├─dbus-daemon 
        ├─gnome-keyring-d─┬─{gdbus} 
        │                 ├─{gmain} 
        │                 └─{timer} 
(僅顯示部分內(nèi)容) 
總結(jié)
實(shí)際上,前面所提到的很多相關(guān)命令信息都是從系統(tǒng)文件中獲取的,例如/proc/meminfo保存了內(nèi)存相關(guān)信息,/proc/net/dev保存網(wǎng)絡(luò)流量相關(guān)信息。只是,它們都是靜態(tài)數(shù)值,但是我們可以結(jié)合watch命令來動態(tài)地觀察這些信息,例如:
watch -n 1 cat /proc/meminfo  
watch -n 1 cat /proc/net/dev 
上面的命令表示,每隔一秒執(zhí)行一次cat /proc/meminfo或cat /proc/net/dev,因此我們可以看到內(nèi)存信息或網(wǎng)卡流量信息在實(shí)時刷新。
本文僅介紹這些命令的經(jīng)典使用,更多使用可通過man 命令查看。通過前面這些系統(tǒng)自帶命令,我們可以比較方便地監(jiān)控系統(tǒng)狀態(tài),從而幫助我們維護(hù)系統(tǒng)或定位問題。