阅读量:0
一、查看服务器资源消耗情况的命令
1. top
命令
- 用途:实时显示系统任务信息,包括CPU和内存使用情况。
- 示例:
top
2. htop
命令
- 用途:
top
命令的增强版,提供更友好的用户界面。 - 安装:
sudo apt-get install htop
- 示例:
htop
3. free
命令
- 用途:显示系统的内存使用情况。
- 示例:
free -h
4. df
命令
- 用途:报告文件系统的磁盘空间使用情况。
- 示例:
df -h
5. du
命令
- 用途:估算文件和目录的磁盘使用情况。
- 示例:
du -sh /path/to/directory
6. vmstat
命令
- 用途:报告虚拟内存统计信息。
- 示例:
vmstat 2 5
7. iostat
命令
- 用途:报告CPU统计信息和设备I/O统计信息。
- 安装:
sudo apt-get install sysstat
- 示例:
iostat
8. sar
命令
- 用途:收集、报告和保存系统活动信息。
- 安装:
sudo apt-get install sysstat
- 示例:
sar -u 1 3
二、服务器运维监控的命令
1. netstat
命令
- 用途:显示网络连接、路由表、接口统计信息、伪装连接以及多播成员。
- 示例:
netstat -tuln
2. ss
命令
- 用途:提供网络套接字的详细信息,比
netstat
更快。 - 示例:
ss -tuln
3. iftop
命令
- 用途:实时显示网络带宽使用情况。
- 安装:
sudo apt-get install iftop
- 示例:
iftop
4. nload
命令
- 用途:监控网络流量和带宽使用情况。
- 安装:
sudo apt-get install nload
- 示例:
nload
5. ip
命令
- 用途:显示和操作路由、设备、策略路由和隧道。
- 示例:
ip addr show
6. ping
命令
- 用途:测试网络连接。
- 示例:
ping google.com
7. traceroute
命令
- 用途:显示数据包到达目标主机所经过的路由。
- 安装:
sudo apt-get install traceroute
- 示例:
traceroute google.com
三、系统运行情况的命令
1. uptime
命令
- 用途:显示系统运行时间和平均负载。
- 示例:
uptime
2. dmesg
命令
- 用途:打印或控制内核环缓冲区。
- 示例:
dmesg | tail
3. uname
命令
- 用途:显示系统信息。
- 示例:
uname -a
4. ps
命令
- 用途:报告当前进程的快照。
- 示例:
ps aux
5. lsof
命令
- 用途:列出打开的文件。
- 示例:
lsof
四、日志查看和查找的命令
1. tail
命令
- 用途:输出文件的最后部分。
- 示例:
tail -f /var/log/syslog
2. grep
命令
- 用途:搜索文本。
- 示例:
grep "error" /var/log/syslog
3. less
命令
- 用途:逐页查看文件内容。
- 示例:
less /var/log/syslog
4. journalctl
命令
- 用途:查询并显示系统日志。
- 示例:
journalctl -xe
5. logrotate
命令
- 用途:管理日志文件的轮换、压缩和删除。
- 示例:
sudo logrotate /etc/logrotate.conf
掌握以上命令,将极大地提高Linux服务器的运维效率,帮助你快速诊断和解决问题,确保系统的稳定运行。
一、查看服务器资源消耗情况的命令
1. top
命令
- 用途:实时显示系统任务信息,包括CPU和内存使用情况。
- 示例:
top
- 结果解释:
- PID:进程ID。
- USER:进程所属用户。
- PR:进程优先级。
- NI:进程优先级的nice值。
- VIRT:进程占用的虚拟内存。
- RES:进程占用的物理内存。
- SHR:进程使用的共享内存。
- S:进程状态(R-运行, S-睡眠, Z-僵尸, T-停止)。
- %CPU:进程使用的CPU百分比。
- %MEM:进程使用的内存百分比。
- TIME+:进程使用的总CPU时间。
- COMMAND:运行的命令。
2. htop
命令
- 用途:
top
命令的增强版,提供更友好的用户界面。 - 安装:
sudo apt-get install htop
- 示例:
htop
- 结果解释:
- 更直观的界面,使用颜色区分不同的资源使用情况。
- 显示所有CPU核心的利用率。
- 可以通过快捷键进行交互(例如F2进行设置,F3进行搜索,F9结束进程)。
3. free
命令
- 用途:显示系统的内存使用情况。
- 示例:
free -h
- 结果解释:
- total:总内存大小。
- used:已使用的内存。
- free:未使用的内存。
- shared:多个进程共享的内存。
- buff/cache:缓冲和缓存使用的内存。
- available:可用的内存。
4. df
命令
- 用途:报告文件系统的磁盘空间使用情况。
- 示例:
df -h
- 结果解释:
- Filesystem:文件系统。
- Size:文件系统的总大小。
- Used:已使用的空间。
- Avail:可用空间。
- Use%:已使用空间的百分比。
- Mounted on:挂载点。
5. du
命令
- 用途:估算文件和目录的磁盘使用情况。
- 示例:
du -sh /path/to/directory
- 结果解释:
- -s:显示每个参数的总和。
- -h:以可读性较好的格式显示(如K、M、G)。
- 结果:显示指定目录的总大小。
6. vmstat
命令
- 用途:报告虚拟内存统计信息。
- 示例:
vmstat 2 5
- 结果解释:
- procs:进程信息,包括r(运行中的进程数量)和b(阻塞的进程数量)。
- memory:内存信息,包括swpd(已使用的交换内存)、free(空闲内存)、buff(缓冲区内存)和cache(缓存内存)。
- swap:交换信息,包括si(从磁盘交换到内存的数据量)和so(从内存交换到磁盘的数据量)。
- io:I/O信息,包括bi(块输入)和bo(块输出)。
- system:系统信息,包括in(中断数)和cs(上下文切换数)。
- cpu:CPU信息,包括us(用户态CPU时间)、sy(系统态CPU时间)、id(空闲时间)、wa(等待I/O时间)、st(虚拟机偷取时间)。
7. iostat
命令
- 用途:报告CPU统计信息和设备I/O统计信息。
- 安装:
sudo apt-get install sysstat
- 示例:
iostat
- 结果解释:
- %user:用户态CPU时间的百分比。
- %nice:经过调整优先级的用户态CPU时间百分比。
- %system:系统态CPU时间的百分比。
- %iowait:等待I/O的CPU时间百分比。
- %steal:被虚拟化管理程序偷走的CPU时间百分比。
- %idle:空闲时间的百分比。
8. sar
命令
- 用途:收集、报告和保存系统活动信息。
- 安装:
sudo apt-get install sysstat
- 示例:
sar -u 1 3
- 结果解释:
- %user:用户态CPU时间的百分比。
- %nice:经过调整优先级的用户态CPU时间百分比。
- %system:系统态CPU时间的百分比。
- %iowait:等待I/O的CPU时间百分比。
- %steal:被虚拟化管理程序偷走的CPU时间百分比。
- %idle:空闲时间的百分比。
二、服务器运维监控的命令
1. netstat
命令
- 用途:显示网络连接、路由表、接口统计信息、伪装连接以及多播成员。
- 示例:
netstat -tuln
- 结果解释:
- Proto:协议类型(TCP或UDP)。
- Recv-Q:接收队列的字节数。
- Send-Q:发送队列的字节数。
- Local Address:本地地址和端口。
- Foreign Address:远程地址和端口。
- State:连接状态(如LISTEN、ESTABLISHED)。
2. ss
命令
- 用途:提供网络套接字的详细信息,比
netstat
更快。 - 示例:
ss -tuln
- 结果解释:
- State:连接状态。
- Recv-Q:接收队列的字节数。
- Send-Q:发送队列的字节数。
- Local Address:Port:本地地址和端口。
- Peer Address:Port:远程地址和端口。
3. iftop
命令
- 用途:实时显示网络带宽使用情况。
- 安装:
sudo apt-get install iftop
- 示例:
iftop
- 结果解释:
- 显示当前网络流量,包括每个连接的传入和传出带宽。
- TX:发送流量。
- RX:接收流量。
- TOTAL:总流量。
4. nload
命令
- 用途:监控网络流量和带宽使用情况。
- 安装:
sudo apt-get install nload
- 示例:
nload
- 结果解释:
- 显示网络流量的实时图形视图。
- In:接收流量。
- Out:发送流量。
5. ip
命令
- 用途:显示和操作路由、设备、策略路由和隧道。
- 示例:
ip addr show
- 结果解释:
- inet:IPv4地址。
- inet6:IPv6地址。
- brd:广播地址。
- scope:地址的范围(如global、link、host)。
6. ping
命令
- 用途:测试网络连接。
- 示例:
ping google.com
- 结果解释:
- 显示到目标主机的每次往返时间。
- time:往返时间。
- ttl:存活时间。
- icmp_seq:ICMP序列号。
7. traceroute
命令
用途:显示数据包到达目标主机所经过的路由。
- 安装:
sudo apt-get install traceroute