zoukankan      html  css  js  c++  java
  • 07.进程管理+作业控制+文件查找与压缩+文件压缩与打包+tar打包解包+NFS

    进程管理
        程序放在磁盘上叫文件,把它复制到内存,并在cpu运行,就叫进程,
        进程多少也反映当前运行程序的多少
     
        进程在系统中会为每个进程生成一个进程号,在所有的进程中有一个特殊进程即init进程,
        它是所有进程的祖先,进程号是1。这个进程是不能中止的。
    
    进程与 /proc 目录关系密切
        /proc 是一个实时的、常驻内存的虚拟文件系统。它反映的是当前内核运行的状态有时还能通过设置 /proc 中某些文件的状态来临时修改系统设置的目的
    
    例:echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all        -----禁ping
     
    进程状态
        r    运行状态
        s    睡眠状态
        d    不可中断的睡眠状态
        t    暂停或跟踪状态
        z    僵尸进程(退出了,但资源还未释放掉)
    常用进程管理的命令
    1、ps  查看进程状态
    ps -ef
    ps aux
        s   它有子进程
        l   多线程
        +   位于后台进程组
        <   高优先级
        N  低优先级
              
    2、pstree 查看进程
    3、top    实时查看进程
    实时查看时:
    按 P 根据cpu使用率排序
    按 M 根据内存使用情况排序
    
    k    杀进程  
    q    退出
    u    显示指定用户的进程
    shift + >
    shift + <   翻页看
    
    4、kill  杀进程
    kill -9  进程号
    5、killall  以服务名或进程名的方式杀进程
    有时同一个服务或程序会生成很多的进程,通过进程号来杀,会比较麻烦,这时可以用killall
    例:killall httpd
    6、pkill    以服务名或进程名的方式杀进程 (和killall 类似,但不要全名)
    例:killall http  --杀不掉,因为killall 要全名的
    pkill http    --就可以杀了

    进程优先级

    7、nice  以指定的优先级去运行一个程序
           格式:nice  [-n num] command
      num:
      -20~19   值越低优先级越高,默认为0
         例: nice -n -20 /usr/bin/vmware
     
    8、renice 修改一个正在运行的程序优先级
    格式; renice [num] PID
    例:
        修改x0vncserver 的优先级
     
             renice -20 17237
     
    作业控制:
    9、 &   后台运行符
    10、jobs 查看后台运行的命令
    11、bg  启动后台停止的进程
    格式:bg 后台程序编号
    如: bg %1
    12、杀后台进程
    kill %1

    13、将前台程序放到后台运行

    如: cp /soft/rhel62.iso /    --之后按ctrl +z ,程序就到后台

    14、 fg 将后程序调到前台运行

    fg %1  

    15、 ctll + z 将前台程序放到后台(会停止运行)

    文件查找与压缩
    文件查找:
    which   显示可执行命令的路径(告诉你命令在哪)
    例:which cp which fdisk

    能不能找到取决于两个方面:

    1)有没有这个命令(文件)
    2)PATH 变量
    which 不会在磁盘上搜有没有这个文件,它只在 PATH 变量指定的路径中去搜索,如果没指定那个目录,即便有也找不到
     
    whereis
         which 类似,locate 查找速度非常快,因为从系统数据库中找,没在磁盘上搜索,但是会存在一个问题,如果系统数据库未更新,那即便文件存在,也找不到
     
    解决办法是更新系统数据库
    locate qq
    touch aaa.txt
    locate aaa.txt   --这里找不到aaa.txt 了
    updatedb
    locate aaa.txt   --更新数据库后就找到了
     
     
    find   文件查找
       格式: find 路径 [选项]
              
    -name 按文件名找
    -type 按类型找
    b   块设备
    c   字符设备
    d  目录
    l   链接
    f   普通文件
    
    -uid      按用户id找
    -user     按用户名找
    -gid      按组id 找
    -group     按组名找
    -size     按大小找
    +nK|M|G   
    -nK|M|G
    -mtime   按修改时间找(单位:天)
    +n     大于n 天(n天以前)
    -n     小于n 天(n天以内)
    -mmin amin cmin 按修改时间、访问时间、修改时间找(单位:分钟)
    mtime   文件修改时间(侧重于内容,mtime 的修改会引起ctime、atime的修改)
    atime  文件访问时间(如查看)
    ctime   文件修改时间(侧重于属性修改,如权限,名字等)
    查看文件 stat
    -nouser    查找无效属主的文件
    -group     查找无效组

    -exec     对查找的结果执行命令,查找结果作为命令输入参数

    格式:find .... -exec command {} ;

    -ok            与 -exec 作用类似,但是执行命令时,有确认信息

    xargs           也可以做类似的事情,不过xargs 就要使用管道了,将查询结果传给xargs (注意的是xargs 不是find 的选项)

    用法: command1 | xargs -I {} command2 {}

    -I 用一个符号来替代前一个命令传过来的每个具体结果

    command2 {}  对前面传过来的结果执行命令  
    例:找 fdisk           find / -name fdisk

    例:只找aaa的目录        find / -type d -name aaa    

    例:找tom 创建的所有文件     find / -user tom

    例:找1G以上的文件       find / -size +1G

    例:找无效属主的文件,并将这些文件删除    find / -nouser -exec rm {} ;

    例:删除tom创建的文件             find / -user tom -type f -ok rm {} ;

    例:用xargs 的方式把 tom 创建的普通文件,复制到 /test

    格式:command1 | xargs -I {} command2 {}

    find / -user tom -type f | xargs -I {} cp {} /test

     
    文件压缩与打包
    windows 下常见的压缩格式:   .zip   .rar
    linux  下常见的缩格式:       .gz    .bz2    .tar.gz   .tar.bz2
     
    gzip
    压缩:gzip etc.tar
    解压:gzip -d etc.tar.gz
     
    bzip2
    压缩:bzip etc.tar
    解压:bzip -d etc.tar.bz2

    .zip  文件拷到linux来解压方法:

    unzip 压缩文件名

    .rar  文件拷到linux来解压方法:

    要装rar的linux 版,rar 命令行的使用
    rar 压缩:rar a etc.tar.rar etc.tar
    rar 解压:rar e etc.tar.rar
             
    tar  打包/解包
    格式: tar [option] [文件目录列表]
    option:
    -c 打包
    -x 解包
    -v 显示打包解包过程
    -f 指定打包解包文件
    -j bzip2 来进行压缩与解压
    -z gzip 来进行压缩与解压
    -C 指定解压路径
    -t 查看包内容
     
    例:把 /etc 打包成一个文件
    tar -cvf etc.tar /etc
     
    例:把 etc.tar.bz2 解包
    tar -xvjf etc.tar.bz2
     
    例:查看包的内容
    tar -tvf etc.tar.bz2
     
     
    NFS (Network File System) 网络文件系统的简称,最早由sun公司开发,主要用于类unix间的文件共享。

    服务器软件安装:

    yum install nfs*

    涉及的服务:

    nfs
    rpcbind
     
    配置文件:
    /etc/exports

    配置格式: 共享的目录  能访问客户端(访问参数) 能访问客户端2(访问参数2)

     
    能访问的客户端:
    172.16.1.116         单一IP
    172.16.1.*           IP段
    172.16.1.0/24         IP段
    www.uplooking.com      主机名
    *.uplooking.com        域名

    *              所有机器

     
    访问参数:
    ro 只读
    rw 读写
    sync 实时同步数据到磁盘
    async  异步
     
    anonuid=xxx   指定匿名帐号的uid
    anongid=xxx   指定匿名帐号的gid
    secure       限制客户端只能从小于1024的端口连接到nfs 服务器
    insecure      可以从大于1024端口连接到nfs 服务器
     
    NFS端口:
    111 rpcbind (原来portmap)端口,另外还有一些随机端口,由rpcbind 来映射
     
    exportfs  手工维护共享目录
     
        格式: exportfs [option] [dir_name]
        option:
    -v 显示共享
    -a 共享 /etc/exports 定义的目录(启用共享)
    -u 停止共享
    -r   重新读取配置文件(相当于重新加载配置文件)
    相当于  service nfs reload
     
    例:通过exportfs 共享 /test 目录
    exportfs *:/test
     
     
    例: 配一个nfs 服务器,让客户端只读访问
     
    服务器端:
    vim /etc/exports
    /share *(ro)
     
    service nfs restart
     
    mkdir /share
    cp  ...... /share
     
     
    客户端:
    1) 查看服务器共享了哪些资源
      showmount -e ip

    如:showmount -e 172.16.1.116

    2) 挂载服务器的共享到本地目录
       mount ip:共享目录  本地挂载点
           如:mount 172.16.1.116:/soft /mnt
    3) 访问了
      把服务器的共享目录挂载到本地后,访问挂载点就是访问服务器的共享目录了
      cd /mnt
       ls
     
    服务管理
    启动服务
    service 服务名 start 
     
    停止服务
    service 服务名 stop
       
    重启服务
    service 服务名 restart
       
    查看服务状态
    service 服务名 status
     
    如何让服务自动启动:
    1)   vim /etc/rc.d/rc.local
    把启动服务的命令写进去(不常用)
    2)  chkconfig --level 2345 服务名 on
    检查:chkconfig --list | grep 服务名
    2345 是运行级别
    例: chkconfig --level 2345 nfs on
       chkconfig --list | grep nfs
     
     
     
     
     
     
        
     
  • 相关阅读:
    JAVA课程作业01
    《大道至简》第二章读后感
    《大道至简》第一章读后感
    制作Linux镜像,将腾讯云服务器系统制成镜像
    postman数据驱动
    Navicat Premium 连接Oracle数据库报错 instant Client LIght : unsupported server charcter ser ZHS16GBK
    查看python位数
    AutoItLibrary安装过程中遇到的坑
    hyrobot使用
    有这样一道智力题:“某商店规定:三个空汽水瓶
  • 原文地址:https://www.cnblogs.com/steven9898/p/11331180.html
Copyright © 2011-2022 走看看