Linux系統(tǒng)之基礎(chǔ)掃盲教程大全
序言
大家一般會(huì)偏愛使用安裝最小化的liunx系統(tǒng),那么你的系統(tǒng)就不帶圖形化的桌面功能,這樣對(duì)于一個(gè)初學(xué)者來說,Liunx就是黑漆馬虎,一望無際的黑屏,黑屏,如何快速的對(duì)liunx系統(tǒng)有個(gè)較為全面基礎(chǔ)的認(rèn)識(shí)呢?答:繼續(xù)往下讀,哈哈。
本篇目的就是讓大家對(duì)linux系統(tǒng)有個(gè)全面的基礎(chǔ)認(rèn)知。
主要內(nèi)容:網(wǎng)絡(luò),系統(tǒng),cpu,內(nèi)存,硬盤,進(jìn)程等等常用的基礎(chǔ)信息查看與基礎(chǔ)功能設(shè)置。
Linux系統(tǒng)時(shí)間相關(guān)
查看系統(tǒng)當(dāng)前時(shí)間
[root@zlhpc ~]# date 2017年 02月 09日 星期四 03:20:45 CST
修改時(shí)間
[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
同步網(wǎng)路時(shí)間
[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是網(wǎng)絡(luò)時(shí)間協(xié)議,主要用作同步計(jì)算機(jī)時(shí)間與服務(wù)器時(shí)間一致的。常見的ntp服務(wù)器有:210.72.145.44(國家授時(shí)中心服務(wù)器地址),ntp.api.bz(上海),time.nist.gov,ntp.fudan.edu.cn(復(fù)旦),s1b.time.edu.cn(清華大學(xué)),等等。
note2:date命令設(shè)置時(shí)間只有超級(jí)用戶才有,一般用戶只能查看,且修改玩之后要記得執(zhí)行clock -w 命令,把系統(tǒng)時(shí)間寫入CMOS中。
Linux系統(tǒng)主機(jī)名與操作系統(tǒng)相關(guān)信息
顯示系統(tǒng)主機(jī)名
[root@zlhpc sysconfig]# hostname zlhpc
修改主機(jī)名,需要同時(shí)修改/etc/hosts和/etc/sysconfig/network,且修改完之后需重啟機(jī)器生效且永久保存,使用hostname命令只能臨時(shí)修改不能永久有效。
[root@zlhpc sysconfig]# vim /etc/hostname
- -v:詳細(xì)信息模式;
- -a:顯示主機(jī)別名;
- -d:顯示DNS域名;
- -f:顯示FQDN名稱;
- -i:顯示主機(jī)的ip地址;
- -s:顯示短主機(jī)名稱,在第一個(gè)點(diǎn)處截?cái)啵?/li>
- -y:顯示NIS域名。
uname查看操作系統(tǒng)相關(guān)信息
[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
數(shù)據(jù)依次為:內(nèi)核名稱,主機(jī)名,內(nèi)核版本號(hào),內(nèi)核版本,硬件名,處理器類型,硬件平臺(tái)類型,操作系統(tǒng)名稱
參數(shù)如下
- -m或–machine 顯示主機(jī)的硬件(CPU)名
- -n或-nodename 顯示主機(jī)在網(wǎng)絡(luò)節(jié)點(diǎn)上的名稱或主機(jī)名稱
- -r或–release 顯示linux操作系統(tǒng)內(nèi)核版本號(hào)
- -s或–sysname 顯示linux內(nèi)核名稱
- -v 顯示顯示操作系統(tǒng)是第幾個(gè) version 版本
- -p 顯示處理器類型或unknown
- -i 顯示硬件平臺(tái)類型或unknown
- -o 顯示操作系統(tǒng)名
- –help 獲得幫助信息
- –version 顯示uname版本信息
其他幾種出去啊看Linux版本信息的方法
[root@zlhpc /]# cat /proc/version Linux version 3.10.0-327.el7.x86_64 (builder@kbuilder.dev.centos.org) (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系統(tǒng)查看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位數(shù) 64
Linux系統(tǒng)用戶與用戶組
用戶與組分類,根據(jù)帳號(hào)或組的位置都可以分為:本地帳號(hào)|組,遠(yuǎn)程(域)帳號(hào)|組 ,LDAP,NIS
根據(jù)帳號(hào)|組的功能分類可以分為:超級(jí)用戶(root) uid:0 ,普通用戶。普通用戶又分為:系統(tǒng)帳號(hào)(uid范圍:1-499,1-99:由distributions自行創(chuàng)建的系統(tǒng)帳號(hào),100-499:若用戶有系統(tǒng)帳號(hào)的需求時(shí),可以使用的帳號(hào)uid)和可登錄帳號(hào)(uid范圍:500+)
關(guān)于系統(tǒng)用戶和組的相關(guān)配置文件放在系統(tǒng)的一下文件中:
用戶的帳號(hào)信息:/etc/passwd 用戶的密碼信息:/etc/shadow
用戶組信息:/etc/group 組的密碼信息:/etc/gshadow
那么下面我們一一打開這些文件來看看他們到底存放啦那些內(nèi)容,格式是什么樣的,我們又該怎么解讀。
[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
每一行都代表一個(gè)用戶,每一行中的冒號(hào)(:)代表分割符,那我們拿第一行做一個(gè)解讀,如下:
root:x:0:0:root:/root:/bin/bash
1.root:用戶名
2.x:密碼占位符
3.UID
4.GID
5.用戶描述
6.用戶主文件夾
7.登錄后使用的shell./sbin/nologin此shell會(huì)讓該用戶無法登錄。
查看系統(tǒng)中支持那些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
接下來我們看下用戶關(guān)于密碼的配置文件:
[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:::
1.root:用戶名
2.$6$zVDR2oO1Yg7alTbs$.70PPMYxg70k9BvLtjHdm94CDA1YWDRDI5NFzSfcmZF5WMESgIbLUdnqRjuVycg481Ny9rl//YzAFnXhurQi//:root用戶用sha512加密過的用戶密碼
3.最近更改密碼的日期,從19700101開始計(jì)算至修改密碼那天的累積天數(shù)。
4.0:密碼不能更改的天數(shù),最近更改過后幾年之后才能被再次更改,0表示可以隨意隨時(shí)修改。
5.99999:密碼的過期時(shí)間,密碼在多少天后必須被修改。
6.7:系統(tǒng)需要在密碼過期的的前7天發(fā)出密碼即將過期的警告。
7.寬限天數(shù),密碼過啦幾天后還能修改密碼。
8.帳號(hào)過期時(shí)間
9.保留字段,目前沒有用到。
查看關(guān)于組的配置文件,如下:
[root@zlhpc home]# head -n 4 /etc/group root:x:0: bin:x:1: daemon:x:2: sys:x:3:
root:x:0:
1.root:用戶組名稱
2.x:用戶組密碼的占位符
3.0:用戶組的GID
4.此用戶組支持的帳號(hào)名稱。
接下來我們來看下帳號(hào)管理,關(guān)于帳號(hào)的增刪改查操作
1、添加用戶
[root@zlhpc home]# useradd zhanglonghao [root@zlhpc home]# useradd zhanglonghao1
useradd (選項(xiàng))(參數(shù))
- -c<備注>:加上備注文字。備注文字會(huì)保存在passwd的備注欄位中;
- -d<登入目錄>:指定用戶登入時(shí)的啟始目錄;
- -D:變更預(yù)設(shè)值;
- -e<有效期限>:指定帳號(hào)的有效期限;
- -f<緩沖天數(shù)>:指定在密碼過期后多少天即關(guān)閉該帳號(hào);
- -g<群組>:指定用戶所屬的群組;
- -G<群組>:指定用戶所屬的附加群組;
- -m:自動(dòng)建立用戶的登入目錄;
- -M:不要自動(dòng)建立用戶的登入目錄;
- -n:取消建立以用戶名稱為名的群組;
- -r:建立系統(tǒng)帳號(hào);
- -s:指定用戶登入后所使用的shell;
- -u:指定用戶id。
修改用戶信息,參數(shù)選項(xiàng)和添加一致。
[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,參數(shù)如下:如果不加下面的參數(shù)進(jìn)行直接刪除,則用戶刪除,用戶的目錄與文件依舊保留。
- -f:強(qiáng)制刪除用戶,即使用戶當(dāng)前已登錄;
- -r:刪除用戶的同時(shí),刪除與用戶相關(guān)的所有文件。
把某個(gè)用戶添加到哪個(gè)組中:示例把用戶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)
查看當(dāng)前登錄系統(tǒng)的用戶信息
[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
我們針對(duì)w這個(gè)命令做個(gè)解釋
1.user:用戶名
2.tty:用戶的機(jī)器名或tty號(hào)
3.from:遠(yuǎn)程主機(jī)的地址
4.login@:用戶登錄系統(tǒng)的時(shí)間
5.idle:空閑時(shí)間
6.jcpu:附加到tty(終端)的進(jìn)程所用的時(shí)間(JCPU時(shí)間)
7.pcpu:當(dāng)前進(jìn)程所用時(shí)間(PCPU時(shí)間)
8.what:用戶當(dāng)前正在使用的命令
參數(shù)為 -h :忽略頭文件信息, -u:顯示結(jié)果的加載時(shí)間 , -s :不顯示JCPU,PCPU,登陸時(shí)間。
Liunx網(wǎng)絡(luò)的基本操作
打開網(wǎng)頁: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 + encodeURIComponent(window.location.href+ (window.location.search === " rel="external nofollow" " ? "?" : "&")+ "bdorz_come=1")+ '" name="tj_login" class="lb">登錄</a>');</script> <a href=//www.baidu.com/more/ name=tj_briicon class="bri" style="display: block;">更多產(chǎn)品</a> </div> </div> </div> <div id=ftCon> <div id=ftConw> <p id=lh> <a href=http://home.baidu.com>關(guān)于百度</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號(hào) <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
檢查你的網(wǎng)絡(luò)與另外一臺(tái)機(jī)器是否互通:ping
[root@zlhpc ~]# ping www.baidu.com
做路由圖提供我們分析哪里出現(xiàn)故障或者是否存在網(wǎng)絡(luò)擁塞情況:mtr
[root@zlhpc ~]# mtr [root@zlhpc ~]# mtr -r -c 30 www.baidu.com #每秒發(fā)送數(shù)據(jù)包的數(shù)量是30 ,mtr -r -c 30 -s 1024 www.baidu.com #ping包的大小為1024個(gè)字節(jié) 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地址和本機(jī)域名,這點(diǎn)和tracert很像。
- 第二列 Loss%:是顯示的每個(gè)對(duì)應(yīng)IP的丟包率。
- 第三列 snt:snt等于10,設(shè)置每秒發(fā)送數(shù)據(jù)包的數(shù)量,默認(rèn)值是10 可以通過參數(shù) -c來指定。
- 第四列 Last:顯示的最近一次的返回時(shí)延。
- 第五列 Avg:平均值,這個(gè)應(yīng)該是發(fā)送ping包的平均時(shí)延。
- 第六列 Best:最好或者說時(shí)延最短的時(shí)間。
- 第七列 Wrst:最壞或者說時(shí)延最長的時(shí)間。
- 第八列 StDev:標(biāo)準(zhǔn)偏差。
mtr參數(shù)如下:
1.-h 提供幫助命令
2.-v 顯示mtr的版本信息
3.-r 已報(bào)告模式顯示
4.-c 設(shè)置每秒發(fā)送數(shù)據(jù)包的數(shù)量
5. -s 用來指定ping數(shù)據(jù)包的大小
6.-n no-dns不對(duì)IP地址做域名解析
7.-a 來設(shè)置發(fā)送數(shù)據(jù)包的IP地址 這個(gè)對(duì)一個(gè)主機(jī)由多個(gè)IP地址是有用的
8.-i 使用這個(gè)參數(shù)來設(shè)置ICMP返回之間的要求默認(rèn)是1秒
9.-4 IPv4
10.-6 IPv6
DNS查詢,如果是參數(shù)是域名輸出關(guān)聯(lián)ip,如果參數(shù)是ip輸出關(guān)聯(lián)的域名: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
出網(wǎng)絡(luò)接口配置、調(diào)優(yōu)和debug的各種選項(xiàng):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
關(guān)于ip的命令
[root@zlhpc ~]# ip link show #查看所有網(wǎng)絡(luò)接口屬性信息 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 #查看所有統(tǒng)計(jì)信息 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 #查看網(wǎng)絡(luò)信息 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
這里簡單介紹下,以后會(huì)有深入介紹。
ifdown與ifup分別是禁用與啟用摸個(gè)網(wǎng)絡(luò)接口
[root@zlhpc ~]# ifdown eno16777736 [root@zlhpc ~]# ifup eno16777736
netstat命令查看網(wǎng)絡(luò)信息
netstat命令是一個(gè)監(jiān)控TCP/IP網(wǎng)絡(luò)的非常有用的工具,它可以顯示路由表、實(shí)際的網(wǎng)絡(luò)連接以及每一個(gè)網(wǎng)絡(luò)接口設(shè)備的,netstat命令的功能是顯示網(wǎng)絡(luò)連接、路由表和網(wǎng)絡(luò)接口信息,可以讓用戶得知目前都有哪些網(wǎng)絡(luò)連接正在運(yùn)作。
netstat [選項(xiàng)]
- -a 顯示所有socket。
- -c 每隔1秒就重新顯示一遍,直到用戶中斷它。
- -i 顯示所有網(wǎng)絡(luò)接口的信息,格式同“ifconfig -e”。
- -n 以網(wǎng)絡(luò)IP地址代替名稱,顯示出網(wǎng)絡(luò)連接情形
- -r 顯示核心路由表,格式同“route -e”。
- -t 顯示TCP協(xié)議的連接情況。
- -u 顯示UDP協(xié)議的連接情況。
- -v 顯示正在進(jìn)行的工作。
- -p 顯示建立相關(guān)鏈接的程序名
列出所有連接
[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協(xié)議的連接
[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
獲取進(jìn)程名,進(jìn)程號(hào)以及用戶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
網(wǎng)絡(luò)報(bào)統(tǒng)計(jì)情況
[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 ...
持續(xù)輸出 -c持續(xù)輸出tcp協(xié)議信息
[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工具實(shí)時(shí)監(jiān)控linux系統(tǒng)的網(wǎng)絡(luò)流量信息
最后上一個(gè)簡單的實(shí)時(shí)流量監(jiān)控工具:iftop ,它可以用來監(jiān)控實(shí)時(shí)流量,反向解析ip,顯示端口等。使用需先安裝iftop,官網(wǎng)地址: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
常用參數(shù)命令:
- -i設(shè)定監(jiān)測的網(wǎng)卡,如:# iftop -i eth1
- -B 以bytes為單位顯示流量(默認(rèn)是bits),如:# iftop -B
- -n使host信息默認(rèn)直接都顯示IP,如:# iftop -n
- -N使端口信息默認(rèn)直接都顯示端口號(hào),如: # iftop -N
- -F顯示特定網(wǎng)段的進(jìn)出流量,如# iftop -F 10.10.1.0/24或# iftop -F 10.10.1.0/255.255.255.0
- -h(display this message),幫助,顯示參數(shù)信息
- -p使用這個(gè)參數(shù)后,中間的列表顯示的本地主機(jī)信息,出現(xiàn)了本機(jī)以外的IP信息;
- -b使流量圖形條默認(rèn)就顯示;
- -f這個(gè)暫時(shí)還不太會(huì)用,過濾計(jì)算包用的;
- -P使host信息及端口信息默認(rèn)就都顯示;
- -m設(shè)置界面最上邊的刻度的最大值,刻度分五個(gè)大段顯示,例:# iftop -m 100M
圖解:
- 界面頭部:流量刻度尺,對(duì)應(yīng)下邊每行的白色橫條。
- 界面中部:左邊為服務(wù)器;中間為外網(wǎng)IP,左箭頭流入,右箭頭流出;右邊為2s 10s 40s 的流量情況。
- 界面下部:TX:發(fā)送流量 ,RX:接收流量 ,TOTAL:總流量 ,Cumm:運(yùn)行iftop到目前時(shí)間的總流量 ,peak:流量峰值 ,rates:分別表示過去 2s 10s 40s 的平均流量
界面命令:
- 按h切換是否顯示幫助;
- 按n切換顯示本機(jī)的IP或主機(jī)名;
- 按s切換是否顯示本機(jī)的host信息;
- 按d切換是否顯示遠(yuǎn)端目標(biāo)主機(jī)的host信息;
- 按t切換顯示格式為2行/1行/只顯示發(fā)送流量/只顯示接收流量;
- 按N切換顯示端口號(hào)或端口服務(wù)名稱;
- 按S切換是否顯示本機(jī)的端口信息;
- 按D切換是否顯示遠(yuǎn)端目標(biāo)主機(jī)的端口信息;
- 按p切換是否顯示端口信息;
- 按P切換暫停/繼續(xù)顯示;
- 按b切換是否顯示平均流量圖形條;
- 按B切換計(jì)算2秒或10秒或40秒內(nèi)的平均流量;
- 按T切換是否顯示每個(gè)連接的總流量;
- 按l打開屏幕過濾功能,輸入要過濾的字符,比如ip,按回車后,屏幕就只顯示這個(gè)IP相關(guān)的流量信息;
- 按L切換顯示畫面上邊的刻度;刻度不同,流量圖形條會(huì)有變化;
- 按j或按k可以向上或向下滾動(dòng)屏幕顯示的連接記錄;
- 按1或2或3可以根據(jù)右側(cè)顯示的三列流量數(shù)據(jù)進(jìn)行排序;
- 按<根據(jù)左邊的本機(jī)名或IP排序;
- 按>根據(jù)遠(yuǎn)端目標(biāo)主機(jī)的主機(jī)名或IP排序;
- 按o切換是否固定只顯示當(dāng)前的連接;
- 按f可以編輯過濾代碼,這是翻譯過來的說法,我還沒用過這個(gè)!
- 按!可以使用shell命令,這個(gè)沒用過!沒搞明白啥命令在這好用呢!
- 按q退出監(jiān)控。
Linux系統(tǒng)的硬盤存儲(chǔ)與tree工具
整個(gè)系統(tǒng)的存儲(chǔ)情況
[root@zlhpc ~]# df -h 文件系統(tǒng) 容量 已用 可用 已用% 掛載點(diǎn) /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
某個(gè)文件或文件夾大小
[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的相關(guān)參數(shù)如下:
- -a 顯示所有文件及目錄大小,遞歸顯示
- --apparent-size 顯示文件及目錄展現(xiàn)大小,而非磁盤占用量。
- -B,--block-size='SIZE' 顯示塊的數(shù)量,引號(hào)中的size表示系統(tǒng)的塊尺寸。
- -b 以byte的方式顯示查看對(duì)象大小,相當(dāng)于--apparent-size --block-size=1
- -c 計(jì)總并以total表面總數(shù)
- -D 計(jì)算不包含鏈接文件
- -H 類似于--si 以1000為計(jì)算單位計(jì)算文件及目錄的磁盤占用量
- -h 人類可讀的模式(K,M,G)
- --si 以1000取代1024換算單位
- -k 類似于--block-size=1k指定塊大小為1k,計(jì)算文件目錄大小。
- -l, --count-links 多次計(jì)算如果包含硬鏈接
- -m 類似于--block-size=1M指定塊大小為1M,計(jì)算文件目錄大小。
- -L, --dereference 和-D參數(shù)不同,忽略所有鏈接對(duì)象(文件,目錄)
- -P, --no-dereference 默認(rèn)參數(shù),不
- -0 用0字節(jié)替代換行符
- -S, --separate-dirs 不包含子目錄的大小
- -s, --summarize 僅顯示當(dāng)前目錄級(jí)下每個(gè)對(duì)象的總大小
- -x, --one-file-system 跳過那些在不同文件系統(tǒng)上的目錄。
- -X FILE, --exclude-from=FILE 不包含匹配的對(duì)象,這里的FILE是用戶指定的文件對(duì)象
- --exclude=PATTERN
- --max-depth= 顯示目錄級(jí)的深度--max-depth=0相當(dāng)于--summarize
- --time 顯示目錄中文件的或子目錄最后的改動(dòng)時(shí)間
- --time=WORD 以關(guān)鍵詞 WORD顯示時(shí)間,包含:atime,access,use,ctime,status
- --time-style=STYLE 調(diào)整顯示時(shí)間格式,格式包含full-iso, long-iso, iso, +FORMAT(該格式來自于date命令)
- --help 幫助
- --version 版本信息
使用tree工具,查看樹形目錄結(jié)構(gòu),首先先安裝tree工具
[root@zlhpc usr]# tree -L 3 src #列出src層數(shù)為3以內(nèi)的所有文件 src ├── debug └── kernels └── 3.10.0-514.6.1.el7.x86_64 ├── arch ├── block ├── crypto ├── drivers ├── firmware
tree常用參數(shù):
-d:僅顯示目錄
-a:顯示所有
-f:顯示完整路徑
-L n :n為數(shù)字,表示要現(xiàn)實(shí)幾層。
進(jìn)程資源的實(shí)時(shí)占用狀況,Linux中的任務(wù)管理器:top
top默認(rèn)3秒刷新一次,按空格立即刷新,q:退出,M:按內(nèi)存排序,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
統(tǒng)計(jì)講解:
第一行的統(tǒng)計(jì)信息與命令uptime命令執(zhí)行結(jié)果一致,依次為:
- 21:32:45 :當(dāng)前時(shí)間
- 6:31 :系統(tǒng)運(yùn)行時(shí)間
- 2 users:當(dāng)前登錄用戶數(shù)
- load average: 0.01, 0.02, 0.05 :系統(tǒng)負(fù)載,即任務(wù)隊(duì)列的平均長度:1分鐘,5分鐘,15分鐘前到現(xiàn)在的平均值。一般來說,每個(gè)cpu內(nèi)核當(dāng)前活動(dòng)進(jìn)程不大于3,則系統(tǒng)運(yùn)行表現(xiàn)良好。當(dāng)然這里說的是每個(gè)cpu內(nèi)核,也就是如果你的主機(jī)是8核的話,那么uptime輸出的最后一串字符應(yīng)小于8*3=24即表示系統(tǒng)負(fù)載不是很嚴(yán)重。
第二、三行為進(jìn)程和cpu的信息,當(dāng)有多個(gè)cpu時(shí),這些內(nèi)容可能會(huì)超過2行,內(nèi)容如下:
- Tasks: 348 total:進(jìn)程總數(shù)
- 2 running:正在運(yùn)行的進(jìn)程數(shù)
- 346 sleeping:睡眠的進(jìn)程數(shù)
- 0 stopped:停止的進(jìn)程數(shù)
- 0 zombie :僵尸進(jìn)程數(shù)
- %Cpu(s) 0.3 us:系統(tǒng)用戶進(jìn)程使用cpu百分比,不包括調(diào)高優(yōu)先級(jí)的進(jìn)程。cpu%是由每個(gè)核的cpu占用率之和計(jì)算出來的,如果是4核,核1使用率為100%,核2cpu使用率為100%,則會(huì)出現(xiàn)cpu高于100%的現(xiàn)象,最終為200%。
- 0.3 sy :內(nèi)核空間占用cpu百分比
- 0.0 ni :用戶進(jìn)程空間內(nèi)改變過優(yōu)先級(jí)的進(jìn)程占用cpu百分比
- 99.3 id :空閑cpu百分比
- 0.0 wa :等待輸入輸出的cpu時(shí)間百分比
- 0.0 hi :硬件cpu中斷占用百分比
- 0.0 si :軟中斷占用百分比
- 0.0 st :虛擬機(jī)占用百分比
第四、五行為內(nèi)存信息
- KiB Mem : 1001332 total :物力內(nèi)存總量
- 321616 free :空閑內(nèi)存總量
- 166176 used :使用物理內(nèi)存總量
- 513540 buff/cache :用作內(nèi)核緩存的內(nèi)存量,和free -k 命令一個(gè)意思
- KiB Swap: 2097148 total :交換區(qū)總量
- 2097148 free :空閑交換區(qū)總量
- 0 used :使用交換區(qū)總量
- 596688 avail Mem :緩沖的交換區(qū)總量,內(nèi)存中的內(nèi)容被換出到交換區(qū),而后又被換入到內(nèi)存,但使用過的交換區(qū)尚未被覆蓋,該數(shù)值即為這些內(nèi)容已存在于內(nèi)存中的交換區(qū)的大小,相應(yīng)的內(nèi)存再次被換出時(shí)可不必再對(duì)交換區(qū)寫入。
第六列頭標(biāo)題詳細(xì)
- PID :進(jìn)程id
- PPID :父進(jìn)程id
- RUSER :Real user name
- UID : 進(jìn)程所有者的用戶id
- USER : 進(jìn)程所有者的用戶名
- GROUP : 進(jìn)程所有者的組名
- TTY : 啟動(dòng)進(jìn)程的終端名。不是從終端啟動(dòng)的進(jìn)程則顯示為 ?
- PR : 優(yōu)先級(jí)
- NI : nice值。負(fù)值表示高優(yōu)先級(jí),正值表示低優(yōu)先級(jí)
- P : 最后使用的CPU,僅在多CPU環(huán)境下有意義
- %CPU : 上次更新到現(xiàn)在的CPU時(shí)間占用百分比
- TIME : 進(jìn)程使用的CPU時(shí)間總計(jì),單位秒
- TIME+ : 進(jìn)程使用的CPU時(shí)間總計(jì),單位1/100秒
- %MEM : 進(jìn)程使用的物理內(nèi)存百分比
- VIRT : 進(jìn)程使用的虛擬內(nèi)存總量,單位kb。VIRT=SWAP+RES
- SWAP : 進(jìn)程使用的虛擬內(nèi)存中,被換出的大小,單位kb。
- RES: 進(jìn)程使用的、未被換出的物理內(nèi)存大小,單位kb。RES=CODE+DATA
- CODE: 可執(zhí)行代碼占用的物理內(nèi)存大小,單位kb
- DATA : 可執(zhí)行代碼以外的部分(數(shù)據(jù)段+棧)占用的物理內(nèi)存大小,單位kb
- SHR : 共享內(nèi)存大小,單位kb
- nFLT: 頁面錯(cuò)誤次數(shù)
- nDRT : 最后一次寫入到現(xiàn)在,被修改過的頁面數(shù)。
- S : 進(jìn)程狀態(tài)(D=不可中斷的睡眠狀態(tài),R=運(yùn)行,S=睡眠,T=跟蹤/停止,Z=僵尸進(jìn)程)
- COMMAND :命令名/命令行
- WCHAN : 若該進(jìn)程在睡眠,則顯示睡眠中的系統(tǒng)函數(shù)名
- Flags : 任務(wù)標(biāo)志,參考 sched.h
top命令參數(shù)
- d 指定每兩次屏幕信息刷新之間的時(shí)間間隔。當(dāng)然用戶可以使用s交互命令來改變之。
- p 通過指定監(jiān)控進(jìn)程ID來僅僅監(jiān)控某個(gè)進(jìn)程的狀態(tài)。
- q 該選項(xiàng)將使top沒有任何延遲的進(jìn)行刷新。如果調(diào)用程序有超級(jí)用戶權(quán)限,那么top將以盡可能高的優(yōu)先級(jí)運(yùn)行。
- S 指定累計(jì)模式
- s 使top命令在安全模式中運(yùn)行。這將去除交互命令所帶來的潛在危險(xiǎn)。
- i 使top不顯示任何閑置或者僵死進(jìn)程。
- c 顯示整個(gè)命令行而不只是顯示命令名
常用命令
- top //每隔5秒顯式所有進(jìn)程的資源占用情況
- top -d 2 //每隔2秒顯式所有進(jìn)程的資源占用情況
- top -c //每隔5秒顯式進(jìn)程的資源占用情況,并顯示進(jìn)程的命令行參數(shù)(默認(rèn)只有進(jìn)程名)
- top -p 12345 -p 6789//每隔5秒顯示pid是12345和pid是6789的兩個(gè)進(jìn)程的資源占用情況
- top -d 2 -c -p 123456 //每隔2秒顯示pid是12345的進(jìn)程的資源使用情況,并顯式該進(jìn)程啟動(dòng)的命令行參數(shù)
Linux系統(tǒng)free命令查看系統(tǒng)內(nèi)存情況
[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:系統(tǒng)物理內(nèi)存
- Swap:相當(dāng)于windows中的虛擬內(nèi)存,這里叫做交換區(qū),當(dāng)系統(tǒng)的物理內(nèi)存不夠用時(shí),系統(tǒng)會(huì)將磁盤空間虛擬成內(nèi)存使用。內(nèi)存不夠的情況下,操作系統(tǒng)先把內(nèi)存中暫時(shí)不用的數(shù)據(jù),存到硬盤的交換空間,騰出內(nèi)存來讓別的程序運(yùn)行。
- Buff:buff這里我簡單說明下,與cache對(duì)比,他是在做寫操作的時(shí)候,把分散的寫操作集中進(jìn)行,減少磁盤I/O,從而提高系統(tǒng)性能。文件是在寫操作之前先放入buff。
- Cache:在做讀操作的時(shí)候,把數(shù)據(jù)放入緩存中,等下次來訪問此數(shù)據(jù)時(shí)候,不用讀磁盤,直接讀緩存即可。
- total:去掉為硬件和操作系統(tǒng)保留的內(nèi)存后剩余的內(nèi)存總量。許多人奇怪自己的電腦安裝了一共8G的內(nèi)存,但是顯示總共只有七點(diǎn)幾G的,現(xiàn)在應(yīng)該沒什么疑惑了把,不管Linux還是Windows都會(huì)有部分內(nèi)存是保留給硬件和操作系統(tǒng)的!
- used:已分配的內(nèi)存
- free:未分配內(nèi)存
- shared:共享內(nèi)存
- available:可以使用的內(nèi)存總量
Linux系統(tǒng)查看內(nèi)存信息
[root@zlhpc /]# more /proc/meminfo #查看內(nèi)存信息 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 #查看內(nèi)存信息 MemTotal: 1001332 kB
Linux系統(tǒng)進(jìn)程相關(guān)
pstree:樹形結(jié)構(gòu)顯示系統(tǒng)進(jìn)程信息
-p顯示進(jìn)程號(hào)
[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:用于展示當(dāng)前系統(tǒng)的進(jìn)程狀態(tài)。可以搭配kill指令隨時(shí)中斷、刪除不必要的程序。ps命令是最基本同時(shí)也是非常強(qiáng)大的進(jìn)程查看命令,使用該命令可以確定有哪些進(jìn)程正在運(yùn)行和運(yùn)行的狀態(tài)、進(jìn)程是否結(jié)束、進(jìn)程有沒有僵死、哪些進(jìn)程占用了過多的資源等等,總之大部分信息都是可以通過執(zhí)行該命令得到的。
[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:運(yùn)行次進(jìn)程的用戶名
- pid:該進(jìn)程的進(jìn)程號(hào)碼
- %CPU:該進(jìn)程使用掉的cpu資源百分比
- %MEM:該進(jìn)程所占用的物理內(nèi)存百分比
- VSZ:該進(jìn)程使用掉的虛擬內(nèi)存量(Kbytes)
- RSS:該進(jìn)程占用的固定內(nèi)存量(Kbytes)
- TTY:該進(jìn)程是在哪個(gè)終端機(jī)上運(yùn)作,若與終端機(jī)無關(guān),則顯示?,另外,tty-tty6是本機(jī)上面的登入者程序,若為pts/0等等的,則表示為由網(wǎng)絡(luò)連接進(jìn)主機(jī)的程序。
- STAT:該程序目前的狀態(tài),Linux進(jìn)程有6種基本狀態(tài):R:正在運(yùn)行或運(yùn)行隊(duì)列中等待,S:可中斷的睡眠狀態(tài),可被某些訊號(hào)(signal)喚醒。T:暫停狀態(tài)或跟蹤狀態(tài),D:不可中斷的睡眠狀態(tài),Z:退出狀態(tài),進(jìn)程成為僵尸進(jìn)程,X:退出狀態(tài),進(jìn)程即將被銷毀。6種狀態(tài)下又有6種子狀態(tài)分別為:<:高優(yōu)先級(jí)的,N:低優(yōu)先級(jí)的,L:有內(nèi)存分頁但是帶鎖,s:包含子進(jìn)程,l:多線程,+:前臺(tái)程序(命令正在打開使用的程序,比如vim)
- START:該進(jìn)程被觸發(fā)的時(shí)間
- Time:該進(jìn)程實(shí)際使用cpu運(yùn)作的時(shí)間
- Command:該程序的實(shí)際指令
恐怖的參數(shù)多的如下:
- -a:顯示所有終端機(jī)下執(zhí)行的程序,除了階段作業(yè)領(lǐng)導(dǎo)者之外。
- a:顯示現(xiàn)行終端機(jī)下的所有程序,包括其他用戶的程序。
- -A:顯示所有程序。
- -c:顯示CLS和PRI欄位。
- c:列出程序時(shí),顯示每個(gè)程序真正的指令名稱,而不包含路徑,選項(xiàng)或常駐服務(wù)的標(biāo)示。
- -C<指令名稱>:指定執(zhí)行指令的名稱,并列出該指令的程序的狀況。
- -d:顯示所有程序,但不包括階段作業(yè)領(lǐng)導(dǎo)者的程序。
- -e:此選項(xiàng)的效果和指定"A"選項(xiàng)相同。
- e:列出程序時(shí),顯示每個(gè)程序所使用的環(huán)境變量。
- -f:顯示UID,PPIP,C與STIME欄位。
- f:用ASCII字符顯示樹狀結(jié)構(gòu),表達(dá)程序間的相互關(guān)系。
- -g<群組名稱>:此選項(xiàng)的效果和指定"-G"選項(xiàng)相同,當(dāng)亦能使用階段作業(yè)領(lǐng)導(dǎo)者的名稱來指定。
- g:顯示現(xiàn)行終端機(jī)下的所有程序,包括群組領(lǐng)導(dǎo)者的程序。
- -G<群組識(shí)別碼>:列出屬于該群組的程序的狀況,也可使用群組名稱來指定。
- h:不顯示標(biāo)題列。
- -H:顯示樹狀結(jié)構(gòu),表示程序間的相互關(guān)系。
- -j或j:采用工作控制的格式顯示程序狀況。
- -l或l:采用詳細(xì)的格式來顯示程序狀況。
- L:列出欄位的相關(guān)信息。
- -m或m:顯示所有的執(zhí)行緒。
- n:以數(shù)字來表示USER和WCHAN欄位。
- -N:顯示所有的程序,除了執(zhí)行ps指令終端機(jī)下的程序之外。
- -p<程序識(shí)別碼>:指定程序識(shí)別碼,并列出該程序的狀況。
- p<程序識(shí)別碼>:此選項(xiàng)的效果和指定"-p"選項(xiàng)相同,只在列表格式方面稍有差異。
- r:只列出現(xiàn)行終端機(jī)正在執(zhí)行中的程序。
- -s<階段作業(yè)>:指定階段作業(yè)的程序識(shí)別碼,并列出隸屬該階段作業(yè)的程序的狀況。
- s:采用程序信號(hào)的格式顯示程序狀況。
- S:列出程序時(shí),包括已中斷的子程序資料。
- -t<終端機(jī)編號(hào)>:指定終端機(jī)編號(hào),并列出屬于該終端機(jī)的程序的狀況。
- t<終端機(jī)編號(hào)>:此選項(xiàng)的效果和指定"-t"選項(xiàng)相同,只在列表格式方面稍有差異。
- -T:顯示現(xiàn)行終端機(jī)下的所有程序。
- -u<用戶識(shí)別碼>:此選項(xiàng)的效果和指定"-U"選項(xiàng)相同。
- u:以用戶為主的格式來顯示程序狀況。
- -U<用戶識(shí)別碼>:列出屬于該用戶的程序的狀況,也可使用用戶名稱來指定。
- U<用戶名稱>:列出屬于該用戶的程序的狀況。
- v:采用虛擬內(nèi)存的格式顯示程序狀況。
- -V或V:顯示版本信息。 -w或w:采用寬闊的格式來顯示程序狀況?!?/li>
- x:顯示所有程序,不以終端機(jī)來區(qū)分。
- X:采用舊式的Linux i386登陸格式顯示程序狀況。
- -y:配合選項(xiàng)"-l"使用時(shí),不顯示F(flag)欄位,并以RSS欄位取代ADDR欄位 。
- -<程序識(shí)別碼>:此選項(xiàng)的效果和指定"p"選項(xiàng)相同。
- --cols<每列字符數(shù)>:設(shè)置每列的最大字符數(shù)。
- --columns<每列字符數(shù)>:此選項(xiàng)的效果和指定"--cols"選項(xiàng)相同。
- --cumulative:此選項(xiàng)的效果和指定"S"選項(xiàng)相同。
- --deselect:此選項(xiàng)的效果和指定"-N"選項(xiàng)相同。
- --forest:此選項(xiàng)的效果和指定"f"選項(xiàng)相同。
- --headers:重復(fù)顯示標(biāo)題列。
- --help:在線幫助。
- --info:顯示排錯(cuò)信息。
- --lines<顯示列數(shù)>:設(shè)置顯示畫面的列數(shù)。
- --no-headers:此選項(xiàng)的效果和指定"h"選項(xiàng)相同,只在列表格式方面稍有差異。
- --group<群組名稱>:此選項(xiàng)的效果和指定"-G"選項(xiàng)相同。
- --Group<群組識(shí)別碼>:此選項(xiàng)的效果和指定"-G"選項(xiàng)相同。
- --pid<程序識(shí)別碼>:此選項(xiàng)的效果和指定"-p"選項(xiàng)相同。
- --rows<顯示列數(shù)>:此選項(xiàng)的效果和指定"--lines"選項(xiàng)相同。
- --sid<階段作業(yè)>:此選項(xiàng)的效果和指定"-s"選項(xiàng)相同。
- --tty<終端機(jī)編號(hào)>:此選項(xiàng)的效果和指定"-t"選項(xiàng)相同。
- --user<用戶名稱>:此選項(xiàng)的效果和指定"-U"選項(xiàng)相同。
- --User<用戶識(shí)別碼>:此選項(xiàng)的效果和指定"-U"選項(xiàng)相同。
- --version:此選項(xiàng)的效果和指定"-V"選項(xiàng)相同。
- --widty<每列字符數(shù)>:此選項(xiàng)的效果和指定"-cols"選項(xiàng)相同。
[root@zlhpc ~]# ps -ef --標(biāo)準(zhǔn)格式顯示進(jìn)程 [root@zlhpc ~]# ps -aux --BSD格式顯示進(jìn)程
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
嵌入式Linux開發(fā)環(huán)境搭建ping、nfs的解決方法
在本篇文章里小編給大家整理了關(guān)于嵌入式Linux開發(fā)環(huán)境搭建ping、nfs的解決方法,需要的朋友們學(xué)習(xí)參考下。2019-07-07在Windows的Apache服務(wù)器上配置對(duì)PHP和CGI的支持
這篇文章主要介紹了在Windows的Apache服務(wù)器上配置對(duì)PHP和CGI的支持,其中CGI腳本文中演示的為Perl示例,需要的朋友可以參考下2015-07-07Linux回收站機(jī)制實(shí)現(xiàn)過程及用法詳解
這篇文章主要介紹了Linux回收站機(jī)制實(shí)現(xiàn)過程及用法詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08