Linux系统运维常用命令

avatar
作者
筋斗云
阅读量: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 

    广告一刻

    为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!