• 了解你的Linux系统:必须掌握的20个命令


    转载:http://blog.chinaunix.net/uid-16459552-id-3877787.html

    要想详细了解你的Linux系统,为系统评估和性能调化提供准确的信息,那么,你会经常用到这几组命令。
    一. 系统信息
        1. 查看内核版本、编译主机、编译器版本和编译时间的信息
        cat /proc/version                     
        2. 查看bootloader启动内核的参数
        cat /proc/cmdline
        3. 查看内核版本和CPU架构等信息
        uname -a
        4. 查看当前时间、系统运行时间、用户数量和负载信息
        uptime
        5. 查看系统进程、内存使用、交换内存、磁盘IO读写、系统中断及上下文切换和CPU使用率的动态信息。如果你bi/bo/wa比较大,说明你的磁盘IO极可能是性能的瓶颈。
        vmstat 1
    二. CPU信息
        6. CPU的每个核的信息,比如主频、硬件商、cache大小和BogoMIPS等信息
        cat /proc/cpuinfo 
    三. 内存信息
        7. 内存的综合信息。不要惊讶于Linux系统总是所剩内存不多,free列第二行才是实际剩余内存,大量的cache/buffer是为了提高系统访问磁盘的速度。
        free
        8. 详细内存信息。包括dirty和slab等内存信息。
        cat /proc/meminfo 
    四. 磁盘信息
        9. 当前挂载的文件系统信息,包括fs类型和挂载点等信息
        mount -l
        10. 当前磁盘信息,比如分区和大小
        fdisk -l
        11. 当前文件系统信息,包括使用百分比和挂载点
        df -h
        12. 当前挂载的文件系统信息缓存文件
        cat /etc/mtab
        13. 挂载文件系统的配置文件
        cat /etc/fstab

    五. 进程信息

        14. 系统的限制信息
        ulimit -a
        15. ten processes catch most CPU resource
        ps aux | sort -k 3 -r | head -11
        16. ten processes catch most Memory resource
        ps aux | sort -k 4 -r | head -11
    六. 其它信息
        17. current modules and referenced counter
        lsmod
        18. top综合信息,按数字1可以查看每个核的CPU使用率
        top
        19. all process info,可以跟ps aux对比下
        ps -ef
        20. 系统启动日志,直接执行dmesg也可
        cat /var/log/dmesg


        查看以上信息的shell脚本如下所示。

        #!/bin/sh
    
        LOG_FILE=linux_system_info_$(date +%Y%m%d%H%M).log
        COND=1
        touch ${LOG_FILE}
    
        printex()
        {
            echo " [root@luojianh ]# $1"
        }
    
        while [ $COND -eq 1 ];
        do
            echo " *** System information ***"
            printex "cat /proc/version"
            cat /proc/version
            printex "cat /proc/cmdline"
            cat /proc/cmdline
            printex "uname -a"
            uname -a
            printex "uptime"
            uptime
            echo " ## summary info"
            printex "vmstat 1 10"
            vmstat 1 10
            echo ""
    
            echo " *** CPU information ***"
            CORES=$(grep processor /proc/cpuinfo | wc -l)
            CPU_TYPE=$(uname -m)
            echo " TITLE: CPU type: ${CPU_TYPE}, cores: ${CORES}"
            printex "cat /proc/cpuinfo"
            cat /proc/cpuinfo
            echo ""
    
            echo " *** Memory information ***"
            printex "free"
            free
            printex "cat /proc/meminfo"
            cat /proc/meminfo
            echo ""
    
            echo " *** Disk/Flash information ***"
            printex "mount -l #current mount info"
            mount -l
            printex "fdisk -l #current disk info"
            fdisk -l
            printex "df -h #current fs info with using rate"
            df -h
            printex "cat /etc/mtab"
            cat /etc/mtab
            printex "cat /etc/fstab"
            cat /etc/fstab
            echo ""
    
            echo " *** Processes/Threads information ***"
            echo " ## limited info"
            printex "ulimit -a"
            ulimit -a
            echo " ## ten processes catch most CPU resource"
            printex "ps aux | sort -k 3 -r | head -11"
            ps aux | sort -k 3 -r | head -11
            echo " ## ten processes catch most Memory resource"
            printex "ps aux | sort -k 4 -r | head -11"
            ps aux | sort -k 4 -r | head -11
            echo ""
            
            echo " *** Lardge information ***"
            printex "lsmod #current modules and referenced counter"
            lsmod
            printex "top -d 1 -n 1"
            top -d 1 -n 1
            echo " ## all process info"
            ps -ef
            printex "cat /var/log/dmesg"
            cat /var/log/dmesg
            echo ""
    
            COND=0
        done >> ${LOG_FILE}
    
        unix2dos ${LOG_FILE}
  • 相关阅读:
    MySQL自定义函数 1418报错
    MySQL存储过程查询
    MySQL存储过程---游标
    MySQL存储过程---流程控制(循环)
    MySQL存储过程---流程控制(分支)
    设计模式——单例模式
    准备写一个 四川票务网的 检测票自动买汽车票功能,结果登录不上悲伤,继续研究
    python批量下载微信好友头像,微信头像批量下载
    arduino 522样本中文注释
    zabbix服务的部署
  • 原文地址:https://www.cnblogs.com/pengdonglin137/p/3302293.html
Copyright © 2020-2023  润新知