<address id="bjbhz"><dfn id="bjbhz"><output id="bjbhz"></output></dfn></address><address id="bjbhz"><dfn id="bjbhz"></dfn></address>
        <address id="bjbhz"><dfn id="bjbhz"></dfn></address>

        <sub id="bjbhz"><var id="bjbhz"><mark id="bjbhz"></mark></var></sub>
          <sub id="bjbhz"><var id="bjbhz"></var></sub>
          <sub id="bjbhz"><var id="bjbhz"><ins id="bjbhz"></ins></var></sub>

          <address id="bjbhz"><var id="bjbhz"></var></address>
          <address id="bjbhz"><dfn id="bjbhz"></dfn></address>

          <address id="bjbhz"><listing id="bjbhz"><ins id="bjbhz"></ins></listing></address>

            <thead id="bjbhz"></thead>

          Linux常用命令及说明 — 结合工作(着重性能监控,包括CPU、内存、IO、网络、磁盘等)

          分享图片

          (一)Linux监控的几个常用命令(对于服务器后端程序猿很重要,必须掌握):

          命令 功能 命令 功能
          iostat 统计CPU及网络、设备和分区IO的数据 vmstat 展示给定时间服务器的状态值(包括CPU使用率、内存使用状况、虚拟内存交换情况、IO读写情况),很常用
          free 显示内存状况,包括空闲以及被使用的物理内存、交换内存以及被kernel使用的缓冲区 sar  System Activity report 系统活动报告,是目前Linux最为全面的系统性能分析工具之一 
          ps 显示当前正在运行的所有进程的快照 strace 跟踪进程执行时系统调和所接收的信号
          top 实时显示系统中各个进程的资源(cpu和load)占用状况,类似于windows任务管理器 tcpdump

          dump the traffic on a network, 根据用户定义对网络上的包进行截获的包分析工具,

          功能和查看pcap包的wireshark工具差不多

           

          • iostat

           统计CPU及网络、设备和分区IO的数据,具体命令行参数见下表:

          选项 含义
           -d  显示设备(磁盘)使用状态
           -k 某些使用block为单位的列强制使用kilobytes/每秒
           -x 显示更多统计信息
           -c  显示CPU利用率

          输入"iostat -x”,结果如下图:

          分享图片

          avg-cpu统计信息每段含义见下表:

          参数 含义
           %user   在用户态运行程序,CPU利用的百分比
           %nice  在nice优先级(即静态优先级,具体啥含义请百度)
           %system  在内核态运行程序,CPU利用的百分比
           %iowait 特别重要 — show the percentage of time that the CPU or CPUs were idle during which the system had an outstanding disk I/O request
           %steal

           虚拟CPU等待的百分比 — Show the percentage of time spent in involuntary wait by the virtual CPU or CPUs

           while the hypervisor was servicing another virtual processor

           %idle  CPU 空闲的比列,CPU没有IO请求需要处理 — 和 %iowait含义相反

           

           设备(device)输出结果每段含义详细说明见下表:

          参数 含义
           rrqm/s 

           每秒这个设备相关的读取请求有多少被merge了,

           当系统调用需要读取数据的时候,VFS将请求发到各个FS,如果FS发现不同的读取请求读取的是相同Block的数据,FS会将这个请求合并Merge

           wrqm/s  每秒这个设备相关的写入请求有多少被merge了
           r/s  The number of read requests that were issued to the device per second
           w/s  The number of write requests that were issued to the device per second
           rsec/s  每秒读取的扇区数
           wsec/s  每秒写入的扇区数
           avgrq-sz  
           avgqu-sz  
           await  每一个IO请求的处理的平均时间(单位是毫秒)
           svctm  
           %util

           在统计时间内所有处理IO时间,除以总共统计时间。例如,如果统计间隔1秒,该设备有0.8秒在处理IO,

           而0.2秒闲置,那么该设备的%util = 0.8/1 = 80%,所以该参数暗示了设备的繁忙程度。

          一般地,如果该参数是100%表示设备已经接近满负荷运行了

          (当然如果是多磁盘,即使%util是100%,因为磁盘的并发能力,所以磁盘使用未必就到了瓶颈)。

           

          参考 iostat(1) - Linux man page

          • ps
          • grep
          • top

          实时显示系统中各个进程的资源占用状况,类似于windows任务管理器,默认3秒钟刷新一次,太快了,看不过来,-d 可以指定,多少时间更新一次

          具体命令行参数说明见下表:

          选项 含义
          -a 按照内存使用率排序
          -d 设置多长时间(以秒为单位)刷新一次结果
          -p <pid>  查看指定进程ID的信息
           -u <username>   查看指定用户名的信息
           -i   不显示任何闲置 (idle) 或僵尸 (zombie) 的进程
           -n iterations  指定更新多少次信息后终止
           -c  显示完整命令,如mysql会显示 “/usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql” 
           -s  安全模式
           -S  累积时间模式,开启此模式,会列出该进程及它已经死掉的子进程所使用的CPU时间

           

          例如,“top -d 30” —— 30秒刷新一次(默认按cpu占用率排序),结果如下图:

          分享图片

           输出结果前5行(统计的整体信息)的每一段的含义如下表所示:

          段1含义 段2含义 段3含义 段4含义 段5含义 段6含义 段7含义 段8含义
           1 - top 13:43:10 - 当前时间  up 4:21 - 系统运行时间,格式为"时:分"  1 user - 当前登录用户数

           load average: 0.01, 0.04, 0.01 - 系统负载,即任务队列的平均值

          三个数值依次为"1分钟5分钟 15分钟”到目前的平均值

                 
           2 - Tasks 1012 total - 进程总数  1 running -  正在运行的进程数  1095 sleeping - 睡眠的进程数  6 stopped - 停止的进程数 0 zombie - 僵尸进程数       
           3 - Cpu(s)  0.8%us - 用户空间占用CPU百分比  0.1%sy - 内核空间占用CPU百分比  0.0%ni - 用户进程空间改变过优先级的占CPU百分比  99.2%id - 空闲CPU百分比 0.0%wa - 等待输入输出的CPU百分比  0.0%hi -  0.0%si -  0.0%st - 
           4 - Mem  132173688k total - 物理内存总量  38002800k used - 已使用的物理内存总量  94170888k free - 空闲内存总量  208420k buffers - 用于内核缓存的内存总量        
           5 -Swap  4194600k total - 交换区总量  0k used - 已使用的交换区总量  4194300k free - 空闲交换区总量  2624596k cached - 缓冲的交换区总量        

           

          在top命令模式下,按“f”键,会显示每个column的详细信息,如下图:

          分享图片

          每一列的含义翻译成中文如下表所示:

          列名 含义
          PID  进程ID
          USER  用户名
          PR  进程优先级
          NI  nice value,不知道怎么翻译好
          VIRT  进程使用的虚拟内存总量(kb)
          RES  进程使用的、未被换出的物理内存大小
          SHR  共享内存大小(kb)
          S  进程状态。D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程
          %CPU  上次更新到现在的CPU时间占用百分比
          %MEM  进程当前使用的可被共享的内存容量
          TIME+  task自启动以来,累计占用cpu时间,精确到百分之一秒
          COMMAND  命令行或者程序名

           

          •  free

           显示空闲和使用的内存信息,命令参数选项如下表:

          选项 含义
           -b -k -m -g  单位分别为bytes, KB, MB, G
           -h 人类可读(即自动以MB,G等为单位显示)
           -t  额外显示总数 (RAM + swap)
           -o (old format) 不会显示 -/+ buffers/cache 这行信息

           

          输入“free -m”,以M为单位,便于精确计算讲解,结果如下图:

          分享图片

           

          输出结果具体每行每列的含义详见下表:

           行 total used free shared buffers cached
           Mem: 内存总数 (total = used + free) 已经使用的内存数量 空闲内存数量 共享内存数量,据说已经废弃不用 缓冲内存数量 缓存内存数量
           -/+ buffers/cache:  

          (- buffers/cache) used —— 反映的是被程序实实在在吃掉的内存

          使用的内存数 = 第一行即Mem行的 “used - buffers - cached” = 34562 - 87 - 1322 = 33151M

          (+ buffers/cache) free —— 反映的是可以挪用的内存总数

          空闲内存数 = 第一行即Mem行的 “free + buffers + cached” = 94513 + 87 + 1322 = 95922M

          差2M不知道哪里来的

               
           swap: (交换区) 交换区内存总数 交换区已使用内存数 交换区空闲内存数      
          • sar

          System Activity report 系统活动报告,是目前Linux最为全面的系统性能分析工具之一

          • vmstat
          • tcpdump

          dump the traffic on a network, 根据用户定义对网络上的包进行截获的包分析工具

           (二)基本简单命令

          列表汇总基本命令:

          命令 功能 命令 功能 命令 功能
           ls  查看当前目录下有哪些文件和文件夹  whereis  查找可执行的软件命令在哪里  clear/reset/ CTRL + l  清屏——切换到下一个新的屏幕
           pwd  显示当前目录的完整路径  cd  改变所在目录  vi  文本编辑器
           cat  输出文件的内容到屏幕  mkdir  创建目录  vim  程序编辑器
           sh  执行shell脚本  rmdir  删除目录  kill  杀死进程
           yum  软件包管理器  mv  移动文件  ifconfig  显示或者设置网络设备
           sudo  以系统管理员的身份执行指令,类似于windows  CMD,右键选择"以管理员身份运行“”  rm  删除文件  cal  日历
           df  查看磁盘使用情况  cp  复制文件  date  日期
           stat  显示文件或者文件系统的状态  touch  更新文件的访问时间和修改时间,如果不存在,则创建之  bc  计算器

           

          linux命令的常识:

            (1)大小写敏感,如 "top"可以识别,"Top" 则comand not found

            (2)-h (部分命令支持,如冲突则不支持)和 --help(大多数命令支持),查看命令帮助信息,如 rmdir --help,提示“ rmdir [OPTION]... DIRECTORY..

            (3)命令有缩写和全拼两种格式,如 rmdir 的"-p" <=> "--parents"

            (4)CTRL +  C ,exit 当前正在执行的命令;CTRL + Z , stop 当前正在执行的命令

            (5)命令格式说明,“【】”括起来表示选项可选,接下来紧跟的详细参数,如ls命令说明:“ls [OPTION]... [FILE]...

            (6)可通过“|”进行命令拼接,如“ps -ef | grep java | grep -v grep” 

            (7)linux 命令或者参数在输入1个或2个字符后,按Tab键,会列出可选命令和参数,如果输入3个或者4个字符,可查找出唯一的命令和参数,将自动补全

            (8)键盘“PgUp”“PgDn"及 键盘“↑”“↓” 可以切换到上一个或者下一个已输入的命令, 按键“←” 和“→” ,可以在命令里左右移动光标

            (8)linux里所有东西都被当做文件,不像windows有硬件设备的概念,如磁盘、CPU等,所以你装的所有软件,如mysql等都是文件

           

          详细论述:

          • ls

          查看当前目录下有哪些文件及文件夹,具体命令行参数说明见下表:

           

          常用选项 含义
          -l 一行显示一个文件或者文件夹,并显示诸如文件大小、文件最后修改时间、owner等信息
          -a 列出所有文件及文件夹,包括隐藏文件
          -R 把子文件夹下的文件也全部列出来,可以“ls -R -l”组合用
          -S 按文件大小倒叙列出所有文件
          -h 以人类可读的形式列出文件大小(K,M,G)

          如在 linux的根目录下,输入“ls”,结果如下图:

          分享图片

          如果是在包含有文件的目录下,输入“ls”,比如在root下,则会包含文件如 “install.log” 及文件夹 “Music” 等等,结果如下图:

          分享图片

           

          组合命令,ls -S -h -l结果如下图:

          分享图片

          • pwd

          显示当前的完整路径名,如下图:

          分享图片

          • cd

          切换当前目录,具体语法: cd [dirName],具体命令行参数说明见下表:

          选项 含义
           .. 切换到父级目录
           /  切换到根目录
           ~ 切换到home根目录

           

          • whereis

          查找命令—具体语法: whereis [ -sbmu ] [ -SBM dir ... -f ] name...,例如"whereis mysql",结果如下图:

          分享图片

          • cat

          输出文件内容到终端,例如“cat install.log”,结果如下图:

          分享图片

          • sh
          • ifconfig

          显示或者设置网络设备,输入“ifconfig”, 结果如下图(可以看到自己的ipv4 、ipv6 地址等信息):

          分享图片

          • kill
          • rm
          • mv
          • cp
          • touch

          更新文件的访问时间和修改时间,如果文件不存在,则创建之。如我在root根目录,“touch test2019.txt”,文件不存在则创建之,效果如下图:

          分享图片

          • mkdir

          创建目录,

          • rmdir
          • df
          • vi 及vim
          • yum 
          • sudo
          • stat

          显示文件或者文件系统的状态,具体语法: stat [OPTION]... FILE...,例如stat a.txt, 结果如下图:

          分享图片

          • bc

          内置计算器,"bc -q" 不会输出关于bc软件的一些信息,直接用(回车输出结果),如下图:

          分享图片

          • cal

          日历

          • date

          日期—具体语法: date [OPTION]... [+FORMAT],例如“date ‘+%Y % m%d %H %m’”,输出当期日期的年月日、时、分,结果如下图:

          分享图片

           

          附注:

           

          未完待续,空了接着完善

          *****************************************************************************************************

          精力有限,想法太多,专注做好一件事就行

          • 我只是一个程序猿。5年内把代码写好,技术博客字字推敲,坚持零拷贝和原创
          • 写博客的意义在于锻炼逻辑条理性,加深对知识的系统性理解,锻炼文笔,如果恰好又对别人有点帮助,那真是一件令人开心的事

          *****************************************************************************************************

          相关文章
          相关标签/搜索
          管家婆香港2018年资料四肖期期准铁算盘4887开奖结果四肖三期内必出刘伯温6374cm刘伯温168最快开奖现场开马开奖结果天天彩票 南城县| 芮城县| 大庆市| 马关县| 康平县| 商丘市| 乐清市| 呼玛县| 遂溪县| 台山市| 南乐县| 武冈市| 肥东县| 安泽县| 建水县| 凭祥市| 三江| 马公市| 沙洋县| 玉环县| 东乌| 磐石市| 德安县| 鸡西市| 大理市| 长乐市| 湖南省| 弋阳县| 福贡县| 曲阳县| 冷水江市| 子长县| 包头市| 德令哈市| 寿宁县| 九江县| 平阳县| 新乐市| 玉树县| 巴青县| 衡东县| 吴忠市| 凤阳县| 定结县| 五寨县| 金阳县| 郁南县| 卢氏县| 勃利县| 敦化市| 河源市| 高青县| 乐山市| 宜丰县| 云龙县| 宕昌县| 通河县| 六安市| 石城县| 桂阳县| 宁津县| 大余县| 遂平县| 南陵县| 孝义市| 梧州市| 中阳县| 宣化县| 泰来县| 大英县| 蒲江县| 新泰市| 肇源县| 上高县| 环江| 称多县| 保靖县| 太和县| 渭源县| 安图县| 三原县| 吉林市| 兖州市| 买车| 旌德县| 海丰县| 普定县| 黔东| 乌拉特前旗| 太谷县| 洛隆县| 汝城县| 诸暨市| 师宗县| 四子王旗| 岳池县| 左贡县| 千阳县| 宜兰县| 昌宁县| 南充市| 资兴市| 武平县| 兴隆县| 永泰县| 紫阳县| 海盐县| 黄骅市| 如东县| 永修县| 肥城市| 元阳县| 富蕴县| 凉山| 桃园县| 云南省| 南投市| 民勤县| 虞城县| 大田县| 昭觉县| 旅游| 卢氏县| 海丰县| 开阳县| 哈密市| 衡山县| 绩溪县| 盘山县| 福清市| 疏附县| 武城县| 高雄县| 嘉兴市| 嵩明县| 凤城市| 永新县| 义马市| 莱阳市| 公安县| 西乌珠穆沁旗| 那曲县| 揭阳市| 菏泽市| 密云县| 龙岩市| 衡东县| 金沙县| 苗栗市| 哈尔滨市| 肥东县| 谷城县| 都江堰市| 册亨县| 米易县| 武冈市| 金乡县| 曲阳县| 万盛区| 平阳县| 东兰县| 宁河县| 海门市| 电白县| 新龙县| 曲阳县| 阿克| 改则县| 泸州市| 远安县| 铁岭市| 石屏县| 上杭县| 武隆县| 博爱县| 盘锦市| 永福县| 阿勒泰市| 东乡族自治县| 河北省| 彭泽县| 北宁市| 武邑县| 泾川县| 高邮市| 宝鸡市| 郴州市| 斗六市| 连江县| 陕西省| 葫芦岛市| 东安县| 德昌县| 新疆| 香河县| 克东县| 额济纳旗| 百色市| 濮阳市| 临海市| 玉龙| 芷江| 隆德县| 周口市| 田东县| 石狮市| 十堰市| 邹城市| 东阳市| 潍坊市| 宾阳县| 蒙阴县| 陈巴尔虎旗| 白城市| 房山区| 买车| 宁都县| 榆林市| 汾西县| 济阳县| 渝中区| 闻喜县| 扬中市| 贺州市| 平武县| 宝坻区| 长春市| 高阳县| 新乡县| 东乌| 芮城县| 荣昌县| 扎赉特旗| 平乐县| 视频| 楚雄市| 乌恰县| 宜兰县| 方山县| 渑池县| 高唐县| 建湖县| 扎赉特旗| 龙陵县| 平原县| 广平县| 兴仁县| 顺平县| 宁安市| 虹口区| 双牌县| 象州县| 建瓯市| 芜湖市| 广宗县| 杂多县| 临颍县| 青铜峡市| 九龙城区| 新乐市| 宜春市| 毕节市| 长宁县| 天津市| 江油市| 阿拉尔市| 渭源县| 同仁县| 大姚县| 贞丰县| 城口县| 青州市| 永济市| 麻江县| 任丘市| 旌德县| 翁源县| 工布江达县| 中方县| 台东市| 天津市| 汾阳市| 龙江县| 西盟| 双城市| 兴海县| 招远市| 朝阳区| 昌平区| 淅川县| 吉木萨尔县| 昭苏县| 兴化市| 竹溪县| 隆昌县| 永德县| 北流市| 舒城县| 松溪县| 衡水市| 景东| 沂源县| 泾源县| 丹江口市| 巧家县| 白城市| 新平| 米泉市| 灯塔市| 宜州市| 阿勒泰市| 弥渡县| 开鲁县| 庄河市| 新绛县| 达日县| 康保县| 桃园县| 凤台县| 汨罗市| 青海省| 济阳县| 阳朔县| 常州市| 崇义县| 泾阳县| 景泰县| 玛沁县| 桂林市| 平泉县| 平凉市| 肥城市| 延川县| 封丘县| 陇西县| 慈溪市| 茌平县| 玛纳斯县| 山西省| 金溪县| 宣恩县| 沾化县| 亳州市| 漳州市| 太仆寺旗| 南岸区| 新巴尔虎右旗| 秦安县| 资溪县| 山东| 买车| 中卫市| 塔城市| 岳普湖县| 紫云| 丹巴县| 琼海市| 洞口县| 绥芬河市| 甘泉县| 岳阳县| 长葛市| 克什克腾旗| 文安县| 安阳县| 连云港市| 尤溪县| 鄯善县| 丹东市| 兰西县| 昌乐县| 枝江市| 新泰市| 莱州市| 南靖县| 清水河县| 梓潼县| 淮阳县| 望都县| 来宾市| 曲阳县| 武汉市| 九龙城区| 霸州市| 天长市| 龙里县| 延吉市| 奉新县| 普陀区| 格尔木市| 贺州市| 舟山市| 皮山县| 柳州市| 福安市| 保德县| 原阳县| 望城县| 萨嘎县| 靖宇县| 平江县| 宁河县| 苍溪县| 丰台区| 康定县| 怀柔区| 讷河市| 定南县| 汶上县| 曲麻莱县| 山阳县| 北海市| 凌云县| 禹城市| 邢台市| 韶关市| 昌邑市| 吕梁市| 澄迈县| 麦盖提县| 迁安市| 镇江市| 会同县| 武胜县| 惠州市| 宾阳县| 胶州市| 清徐县| 施甸县| 张家口市| 武宣县| 瓦房店市| 左贡县| 六安市| 潮安县| 苗栗县| 嘉荫县| 汝城县| 灵山县| 田东县| 象州县| 和田市| 林周县| 来凤县| 汝南县| 上虞市| 林周县| 岑溪市| 朝阳县| 济宁市| 安达市| 南漳县| 苍梧县| 江北区| 北京市| 城市| 长葛市| 珠海市| 双桥区| 广水市| 桐庐县| 大宁县| 永平县| 武义县| 盐池县| 宜春市| 平利县| 成安县| 惠东县| 张北县| 双鸭山市| 湘乡市| 浠水县| 灵宝市| 绍兴县| 晋州市| 灵台县| 大渡口区| 华安县| 石景山区| 新邵县| 杭锦旗| 汉寿县| 镇宁| 普陀区| 晴隆县| 壶关县| 萍乡市| 咸宁市| 钟山县| 富顺县| 凯里市| 永胜县| 隆昌县| 即墨市| 孟村| 岑溪市| 郓城县| 台南县| 石狮市| 冕宁县| 万全县| 西峡县| 谢通门县| 桐柏县| 布拖县| 拉萨市| 弥勒县| 聂荣县| 通江县| 泰安市| 海林市| 文山县| 浙江省| 健康| 云霄县| 阳江市| 天镇县| 固镇县| 桃江县| 柳州市| 合阳县| 满城县| 深泽县| 铜鼓县| 长汀县| 镶黄旗| 岐山县| 西林县| 桦甸市| 乌鲁木齐县| 淳化县| 中牟县| 江油市| 海兴县| 怀远县| 红安县| 岳阳县| 永善县| 横山县| 新宾| 修文县| 云南省| 双峰县| 平乐县| 浮山县| 图木舒克市| 美姑县| 通辽市| 桂东县| 喜德县| 博客| 乌兰察布市| 秦安县| 武宁县| 中方县| 云阳县| 黔南| 丹巴县| 景泰县| 馆陶县| 秦皇岛市| 景泰县| 林周县| 衡东县| 三江| 肥东县| 阿勒泰市| 石首市| 青海省| 肃南| 新野县| 永德县| 弥勒县| 望谟县| 汕头市| 成都市| 高唐县| 丹东市| 隆德县| 新乡市| 晋州市| 武隆县| 永安市| 江安县| 湘西| 长子县| 休宁县| 常德市| 刚察县| 蒲城县| 天镇县| 商洛市| 宜君县| 佛冈县| 安达市| 开远市| 松溪县| 新乐市| 营山县| 扎赉特旗| 曲松县| 靖江市| 青川县| 威宁| 缙云县| 驻马店市| 南丹县| 望谟县| 咸阳市| 榆社县| 莫力| 贡嘎县| 高州市| 廉江市| http://wap.jx1870bulletinv.fun http://3g.jx1870concertv.fun http://wap.jx1870backv.fun http://wap.jx1870coursev.fun http://m.jx1870docuzentv.fun http://wap.jx1870dishv.fun http://3g.jx1870chargev.fun http://wap.jx1870addv.fun http://3g.jx1870circlev.fun http://m.jx1870appealv.fun http://3g.jx1870churchv.fun http://m.jx1870apparelv.fun http://3g.jx1870agev.fun http://3g.jx1870churchv.fun http://wap.jx1870betterv.fun http://3g.jx1870catalogv.fun http://wap.jx1870browsev.fun http://m.jx1870boatv.fun