《linux就该这么学》 笔记 (5)
想要做一名优秀的运维人员,必须具备快速查看linux系统运行状态的能力, 更快更好的了解linux服务器,包括一下几个方面:
- 网络网卡
- 系统内核
- 系统负载
- 内存使用情况
- 当前启用终端数量
- 历史登录记录
- 命令执行记录
- 救援诊断
由于 man 可以查看每条命令的参数, 所以命令的参数这里就不一一列出了。
1 ifconfig
ifconfig( configure a network interface)于获取网卡配置与网络状态信息,主要查看网卡名称,inet参数后面的ip地址、ether参数后面的ip地址、ether参数后面的网卡物理地址(MAC)地址、RX、TX的接受数据包与发送数据包的个数及累计流量。
ifconfig [网络设备] [参数]
[redhat@linuxpronbe Desktop]$ ifconfig
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
ether 00:0c:29:76:fa:5b txqueuelen 1000 (Ethernet)
RX packets 4926 bytes 320824 (313.3 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
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 3618 bytes 292924 (286.0 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 3618 bytes 292924 (286.0 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
2 uname
uname (print system information)用于参看系统内核和系统版本信息,
uname [-a]
[redhat@linuxpronbe Desktop]$ uname -a
Linux 系统内核名称
linuxpronbe.com 主机名
3.10.0-123.el7.x86_64 内核发行版本编号
#1 SMP 节点名
Mon May 5 11:16:57 EDT 2014系统时间
x86_64 硬件名称
x86_64 硬件平台
x86_64 处理器类型
GNU/Linux 操作系统名称
3 uptime
uptime( Tell how long the system has been running.)用于查看系统负载信息, 它可以显示系统时间、系统已运行时间、启动终端数量以及平均负载等。 平均负载值在最近1,5,15分钟内的压力情况,负载越低越好,尽量不要长期超过1,在生产环境中不要超过5.
[redhat@linuxpronbe Desktop]$ uptime
03:32:35 up 22:53, 3 users, load average: 0.00, 0.01, 0.05
4 free
free(Display amount of free and used memory in the system)用于显示当前系统中内存的使用量信息,为了保证linux系统不会因资源耗尽而突然宕机,运维人员需要时刻关注内存的使用量。
[redhat@linuxpronbe Desktop]$ free -h
total used free shared buffers cached
Mem: 1.8G 1.2G 562M 9.9M 1.1M 340M
-/+ buffers/cache: 922M 904M
Swap: 2.0G 0B 2.0G
5 who
who( show who is logged on)用于查看当前登入主机的终端信息
[redhat@linuxpronbe Desktop]$ who
redhat 登录名 :0终端设备 2021-07-21 04:37 (:0)登录到系统的时间
redhat pts/0 2021-07-21 04:37 (:0)
redhat pts/1 2021-07-21 21:30 (:0)
6 last
last(last, lastb - show listing of last logged in users)可以查看所有系统的登录记录,由于这些信息都是以日志文件的形式保存在系统中,因此黑客可以很容易的对内容进行篡改,不能单纯以该命令输出的信息而判断系统有无被恶意入侵。
[redhat@linuxpronbe Desktop]$ last
redhat pts/1 :0 Wed Jul 21 21:30 still logged in
redhat pts/0 :0 Wed Jul 21 04:37 still logged in
redhat :0 :0 Wed Jul 21 04:37 still logged in
(unknown :0 :0 Wed Jul 21 04:30 - 04:37 (00:06)
reboot system boot 3.10.0-123.el7.x Wed Jul 21 12:30 - 04:11 (15:40)
redhat pts/0 :0 Wed Jul 21 04:20 - 04:26 (00:06)
redhat :0 :0 Wed Jul 21 04:20 - 04:26 (00:06)
(unknown :0 :0 Wed Jul 21 04:19 - 04:20 (00:00)
reboot system boot 3.10.0-123.el7.x Wed Jul 21 12:19 - 04:26 (-7:-53)
redhat pts/0 :0 Wed Jul 21 03:28 - 04:19 (00:51)
redhat :0 :0 Wed Jul 21 02:57 - 04:19 (01:22)
(unknown :0 :0 Wed Jul 21 02:55 - 02:57 (00:02)
reboot system boot 3.10.0-123.el7.x Wed Jul 21 10:52 - 04:19 (-6:-32)
7 history
history查看历史执行过的命令, 还可以配合!N 重复执行一次某条历史命令 。
[redhat@linuxpronbe Desktop]$ history
1 man man
2 man man
3 man man
4 man echo
5 echo si
6 echo sisi|si
7 echo sisi|$
8 echo $shell
9 echo $man
10 echo
11 echo hello world
12 date
13 date "+%Y-%M-%D"
[redhat@linuxpronbe Desktop]$ !5
echo si
si
8 sosreport
sosreport(Collect and package diagnostic and support data), 当linux系统出现故障需要联系技术人员时,大多时候都要使用这个命令来简单手机系统的运行状态和配置服务信息,以便让技术支持人员能够远程解决一些小问题,亦或能让他们提前了解某些复杂问题。在输出信息中,最后包含了压缩资料文件以及验证码。