Linux 命令行(2) 性能监控

pwd 查看当前目录

 

 cd 转到指定目录

 cd .. 返回上一级

 cd ../.. 返回上上级

 

 ls 当前目录下文件列表

 ls -al 显示隐藏文件

 ls -hl 显示详细信息

 ls xxx* 查找当前目录下包含xxx的文件名 

 

 more 在黑屏上分页显示文件内容,从前往后读取文件

 more -5 每页显示5行

 空格 下一页

 b 上一页

 

 less 分页显示工具 [pageup] [pagedown] 

 history | less

 

 cp 复制文件

 cp  /路径1  /路径2 

 

 mv 移动 重命名

 

 tar 打包 解包

 gzip bzip2 压缩 解压缩 

 tar xvf 解包

 tar cvf file.tar dirname 打包

 tar cvf file.tar file1 file2 file3 ... 

 tar -zxvf file.tar.gz 解压并解包 

 

 vi 以文本编辑器的方式打开文件

 dd 删除当前行

 x 删除一个字符

 gg 回到第一行

 shift + g 到最后一行 

 :x :wq! 强制保存退出

 :q! 不保存退出

 ?xxx 在文本中查找xxx字符串

 n 下一处

 Shift + n 上一处

 

 reboot 重启服务器

 

 rm 删除

 rm -f *强制删除

 rm -i *删除前询问

 rm -r *删除子目录及子目录中所有文件

 

 mkdir 建立文件夹/路径及其下面所有文件

 mkdir -p test/test1 递归创建多目录

 

 rmdir 删除空目录(非空目录无法删除)

 

 cat  (1)在黑屏上显示文件中的所有内容

      (2)将几个文件合并为一个文件 cat file1 file2 > file

      cat -n * 显示行号

 

 

 tail 黑屏显示最新的文件内容

 tail -f 黑屏实时显示文件内容

 

 grep 使用正则表达式搜索文本内容,将匹配行打印出来

 grep -n ‘xxx’file 显示行号

 

 ps 查看进程

 ps -ef | grep xxx

 ps -aux | grep xxx

 

 yum Shell前端软件包管理器 基于rpm包管理

 (1)安装 yum install package1

 (2)更新 yum update package1

 (3)删除 yum remove | erase package1

 

 shutdown 关闭服务器

 shutdown -r +10 十分钟后关机并且马上重新启动

 shutdown -h now 马上关机并且不重新启动

 

 hostname 

 等同于cat /proc/sys/kernel/hostname

 

 hostname newname

 

 whoami 查看当前登录用户名

 

 clear 清屏

 

 date 

 (1)查看日期

 (2)修改服务器时间

 nate -s mm/dd/yyyy

 nate -s hh:mm:ss

 

 (3)同步网络时间

 ntpdate pool.ntp.org

 

 head 显示文件前十行

 与tail命令类比

 

 chmod 更改权限

 文件权限说明drwxrwxrwx

 (1)第一位 d目录 l符号链接指向另一个文件 s套接字文件 b块设备文件 c字符设备文件 p命名管道文件 -普通文件

 (2)三组用户:文件所有者,组用户,其他用户

 (3)r读权限 w写/修改权限 x执行权限

 (4)二进制表示

 chmod 777 *

 chmod a-x *  -减少权限 +增加权限 u文件所有者 g属组用户 o其他用户 a所有用户

 chmod -R 664 /temp/* 连同子目录下文件一起设置

 

 which 查看可执行文件的位置

 whereis 查看文件的位置 (速度比find快)

 locate 配合数据库查看文件位置

 find 实际搜寻硬盘查询文件名称

 

 find 实际搜寻硬盘查询文件名称

 find / -name ‘xxx’

 

 history 显示历史执行命令

 export HISTTIMEFORMAT='%F %T ' 显示执行时间
 history | more

 

 ifconfig 查看网卡信息 配置网卡

 

 kill -9 pid 强制终止进程

 

 uname -a 查看系统信息

 

 rpm -ivh package_name RedHat软件包管理工具 添加/删除程序

 -ivh 显示安装进度

 

 rz 本地上传到服务器

 

 sz 发送文件到本地 

 

 sh 执行shell脚本

 

 top 实时监控系统处理器

 当前时间 系统运行时间 当前登录用户数 系统负载

 进程总数 运行中 睡眠中 ...

 us用户空间占用CPU百分比 sy内核空间占用CPU百分比 id空闲CPU百分比

 物理内存总量 交换区总量

 进程信息

 

 free 显示内存使用情况 MEM SWAP

 free命令的输出值从/proc/meminfo中读出的

 free -k -m 输出结果单位KB MB

 

 iostat 输出CPU和磁盘I/O相关的统计信息

 avg-cpu段:

 %user 用户空间(应用程序使用)

 %nice 优先进程消耗的CPU时间占用百分比

 %system 内核空间(内核使用)

 %iowait CPU等待硬件I/O 占用百分比

 %idle CPU空闲时间百分比

 Device 段

 tps每秒发送到I/O的请求数

 Blk_read/s每秒读取的block数

 Blk_wrtn/s每秒写入的block数

 Blk_read 读入的block总数

 Blk_wrtn 写入的block总数

 iostat 2 每两秒显示一次统计信息

(C.F. 内核空间与用户空间Linux内核将这4G字节的空间分为两部分。将最高的1G字节(从虚拟地址0xC0000000到0xFFFFFFFF),供内核使用,称为内核空间。而将较低的3G字节(从虚拟地址 0x00000000到0xBFFFFFFF),供各个进程使用,称为用户空间)

 

 mpstat 获取CPU相关统计信息

 %irq 用于处理系统中断的CPU百分比

 %soft 用于软件中断的CPU百分比

 %idle CPU空闲时间

 %intr/s 每秒CPU接收的中断总数

 (和vmstat区别,mpstat可以查看多个CPU)

 mpstat -P ALL 2 3 显示所有CPU,每两秒刷新,显示三次

 

 netstat 显示网络相关信息,网络连接、路由表、接口状态、masquerade连接、多播成员

 (1)Active Internet connections有源TCP连接

 Recv-Q 接收队列

 Send-Q 发送队列

 一般都为0,不是0表示有包在队列中等待

 (2)Active UNIX domain sockets有源Unix域套接字

 Proto 连接使用的协议

 RefCnt 连接到本套接字的进程号

 Types 套接字类型

 State 套接字状态

 I-Node

 Path 连接套接字的其他进程使用的路径名

 netstat -a | more 列出所有端口

 netstat -at 列出所有tcp端口

 netstat -au 列出所有udp端口

 netstat -s 显示所有端口的统计信息

 

netstat -an | grep [PORT]

netstat -tunlp | grep [PORT] 查看某端口号是否被占用 

 

 pmap pid 查看具体进程所用内存的分布情况

 Address 进程所占地址空间

 Kbytes 该虚拟段的大小

 RSS 驻留集大小

 Anon 设备节点号,0表示没有节点与内存相对应

 Locked 是否允许swapped

 Mode 权限

 Mapping bash对应的映象文件名 [anon]已分配内存 [stack]程序堆栈

 Offset 文件偏移

 Device 设备名(主设备:次设备)

 pmap -x pid 显示扩展格式

 pmap -d pid 显示设备格式

 

 uptime 显示系统负载

 参看top

 

 vmstat 查看整机的CPU、内存、IO使用情况

 vmstat 2 每两秒采集一次服务器状态

 r 在运行队列中等待的进程数

 b 在等待io的进程数

 r b列一般为0,表示没有等待进程

 swpd 虚拟内存使用情况

 free 空闲的内存

 buff 被用来作为缓存的内存数

 cache 被用来做文件缓存的内存数

 in 每秒中断数

 cs 每秒上下文切换次数 

 

 watch 帮助用户重复执行某命令,把每次的结果显示在黑屏上

 watch command (默认执行间隔2s)

 watch -n 10 ‘cat /proc/loadavg’每10秒执行一次

 watch -d ‘cat /proc/loadavg’ 高亮显示差异

 

【服务器连接数】

查看历史连接数
netstat -na | wc -l

查看有效的连接数
netstat -nat | grep ESTABLISHED | wc -l

对服务器各种状态下的连接数分组并查询得到结果
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

统计80端口连接数
netstat -nat|grep -i "80"|wc -l

状态:描述
CLOSED:无连接是活动的或正在进行
LISTEN:服务器在等待进入呼叫
SYN_RECV:一个连接请求已经到达,等待确认
SYN_SENT:应用已经开始,打开一个连接
ESTABLISHED:正常数据传输状态
FIN_WAIT1:应用说它已经完成
FIN_WAIT2:另一边已同意释放
ITMED_WAIT:等待所有分组死掉
CLOSING:两边同时尝试关闭
TIME_WAIT:另一边已初始化一个释放
LAST_ACK:等待所有分组死掉

posted @ 2014-05-08 20:22  岂曰无衣  阅读(91)  评论(0)    收藏  举报