zoukankan      html  css  js  c++  java
  • Linux日常系统管理命令

    • 运维必备的工具-ss、htop、dstat分析工具

    一、监控工具ss命令

    ss命令-格式:ss[OPTION]...[FILTER]
    netstat通过遍历proc来获取socket信息,ss使用netlink与内核tcp_diag模块通信获取socket信息。

    • 选项:
      -t: tcp协议相关
      -u: udp协议相关
      -w:裸套接字相关
      -x:unixsock相关
      -l: listen状态的连接
      -a:所有
      -n:数字格式
      -p:相关的程序及PID
      -e:扩展的信息
      -m:内存用量
      -o:计时器信息

    • FILTER: [ state TCP-STATE ] [ EXPRESSION]
      TCP的常见状态:tcp finite statemachine:
      LISTEN:监听
      ESTABLISHED:已建立的连接
      FIN_WAIT_1
      FIN_WAIT_2
      SYN_SENT
      SYN_RECV
      CLOSED

    • EXPRESSION:
      dport=
      sport=
      示例:’(dport= :sshorsport= :ssh)’
      常用组合:-tan, -tanl, -tanlp,-uan

    • 示例:
      ss-l显示本地打开的所有端口
      ss-pl显示每个进程具体打开的socket
      ss-t -a显示所有tcpsocket
      ss-u -a显示所有的UDPSocekt
      ss-o stateestablished'( dport= :sshorsport = :ssh)'显示所有已建立的ssh连接
      ss-o stateestablished'( dport = :httporsport = :http )'显示所有已建立的HTTP连接
      ss-s列出当前socket详细信息

    二、系统工具uptime

    uptime:显示当前时间,系统已启动的时间、当前上线人数,系统平均负载(1、5、1 5分钟的平均负载,一般不会超过1)

    系统平均负载:指在特定时间间隔内运行队列中的平均进程数

    通常每个CPU内核的当前活动进程数不大于3,那么系统的性能良好。如果每个CPU内核的任务数大于5,那么此主机的性能有严重问题

    如果linux主机是1个双核CPU,当LoadAverage为6的时候说明机器已经被充分使用

    三、进程管理工具top

    top:有许多内置命令

    • 排序:
      P:以占据的CPU百分比,%CPU
      M:占据内存百分比,%
      MEMT:累积占据CPU时长,
      TIME+

    • 首部信息显示:
      uptime信息:l命令
      tasks及cpu信息:t命令
      cpu分别显示:1(数字)
      memory信息:m命令
      退出命令:q
      修改刷新时间间隔:s
      终止指定进程:k
      保存文件:W

    • 栏位信息简介
      us:用户空间
      sy:内核空间
      ni:调整nice时间
      id:空闲
      wa:等待IO时间
      hi:硬中断
      si:软中断(模式切换)
      st:虚拟机偷走的时间

    • 选项:
      -d 3 指定刷新时间间隔,默认为3秒
      -b 全部显示所有进程
      -n 3 刷新多少次后退出(此为3)
      -H线程模式,示例:top-H -p pidofmysqld

    • htop命令:EPEL源
      选项:
      -d 3: 指定延迟时间;
      -u UserName:仅显示指定用户的进程
      -s COLUME:以指定字段进行排序

    • 子命令:
      s:跟踪选定进程的系统调用
      l:显示选定进程打开的文件列表
      a:将选定的进程绑定至某指 定CPU核心
      t:显示进程树

    四、系统监控工具dstat

    dstat命令:系统资源统计,代替vmstat,iostat

    • dstat [-afv] [options..] [delay[count]]
      -c显示cpu相关信息
      -d显示disk相关信息
      -D total,sda,sdb,...
      -g显示page相关统计数据
      -m显示memory相关统计数据
      -n显示network相关统计数据
      -p显示process相关统计数据
      -r显示io请求相关的统计数据
      -s显示swapped相关的统计数据
      --tcp
      --udp
      --unix
      --raw
      --socket
      --ipc
      --top-cpu:显示最占用CPU的进程
      --top-io:显示最占用io的进程
      --top-mem:显示最占用内存的进程
      --top-latency:显示延迟最大的进程
  • 相关阅读:
    磁盘IO性能监控(Linux 和 Windows)
    cacti监控linux和windows磁盘IO
    如何重新划分linux分区大小
    OCX控件打包成CAB并实现数字签名过程
    手把手教你用CAB发布OCX的简单办法
    WebLogic 11g重置用户密码
    rxswift的双向绑定
    投资的三个层次:投资的道与术--投资的一级算法
    《DSL》笔记一、什么是DSL(转)
    编程语言与世界观
  • 原文地址:https://www.cnblogs.com/wangchengshi/p/11064006.html
Copyright © 2011-2022 走看看