> 问答

Linux系统管理应当掌握的20条命令

人阅读 2024-10-17 00:06:17Linux
广告 X
欧意最新版本

欧意最新版本

欧意最新版本app是一款安全、稳定、可靠的数字货币交易平台。

APP下载  官网地址

  英文原文链接: 20 Linux System Monitoring Tools Every SysAdmin Should Know

  linux系统管理中需要监控Linux服务器的性能, Linux本身提供一些很有用的命令和组件, 几乎所有的Linux发行版都装备了大量的监控工具,这些工具通过获取系统状态从而达到衡量系统健康状况, 系统管理员可以使用这些工具来找到导致系统性能问题的原因。本文列出的命令是一些常用的基本命令,用来分析和调试系统状况,比如:

  性能瓶颈.

  磁盘 (存储) 问题.

  CPU和内存的使用.

  网络性能.

  #1: top – 进程活动状态

  "top" 命令提供运行系统的动态实时视图, 比如: 系统进程, 内存、CPU占用. 缺省状态下, top显示按CPU使用的进程, 每隔5秒更新一次.

  常用热键

  如下为"top"命令常用的热键:

  热键 说明

  t 显示/关闭概括信息.

  m 显示/关闭内存信息.

  A 降序显示占用的系统资源,可以很容易识别消耗系统资源多的进程.

  f 交互模式配置模式, 可以运行一些特定的任务.

  o 允许在top命令窗口交互式选择排序方式 .

  r 对指定进程运行 renice 命令.(优先级)

  k 对指定进程运行 kill 命令(杀死指定的进程)

  z 打开/关闭 彩色/黑白 显示

  => 相关命令: How do I Find Out Linux CPU Utilization?

  #2: vmstat – 系统状态,内存,CPU使用状况

  "vmstat"命令报告系统进程、内存,页面、以及 block IO, traps, CPU的使用状况.

  # vmstat 3

  输出:

  procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------

  r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st

  0  0      0 2540988 522188 5130400    0    0     2    32    4    2  4  1 96  0  0

  1  0      0 2540988 522188 5130400    0    0     0   720 1199  665  1  0 99  0  0

  0  0      0 2540956 522188 5130400    0    0     0     0 1151 1569  4  1 95  0  0

  0  0      0 2540956 522188 5130500    0    0     0     6 1117  439  1  0 99  0  0

  0  0      0 2540940 522188 5130512    0    0     0   536 1189  932  1  0 98  0  0

  0  0      0 2538444 522188 5130588    0    0     0     0 1187 1417  4  1 96  0  0

  0  0      0 2490060 522188 5130640    0    0     0    18 1253 1123  5  1 94  0  0显示内存使用情况

  # vmstat -m

  获取活动/非活动的内存页面状况

  # vmstat -a

  => 相关链接: How do I find out Linux Resource utilization to detect system bottlenecks?

  #3: w – 查看谁登录到系统,并且在做什么事情

  w 命令显示当前登录到系统的用户,以及当前运行的进程/命令.

  # w <用户名>

  # w root

  Sample Outputs:

  [root@smtp ~]# w root

  12:56:52 up 238 days, 13:52,  3 users,  load average: 0.00, 0.00, 0.00

  USER     TTY      FROM  LOGIN@   IDLE   JCPU   PCPU WHAT

  root     pts/0    10.10.3.38      12:56   26.00s  0.01s  0.00s vi /etc/hosts

  root     pts/1    10.10.3.38      12:56    0.00s  0.01s  0.00s w root

  root     pts/2    10.10.3.38      12:56    3.00s  0.02s  0.00s top

  #4: uptime – 系统运行时间

  uptime命令可以查看系统已经运行了多长时间,当前登录的用户,以及过去1分钟,5分钟和15分钟的系统负载。

  # uptime

  输出:

  18:02:41 up 41 days, 23:42,  1 user,  load average: 0.00, 0.00, 0.00

  #5: ps – 显示系统进程

  ps 命令会输出当前进程的报告,要输出所有进程,请使用 -A 或 -e 选项:

  # ps -A

  输出:

  PID TTY    TIME CMD

  1 ?  00:00:02 init

  2 ?  00:00:02 migration/0

  3 ?  00:00:01 ksoftirqd/0

  4 ?  00:00:00 watchdog/0

  5 ?  00:00:00 migration/1

  6 ?  00:00:15 ksoftirqd/1

  ....

  .....

  4881 ?  00:53:28 java

  4885 tty1     00:00:00 mingetty

  4886 tty2     00:00:00 mingetty

  4887 tty3     00:00:00 mingetty

  4888 tty4     00:00:00 mingetty

  4891 tty5     00:00:00 mingetty

  4892 tty6     00:00:00 mingetty

  4893 ttyS1    00:00:00 agetty

  12853 ?  00:00:00 cifsoplockd

  12854 ?  00:00:00 cifsdnotifyd

  14231 ?  00:10:34 lighttpd

  14232 ?  00:00:00 php-cgi

  54981 pts/0    00:00:00 vim

  55465 ?  00:00:00 php-cgi

  55546 ?  00:00:00 bind9-snmp-stat

  55704 pts/1    00:00:00 psps is just like top but provides more information.

  长格式输出

  # ps -Al

  超长格式输出:

  # ps -AlF

  查看线程 ( LWP 和 NLWP)

  # ps -AlFH

  查看每个进程的线程

  # ps -AlLm

  查看服务器运行的所有进程

  # ps ax

  # ps axu

  以树状输出进程状态

  # ps -ejH

  # ps axjf

  # pstree

  输出安全信息

  # ps -eo euser,ruser,suser,fuser,f,comm,label

  # ps axZ

  # ps -eM

  按特定用户身份查看进程

  # ps -U root -u root u

  按用户定义的格式输出进程状态

  # ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm

  # ps axo stat,euid,ruid,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm

  # ps -eopid,tt,user,fname,tmout,f,wchan

  显示某特定的进程ID, 例如:lighttpd

  # ps -C lighttpd -o pid=

  或者

  # pgrep lighttpd

  或者

  # pgrep -u vivek php-cgi

  显示PID 55977的进程名称

  # ps -p 55977 -o comm=

  找出前10个最多占用系统内存的进程

  # ps -auxf | sort -nr -k 4 | head -10

  找出前10个最多占用CPU资源的进程

  # ps -auxf | sort -nr -k 3 | head -10

  #6: free – 内存占用状况<

关键词标签:Linux,系统管理

LOT物联网

iot产品 iot技术 iot应用 iot工程

Powered By LOT物联网  闽ICP备2024036174号-1

联系邮箱:support1012@126.com