zoukankan      html  css  js  c++  java
  • read-linux

    1. 静态信息:
    2. 动态信息:
    3. 输出到文件
    4. setcap设置文件功能
    

    Linux世界, 一切都是文件. 本文介绍如何阅读一些重要的信息.
    首先将Linux系统运行中提供的信息分为2大类. 动态信息和静态信息.

    1. 静态信息:

    现在查和过一会儿查询都一样. (除非你替换硬件, 升级驱动, 安装或升级软件)

    • 硬件信息, 驱动: hwinfo, lshw
    • 已安装软件相关信息: pacman -Q...
    • 配置文件, 单元文件: cat, stat, file.
    • 安装历史: paclog
    • 历史日志等: journalctl
    • 文件目录: ls, tree
    • 文件查找: which, whereis, locate, find, fd
    • 这是什么: whatis
    • 文件状态: stat
    • 文件类型: file
    • 文件对比: diff
    • 磁盘状态: lsblk, blkid, du, df

    2. 动态信息:

    实时监看不断变化的各种状态信息. 有酷炫的netstat, 参见:
    还有些图形界面的工具, 比如: glances; conky; etherape等
    以下列举一些常用的命令:

    动态信息 持续刷新, 实时监看 快照 连续快照 所属包
    CPU watch -d mpstat mpstat Mpstat 2 5 sysstat
    i/o watch iostat -m iostat -m iostat 2 sysstat
    进程 watch pidstat pidstat pidstat -ul 10 sysstat
    ram watch -d free free   procps-ng
    虚拟内存 watch -d vmstat vmstat vmstat 2 5 procps-ng
    进程 watch ps -efux ps -efux   procps-ng
    进程 top     procps-ng
    进程(cgroup) htop     htop
    温度 watch -d sensors sensors   lm_sensors
    i/o sudo iotop     iotop
    网络-ip端口 iftop -P -N -p -i wlp16s0 -m 100m     iftop
    网络-cvs等输出 sudo jnettop     jnettop
    网络-进程流速 sudo nethogs -l     nethogs
    网络-菜单选择 sudo iptraf-ng     iptraf-ng
    网络-ip端口 watch ss -tuanp ss -tuanp   iproute2
    网络-网卡 watch -d ifstat ifstat   iproute2
    网络-统计 watch -d nstat nstat   iproute2
    网络-统计     lnstat iproute2
    网络-统计     ctstat, rtstat iproute2
    多种资源     dstat dstat

    注: 所有的快照命令, 都可以通过watch命令升级为类似Top的实时刷新的显示状态, 以便实时监看.

    3. 输出到文件

    • 所有静态信息直接加" > xxmane.log "即可输出到文件.
    • 所有"快照"命令直接加" > xxmane.log "即可输出到文件.
    • 所有的命令本身提供的"连续快照"命令直接加" > xxmane.log "即可输出到文件, 比如作为后台运行:
      • $ nohup pidstat -ul 1 > pidstats.log 2>&1 &
      • $ awk '{print $3" "$10}' pidstats.log |sort |uniq -c |sort -rn |grep -vEw 'chromium|man|less'
      • $ cat pidstats.log |awk '{print $3" "$10}' |sort |uniq -c |sort -rn |grep -vEw 'chromium|man|less'
        • sort 排序
        • uniq -c 统计重复行数
        • sort -rn 按数字倒序
        • grep -vEw 排除多个关键单词
    • 所有"快照", 都可以"使用watch生成连续快照"输出到文件: 比如:
      • $ watch 'ps -auxf >> ps-auxf.txt'

    watch默认时间间隔为2秒, 可以使用-n 参数指定秒数. 上面这行命令不断输入ps所有列, 每2秒记录一次, 不断写入文件. 可以在每个间隔之间添加时间戳, 例如下面的脚本:

    #!/bin/bash
    date > /mnt/sa10/dir/ps.txt
    
    while [ true ]
    do
    /bin/sleep 1
    
    date >> /mnt/sa10/dir/ps.txt
    /usr/bin/ps -auxf >> /mnt/sa10/dir/ps.txt
    
    done
    

    4. setcap设置文件功能

    使iftop, nethogs的使用不再需要root权限.
    $ sudo setcap cap_net_raw+ep /usr/bin/iftop
    $ sudo setcap cap_net_admin,cap_net_raw+ep /usr/bin/nethogs
    $ getcap /usr/bin/nethogs
    /usr/bin/nethogs = cap_net_admin,cap_net_raw+ep

     

    更多参考:
    SYSSTAT Howto: A Deployment and Configuration Guide for Linux Servers
    By kryptikos -August 10, 20091794
    https://www.linux.com/training-tutorials/sysstat-howto-deployment-and-configuration-guide-linux-servers/
    MySQL Database Configuration
    ...
    Loading SYSSTAT Logs Into the MySQL Database

  • 相关阅读:
    Struts2异常处理配置
    struts2支持的结果类型
    Project facet Java 1.8 is not supported by target runtime Apache Tomcat v7.0.
    net.paoding.analysis.exception.PaodingAnalysisException: dic home should not be a file, but a directory!
    struts.xml路径修改后的web配置
    struts.xml中的配置常量的含义
    Spring实战笔记
    2018第2周日
    新人替代旧人
    Web安全总结摘录
  • 原文地址:https://www.cnblogs.com/sztom/p/13257858.html
Copyright © 2011-2022 走看看