zoukankan      html  css  js  c++  java
  • 系统监控,进程管理,软件包管理

      

    补充:卸挂载  umount /dev/sdb7  (从源上卸挂载)

                           umount /sdb7            (从挂载点上卸挂载)  

                           如果cd /sdb7下卸sdb7的挂载正常卸载是卸载不了的,需要强制卸载

             强制卸挂载 umount  -l /sdb7                           

    内存

    1.swap分区:跟硬盘有关,但提供内存服务

    • 查看swap分区              swapon -s
    • 新增swap分区              mkswap /dev/sdb8
    • 激活新增swap分区        swapon -a /dev/sdb8
    • 关闭swap分区              swapoff /dev/sdb8

    2、free           查看内存信息

         free -m  查看内存信息,以M为单位   

    3、uname -a   查看所有系统信息

    4、cat /etc/redhat-release  查看当前使用版本

    5、buffer和cache

        buffer:是用于存放要输出到disk(块设备这里指内存)的数据。(buffer会吧需要的block先集结到一起到达一定量后再输送到内存上)

        cache:是存放从disk上读出的数据。(把读到内存上的东西存下来,比如第一次看大文件比第二次打开要慢,但是这也暂时占用了内存)

        内存和硬盘的读取速度就取决于buffer,buffer会吧需要的block先集结到一起到达一定量后再输送到内存上,这样减少了输送次数造成的更多延时

    6、内存的相关内容和计算

         Mem:表示物理内存统计
         -/+ buffers/cached:表示物理内存的缓存统计
         Swap:表示硬盘上交换分区的使用情况(这里我们不去关心)
         系统的总物理内存:255268Kb(256M),但系统当前真正可用的内存并不是第一行free 标记的 16936Kb,它仅代表未被分配的内存。
         我们使用total1、used1、free1、used2、free2 等名称来代表上面统计数据的各值,1、2 分别代表第一行和第二行的数据。
         total1: 表示物理内存总量。
         used1: 表示总计分配给缓存(包含buffers 与cache )使用的数量,但其中可能部分缓存并未实际使用。
         free1: 未被分配的内存。
         shared1: 共享内存,两个或多个进程之间要交换数据。
         buffers1: 系统分配但未被使用的buffers 数量。
         cached1: 系统分配但未被使用的cache 数量。buffer 与cache 的区别见后面。
         used2: 实际使用的buffers 与cache 总量,也是实际使用的内存总量。
         free2: 未被使用的buffers 与cache 和未被分配的内存之和,这就是系统当前实际可用内存。
      可以整理出如下等式:
         total1 = used1 + free1
         total1 = used2 + free2
         used1 = buffers1 + cached1 + used2
         free2 = buffers1 + cached1 + free1

    7、echo 3 > /proc/sys/vm/drop_caches  清理内存

         echo $[1+2]  可以当计算器用,加减乘除都可以

    进程管理

    1、定义

      进程:进程是程序的一次动态执行

      守护进程:是在后台运行并提供系统服务的一些流程

      父进程、子进程:当一个进程创建另一个进程时,第1个进程被称为新进程的父进程,而新进程被称为子进程

      僵尸进程:父进程被杀死后子进程没有死

    2、查看进程

      ps aux

      ps aux |less

      ps aux|grep gnome  所有包含gnome的行都被过滤出来了

      tty  查看当前终端

      pstree  树状方式查看进程

      pgrep firefox  只查看firefox的PID

    3、杀死进程

      先查看PID再杀死

      ps aux |grep firefox  查看firefox的PID

      kill -9 3483  强制杀死PID为3483的进程

      直接通过进程名杀死

      pkill -9 firefox  强制杀死firefox进程

    4、进程后台运行(为了不占终端)

      firefox &

    5、杀死后台运行的进程

      可以用3里面的两种方法杀

      也可以通过工作号去杀,在后台运行的程序都有一个工作号

      jobs  查后台运行程序的工作号

      kill -9 %1  杀死工作号为1的后台进程

    6、测试硬盘的写入速度(dd非常业余)

      dd if=/dev/zero of=/a.txt bs=1G count=1  //dd表示复制,if是inputfile,of是outputfile,bs是blocksize,count指bs的数量,从zero去除1G内容写入a.txt

    软件包管理

    1、软件包在linux系统中分为两种:一种是二进制的,直接安装就可以,在光盘(sr0)下就有大量的这种包,另一种是源码包

    2、二进制包

      查看包

      查看sr0(光盘)挂载点→cd到sr0的挂载点→ls查看光盘内容→ls Packages

      安装包

      rpm -ivh +绝对路径或相对路径  (i=install安装,v显示详细信息,h显示进度条)

      查看安装包详细信息

      rpm -qi vsftpd(软件包名)

      查看包安装到哪里

      rpm -ql vsftpd(软件包名)  (q是查询,l是location地址)

      查看系统当中有多少个rpm包

      rpm -qa  (查看结果会省略.rpm)

      只查找vsftpd包

      rpm -qa |grep vsftpd

      rpm -q vsftpd

      由文件找到软件包

      rpm -qf /user/share/man/man8/vsftpd.8.gz 

      卸载包

      rpm -e vsftpd

      rpm -e 'rpm -qa |grap vsftpd'  反引号可以把他里面命令执行出来的结果作为当前参数

      yum安装,可以直接解决依赖性关系,但是得有个写好依赖性关系的仓库并且存放有安装包

    3、源码包

    命令

      查看命令ls的位置

      which ls  (所以命令也是文件,再由rpm -qf /user/bin/ls找到该命令的安装包)

      命令是被敲到终端,终端就是一个软件另一个名字叫shell,就是命令解释器

      ls的执行原理

      输入ls→shell(终端)→PATH(环境变量,它定义了一堆路径)→/usr/bin/ls,接下来就会在终端上写入/usr/bin/ls,这就像在终端输入firefox就打开火狐浏览器一样。但是ls不等于/usrbin/ls,会有颜色变化后者没有颜色变化,所以后边还应该有一步,那就是找别名,如果有别名就执行别名。输入ls→shell→PATH→/usr/bin/ls ls --color=auto。总之,ls /test=/usr/bin/ls ls --color=auto

    做别名

      alias gansita='kill-9'

          永久设定一个别名的话

      vim /etc/profile  把alias gansita='kill-9'沾到该文件的末尾

      vim /etc/bashrc  把alias gansita='kill-9'沾到该文件的末尾

    变量

      x=1就是变量,x代表变量名,1代表变量值

      $x  可以取值但不显示

      echo $x  取值并显示

      echo $PATH  会显示出/user/local/bin;/user/local/sbin;~~~~,一堆路径

    环境变量

      定义:在整个环境下的任何终端都有效。如果在任何环境中都有一个x=1,则x就叫环境变量或者全局变量

    自定义yum安装流程

      1、下载rpm放到自己建立的仓库(例:mkdir /cangku_httpd)中

      2、用createrepo工具做依赖性(如果系统中没有createrepo工具,要装一个,yum intall createrepo)

              createrepo /cangku_httpd

      3、自定义repo源

                 vim httpd.repo

                 内容:[httpd]

                          name=httpd server

                          baseurl=file:///cangku_httpd

                          enabled=1

                          gpgcheck=0

      4、安装包  yum install httpd -y或yum -y install httpd

      5、删除包  yum -y remove httpd

      6、安装组件  yum -y groupinstall

      7、删除组件  yum -y groupremove

      8、清楚yum缓存  yum clean all

      9、使用yum查找软件包  yum search 软件包名

           

      

      

         

  • 相关阅读:
    sqlite3 多线程和锁 ,优化插入速度及性能优化
    Android Touch事件传递机制通俗讲解
    26. Remove Duplicates from Sorted Array----Array----Easy----20160927
    88. Merge Sorted Array----Array----Easy----20160926
    @121. Best Time to Buy and Sell Stock----Array----Easy---20160926
    88. Merge Sorted Array----Array----Easy----20160925
    189. Rotate Array----Array----Easy----20160925
    169. Majority Element----Array----Easy----20160925
    219. Contains Duplicate II 超时
    c++Map容器 详解
  • 原文地址:https://www.cnblogs.com/wuyongqiang/p/6568222.html
Copyright © 2011-2022 走看看