运维-常用命令

ps -ef:查看服务器进程信息

-e:等价于-A,列出全部的进程

-f:显示全部的列

参数说明
UID该进程执行的用户id
PID进程id
PPID该进程的父级进程id,如果一个程序的父级进程找不到,该程序的进程被称为僵尸进程
Ccpu的占用率,形式是百分数(%)
STIME进程的启动时间
TTY终端设备,发起该进程的设备识别符号,如果显示‘ ?’表示该进程并不是由终端发起
TIME进程的执行时间
CMD该进程的名称或对应的路径

ps-aux:该进程的名称或对应的路径

-a:显示终端机下的所有程序

-u:以用户为主的格式显示程序状态

-x:显示所有程序,不以终端机来区分

netsat:可用于监控本机的TCP/IP网络,获得路由表、网络连接以及所有网络接口设备的状态信息。一般情况下,我们主要使用netstat命令显示与IP、TCP、UDP和ICMP协议相关的统计数据,检验本机各端口的网络连接情况

netstat -r :等同于route,显示路由信息

netstat 1:显示本机活动的TCP连接

netstat -a:列出所有端口

netstat -at:列出所有TCP端口

netstat -au:列出所有UDP端口

netstat -i:显示网络接口设备的统计信息

netstat -ie:等同于ifconfig

netstat -s:输出针对不同网络协议的统计信息,包括 IpIcmpTcp 和 Udp 等

ss:同netstat一样

-a 显示所有活动的连接以及本机侦听的TCP、UDP端口
-l 显示监听的server port
-n 直接使用IP地址,不通过域名服务器
-p 正在使用Socket的程序PID和程序名称
-r 显示路由表
-t 显示TCP传输协议的连线状况
-u 显示UDP传输协议的连线状况
-w 显示RAW传输协议的连线状况

lsof:

  lsof test.txt 显示开启文件test.txt的进程
  lsof -c abc 显示abc进程现在打开的文件
  lsof -cp 1234 列出进程号为1234的进程所打开的文件
  lsof -g gid 显示归属gid的进程情况
  lsof +d /usr/local/ 显示/usr/local/目录下被进程开启的文件
  lsof +D /usr/local/ 同上,但是会搜索目录下的目录(即递归搜索),时间较长
  lsof -d 4 显示fd为4的进程
  lsof -i 用以显示符合条件的进程情况
  lsof -i[46] [protocol][@hostname|hostaddr][:service|port]
    46 --> IPv4 or IPv6
    protocol --> TCP or UDP
    hostname --> Internet host name
    hostaddr --> IPv4地址
    service --> /etc/service中的 service name (可以不止一个)
    port --> 端口号 (可以不止一个)
  lsof `which httpd`        //查看哪个进程在使用apache的可执行文件
  lsof /etc/passwd          //查看哪个进程在占用/etc/passwd
  lsof /dev/hda6            //查看哪个进程在占用hda6
  lsof /dev/cdrom           //查看哪个进程在占用光驱
  lsof -c sendmail          //查看sendmail进程现在打开的文件
  lsof -c courier -u ^zahn  //显示出哪些文件被以courier打头的进程打开,但是并不属于用户zahn
  lsof -p 30297             //列出进程id为30297的进程所打开的文件
  lsof -D /tmp              //显示所有在/tmp目录下打开文件的进程
   
  lsof -u1000               //查看uid是1000的用户的进程的文件使用情况
  lsof -utony               //查看用户tony的进程的文件使用情况
  lsof -u^tony              //查看不是用户tony的进程的文件使用情况(^是取反的意思)
  lsof -i                   //显示所有已经打开的端口
  lsof -i:80                //查看80端口被哪个进程占用
  lsof -i -U                //显示所有打开的端口和UNIX domain文件
  lsof -i UDP@[url]www.akadia.com:123 //显示哪些进程打开了到www.akadia.com的UDP的123(ntp)端口的链接
  lsof -i tcp@ohaha.ks.edu.tw:ftp -r //不断查看目前ftp连接的情况(-r,lsof会永远不断的执行,直到收到中断信号,+r,lsof会一直执行,直到没有档案被显示,缺省是15s刷新)
  lsof -i tcp@ohaha.ks.edu.tw:ftp -n //lsof -n 不将IP转换为hostname,缺省是不加上-n参数