nstat/rtacct

nstat命令rtacct命令是一个简单的监视内核的SNMP计数器和网络接口状态的实用工具。

语法

nstat/rtacct(选项)

选项

-h:显示帮助信息;
-V:显示指令版本信息;
-z:显示0计数器;
-r:清零历史统计;
-n:不显示任何内容,仅更新历史;
-a:显示计数器的绝对值;
-s:不更新历史;
-d:以守护进程的方式运行本指令。

实例

[root@localhost ~]# nstat
#kernel
IpInReceives                    15766482           0.0
IpInDelivers                    15538384           0.0
IpOutRequests                   9746938            0.0
IpReasmReqds                    8                  0.0
IpReasmOKs                      4                  0.0
IcmpInErrors                    28701              0.0
IcmpInDestUnreachs              405                0.0
IcmpInTimeExcds                 1812               0.0
IcmpInParmProbs                 173                0.0
IcmpInEchoReps                  26613              0.0
IcmpInTimestamps                100                0.0
IcmpOutErrors                   27065              0.0
IcmpOutTimeExcds                331                0.0
IcmpOutEchoReps                 121                0.0
IcmpOutTimestamps               26613              0.0
IcmpMsgInType0                  100                0.0
IcmpMsgInType3                  1812               0.0
IcmpMsgInType8                  26613              0.0
IcmpMsgInType11                 173                0.0
IcmpMsgOutType0                 26613              0.0
IcmpMsgOutType3                 331                0.0
IcmpMsgOutType8                 121                0.0
TcpActiveOpens                  24760              0.0
TcpPassiveOpens                 573863             0.0
TcpAttemptFails                 18347              0.0
TcpEstabResets                  67353              0.0
TcpInSegs                       15324047           0.0
TcpOutSegs                      9296351            0.0
TcpRetransSegs                  118479             0.0
TcpInErrs                       560                0.0
TcpOutRsts                      15269              0.0
UdpInDatagrams                  185300             0.0
UdpNoPorts                      331                0.0
UdpOutDatagrams                 305043             0.0
TcpExtSyncookiesFailed          14328              0.0
TcpExtEmbryonicRsts             15116              0.0
TcpExtOutOfWindowIcmps          79                 0.0
TcpExtTW                        158436             0.0
TcpExtDelayedACKs               123597             0.0
TcpExtDelayedACKLocked          1087               0.0
TcpExtDelayedACKLost            55670              0.0
TcpExtTCPPrequeued              288438             0.0
TcpExtTCPDirectCopyFromBacklog  11229302           0.0
TcpExtTCPDirectCopyFromPrequeue 669949             0.0
TcpExtTCPHPHits                 7539804            0.0
TcpExtTCPHPHitsToUser           7700               0.0
TcpExtTCPPureAcks               2743573            0.0
TcpExtTCPHPAcks                 1742135            0.0
TcpExtTCPRenoRecovery           51                 0.0
TcpExtTCPSackRecovery           15556              0.0
TcpExtTCPSACKReneging           13                 0.0
TcpExtTCPFACKReorder            199                0.0
TcpExtTCPSACKReorder            63                 0.0
TcpExtTCPTSReorder              220                0.0
TcpExtTCPFullUndo               213                0.0
TcpExtTCPPartialUndo            868                0.0
TcpExtTCPDSACKUndo              2831               0.0
TcpExtTCPLossUndo               2320               0.0
TcpExtTCPLoss                   22652              0.0
TcpExtTCPLostRetransmit         2                  0.0
TcpExtTCPRenoFailures           26                 0.0
TcpExtTCPSackFailures           4765               0.0
TcpExtTCPLossFailures           2155               0.0
TcpExtTCPFastRetrans            28636              0.0
TcpExtTCPForwardRetrans         3341               0.0
TcpExtTCPSlowStartRetrans       25393              0.0
TcpExtTCPTimeouts               28215              0.0
TcpExtTCPRenoRecoveryFail       26                 0.0
TcpExtTCPSackRecoveryFail       2892               0.0
TcpExtTCPDSACKOldSent           55916              0.0
TcpExtTCPDSACKOfoSent           299                0.0
TcpExtTCPDSACKRecv              11680              0.0
TcpExtTCPDSACKOfoRecv           35                 0.0
TcpExtTCPAbortOnData            1193               0.0
TcpExtTCPAbortOnClose           14                 0.0
TcpExtTCPAbortOnTimeout         3041               0.0

ss

ss命令用来显示处于活动状态的套接字信息。ss命令可以用来获取socket统计信息,它可以显示和netstat类似的内容。但ss的优势在于它能够显示更多更详细的有关TCP和连接状态的信息,而且比netstat更快速更高效。

当服务器的socket连接数量变得非常大时,无论是使用netstat命令还是直接cat /proc/net/tcp,执行速度都会很慢。可能你不会有切身的感受,但请相信我,当服务器维持的连接达到上万个的时候,使用netstat等于浪费 生命,而用ss才是节省时间。

天下武功唯快不破。ss快的秘诀在于,它利用到了TCP协议栈中tcp_diag。tcp_diag是一个用于分析统计的模块,可以获得Linux 内核中第一手的信息,这就确保了ss的快捷高效。当然,如果你的系统中没有tcp_diag,ss也可以正常运行,只是效率会变得稍慢。

语法

ss(选项)

选项

-h:显示帮助信息;
-V:显示指令版本信息;
-n:不解析服务名称,以数字方式显示;
-a:显示所有的套接字;
-l:显示处于监听状态的套接字;
-o:显示计时器信息;
-m:显示套接字的内存使用情况;
-p:显示使用套接字的进程信息;
-i:显示内部的TCP信息;
-4:只显示ipv4的套接字;
-6:只显示ipv6的套接字;
-t:只显示tcp套接字;
-u:只显示udp套接字;
-d:只显示DCCP套接字;
-w:仅显示RAW套接字;
-x:仅显示UNIX域套接字。

实例

显示ICP连接

[root@localhost ~]# ss -t -a
State       Recv-Q Send-Q                            Local Address:Port                                Peer Address:Port   
LISTEN      0      0                                             *:3306                                           *:*       
LISTEN      0      0                                             *:http                                           *:*       
LISTEN      0      0                                             *:ssh                                            *:*       
LISTEN      0      0                                     127.0.0.1:smtp                                           *:*       
ESTAB       0      0                                112.124.15.130:42071                              42.156.166.25:http    
ESTAB       0      0                                112.124.15.130:ssh                              121.229.196.235:33398 

显示 Sockets 摘要

[root@localhost ~]# ss -s
Total: 172 (kernel 189)
TCP:   10 (estab 2, closed 4, orphaned 0, synrecv 0, timewait 0/0), ports 5

Transport Total     ip        IPv6
*         189       -         -        
RAW       0         0         0        
UDP       5         5         0        
TCP       6         6         0        
INET      11        11        0        
FRAG      0         0         0   

列出当前的established, closed, orphaned and waiting TCP sockets

列出所有打开的网络连接端口

[root@localhost ~]# ss -l
Recv-Q Send-Q                                 Local Address:Port                                     Peer Address:Port   
0      0                                                  *:3306                                                *:*       
0      0                                                  *:http                                                *:*       
0      0                                                  *:ssh                                                 *:*       
0      0                                          127.0.0.1:smtp                                                *:* 

查看进程使用的socket

[root@localhost ~]# ss -pl
Recv-Q Send-Q                                          Local Address:Port                                              Peer Address:Port   
0      0                                                           *:3306                                                         *:*        users:(("mysqld",1718,10))
0      0                                                           *:http                                                         *:*        users:(("nginx",13312,5),("nginx",13333,5))
0      0                                                           *:ssh                                                          *:*        users:(("sshd",1379,3))
0      0                                                   127.0.0.1:smtp                                                         *:*        us

找出打开套接字/端口应用程序

[root@localhost ~]# ss -pl | grep 3306
0      0                            *:3306                          *:*        users:(("mysqld",1718,10))

显示所有UDP Sockets

[root@localhost ~]# ss -u -a
State       Recv-Q Send-Q                                     Local Address:Port                                         Peer Address:Port   
UNCONN      0      0                                                      *:syslog                                                  *:*       
UNCONN      0      0                                         112.124.15.130:ntp                                                     *:*       
UNCONN      0      0                                            10.160.7.81:ntp                                                     *:*       
UNCONN      0      0                                              127.0.0.1:ntp                                                     *:*       
UNCONN      0      0                                                      *:ntp                                                     *:*

iptraf

iptraf命令可以实时地监视网卡流量,可以生成网络协议数据包信息、以太网信息、网络节点状态和ip校验和错误等信息。

语法

iptraf(选项)

选项

-i网络接口:立即在指定网络接口上开启IP流量监视;
-g:立即开始生成网络接口的概要状态信息;
-d网络接口:在指定网络接口上立即开始监视明细的网络流量信息;
-s网络接口:在指定网络接口上立即开始监视TCP和UDP网络流量信息;
-z网络接口:在指定网络接口上显示包计数;
-l网络接口:在指定网络接口上立即开始监视局域网工作站信息;
-t时间:指定iptraf指令监视的时间;
-B;将标注输出重新定向到“/dev/null”,关闭标注输入,将程序作为后台进程运行;
-f:清空所有计数器;
-h:显示帮助信息。

ab

ab命令是Apache的Web服务器的性能测试工具,它可以测试安装Web服务器每秒种处理的HTTP请求。

语法

ab(选项)(参数)

选项

-A:指定连接服务器的基本的认证凭据;
-c:指定一次向服务器发出请求数;
-C:添加cookie;
-g:将测试结果输出为“gnuolot”文件;
-h:显示帮助信息;
-H:为请求追加一个额外的头;
-i:使用“head”请求方式;
-k:激活HTTP中的“keepAlive”特性;
-n:指定测试会话使用的请求数;
-p:指定包含数据的文件;
-q:不显示进度百分比;
-T:使用POST数据时,设置内容类型头;
-v:设置详细模式等级;
-w:以HTML表格方式打印结果;
-x:以表格方式输出时,设置表格的属性;
-X:使用指定的代理服务器发送请求;
-y:以表格方式输出时,设置表格属性。

参数

主机:被测试主机。

apachectl

apachectl命令是Apache的Web服务器前端控制工具,用以启动、关闭和重新启动Web服务器进程。

语法

apachectl(参数)

参数

  • configtest:检查设置文件中的语法是否正确;
  • fullstatus:显示服务器完整的状态信息;
  • graceful:重新启动Apache服务器,但不会中断原有的连接;
  • help:显示帮助信息;
  • restart:重新启动Apache服务器;
  • start:启动Apache服务器;
  • status:显示服务器摘要的状态信息;
  • stop:停止Apache服务器。

exportfs

exportfs 命令用来管理当前NFS共享的文件系统列表。

参数:

-a 打开或取消所有目录共享。
-o options,...指定一列共享选项,与 exports(5) 中讲到的类似。
-i 忽略 /etc/exports 文件,从而只使用默认的和命令行指定的选项。
-r 重新共享所有目录。它使 /var/lib/nfs/xtab 和 /etc/exports 同步。 它将 /etc/exports 中已删除的条目从 /var/lib/nfs/xtab 中删除,将内核共享表中任何不再有效的条目移除。
-u 取消一个或多个目录的共享。
-f 在“新”模式下,刷新内核共享表之外的任何东西。 任何活动的客户程序将在它们的下次请求中得到 mountd添加的新的共享条目。
-v 输出详细信息。当共享或者取消共享时,显示在做什么。 显示当前共享列表的时候,同时显示共享的选项。

ftpshut

功能说明:在指定的时间关闭ftp服务器。本指令提供系统管理者在设置的时间关闭FTP服务器,且能在关闭之前发出警告信息通知用户。关闭时间若设置后为"none",则会马上关闭服务器。如果采 用"+30"的方式来设置表示服务器在30分钟之后关闭。依次类推,假设使用"1130"的格式则代表服务器会在每日的11时30分关闭,时间格式为24 小时制。FTP服务器关闭后,在/etc目录下会产生一个名称为shutmsg的文件,把它删除后即可再度启动FTP服务器的功能。

语法:

ftpshut [-d<分钟>][-l<分钟>][关闭时间]["警告信息"]

参数:

-d<分钟>   切断所有FTP连线时间。
-l<分钟>   停止接受FTP登入的时间。

host

host命令是常用的分析域名查询工具,可以用来测试域名系统工作是否正常。

语法

host(选项)(参数)

选项

-a:显示详细的DNS信息;
-c<类型>:指定查询类型,默认值为“IN“;
-C:查询指定主机的完整的SOA记录;
-r:在查询域名时,不使用递归的查询方式;
-t<类型>:指定查询的域名信息类型;
-v:显示指令执行的详细信息;
-w:如果域名服务器没有给出应答信息,则总是等待,直到域名服务器给出应答;
-W<时间>:指定域名查询的最长时间,如果在指定时间内域名服务器没有给出应答信息,则退出指令;
-4:使用IPv4;
-6:使用IPv6.

参数

主机:指定要查询信息的主机信息。

实例

[root@localhost ~]# host linux.9iphp.com   
linux.9iphp.com is an alias for host.linux.9iphp.com.
host.linux.9iphp.com has address 100.42.212.8

[root@localhost ~]# host -a linux.9iphp.com
Trying "linux.9iphp.com"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 34671
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;linux.9iphp.com.               IN      ANY

;; ANSWER SECTION:
linux.9iphp.com.        463     IN      CNAME   host.linux.9iphp.com.

Received 54 bytes from 202.96.104.15#53 in 0 ms

mysqlimport

mysqlimport命令mysql数据库服务器提供了一种命令行方式导入数据工具,它从特定格式的文本文件中读取数据插入MySQL数据库表中。

语法

mysqlimport(选项)(参数)

选项

-D:导入数据前清空表;
-f:出现错误时继续处理剩余的操作;
-h:MySQL服务器的ip地址或主机名;
-u:连接MySQL服务器的用户名;
-p:连接MySQL服务器的密码。

参数

  • 数据库名:指定要导入的数据库名称;
  • 文本文件:包含特定格式文本文件。