linux基础

一、系统监控命令

  1.top命令:

  a、如图显示使用top命令查看系统的当前运行的情况。如图对top命令执行的结果做了简单的图解,下面针对每一项做详细的解释。

  

  b、第一行显示的内容依次为“系统当前时间 、系统到目前为止已运行的时间、当前登录系统的用户数量、系统负载(任务队列的平均长度)三个值分别为1分钟、5分钟、15分钟前到现在的平均值【这三个一般会小于1,如果持续高于5,请仔细查看那个程序影响系统的运行】”

  

  c、top命令的第二行“Tasks: 120 total,   2 running, 118 sleeping,   0 stopped,   0 zombie”显示的内容依次“所有启动的进程数”、“正在运行的进程数”、“挂起的进程数”、“停止的进程数”、“僵尸进程数”。

  

  d、top命令的第三行“Cpu(s):  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st”显示的内容依次为“用户空间占用CPU百分比”、“系统内核空间占用CPU百分比”、“用户空间内改变过优先级的进程占用CPU百分比”、“空闲CPU百分比”、“等待输入输出CPU时间百分比”、“CPU服务于硬件中断所耗费的时间总额”、“CPU服务软中断所耗费的时间总额”、“Steal Time”  

   

  e、top命令第四行“Mem:    508820k total,   480172k used,    28648k free,    41944k buffers”显示内容依次为“物理内存总量”、“已使用的物理内存”、“空闲物理内存”、“内核缓存内存量”。    

  

  f、top命令第5行“Swap:   392184k total,        0k used,   392184k free,   259152k cached”显示内容依次为“交换区总量”、“已使用交互区总量”、“空闲交换区总量”、“缓冲的交换区总量”。  

    

  g、top命令第7行“PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND ”显示内容依次为“进程ID”、“进程所有者”、“优先级”、“nice值,负值表示高优先级,正值表示低优先级”、“进程使用的虚拟内存总量”、“进程使用的、未被换出的物理内存大小”、“共享内存大小”、“进程状态”、“上次更新到现在的CPU时间占用百分比”、“进程使用的物理内存百分比”、“进程使用CPU总时间”、“命令名、命令行”。

  

    补充:   top [选项参数]

        top -c:显示 完整命令:

        top -b:以批处理模式显示程序信息

        top -n 3:表示更新3次后终止更新显示

        top -d 3:设置信息更新时间为3s

        通过”shift + >”或”shift + <”可以向右或左改变排序列

  2、free命令

  命令格式:free [参数]

  参数说明:

-m:以M为单位查看内存使用情况(默认为kb)

  -b:以字节为单位查看内存使用情况

  -s:可以在指定时间段内不简单监控内存的使用情况

  -h:人性化显示

  

  Mem:表示物理内存统计; -/+ buffers/cached:表示物理内存的缓存统计 ;Swap:表示硬盘上交换分区的使用情况,

  第1行  Mem中total:表示物理内存总量。 used:表示总计分配给缓存(包含buffers 与cache )使用的数量,但其中可能部分缓存并未实际使用。
     free:未被分配的内存。 shared:共享内存,一般系统不会用到,这里也不讨论。 buffers:系统分配但未被使用的buffers 数量。
     cached:系统分配但未被使用的cache 数量。total = used + free
  第2行   -/+ buffers/cached中used:也就是第一行中的used - buffers-cached   也是实际使用的内存总量。free:未被使用的buffers 与

     cached 和未被分配的内存之和,这就是系统当前实际可用内存=free+buffers+cached。

  注:因为buffers和cached是系统为了提高性能申请的内存数,实际上当应用程序需要此功能时,是可以使用这些内存的,所以对应用程序来说,这些内存也是可以使用的。

     缓存(cached)是把读取过的数据保存起来,重新读取时若命中(找到需要的数据)就不要去读硬盘了,若没有命中就读硬盘。其中的数据会根据读取频率进行组织,把最频繁读取的内容放在最容易找到的位置,把不再读的内容不断往后排,直至从中删除。

        缓冲(buffers)是根据磁盘的读写设计的,把分散的写操作集中进行,减少磁盘碎片和硬盘的反复寻道,从而提高系统性能。linux有一个守护进程定 期清空缓冲内容(即写如磁盘),也可以通过sync命令手动清空缓冲。
     eg:echo 1 > /proc/sys/vm/drop_caches   

    说明:1>. /proc是一个虚拟文件系统,我们可以通过对它的读写操作作为与kernel实体间进行通信的一种手段。也就是说可以通过修改/proc中的文件,来对当前kernel的行为做出调整。也就是说我们可以通过调整/proc/sys/vm/drop_caches来释放内存。
      0 – 不释放
      1 – 释放页缓存即数字1是用来清空最近放问过的文件页面缓存
      2 – 释放dentries和inodes即数字2是用来清空文件节点缓存和目录项缓存
      3 – 释放所有缓存即数字3是用来清空1和2所有内容的缓存。
  3、ps 命令
   格式:ps [参数]
   参数:

      -A 显示所有进程(等价于-e)(utility)
      -a 显示一个终端的所有进程,除了会话引线
      -N 忽略选择。
      -d 显示所有进程,但省略所有的会话引线(utility)
      -x 显示没有控制终端的进程,同时显示各个命令的具体路径。dx不可合用。(utility)
      -p pid 进程使用cpu的时间
      -u uid or username 选择有效的用户id或者是用户名
      -g gid or groupname 显示组的所有进程。
      U username 显示该用户下的所有进程,且显示各个命令的详细路径。如:ps U zhang;(utility)
      -f 全部列出,通常和其他选项联用。如:ps -fa or ps -fx and so on.
      -l 长格式(有F,wchan,C 等字段)
      -j 作业格式
      -o 用户自定义格式。
      v 以虚拟存储器格式显示
      s 以信号格式显示
      -m 显示所有的线程
      -H 显示进程的层次(和其它的命令合用,如:ps -Ha)(utility)
      e 命令之后显示环境(如:ps -d e; ps -a e)(utility)
      h 不显示第一行

      如图:
      
      1) 进程用户ID(UID),
      虽然 uid 通常是指数字型的标识,但在第一列下指定的是用户名,标记为 UID
      2) 进程ID (PID)
      3) 父进程ID (PPID)PPID 是父进程的标识号。对于 Oracle 进程,这里的标识号为 1 — 它是 init 进程(所有进程的父进程)的 id,因为在本系统中安装的 Oracle 是作为登录进程的一部分而启动的
      4) CPU 调度情况 (C)即是是由 CPU 用于计算执行优先级的因子。
      5) 进程启动的时间 (STIME) 
      6) 进程共占用CPU的时间(TIME) 
      7) 启动进程的命令 (CMD) 
      8)问号表示这些进程不属于任何 TTY,因为它们是由系统启动的。
  4、pstree命令 
  pstree是查看进程树,如果进程太多看起来很不方便,可以使用pstree以树形方式显示正在运行的所有进程
  语法:pstree  [选项] [参数]
    -a  显示每个程序的完整指令,包含路径,参数或是常驻服务的标示。
    -c  不使用精简标示法。
    -G  使用VT100终端机的列绘图字符。
    -h  列出树状图时,特别标明现在执行的程序。
    -H <程序识别码>  此参数的效果和指定”-h”参数类似,但特别标明指定的程序。
    -l  采用长列格式显示树状图。
    -n  用程序识别码排序。预设是以程序名称来排序。
    -p  显示程序识别码(程序识别码值得是pid)。
    -u  显示用户名称。
    -U  使用UTF-8列绘图字符。
    -V  显示版本信息。
  5、kill命令和pkill命令和killall命令
   语法: kill [信号代码-9-1]   进程ID (-9是强制杀死该进程,-1是重启该进程)
      pkill [选项]  [进程名称]                             
      killall [选项]  [进程名称]
    注释:pkill 和killall 应用方法差不多,也是直接杀死运行中的程式;如果你想杀掉单个进程,请用kill 来杀掉.killall 通过程式的名字,直接杀死所有进程,
二、硬盘分区、格式化及文件系统的管理
  1、fdisk命令
   语法:fdisk 需要分区的硬盘路径
   disk命令参数介绍
     p、打印分区表。
     n、新建一个新分区。
     d、删除一个分区。
     q、退出不保存。
     w、把分区写进分区表,保存并退出。
  2、mkfs命令(格式化分区的命令)   
    mkfs -t fstype /dev/part -t选择格式化的类型,然后是那个分区    
    mkfs.ext2 /dev/part 格式化为ext2的类型,然后是接那个分区    
    mkfs.ext3 /dev/part 格式化为ext3的类型,然后是接那个分区    
    mkfs.ext4 /dev/part 格式化为ext4的类型,然后是接那个分区    
  3、mount命令
  命令格式: 
    mount [-t vfstype] [-o options] device dir    
       -t 指定文件系统类型,例如:-t ext3、-t ext4、-t vfat    
       -o 指定挂载选项,例如:    
       -o ro,rw 以只读形式挂载,以读写形式挂载;默认是rw    
       -o async 代表所有操作使用缓存(内存):提高文件系统读写数据的效率;默认为async使用缓存(内存);    
       -o sync 代表所有操作直接写入磁盘:代表所有操作不使用缓存,而是直接写入磁盘;应用在对数据安全性比较高的场景    
       -o atime 代表每次访问文件时,更新文件被访问的时间,默认为atime;atime=access time的缩写    
       -o noatime 代表每次访问文件时,不更新文件被访问的时间    
       -o remount 代表重新挂载文件系统
      

     补充:  

     1、程序运行三种状态:      

       运行态:CPU正在运行的程序     

        就绪态:等待cpu运的程序      

       阻塞态:进行其他 I/O操作,不占用CPU,I/O操作完成后返回就绪态

     2、dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。。    
               dd测试硬盘速度:dd if=/dev/zero of=/a.txt bs=200M count=1      
         dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。     
       注意:指定数字的地方若以下列字符结尾,则乘以相应的数字:b=512;c=1;k=1024;w=2    
      参数注释:    
       if=文件名:输入文件名,缺省为标准输入。即指定源文件。< if=input file >    
       of=文件名:输出文件名,缺省为标准输出。即指定目的文件。< of=output file >   
       ibs=bytes:一次读入bytes个字节,即指定一个块大小为bytes个字节。     
       obs=bytes:一次输出bytes个字节,即指定一个块大小为bytes个字节。      
      bs=bytes:同时设置读入/输出的块大小为bytes个字节。   
         count=blocks:仅拷贝blocks个块,块大小等于ibs指定的字节数

pstree(选项)

来自: http://man.linuxde.net/pstree

pstree(选项)

来自: http://man.linuxde.net/pstree

pstree(选项)

来自: http://man.linuxde.net/pstre     、:12

linux基础part4的更多相关文章

  1. Linux基础练习题(二)

    Linux基础练习题(二) 1.复制/etc/skel目录为/home/tuer1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限. [root@www ~]# cp -r ...

  2. 大数据每日干货第四天(linux基础之一目录结构与常用命令)

           为了和qq空间同步,也写的第四天,前面几天明天会发布,本来打算把每天学的东西记录下来,通过朋友给的建议要发的话稍微系统化下,从大数据需要的linux基础,到离线数据分析包括hadoop. ...

  3. Linux课程实践一:Linux基础实践(SSH)

    一.SSH服务 1. 安装SSH (1)查看是否已经安装过ssh服务 rpm -qa |grep ssh (2)进行安装 sudo apt-get install openssh-server Ubu ...

  4. 还是不想改报告,伊阿忆啊哟-Linux基础继续

    hi 虽然今天是最最美好的周六(前不着工作日后不着工作日),但老子还要来改报告,但额就是不想改,你拿我有啥办法啊... 争取完结Linux基础 一.Linux常用命令(三) 4.帮助命令 4.1 帮助 ...

  5. 原来今天是感恩节-Linux基础继续&MySQL和PHP

    hi 原来今天是感恩节.虽然一直没有过这个节日的习惯,但仅仅是听到感恩的消息,都能想到一幅幅画面.愿大家安好! 下午开题会议还是有所收获,悄悄的,就变向那个不喜欢自己的人了. 一.Linux基础(二) ...

  6. 买错的电影票,含着泪也得看-LAMP搭建&Linux基础

    hi 没说过,上周五室友过生请客,在龙湖里吃嗨了喝爽了,回去的路上侃侃而谈.说好的这周一起去看年内最后的大片,火星救援的,谁知道老子眼神不好,买错了电影的时间...把周六的约定提前到了今儿个下午,ma ...

  7. Linux基础3(文件权限)

    文件权限 1.普通权限 (登陆用户对文件或目录的读写执行的权限) 普通权限对管理员用户无效 文件和目录 都有4中类型的用户u 所有者 : 文件.目录的创建者g 所属组 : 文件.目录属于的用户组o 其 ...

  8. Linux课程实践一:Linux基础实践(基础操作)

    一.软件源维护 1. 基本操作 (1)查看源列表 sudo vim /etc/apt/sources.list deb:二进制软件安装包 deb-src:源码包 (2)备份软件源列表 sudo cp ...

  9. 实践一:Linux基础实践

    一.Linux基础实践 1.1 1. 掌握软件源的维护方法,配置系统使用软件源镜像.掌握通过软件源来查找,安装,卸载,更新软件的方法. 这部分内容在许多学长学姐的报告里都有很详细的讲解,我在此就不赘述 ...

随机推荐

  1. 怎样在QML应用中调用系统设置中的页面来设置我们的系统

    我们在QML应用中有时须要调用系统设置(system settings)来完毕我们的一些设置.比方,我们在使用GPS来定位时,可能GPS并没有打开,假设在我们的应用中直接打开系统中的GPS设置页面,这 ...

  2. 基于webmagic的种子网站爬取

    代码地址如下:http://www.demodashi.com/demo/12175.html 1. 概述 因为无聊,闲来没事做,故突发奇想,爬个种子,顺便学习爬虫.本文将介绍使用Spring/Myb ...

  3. android 多应用程序数据共享 ContentProvider和ContentResolver

      android 没有一个可以将所有应用程序数据统一放置的地方,即两个应用程序间的数据不能共享.但ContentProvider与ContentResolver可以解决多应用程序数据共享. 我们都知 ...

  4. Asp.net MVC 插件式应用框架

    Asp.net MVC 插件式应用框架 2013年05月13日 10:16供稿中心: 互联网运营部 摘要:这几年来做了很多个网站系统,一直坚持使用asp.net mvc建站,每次都从头开始做Layou ...

  5. ASP.NET CORE RAZOR :将文件上传至 ASP.NET Core 中的 Razor 页面

    本部分演示使用 Razor 页面上传文件. 本教程中的 Razor 页面 Movie 示例应用使用简单的模型绑定上传文件,非常适合上传小型文件. 有关流式传输大文件的信息,请参阅通过流式传输上传大文件 ...

  6. Security Testing Basics

    Security Testing BasicsSoftware security testing is the process of assessing and testing a system to ...

  7. sass的脑图

  8. macOS10.12部署sonarqube5.6.3

    所需安装包已全部上传云盘:https://pan.baidu.com/s/1i5LvOCd 密码:s47e 1. 安装mysql 下载云盘的dmg包,一路默认安装,注意:一定要记住最后一步弹出的默认密 ...

  9. 配置LANMP环境(10)-- 安装memcached与redis

    一.安装memcached 1.安装 yum install memcached 2.设置1G内存 memcached -u memcached -p -m -c -d 3.启动与设置开机自启动 sy ...

  10. 【JMeter4.0学习(五)】JMeter对服务器监控测试脚本开发

    目录: 下载相关JMeter插件 服务器监控测试脚本开发 附:参考相关文档 本文主要来说一下如何通过JMeter插件来监控服务器CPU.内存.磁盘.网络等相关资源. 一.首先,需要下载相关JMeter ...