序言
如果大家都愛裝逼,一般會偏愛使用安裝最小化的liunx系統,那麼你的系統就不帶圖形化的桌面功能,這樣對于一個想裝B的初學者來說,Liunx就是黑漆馬虎,一望無際的黑屏,黑屏,如何快速的對liunx系統有個較為全面基礎的認識呢?答:繼續往下讀,哈哈。
本篇目的就是讓大家對linux系統有個全面的基礎認知。
主要内容:網絡,系統,cpu,記憶體,硬碟,程序等等常用的基礎資訊檢視與基礎功能設定。
Linux系統時間相關
檢視系統目前時間
[root@zlhpc ~]# date
2017年 02月 09日 星期四 03:20:45 CST
修改時間
[root@zlhpc sysconfig]# date -s "2016-02-09 15:15:00"
2016年 02月 09日 星期二 15:15:00 CST
[root@zlhpc sysconfig]# date
2016年 02月 09日 星期二 15:15:05 CST
同步網路時間
[root@zlhpc sysconfig]# ntpdate -u ntp.api.bz
9 Feb 15:56:21 ntpdate[4132]: step time server 17.253.68.253 offset 31624839.558211 sec
[root@zlhpc sysconfig]# date
2017年 02月 09日 星期四 15:56:27 CST
note1:ntp是網絡時間協定,主要用作同步計算機時間與伺服器時間一緻的。常見的ntp伺服器有:210.72.145.44(國家授時中心伺服器位址),ntp.api.bz(上海),time.nist.gov(美國),ntp.fudan.edu.cn(複旦),s1b.time.edu.cn(清華大學),等等。
note2:date指令設定時間隻有超級使用者才有,一般使用者隻能檢視,且修改玩之後要記得執行clock -w 指令,把系統時間寫入CMOS中。
Linux系統主機名與作業系統相關資訊
顯示系統主機名
[root@zlhpc sysconfig]# hostname
zlhpc
修改主機名,需要同時修改/etc/hosts和/etc/sysconfig/network,且修改完之後需重新開機機器生效且永久儲存,使用hostname指令隻能臨時修改不能永久有效。
[root@zlhpc sysconfig]# vim /etc/hostname
-v:詳細資訊模式;
-a:顯示主機名稱;
-d:顯示DNS域名;
-f:顯示FQDN名稱;
-i:顯示主機的ip位址;
-s:顯示短主機名稱,在第一個點處截斷;
-y:顯示NIS域名。
uname檢視作業系統相關資訊
[root@zlhpc /]# uname -a
Linux zlhpc 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
資料依次為:核心名稱,主機名,核心版本号,核心版本,硬體名,處理器類型,硬體平台類型,作業系統名稱
參數如下
- -m或–machine 顯示主機的硬體(CPU)名
- -n或-nodename 顯示主機在網絡節點上的名稱或主機名稱
- -r或–release 顯示linux作業系統核心版本号
- -s或–sysname 顯示linux核心名稱
- -v 顯示顯示作業系統是第幾個 version 版本
- -p 顯示處理器類型或unknown
- -i 顯示硬體平台類型或unknown
- -o 顯示作業系統名
- –help 獲得幫助資訊
- –version 顯示uname版本資訊
其他幾種出去啊看Linux版本資訊的方法
[root@zlhpc /]# cat /proc/version
Linux version 3.10.0-327.el7.x86_64 ([email protected]) (gcc version 4.8.3 20140911 (Red Hat 4.8.3-9) (GCC) ) #1 SMP Thu Nov 19 22:10:57 UTC 2015
[root@zlhpc /]# cat /etc/issue
\S
Kernel \r on an \m
[root@zlhpc /]# lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch:cxx-4.1-amd64:cxx-4.1-noarch:desktop-4.1-amd64:desktop-4.1-noarch:languages-4.1-amd64:languages-4.1-noarch:printing-4.1-amd64:printing-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.2.1511 (Core)
Release: 7.2.1511
Codename: Core
Linux系統檢視cpu資訊
[root@zlhpc /]# grep "model name" /proc/cpuinfo #檢視cpu資訊
model name : Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz
[root@zlhpc /]# more /proc/cpuinfo #檢視cpu資訊
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 60
model name : Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz
stepping : 3
microcode : 0x1e
cpu MHz : 3591.678
cache size : 8192 KB
physical id : 0
siblings : 1
core id : 0
cpu cores : 1
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 13
[root@zlhpc /]# getconf LONG_BIT #檢視cpu位數
64
Linux系統使用者與使用者組
使用者與組分類,根據帳号或組的位置都可以分為:本地帳号|組,遠端(域)帳号|組 ,LDAP,NIS
根據帳号|組的功能分類可以分為:超級使用者(root) uid:0 ,普通使用者。普通使用者又分為:系統帳号(uid範圍:1-499,1-99:由distributions自行建立的系統帳号,100-499:若使用者有系統帳号的需求時,可以使用的帳号uid)和可登入帳号(uid範圍:500+)
關于系統使用者群組的相關配置檔案放在系統的一下檔案中:
使用者的帳号資訊:/etc/passwd 使用者的密碼資訊:/etc/shadow
使用者組資訊:/etc/group 組的密碼資訊:/etc/gshadow
那麼下面我們一一打開這些檔案來看看他們到底存放啦那些内容,格式是什麼樣的,我們又該怎麼解讀。
[root@zlhpc home]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
avahi-autoipd:x:170:170:Avahi IPv4LL Stack:/var/lib/avahi-autoipd:/sbin/nologin
systemd-bus-proxy:x:999:997:systemd Bus Proxy:/:/sbin/nologin
systemd-network:x:998:996:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:997:995:User for polkitd:/:/sbin/nologin
tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
rpc:x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologin
abrt:x:173:173::/etc/abrt:/sbin/nologin
libstoragemgmt:x:996:994:daemon account for libstoragemgmt:/var/run/lsm:/sbin/nologin
chrony:x:995:993::/var/lib/chrony:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
rabbitmq:x:994:992:RabbitMQ messaging server:/var/lib/rabbitmq:/bin/bash
nginx:x:993:991:Nginx web server:/var/lib/nginx:/sbin/nologin
每一行都代表一個使用者,每一行中的冒号(:)代表分割符,那我們拿第一行做一個解讀,如下:
root:x:0:0:root:/root:/bin/bash
- root:使用者名
- x:密碼占位符
- UID
- GID
- 使用者描述
- 使用者主檔案夾
- 登入後使用的shell./sbin/nologin此shell會讓該使用者無法登入。
檢視系統中支援那些shell:
[root@zlhpc home]# cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
/bin/tcsh
/bin/csh
接下來我們看下使用者關于密碼的配置檔案:
[root@zlhpc home]# cat /etc/shadow
root:$6$zVDR2oO1Yg7alTbs$.70PPMYxg70k9BvLtjHdm94CDA1YWDRDI5NFzSfcmZF5WMESgIbLUdnqRjuVycg481Ny9rl//YzAFnXhurQi//::0:99999:7:::
bin:*:16659:0:99999:7:::
daemon:*:16659:0:99999:7:::
adm:*:16659:0:99999:7:::
lp:*:16659:0:99999:7:::
sync:*:16659:0:99999:7:::
shutdown:*:16659:0:99999:7:::
halt:*:16659:0:99999:7:::
mail:*:16659:0:99999:7:::
operator:*:16659:0:99999:7:::
games:*:16659:0:99999:7:::
ftp:*:16659:0:99999:7:::
nobody:*:16659:0:99999:7:::
avahi-autoipd:!!:17203::::::
systemd-bus-proxy:!!:17203::::::
systemd-network:!!:17203::::::
dbus:!!:17203::::::
polkitd:!!:17203::::::
tss:!!:17203::::::
postfix:!!:17203::::::
sshd:!!:17203::::::
rpc:!!:17204:0:99999:7:::
abrt:!!:17204::::::
libstoragemgmt:!!:17204::::::
chrony:!!:17204::::::
ntp:!!:17204::::::
tcpdump:!!:17204::::::
rabbitmq:!!:17204::::::
nginx:!!:17204::::::
依然拿出第一行做一下解讀:
root:$6$zVDR2oO1Yg7alTbs$.70PPMYxg70k9BvLtjHdm94CDA1YWDRDI5NFzSfcmZF5WMESgIbLUdnqRjuVycg481Ny9rl//YzAFnXhurQi//::0:99999:7:::
- $6$zVDR2oO1Yg7alTbs$.70PPMYxg70k9BvLtjHdm94CDA1YWDRDI5NFzSfcmZF5WMESgIbLUdnqRjuVycg481Ny9rl//YzAFnXhurQi//:root使用者用sha512加密過的使用者密碼
- 最近更改密碼的日期,從19700101開始計算至修改密碼那天的累積天數。
- 0:密碼不能更改的天數,最近更改過後幾年之後才能被再次更改,0表示可以随意随時修改。
- 99999:密碼的過期時間,密碼在多少天後必須被修改。
- 7:系統需要在密碼過期的的前7天發出密碼即将過期的警告。
- 寬限天數,密碼過啦幾天後還能修改密碼。
- 帳号過期時間
- 保留字段,目前沒有用到。
檢視關于組的配置檔案,如下:
[root@zlhpc home]# head -n 4 /etc/group
root:x:0:
bin:x:1:
daemon:x:2:
sys:x:3:
root:x:0:
- root:使用者組名稱
- x:使用者組密碼的占位符
- 0:使用者組的GID
- 此使用者組支援的帳号名稱。
接下來我們來看下帳号管理,關于帳号的增删改查操作
1、添加使用者
[root@zlhpc home]# useradd zhanglonghao
[root@zlhpc home]# useradd zhanglonghao1
useradd (選項)(參數)
- -c<備注>:加上備注文字。備注文字會儲存在passwd的備注欄位中;
- -d<登入目錄>:指定使用者登入時的啟始目錄;
- -D:變更預設值;
- -e<有效期限>:指定帳号的有效期限;
- -f<緩沖天數>:指定在密碼過期後多少天即關閉該帳号;
- -g<群組>:指定使用者所屬的群組;
- -G<群組>:指定使用者所屬的附加群組;
- -m:自動建立使用者的登入目錄;
- -M:不要自動建立使用者的登入目錄;
- -n:取消建立以使用者名稱為名的群組;
- -r:建立系統帳号;
- -s:指定使用者登入後所使用的shell;
- -u:指定使用者id。
修改使用者資訊,參數選項和添加一緻。
[root@zlhpc home]# usermod zhanglonghao -u 1005
[root@zlhpc home]# id zhanglonghao
uid=1005(zhanglonghao) gid=1000(zhanglonghao) 組=1000(zhanglonghao)
删除使用者
[root@zlhpc home]# userdel zhanglonghao2 -rf
userdel,參數如下:如果不加下面的參數進行直接删除,則使用者删除,使用者的目錄與檔案依舊保留。
- -f:強制删除使用者,即使使用者目前已登入;
- -r:删除使用者的同時,删除與使用者相關的所有檔案。
把某個使用者添加到哪個組中:示例把使用者zhanglonghao添加到zhanglonghao1的組中,且也在原有的組中不被删除,這是必須加 -a意思是附加的意思,如下:
[root@zlhpc home]# usermod zhanglonghao -a -G zhanglonghao1
[root@zlhpc home]# groups zhanglonghao
zhanglonghao : zhanglonghao zhanglonghao1
id檢視使用者的id資訊
[root@zlhpc home]# id zhanglonghao
uid=1005(zhanglonghao) gid=1000(zhanglonghao) 組=1000(zhanglonghao),1001(zhanglonghao1)
檢視目前登入系統的使用者資訊
[root@zlhpc home]# who
root pts/0 2017-02-12 15:01 (172.18.8.196)
[root@zlhpc home]# users
root
[root@zlhpc home]# id -un
root
[root@zlhpc home]# whoami
root
[root@zlhpc home]# who
root pts/0 2017-02-12 15:01 (172.18.8.196)
[root@zlhpc home]# w
16:51:15 up 1:50, 1 user, load average: 0.00, 0.01, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 172.18.8.196 15:01 3.00s 0.44s 0.01s w
我們針對w這個指令做個解釋
- user:使用者名
- tty:使用者的機器名或tty号
- from:遠端主機的位址
- login@:使用者登入系統的時間
- idle:空閑時間
- jcpu:附加到tty(終端)的程序所用的時間(JCPU時間)
- pcpu:目前程序所用時間(PCPU時間)
- what:使用者目前正在使用的指令
參數為 -h :忽略頭檔案資訊, -u:顯示結果的加載時間 , -s :不顯示JCPU,PCPU,登陸時間。
Liunx網絡的基本操作
打開網頁:curl
[root@zlhpc ~]# curl www.baidu.com
<!DOCTYPE html>
<!--STATUS OK--><html> <head><meta http-equiv=content-type content=text/html;charset=utf-8><meta http-equiv=X-UA-Compatible content=IE=Edge><meta content=always name=referrer><link rel=stylesheet type=text/css href=http://s1.bdstatic.com/r/www/cache/bdorz/baidu.min.css><title>百度一下,你就知道</title></head> <body link=#0000cc> <div id=wrapper> <div id=head> <div class="head_wrapper"> <div class="s_form"> <div class="s_form_wrapper"> <div id=lg> <img hidefocus=true src=//www.baidu.com/img/bd_logo1.png width=270 height=129> </div> <form id=form name=f action=//www.baidu.com/s class="fm"> <input type=hidden name=bdorz_come value=1> <input type=hidden name=ie value=utf-8> <input type=hidden name=f value=8> <input type=hidden name=rsv_bp value=1> <input type=hidden name=rsv_idx value=1> <input type=hidden name=tn value=baidu><span class="bg s_ipt_wr"><input id=kw name=wd class="s_ipt" value maxlength=255 autocomplete=off autofocus></span><span class="bg s_btn_wr"><input type=submit id=su value=百度一下 class="bg s_btn"></span> </form> </div> </div> <div id=u1> <a href=http://news.baidu.com name=tj_trnews class="mnav">新聞</a> <a href=http://www.hao123.com name=tj_trhao123 class="mnav">hao123</a> <a href=http://map.baidu.com name=tj_trmap class="mnav">地圖</a> <a href=http://v.baidu.com name=tj_trvideo class="mnav">視訊</a> <a href=http://tieba.baidu.com name=tj_trtieba class="mnav">貼吧</a> <noscript> <a href=http://www.baidu.com/bdorz/login.gif?login&tpl=mn&u=http%3A%2F%2Fwww.baidu.com%2f%3fbdorz_come%3d1 name=tj_login class="lb">登入</a> </noscript> <script>document.write('<a href="http://www.baidu.com/bdorz/login.gif?login&tpl=mn&u='+ encodeURIComponent(window.location.href+ (window.location.search === "" ? "?" : "&")+ "bdorz_come=1")+ '" name="tj_login" class="lb">登入</a>');</script> <a href=//www.baidu.com/more/ name=tj_briicon class="bri" style="display: block;">更多産品</a> </div> </div> </div> <div id=ftCon> <div id=ftConw> <p id=lh> <a href=http://home.baidu.com>關于百度</a> <a href=http://ir.baidu.com>About Baidu</a> </p> <p id=cp>©2017 Baidu <a href=http://www.baidu.com/duty/>使用百度前必讀</a> <a href=http://jianyi.baidu.com/ class="cp-feedback">意見回報</a> 京ICP證030173号 <img src=//www.baidu.com/img/gs.gif> </p> </div> </div> </div> </body> </html>
下載下傳檔案:wget
[root@zlhpc ~]# wget http://download.redis.io/releases/redis-3.0.6.tar.gz
linux下的文本浏覽器:w3m與links
[root@zlhpc ~]# w3m www.baidu.com
[root@zlhpc ~]# links www.baidu.com
檢查你的網絡與另外一台機器是否互通:ping
[root@zlhpc ~]# ping www.baidu.com
做路由圖提供我們分析哪裡出現故障或者是否存在網絡擁塞情況:mtr
[root@zlhpc ~]# mtr
[root@zlhpc ~]# mtr -r -c 30 www.baidu.com #每秒發送資料包的數量是30 ,mtr -r -c 30 -s 1024 www.baidu.com #ping包的大小為1024個位元組
Start: Sun Feb 12 18:01:09 2017
HOST: zlhpc Loss% Snt Last Avg Best Wrst StDev
1.|-- ??? 100.0 30 0.0 0.0 0.0 0.0 0.0
2.|-- 116.236.169.77 0.0% 30 4179. 9116. 4179. 11973 2051.2
3.|-- 124.74.124.165 0.0% 30 1.9 3.6 1.7 5.4 1.0
4.|-- 124.74.210.101 0.0% 30 4.1 4.5 2.4 6.1 1.0
5.|-- 59.43.77.141 0.0% 30 20.1 18.1 7.4 54.5 8.2
6.|-- 59.43.80.94 0.0% 30 4.3 6.0 2.7 24.3 3.6
7.|-- 202.97.26.2 86.7% 30 5.1 5.2 5.0 5.4 0.0
8.|-- 220.191.200.30 0.0% 30 5.9 5.5 5.1 7.0 0.3
9.|-- ??? 100.0 30 0.0 0.0 0.0 0.0 0.0
10.|-- 115.239.209.2 0.0% 30 6.8 7.1 6.6 8.0 0.0
11.|-- ??? 100.0 30 0.0 0.0 0.0 0.0 0.0
12.|-- 115.239.210.27 0.0% 30 6.1 6.5 5.6 11.7 1.4
- 第一列:顯示的是IP位址和本機域名,這點和tracert很像。
- 第二列 Loss%:是顯示的每個對應IP的丢包率。
- 第三列 snt:snt等于10,設定每秒發送資料包的數量,預設值是10 可以通過參數 -c來指定。
- 第四列 Last:顯示的最近一次的傳回時延。
- 第五列 Avg:平均值,這個應該是發送ping包的平均時延。
- 第六列 Best:最好或者說時延最短的時間。
- 第七列 Wrst:最壞或者說時延最長的時間。
- 第八列 StDev:标準偏差。
mtr參數如下:
- -h 提供幫助指令
- -v 顯示mtr的版本資訊
- -r 已報告模式顯示
- -c 設定每秒發送資料包的數量
- -s 用來指定ping資料包的大小
- -n no-dns不對IP位址做域名解析
- -a 來設定發送資料包的IP位址 這個對一個主機由多個IP位址是有用的
- -i 使用這個參數來設定ICMP傳回之間的要求預設是1秒
- -4 IPv4
- -6 IPv6
DNS查詢,如果是參數是域名輸出關聯ip,如果參數是ip輸出關聯的域名:host
[root@zlhpc ~]# host www.baidu.com
www.baidu.com is an alias for www.a.shifen.com.
www.a.shifen.com has address 115.239.211.112
www.a.shifen.com has address 115.239.210.27
出網絡接口配置、調優和debug的各種選項:ifconfig
[root@zlhpc ~]# ifconfig
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.18.8.190 netmask 255.255.255.0 broadcast 172.18.8.255
inet6 fe80::20c:29ff:feb5:d2d8 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:b5:d2:d8 txqueuelen 1000 (Ethernet)
RX packets 10916 bytes 7044121 (6.7 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 7267 bytes 774719 (756.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 318 bytes 32844 (32.0 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 318 bytes 32844 (32.0 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
關于ip的指令
[root@zlhpc ~]# ip link show #檢視所有網絡接口屬性資訊
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
link/ether 00:0c:29:b5:d2:d8 brd ff:ff:ff:ff:ff:ff
[root@zlhpc ~]# ip -s link show #檢視所有統計資訊
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
RX: bytes packets errors dropped overrun mcast
32844 318 0 0 0 0
TX: bytes packets errors dropped carrier collsns
32844 318 0 0 0 0
2: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
link/ether 00:0c:29:b5:d2:d8 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
7050452 10988 0 0 0 0
TX: bytes packets errors dropped carrier collsns
780097 7309 0 0 0 0
[root@zlhpc ~]# ip addr show #檢視網絡資訊
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:b5:d2:d8 brd ff:ff:ff:ff:ff:ff
inet 172.18.8.190/24 brd 172.18.8.255 scope global dynamic eno16777736
valid_lft 83120sec preferred_lft 83120sec
inet6 fe80::20c:29ff:feb5:d2d8/64 scope link
valid_lft forever preferred_lft forever
這裡簡單介紹下,以後會有深入介紹。
ifdown與ifup分别是禁用與啟用摸個網絡接口
[root@zlhpc ~]# ifdown eno16777736
[root@zlhpc ~]# ifup eno16777736
netstat指令檢視網絡資訊
netstat指令是一個監控TCP/IP網絡的非常有用的工具,它可以顯示路由表、實際的網絡連接配接以及每一個網絡接口裝置的,netstat指令的功能是顯示網絡連接配接、路由表和網絡接口資訊,可以讓使用者得知目前都有哪些網絡連接配接正在運作。
netstat [選項]
- -a 顯示所有socket,包括正在監聽的。
- -c 每隔1秒就重新顯示一遍,直到使用者中斷它。
- -i 顯示所有網絡接口的資訊,格式同“ifconfig -e”。
- -n 以網絡IP位址代替名稱,顯示出網絡連接配接情形
- -r 顯示核心路由表,格式同“route -e”。
- -t 顯示TCP協定的連接配接情況。
- -u 顯示UDP協定的連接配接情況。
- -v 顯示正在進行的工作。
- -p 顯示建立相關連結的程式名
列出所有連接配接
[root@zlhpc ~]# netstat -a --列出所有連接配接
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:sunrpc 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:ssh 0.0.0.0:* LISTEN
tcp 0 0 localhost:smtp 0.0.0.0:* LISTEN
隻列出tcp或者udp協定的連接配接
[root@zlhpc ~]# netstat -at
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:sunrpc 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:ssh 0.0.0.0:* LISTEN
tcp 0 0 localhost:smtp 0.0.0.0:* LISTEN
[root@zlhpc ~]# netstat -au
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
udp 0 0 0.0.0.0:18604 0.0.0.0:*
udp 0 0 localhost:323 0.0.0.0:*
udp 0 0 0.0.0.0:bootpc 0.0.0.0:*
udp6 0 0 localhost:323 [::]:*
udp6 0 0 [::]:53744 [::]:*
禁用反向域名解析,加快查詢速度
[root@zlhpc ~]# netstat -ant
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp 0 52 172.18.8.190:22 172.18.8.196:51171 ESTABLISHED
tcp 0 0 172.18.8.190:22 172.18.8.196:49639 ESTABLISHED
隻列出監聽中的連接配接
[root@zlhpc ~]# netstat -tnl
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp6 0 0 :::111 :::* LISTEN
tcp6 0 0 :::22 :::* LISTEN
tcp6 0 0 ::1:25 :::* LISTEN
擷取程序名,程序号以及使用者id
[root@zlhpc ~]# netstat -nlpt
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/systemd
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1538/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2094/master
tcp6 0 0 :::111 :::* LISTEN 1/systemd
tcp6 0 0 :::22 :::* LISTEN 1538/sshd
tcp6 0 0 ::1:25 :::* LISTEN 2094/master
[root@zlhpc ~]# netstat -ltpe
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State User Inode PID/Program name
tcp 0 0 0.0.0.0:sunrpc 0.0.0.0:* LISTEN root 16299 1/systemd
tcp 0 0 0.0.0.0:ssh 0.0.0.0:* LISTEN root 21179 1538/sshd
tcp 0 0 localhost:smtp 0.0.0.0:* LISTEN root 22083 2094/master
tcp6 0 0 [::]:sunrpc [::]:* LISTEN root 16298 1/systemd
tcp6 0 0 [::]:ssh [::]:* LISTEN root 21189 1538/sshd
tcp6 0 0 localhost:smtp [::]:* LISTEN root 22084 2094/master
網絡報統計情況
[root@zlhpc ~]# netstat -s
Ip:
7872 total packets received
0 forwarded
0 incoming packets discarded
6932 incoming packets delivered
7284 requests sent out
60 dropped because of missing route
Icmp:
260 ICMP messages received
1 input ICMP message failed.
ICMP input histogram:
destination unreachable: 1
timeout in transit: 214
echo requests: 1
echo replies: 44
409 ICMP messages sent
0 ICMP messages failed
ICMP output histogram:
destination unreachable: 33
echo request: 12
echo replies:
... OUTPUT TRUNCATED ...
持續輸出 -c持續輸出tcp協定資訊
[root@zlhpc ~]# netstat -ct
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 52 zlhpc:ssh localhost:51171 ESTABLISHED
tcp 0 0 zlhpc:ssh localhost:49639 ESTABLISHED
iftop工具實時監控linux系統的網絡流量資訊
最後上一個簡單的實時流量監控工具:iftop ,它可以用來監控實時流量,反向解析ip,顯示端口等。使用需先安裝iftop,官網位址:http://www.ex-parrot.com/~pdw/iftop/
不過還有很多類似的軟體,我們放在以後讨論。
[root@zlhpc ~]# iftop
interface: eno16777736
IP address is: 172.18.8.190
MAC address is: 00:0c:29:b5:d2:d8
常用參數指令:
-
-i設定監測的網卡,如:# iftop -i eth1
-
-B 以bytes為機關顯示流量(預設是bits),如:# iftop -B
-
-n使host資訊預設直接都顯示IP,如:# iftop -n
-
-N使端口資訊預設直接都顯示端口号,如: # iftop -N
-
-F顯示特定網段的進出流量,如# iftop -F 10.10.1.0/24或# iftop -F 10.10.1.0/255.255.255.0
-
-h(display this message),幫助,顯示參數資訊
-
-p使用這個參數後,中間的清單顯示的本地主機資訊,出現了本機以外的IP資訊;
-
-b使流量圖形條預設就顯示;
-
-f這個暫時還不太會用,過濾計算包用的;
-
-P使host資訊及端口資訊預設就都顯示;
-
-m設定界面最上邊的刻度的最大值,刻度分五個大段顯示,例:# iftop -m 100M
圖解:
- 界面頭部:流量刻度尺,對應下邊每行的白色橫條。
- 界面中部:左邊為伺服器;中間為外網IP,左箭頭流入,右箭頭流出;右邊為2s 10s 40s 的流量情況。
- 界面下部:TX:發送流量 ,RX:接收流量 ,TOTAL:總流量 ,Cumm:運作iftop到目前時間的總流量 ,peak:流量峰值 ,rates:分别表示過去 2s 10s 40s 的平均流量
界面指令:
- 按h切換是否顯示幫助;
- 按n切換顯示本機的IP或主機名;
- 按s切換是否顯示本機的host資訊;
- 按d切換是否顯示遠端目标主機的host資訊;
- 按t切換顯示格式為2行/1行/隻顯示發送流量/隻顯示接收流量;
- 按N切換顯示端口号或端口服務名稱;
- 按S切換是否顯示本機的端口資訊;
- 按D切換是否顯示遠端目标主機的端口資訊;
- 按p切換是否顯示端口資訊;
- 按P切換暫停/繼續顯示;
- 按b切換是否顯示平均流量圖形條;
- 按B切換計算2秒或10秒或40秒内的平均流量;
- 按T切換是否顯示每個連接配接的總流量;
- 按l打開螢幕過濾功能,輸入要過濾的字元,比如ip,按回車後,螢幕就隻顯示這個IP相關的流量資訊;
- 按L切換顯示畫面上邊的刻度;刻度不同,流量圖形條會有變化;
- 按j或按k可以向上或向下滾動螢幕顯示的連接配接記錄;
- 按1或2或3可以根據右側顯示的三列流量資料進行排序;
- 按<根據左邊的本機名或IP排序;
- 按>根據遠端目标主機的主機名或IP排序;
- 按o切換是否固定隻顯示目前的連接配接;
- 按f可以編輯過濾代碼,這是翻譯過來的說法,我還沒用過這個!
- 按!可以使用shell指令,這個沒用過!沒搞明白啥指令在這好用呢!
- 按q退出監控。
Linux系統的硬碟存儲與tree工具
整個系統的存儲情況
[root@zlhpc ~]# df -h
檔案系統 容量 已用 可用 已用% 挂載點
/dev/mapper/centos-root 18G 2.1G 16G 12% /
devtmpfs 479M 0 479M 0% /dev
tmpfs 489M 0 489M 0% /dev/shm
tmpfs 489M 6.7M 483M 2% /run
tmpfs 489M 0 489M 0% /sys/fs/cgroup
/dev/sda1 497M 124M 374M 25% /boot
tmpfs 98M 0 98M 0% /run/user/0
某個檔案或檔案夾大小
[root@zlhpc usr]# du --max-depth=1 -h
108M ./bin
46M ./sbin
390M ./lib
417M ./lib64
517M ./share
0 ./etc
0 ./games
35M ./include
78M ./libexec
51M ./local
55M ./src
1.7G .
du的相關參數如下:
- -a 顯示所有檔案及目錄大小,遞歸顯示
- --apparent-size 顯示檔案及目錄展現大小,而非磁盤占用量。
- -B,--block-size='SIZE' 顯示塊的數量,引号中的size表示系統的塊尺寸。
- -b 以byte的方式顯示檢視對象大小,相當于--apparent-size --block-size=1
- -c 計總并以total表面總數
- -D 計算不包含連結檔案
- -H 類似于--si 以1000為計算機關計算檔案及目錄的磁盤占用量
- -h 人類可讀的模式(K,M,G)
- --si 以1000取代1024換算機關
- -k 類似于--block-size=1k指定塊大小為1k,計算檔案目錄大小。
- -l, --count-links 多次計算如果包含硬連結
- -m 類似于--block-size=1M指定塊大小為1M,計算檔案目錄大小。
- -L, --dereference 和-D參數不同,忽略所有連結對象(檔案,目錄)
- -P, --no-dereference 預設參數,不
- -0 用0位元組替代換行符
- -S, --separate-dirs 不包含子目錄的大小
- -s, --summarize 僅顯示目前目錄級下每個對象的總大小
- -x, --one-file-system 跳過那些在不同檔案系統上的目錄。
- -X FILE, --exclude-from=FILE 不包含比對的對象,這裡的FILE是使用者指定的檔案對象
- --exclude=PATTERN
- --max-depth= 顯示目錄級的深度--max-depth=0相當于--summarize
- --time 顯示目錄中檔案的或子目錄最後的改動時間
- --time=WORD 以關鍵詞 WORD顯示時間,包含:atime,access,use,ctime,status
- --time-style=STYLE 調整顯示時間格式,格式包含full-iso, long-iso, iso, +FORMAT(該格式來自于date指令)
- --help 幫助
- --version 版本資訊
使用tree工具,檢視樹形目錄結構,首先先安裝tree工具
[root@zlhpc usr]# tree -L 3 src #列出src層數為3以内的所有檔案
src
├── debug
└── kernels
└── 3.10.0-514.6.1.el7.x86_64
├── arch
├── block
├── crypto
├── drivers
├── firmware
tree常用參數:
-d:僅顯示目錄
-a:顯示所有
-f:顯示完整路徑
-L n :n為數字,表示要現實幾層。
程序資源的實時占用狀況,Linux中的任務管理器:top
top預設3秒重新整理一次,按空格立即重新整理,q:退出,M:按記憶體排序,P:按cpu排序,<>:翻頁 。
top - 21:32:45 up 6:31, 2 users, load average: 0.01, 0.02, 0.05
Tasks: 348 total, 2 running, 346 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.3 us, 0.3 sy, 0.0 ni, 99.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 1001332 total, 321616 free, 166176 used, 513540 buff/cache
KiB Swap: 2097148 total, 2097148 free, 0 used. 596688 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
3865 root 20 0 146296 2272 1452 R 0.7 0.2 0:00.62 top
1 root 20 0 126416 7184 2608 S 0.0 0.7 0:02.43 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.06 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:00.37 ksoftirqd/0
6 root 20 0 0 0 0 S 0.0 0.0 0:00.98 kworker/u256:0
7 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh
9 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/0
10 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/1
11 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/2
12 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/3
13 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/4
統計講解:
第一行的統計資訊與指令uptime指令執行結果一緻,依次為:
- 21:32:45 :目前時間
- 6:31 :系統運作時間
- 2 users:目前登入使用者數
- load average: 0.01, 0.02, 0.05 :系統負載,即任務隊列的平均長度:1分鐘,5分鐘,15分鐘前到現在的平均值。一般來說,每個cpu核心目前活動程序不大于3,則系統運作表現良好。當然這裡說的是每個cpu核心,也就是如果你的主機是8核的話,那麼uptime輸出的最後一串字元應小于8*3=24即表示系統負載不是很嚴重。
第二、三行為程序和cpu的資訊,當有多個cpu時,這些内容可能會超過2行,内容如下:
- Tasks: 348 total:程序總數
- 2 running:正在運作的程序數
- 346 sleeping:睡眠的程序數
- 0 stopped:停止的程序數
- 0 zombie :僵屍程序數
- %Cpu(s) 0.3 us:系統使用者程序使用cpu百分比,不包括調高優先級的程序。cpu%是由每個核的cpu占用率之和計算出來的,如果是4核,核1使用率為100%,核2cpu使用率為100%,則會出現cpu高于100%的現象,最終為200%。
- 0.3 sy :核心空間占用cpu百分比
- 0.0 ni :使用者程序空間内改變過優先級的程序占用cpu百分比
- 99.3 id :空閑cpu百分比
- 0.0 wa :等待輸入輸出的cpu時間百分比
- 0.0 hi :硬體cpu中斷占用百分比
- 0.0 si :軟中斷占用百分比
- 0.0 st :虛拟機占用百分比
第四、五行為記憶體資訊
- KiB Mem : 1001332 total :物力記憶體總量
- 321616 free :空閑記憶體總量
- 166176 used :使用實體記憶體總量
- 513540 buff/cache :用作核心緩存的記憶體量,和free -k 指令一個意思
- KiB Swap: 2097148 total :交換區總量
- 2097148 free :空閑交換區總量
- 0 used :使用交換區總量
- 596688 avail Mem :緩沖的交換區總量,記憶體中的内容被換出到交換區,而後又被換入到記憶體,但使用過的交換區尚未被覆寫,該數值即為這些内容已存在于記憶體中的交換區的大小,相應的記憶體再次被換出時可不必再對交換區寫入。
第六列頭标題詳細
- PID :程序id
- PPID :父程序id
- RUSER :Real user name
- UID : 程序所有者的使用者id
- USER : 程序所有者的使用者名
- GROUP : 程序所有者的組名
- TTY : 啟動程序的終端名。不是從終端啟動的程序則顯示為 ?
- PR : 優先級
- NI : nice值。負值表示高優先級,正值表示低優先級
- P : 最後使用的CPU,僅在多CPU環境下有意義
- %CPU : 上次更新到現在的CPU時間占用百分比
- TIME : 程序使用的CPU時間總計,機關秒
- TIME+ : 程序使用的CPU時間總計,機關1/100秒
- %MEM : 程序使用的實體記憶體百分比
- VIRT : 程序使用的虛拟記憶體總量,機關kb。VIRT=SWAP+RES
- SWAP : 程序使用的虛拟記憶體中,被換出的大小,機關kb。
- RES: 程序使用的、未被換出的實體記憶體大小,機關kb。RES=CODE+DATA
- CODE: 可執行代碼占用的實體記憶體大小,機關kb
- DATA : 可執行代碼以外的部分(資料段+棧)占用的實體記憶體大小,機關kb
- SHR : 共享記憶體大小,機關kb
- nFLT: 頁面錯誤次數
- nDRT : 最後一次寫入到現在,被修改過的頁面數。
- S : 程序狀态(D=不可中斷的睡眠狀态,R=運作,S=睡眠,T=跟蹤/停止,Z=僵屍程序)
- COMMAND :指令名/指令行
- WCHAN : 若該程序在睡眠,則顯示睡眠中的系統函數名
- Flags : 任務标志,參考 sched.h
top指令參數
- d 指定每兩次螢幕資訊重新整理之間的時間間隔。當然使用者可以使用s互動指令來改變之。
- p 通過指定監控程序ID來僅僅監控某個程序的狀态。
- q 該選項将使top沒有任何延遲的進行重新整理。如果調用程式有超級使用者權限,那麼top将以盡可能高的優先級運作。
- S 指定累計模式
- s 使top指令在安全模式中運作。這将去除互動指令所帶來的潛在危險。
- i 使top不顯示任何閑置或者僵死程序。
- c 顯示整個指令行而不隻是顯示指令名
常用指令
top //每隔5秒顯式所有程序的資源占用情況
top -d 2 //每隔2秒顯式所有程序的資源占用情況
top -c //每隔5秒顯式程序的資源占用情況,并顯示程序的指令行參數(預設隻有程序名)
top -p 12345 -p 6789//每隔5秒顯示pid是12345和pid是6789的兩個程序的資源占用情況
top -d 2 -c -p 123456 //每隔2秒顯示pid是12345的程序的資源使用情況,并顯式該程序啟動的指令行參數
Linux系統free指令檢視系統記憶體情況
[root@zlhpc ~]# free -h
total used free shared buff/cache available
Mem: 977M 138M 693M 6.6M 145M 690M
Swap: 2.0G 0B 2.0G
- Mem:系統實體記憶體
- Swap:相當于windows中的虛拟記憶體,這裡叫做交換區,當系統的實體記憶體不夠用時,系統會将磁盤空間虛拟成記憶體使用。記憶體不夠的情況下,作業系統先把記憶體中暫時不用的資料,存到硬碟的交換空間,騰出記憶體來讓别的程式運作。
- Buff:buff這裡我簡單說明下,與cache對比,他是在做寫操作的時候,把分散的寫操作集中進行,減少磁盤I/O,進而提高系統性能。檔案是在寫操作之前先放入buff。
- Cache:在做讀操作的時候,把資料放入緩存中,等下次來通路此資料時候,不用讀磁盤,直接讀緩存即可。
- total:
去掉為硬體和作業系統保留的記憶體後剩餘的記憶體總量。許多人奇怪自己的電腦安裝了一共8G的記憶體,但是顯示總共隻有七點幾G的,現在應該沒什麼疑惑了把,不管Linux還是Windows都會有部分記憶體是保留給硬體和作業系統的!
- used:已配置設定的記憶體
- free:未配置設定記憶體
- shared:共享記憶體
- available:
可以使用的記憶體總量
Linux系統檢視記憶體資訊
[root@zlhpc /]# more /proc/meminfo #檢視記憶體資訊
MemTotal: 1001332 kB
MemFree: 322740 kB
MemAvailable: 597536 kB
Buffers: 1004 kB
Cached: 261816 kB
SwapCached: 0 kB
Active: 169740 kB
Inactive: 167476 kB
Active(anon): 74780 kB
Inactive(anon): 6452 kB
Active(file): 94960 kB
Inactive(file): 161024 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 2097148 kB
SwapFree: 2097148 kB
Dirty: 0 kB
Writeback: 0 kB
[root@zlhpc /]# grep MemTotal /proc/meminfo #檢視記憶體資訊
MemTotal: 1001332 kB
Linux系統程序相關
pstree:樹形結構顯示系統程序資訊
-p顯示程序号
[root@zlhpc ~]# pstree -p
systemd(1)─┬─NetworkManager(978)─┬─dhclient(1320)
│ ├─{NetworkManager}(1051)
│ └─{NetworkManager}(1054)
├─abrt-watch-log(886)
├─abrtd(885)
├─agetty(906)
├─atd(900)
├─auditd(852)───{auditd}(871)
ps:用于展示目前系統的程序狀态。可以搭配kill指令随時中斷、删除不必要的程式。ps指令是最基本同時也是非常強大的程序檢視指令,使用該指令可以确定有哪些程序正在運作和運作的狀态、程序是否結束、程序有沒有僵死、哪些程序占用了過多的資源等等,總之大部分資訊都是可以通過執行該指令得到的。
[root@zlhpc ~]# ps -aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.7 126420 7172 ? Ss 09:12 0:01 /usr/lib/systemd/system
root 2 0.0 0.0 0 0 ? S 09:12 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 09:12 0:00 [ksoftirqd/0]
root 6 0.0 0.0 0 0 ? S 09:12 0:00 [kworker/u256:0]
root 7 0.0 0.0 0 0 ? S 09:12 0:00 [migration/0]
root 8 0.0 0.0 0 0 ? S 09:12 0:00 [rcu_bh]
root 9 0.0 0.0 0 0 ? S 09:12 0:00 [rcuob/0]
- user:運作次程序的使用者名
- pid:該程序的程序号碼
- %CPU:該程序使用掉的cpu資源百分比
- %MEM:該程序所占用的實體記憶體百分比
- VSZ:該程序使用掉的虛拟記憶體量(Kbytes)
- RSS:該程序占用的固定記憶體量(Kbytes)
- TTY:該程序是在哪個終端機上運作,若與終端機無關,則顯示?,另外,tty-tty6是本機上面的登入者程式,若為pts/0等等的,則表示為由網絡連接配接進主機的程式。
- STAT:該程式目前的狀态,Linux程序有6種基本狀态:R:正在運作或運作隊列中等待,S:可中斷的睡眠狀态,可被某些訊号(signal)喚醒。T:暫停狀态或跟蹤狀态,D:不可中斷的睡眠狀态,Z:退出狀态,程序成為僵屍程序,X:退出狀态,程序即将被銷毀。6種狀态下又有6種子狀态分别為:<:高優先級的,N:低優先級的,L:有記憶體分頁但是帶鎖,s:包含子程序,l:多線程,+:前台程式(指令正在打開使用的程式,比如vim)
- START:該程序被觸發的時間
- Time:該程序實際使用cpu運作的時間
- Command:該程式的實際指令
恐怖的參數多的如下:
- -a:顯示所有終端機下執行的程式,除了階段作業上司者之外。
- a:顯示現行終端機下的所有程式,包括其他使用者的程式。
- -A:顯示所有程式。
- -c:顯示CLS和PRI欄位。
- c:列出程式時,顯示每個程式真正的指令名稱,而不包含路徑,選項或常駐服務的标示。
- -C<指令名稱>:指定執行指令的名稱,并列出該指令的程式的狀況。
- -d:顯示所有程式,但不包括階段作業上司者的程式。
- -e:此選項的效果和指定"A"選項相同。
- e:列出程式時,顯示每個程式所使用的環境變量。
- -f:顯示UID,PPIP,C與STIME欄位。
- f:用ASCII字元顯示樹狀結構,表達程式間的互相關系。
- -g<群組名稱>:此選項的效果和指定"-G"選項相同,當亦能使用階段作業上司者的名稱來指定。
- g:顯示現行終端機下的所有程式,包括群組上司者的程式。
- -G<群組識别碼>:列出屬于該群組的程式的狀況,也可使用群組名稱來指定。
- h:不顯示标題列。
- -H:顯示樹狀結構,表示程式間的互相關系。
- -j或j:采用工作控制的格式顯示程式狀況。
- -l或l:采用詳細的格式來顯示程式狀況。
- L:列出欄位的相關資訊。
- -m或m:顯示所有的執行緒。
- n:以數字來表示USER和WCHAN欄位。
- -N:顯示所有的程式,除了執行ps指令終端機下的程式之外。
- -p<程式識别碼>:指定程式識别碼,并列出該程式的狀況。
- p<程式識别碼>:此選項的效果和指定"-p"選項相同,隻在清單格式方面稍有差異。
- r:隻列出現行終端機正在執行中的程式。
- -s<階段作業>:指定階段作業的程式識别碼,并列出隸屬該階段作業的程式的狀況。
- s:采用程式信号的格式顯示程式狀況。
- S:列出程式時,包括已中斷的子程式資料。
- -t<終端機編号>:指定終端機編号,并列出屬于該終端機的程式的狀況。
- t<終端機編号>:此選項的效果和指定"-t"選項相同,隻在清單格式方面稍有差異。
- -T:顯示現行終端機下的所有程式。
- -u<使用者識别碼>:此選項的效果和指定"-U"選項相同。
- u:以使用者為主的格式來顯示程式狀況。
- -U<使用者識别碼>:列出屬于該使用者的程式的狀況,也可使用使用者名稱來指定。
- U<使用者名稱>:列出屬于該使用者的程式的狀況。
- v:采用虛拟記憶體的格式顯示程式狀況。
- -V或V:顯示版本資訊。 -w或w:采用寬闊的格式來顯示程式狀況。
- x:顯示所有程式,不以終端機來區分。
- X:采用舊式的Linux i386登陸格式顯示程式狀況。
- -y:配合選項"-l"使用時,不顯示F(flag)欄位,并以RSS欄位取代ADDR欄位 。
- -<程式識别碼>:此選項的效果和指定"p"選項相同。
- --cols<每列字元數>:設定每列的最大字元數。
- --columns<每列字元數>:此選項的效果和指定"--cols"選項相同。
- --cumulative:此選項的效果和指定"S"選項相同。
- --deselect:此選項的效果和指定"-N"選項相同。
- --forest:此選項的效果和指定"f"選項相同。
- --headers:重複顯示标題列。
- --help:線上幫助。
- --info:顯示排錯資訊。
- --lines<顯示列數>:設定顯示畫面的列數。
- --no-headers:此選項的效果和指定"h"選項相同,隻在清單格式方面稍有差異。
- --group<群組名稱>:此選項的效果和指定"-G"選項相同。
- --Group<群組識别碼>:此選項的效果和指定"-G"選項相同。
- --pid<程式識别碼>:此選項的效果和指定"-p"選項相同。
- --rows<顯示列數>:此選項的效果和指定"--lines"選項相同。
- --sid<階段作業>:此選項的效果和指定"-s"選項相同。
- --tty<終端機編号>:此選項的效果和指定"-t"選項相同。
- --user<使用者名稱>:此選項的效果和指定"-U"選項相同。
- --User<使用者識别碼>:此選項的效果和指定"-U"選項相同。
- --version:此選項的效果和指定"-V"選項相同。
- --widty<每列字元數>:此選項的效果和指定"-cols"選項相同。
[root@zlhpc ~]# ps -ef --标準格式顯示程序
[root@zlhpc ~]# ps -aux --BSD格式顯示程序
總結
接下來是大家最喜歡的總結内容啦,内容有三,如下:
1、希望能關注我其他的文章。
2、部落格裡面有沒有很清楚的說明白,或者你有更好的方式,那麼歡迎加入左上方的2個交流群,我們一起學習探讨。
3、你可以忘記點贊加關注,但千萬不要忘記掃碼打賞哦。