序言

如果大家都爱装逼,一般会偏爱使用安装最小化的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 (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系统查看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

  1. root:用户名
  2. x:密码占位符
  3. UID
  4. GID
  5. 用户描述
  6. 用户主文件夹
  7. 登录后使用的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:::

  1. root:用户名
  2. $6$zVDR2oO1Yg7alTbs$.70PPMYxg70k9BvLtjHdm94CDA1YWDRDI5NFzSfcmZF5WMESgIbLUdnqRjuVycg481Ny9rl//YzAFnXhurQi//:root用户用sha512加密过的用户密码
  3. 最近更改密码的日期,从19700101开始计算至修改密码那天的累积天数。
  4. 0:密码不能更改的天数,最近更改过后几年之后才能被再次更改,0表示可以随意随时修改。
  5. 99999:密码的过期时间,密码在多少天后必须被修改。
  6. 7:系统需要在密码过期的的前7天发出密码即将过期的警告。
  7. 宽限天数,密码过啦几天后还能修改密码。
  8. 帐号过期时间
  9. 保留字段,目前没有用到。

查看关于组的配置文件,如下:

[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. 此用户组支持的帐号名称。

接下来我们来看下帐号管理,关于帐号的增删改查操作

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这个命令做个解释

  1. user:用户名
  2. tty:用户的机器名或tty号
  3. from:远程主机的地址
  4. login@:用户登录系统的时间
  5. idle:空闲时间
  6. jcpu:附加到tty(终端)的进程所用的时间(JCPU时间)
  7. pcpu:当前进程所用时间(PCPU时间)
  8. 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&amp;tpl=mn&amp;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>&copy;2017&nbsp;Baidu&nbsp;<a href=http://www.baidu.com/duty/>使用百度前必读</a>&nbsp; <a href=http://jianyi.baidu.com/ class=cp-feedback>意见反馈</a>&nbsp;京ICP证030173号&nbsp; <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参数如下:

  1. -h 提供帮助命令
  2. -v 显示mtr的版本信息
  3. -r 已报告模式显示
  4. -c 设置每秒发送数据包的数量
  5. -s 用来指定ping数据包的大小
  6. -n no-dns不对IP地址做域名解析
  7. -a 来设置发送数据包的IP地址 这个对一个主机由多个IP地址是有用的
  8. -i 使用这个参数来设置ICMP返回之间的要求默认是1秒
  9. -4 IPv4
  10. -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退出监控。

Liunx系统的硬盘存储与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秒显式所有进程的资源占用情况
top -c  //每隔5秒显式进程的资源占用情况,并显示进程的命令行参数(默认只有进程名)
top -p  -p //每隔5秒显示pid是12345和pid是6789的两个进程的资源占用情况
top -d  -c -p  //每隔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:          .0G          0B        .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、你可以忘记点赞加关注,但千万不要忘记扫码打赏哦。

Linux系统(三)系统基础扫盲大全的更多相关文章

  1. ubuntu,kali linux和windows三系统流水账——写给自己

    我先说一下ubuntu和windows双系统安装的几种方法,最后总结kali linux的安装,想起什么写什么,所以有点乱.然后记录一下自己的使用过程中遇见的问题和解决的方法,还有我的个人建议. 我个 ...

  2. Ubuntu Linux系统三种方法添加本地软件库

    闲着没事教教大家以Ubuntu Linux系统三种方法添加本地软件库,ubuntu Linux使用本地软件包作为安装源——转2007-04-26 19:47新手重新系统的概率很高,每次重装系统后都要经 ...

  3. Android系统--输入系统(三)必备Linux知识_双向通信(scoketpair)

    Android系统--输入系统(三)必备Linux知识_双向通信(scoketpair) 引入 1. 进程和APP通信 创建进程 读取.分发 - 进程发送输入事件给APP 进程读取APP回应的事件 输 ...

  4. Linux的基础命令大全

    linux的基础命令大全 1.shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口(命令解释器) ls -al /bin/sh   ls -al /bin/bash 查看这些shell的 ...

  5. 浅析 Linux 初始化 init 系统,第 1 部分: sysvinit 第 2 部分: UpStart 第 3 部分: Systemd

    浅析 Linux 初始化 init 系统,第 1 部分: sysvinit  第 2 部分: UpStart 第 3 部分: Systemd http://www.ibm.com/developerw ...

  6. Linux(三)——Unix&Linux 的基础命令

    Linux(三)--Unix&Linux 的基础命令 快捷键 Ctl-A 光标移动到行首 Ctl-C 终止命令 Ctl-D 注销登录 Ctl-E 光标移动到行尾 Ctl-U 删除光标到行首的所 ...

  7. 温故之--Linux 初始化 init 系统

    参选URL: http://www.ibm.com/developerworks/cn/linux/1407_liuming_init1/index.html 本系列一共三篇,看完记住,那水平就不一样 ...

  8. linux和windows系统的区别

    在21世纪的今天,互联网可以说是当代发展最为迅速的行业,举个很简单的例子,现在的我们不论什么年龄阶层,几乎人手都有一部手机,上面的某博,某音,末手等软件,更是受到多数人的热爱,并且人们不仅仅用其来消遣 ...

  9. 浅析 Linux 初始化 init 系统

    近年来,Linux 系统的 init 进程经历了两次重大的演进,传统的 sysvinit 已经逐渐淡出历史舞台,新的 UpStart 和 systemd 各有特点,越来越多的 Linux 发行版采纳了 ...

随机推荐

  1. 做自己的串口调试工具-MFC

    之前一共说了几个软件库,串口通讯的,xml加载的,还有动态提示的,通过这三个库就可以实现一个自己的串口调试工具,成品如下 动态加载配置文件之后如下 软件可以在xml中配置发送的字符串,不算是大工程,但 ...

  2. November 11th 2016 Week 46th Friday

    Keep in mind that neither success nor failure is ever final. 无论成败,皆非定局. The final is not coming, but ...

  3. uartz Spring与Spring Task总结

    Spring对Quartz作了一个封装,同时,Spring自己也提供了一个任务定时器(spring-task),现把它总结一下.    对于Quartz,我们使用的时候主要是注重两个方面,一个是定时任 ...

  4. UVA 1386 Cellular Automaton

    矩阵快速幂. 样例是这样构造矩阵的: 矩阵很好构造,但是500*500*500*logk的复杂度显然是无法通过这题的. 其实本题构造出来的矩阵是一个循环矩阵,只需直到第一行或者第一列,即可直到整个矩阵 ...

  5. NIO 入门基础

    输入/输出:概念性描述 I/O 简介 I/O ? 或者输入/输出 ? 指的是计算机与外部世界或者一个程序与计算机的其余部分的之间的接口.它对于任何计算机系统都非常关键,因而所有 I/O 的主体实际上是 ...

  6. 使用flexbox来布局web应用

    使用 flexbox 可以帮助你设计出引人注目的布局,并且在pc端或移动端能够很好的缩放.告别使用浮动的 <div> 元素.绝对定位 和一些JavaScript hacks, 使用仅仅几行 ...

  7. php中字符串长度和截取的函数

    在做PHP开发的时候,由于我国的语言环境问题,所以我们常常需要对中文进行处理. 在PHP中,我们都知道有专门的mb_substr和mb_strlen函数,可以对中文进行截取和计算长度,但是,由于这些函 ...

  8. [HNOI2004]Language L语言

    2777: [HNOI2004]Language L语言 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 10  Solved: 5[Submit][S ...

  9. Php连接及读取和写入mysql数据库的常用代码

    在这里我总结了常用的PHP连接MySQL数据库以及读取写入数据库的方法,希望能够帮到你,当然也是作为我自己的一个回顾总结. 1.为了更好地设置数据连接,一般会将数据连接所涉及的值定义成变量. $mys ...

  10. 兼容ie6及以上的阴影滤镜的写法

    .subnav{ width: 220px; _width:160px; min-height: 168px; border: 1px solid #d0d8da; background: #fff; ...