LINUX 常用系统命令

在LINUX下面有很多的非常有用的系统命令, 使用的好的话, 能够起到事半功倍的效果, 下面就列举几个常见命令的用法以及他们的应用场景。

1. netstat

netstat是一个监控网络使用的工具, 用它可以查看当前机器上面的网络连接情况,可以使用不同的参数查看, 常用的,比如-anp,输出结果如下:

$netstat -anp | grep mongo
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 192.168.166.63:43170 192.168.166.63:8086 ESTABLISHED 29644/jmiss-mongo-r

Proto: 代表使用的协议, 例如, tcp, udp, unix等;
LocalAddress: 代表本地的IP, 端口;
Foreign Address: 发起连接的源的IP, port;
State: 标识当前连接的状态;
PID/Program Name: 程序的pid, 以及程序的名字;

连接的状态是查看一个连接的重要信息, 有如下的状态:
LISTEN: 侦听来自远方的TCP端口的连接请求;
SYN-SENT: 在发送连接请求后等待匹配的连接请求;
SYN-RECEIVED:在收到和发送一个连接请求后等待对方对连接请求的确认;
ESTABLISHED:代表一个打开的连接;
FIN-WAIT-1:等待远程TCP连接中断请求,或先前的连接中断请求的确认;
FIN-WAIT-2: 从远程TCP等待连接中断请求;
CLOSE-WAIT: 等待从本地用户发来的连接中断请求;
CLOSING: 等待远程TCP对连接中断的确认;
LAST-ACK: 等待原来的发向远程TCP的连接中断请求的确认;
TIME-WAIT: 等待足够的时间以确保远程TCP接收到连接中断请求的确认;
CLOSED: 没有任何连接状态;

使用的场景:

  • 查看某个端口的连接状况;
    netstat -anp | grep xxx
  • 查看某个进程被那些进程调用以及他会调用哪些程序;
    netstat -anp | grep pid
  • 查看当前 的所有TCP连接
    netstat -t

- lsof

lsof (list opened files)可以列出系统打开的文件, 特别是打开某个进程打开的文件句柄, 以及某个文件句柄是由哪一个进程打开的等, 特别的使用。

  • 某个进程打开的文件
    lsof -p PID
  • 某个句柄是被那个进程打开;
    lsof -d FD
  • 某个目录下被打开的句柄(+D代表递归)
    lsof +d /path

  • 其他常用的选项
    -a:列出打开文件存在的进程;
    -c 进程名:列出指定进程所打开的文件;
    -g:列出GID号进程详情;
    -n<目录>:列出使用NFS的文件;
    -i<条件>:列出符合条件的进程;
    -u:列出UID号进程详情;

- traceroute

traceroute可以用来查看从本机到指定的IP或者域名之间的路由信息。

  • 到某个IP的路由
    traceroute 192.168.187.18
  • 到某个域名的路由
    traceroute www.baidu.com

4. tcpdump

是一个用于截取网络分组,并输出分组内容的工具。我们可以利用tcpdump抓取网络流量的数据包, 分析和排查网络问题。
网络上的流量是非常大的, 我们通常只对部分的数据包感兴趣, tcpdump提供了非常多的选项, 可以帮助我们过滤掉我们不感兴趣的数据包。

  • 截获所有通过(收到和发出)指定IP的数据包
    tcpdump host 192.168.166.61
  • 得到两个IP之间的数据包
    tcpdump host 192.168.166.61 and 192.168.166.62
  • 指定源和目的主机
    tcpdump src host 192.168.166.61 and dst host 192.168.166.62 port 100
  • 指定网卡
    tcpdump -i eth0
  • 匹配某种协议
    tcpdump udp -port 53 (DNS service)
  • 逻辑 &&, ||, !
    tcpdump host 192.168.240.3 &&( tcp port 80 || tcp port 443)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值