文档章节

《App后台开发运维与架构实践》第4章 Linux系统

Lienson
 Lienson
发布于 04/11 14:14
字数 1657
阅读 21
收藏 1

4.2 常用的命令

4.2.1 全面了解系统资源情况——top

top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用情况。

输入top命令后,如下所示:

top命令显示的前5行是统计信息,第一行是基本信息。

基本信息
信息栏 含义
11:25:21 up 19:29 当前时间和系统运行时间,格式为时:分。这里表示已经运行了19小时29分
2 users 当前登录用户数
load average:0.00,0.00,0.00 系统负载。三个数值分别为1分钟、5分钟、15分钟前到现在的平均值

第二行是任务的信息。

任务信息
信息栏 含义
total 进程总数
running 正在运行的进程数
sleeping 睡眠的进程数
stopped 停止的进程数
zmobie 僵尸进程数

第三行是CPU利用率的统计信息。

CPU利用率统计信息
信息栏 含义
us User Time,CPU执行用户进程百分比,包括Nice Time
sy System Time,CPU在内核运行百分比,包括IRQ百分比
ni Nice Time,调整进程优先级所用百分比
id Idle Time,系统空闲百分比
wa Waiting Time,CPU等待I/O完成所用百分比
hi Hard IRQ Time,硬中断占用的CPU时间百分比
si Soft IRQ Time,软中断占用的CPU时间百分比
st Steal Time,虚拟服务占用的CPU时间百分比

第四行是内存的使用信息。

内存使用信息
信息栏 含义
total 总物理内存
used 已使用的物理内存
free 空闲的物理内存
buffers 缓冲的总量。存放准备写入磁盘的数据
cached 缓存的总量。存放从磁盘中读取出来的数据

第五行是交换区的使用信息。

交换区使用信息
信息栏 含义
total 交换区的总大小
used 已使用交换区的总大小
free 未使用交换区的总大小

什么是交换区(Swap)?

Linux的交换区是硬盘上的一块空间。在内存不足的情况下,操作系统先把内存中暂时不用的数据存到硬盘的交换区,腾出内存来让别的程序运行。

阿里云服务器上的Linux系统默认是没有设置Swap。由于开启Swap分区会导致硬盘I/O性能下降,因此初始状态未配置Swap,如果某些应用需要开启Swap分区,也可通过相应的命令开启。

top命令显示的第6行开始是进程统计信息区。

进程统计信息
信息栏 含义
PID 进程id
USER 进程所有者的用户名
PR 优先级
NI nice值。负值表示高优先级,正值表示低优先级
VIRI 进程使用的虚拟内存总量,单位KB
RES 进程使用的、未被换出的物理内存大小,单位KB
SHR 共享内存大小,单位KB
S 进程状态(D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程)
%CPU 上次更新到现在的CPU时间占用百分比
%MEM 进程使用的物理内存百分比
TIME+ 进程使用的CPU时间总计,单位1/100秒
COMMAND 命令名/命令行

4.2.2 显示进程状态——ps

ps命令是显示当前系统中进程的状态,这个命令显示的只是运行ps命令瞬间的状态,如果需要显示不断更新的状态,可以使用“top -p 进程id”命令。

ps命令的常用参数如下。

  • a:按用户名和启动时间的顺序来显示进程。
  • u:显示所有用户的所有进程(包括其他用户)。
  • x:显示无控制终端的进程。
# 显示所有的进程
ps -aux
# 只显示某个进程
ps axu|grep 进程名

 通过ps,管道命令“|”和grep就能把输出中匹配进程名的行检索出来。

4.2.3 查看网络相关信息——netstat

查看服务器的网络连接情况,比如

  • 查看某个端口是否开启。
  • 查看某个端口是由哪个程序开启。
  • 查看某个端口的连接数。

netstat命令的常用参数如下。

  • -l:listen,监听的端口。
  • -a:显示所有的Socket,包括正在监听。
  • -n:显示数字格式的地址。
  • -t:监听TCP的端口。
  • -u:监听UDP的端口。
  • -p:显示建立相关链接的程序名。
# 查看系统中启动的端口
netstat -lntup

# 查看系统中是否开启80端口
netstat -lntup|grep 80

# 查看系统中80端口的连接情况
netstat -ant|grep 80

4.2.4 查看某个进程打开的所有文件——lsof

lsof(list open files)是一个列出当前系统打开文件的工具。常用的参数如下。

  • -p:进程id。
# 查看进程id打开的文件
lsof -p 进程id

4.2.5 跟踪数据到达主机所经路由——traceroute

4.2.6 文件下载/上传工具——“ssh secure shell client”和“lrzsz”

  • “ssh secure shell client”是一个在Windows下通过ssh连接服务器的软件,其自带了文件的上传和下载功能。
  • lrzsz

lrzsz软件包,在Linux里可代替FTP上传和下载。安装lrzsz只要执行命令:

yum -y install lrzsz

往Linux服务器上传文件,只需在目标文件夹下执行如下命令,然后ssh客户端弹出窗口让用户选择上传的文件。

rz

把Linux服务器的文件下载到本地,可执行如下命令,在ssh客户端弹出文件窗口让用户选择下载文件的保存路径。

sz 目标文件

4.2.7 查看程序的依赖库——LD_DEBUG

4.2.8 进程管理利器——supervisor

  • 能自动启动配置好的进程,并监控每个进程的状态。
  • 监控的进程如果因为各种原因闪退,能自动重启该进程。

安装supervisor命令:

yum install supervisor

 其配置文件/etc/supervisord.conf。

为了更好地管理进程监控脚本,把进程监控脚本放在/etc/supervisord/conf.d/下。例如,为监控运行脚本/data/sendmail.sh,创建文件/etc/supervisord/conf.d/mail.conf。

© 著作权归作者所有

Lienson
粉丝 15
博文 107
码字总数 97577
作品 0
福州
程序员
私信 提问
Linux 系统运维学习方法汇总

本文转载自:http://freeloda.blog.51cto.com/2033581/1315694 大纲 一、前言 二、Linux 运维大环境说明 三、Linux 运维学习思路 四、Linux 运维大方向说明 五、Linux 运维学习必看书籍推荐 ...

woshiliwentong
2014/03/18
0
0
Linux运维每日都在做什么工作?Linux运维学习

  Linux系统在互联网公司应用越来越多,也有不少的朋友愿意加入运维的行列中,那么,运维每天都做什么工作呢?   运维人员做事需遵循“简单、易用、高效”的原则。对于运维服务有3大宗旨:...

老男孩Linux培训
2018/06/04
30
0
《App后台开发运维与架构实践》第1章 App后台入门

1.1 App后台的功能 远程存储数据 消息中转 1.2 App后台架构 如何快速提炼架构核心点,掌握架构的精髓? 是在什么业务逻辑遇到哪些问题; 采用了哪些技术解决方案。 架构设计有哪些特点? 架构...

Lienson
04/10
32
0
【深圳小伙伴的福利】运维、敏捷、架构,DevOps技术分享!

神马?还不知道DevOps,那你out了! 想和大牛当面交流DevOps实践经验?那就去啊~12月20日,云智慧联合珠三角技术沙龙,带来一场包括运维、敏捷、架构的DevOps技术沙龙,还有Coding、云之讯、...

cloudwiseAPM
2014/12/11
249
0
第1章 容器技术和Docker简介

容器技术。docker。 到底什么是docker? 虚拟机和容器的区别。创建虚拟机,不同应用在不同虚拟机内进行隔离。容器技术进行隔离。 不需要虚拟化这一层虚拟的操作系统,只需要在本地操作系统之...

天涯明月笙
2018/07/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

zookeeper - leader选举

让我们分析如何在ZooKeeper集合中选举leader节点。考虑一个集群中有N个节点。leader选举的过程如下: 所有节点创建具有相同路径 /app/leader_election/guid_ 的顺序、临时节点。 ZooKeeper集...

Canaan_
19分钟前
5
0
金九银十裸辞跳槽面试,却被面试官吊打

目前已经达到金九银十的阶段,相信有不少程序员蠢蠢欲动,开始出去试试水,想要跳槽涨薪了!有一个朋友就想改变现状,于是找了大量网上的面试题,强行记下之后,开始出去“试水”。 他试水之...

别打我会飞
22分钟前
4
0
Spring 官方出品应用监控度量指标门面类库Micrometer介绍

前言 上篇文章 Spring Boot 2.x 中的 Actuator 我们提到了在Spring Boot Actuator中的metirc指标。在Spring Boot 2.x中 官方引入了新的监控门面(facade)类库Micrometer。如果你对门面不是很清...

码农小胖哥
52分钟前
7
0
获取form对象

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"> <head> <......

前端老手
54分钟前
5
0
CSS-字体格式化

一、字体属性 1、自定字体的类型 font-family:黑体,华文彩云,宋体; 用逗号隔开多个字体类型 2、字体大小 font-size 取值:(1)以px为单位的数字 (2)以pt为单位的数字 (3)em/rem 3、...

wytao1995
57分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部