Linux实操篇3

        压缩和解压缩指令
            
            gzip/gunzip
                gzip 用于压缩文件    gunzip 用于解压缩
                
                gzip 文件名
                gunzip 文件名
                压缩或解压缩后不会保留原文件
                
            zip/unzip
                zip 用于压缩文件    unzip用于解压
                
                zip [选项]***.zip 将要压缩的内容
                unzip [选项]***.zip 
                
                zip常用选项
                    -r 递归压缩,即压缩目录
                unzip常用选项
                    -d<目录> 指定解压后文件存放的目录
                    
                zip -r mypackage.zip /home/
                unzip -d /opt/tmp/ mypackage.zip
                
            tar 打包指令 文件后缀是.tar.gz
                tar [选项] ***.tar.gz 打包的内容 
                选项说明
                    -c 产生tar打包文件
                    -v 显示详细信息
                    -f 指定压缩后的文件名
                    -z 打包同时压缩
                    -x 解包.tar文件
                    
                tar -zcvf a.tar.gz a1.txt a2.txt
                tar -zcvf myhome.tar.gz /home/
                tar -zxvf a.tar.gz
                tar -zxvf myhome.tar.gz -C /opt/    指定解压到的目录事先要存在
                
                
                
                
                
    Linux组管理和权限管理(重点、难点)
        默认情况,用户创建一个文件后,这个文件所在组就是该用户所在的组
        
        Linux组的基本介绍
            文件:所有者、所在组、其他组
            
            文件、目录 所有者
            
                查看文件所有者
                    ls -ahl

                修改文件所有者
                    chown 用户名 文件名
                    
                组的创建
                    groupadd 组名
                    
                    gropuadd monster
                    useradd -g monster fox
            
                修改文件所在组
                    chgrp 组名 文件名
                
                改变用户所在组
                    在添加用户时,可以指定将该用户添加到哪个组中,同样的用root的管理权限可以改变某个用户所在的组
                    usermod -g 组名 用户名
        
        
        权限管理
            权限的基本介绍
                略
            详解rwx权限
                rwx作用在文件上
                    r 读 w 写 x 可执行
                rwx作用在目录上
                    r 读 w 可以修改 创建删除重命名 x 可进入该目录
                    
            修改权限 chmod    可以修改文件或者目录的权限    
                第一种方式 + - =
                u 所有者 g 所在组 o 其他人
                    chomd u=rwx,g=rx.o=x 文件目录名
                    chmod o+w 文件目录名
                    chmod a-x 文件目录名
                    
                第二种方式
                    r=4 w=2 x=1
                    chmod 751 文件名
                
            修改文件所有者 chown
                chown newowner file 改变文件的所有者
                chown newowner:newgroup file 改变用户的所有者和所有组
                -R 如果是目录 则使其下所有子文件或目录递归生效
                
            改变文件所在组 chgrp
                chgrp newgroup file
                    
                    chgrp bandit/home/abc.txt
                    chgrp -R bandit/home/kkk
                    
                
                
        课后练习
            建立两个组(神仙和妖怪)
            建立四个用户(唐僧、悟空、八戒、沙僧)
            设置密码
            把悟空、八戒放入妖怪 唐僧、沙僧放在神仙
            
            用悟空建立一个文件(monkey.c 该文件输出 I am monkey)
            给八戒一个可以rw的权限
            八戒修改monkey.c加入一句话 I am pig
            
            唐僧、沙僧对该文件没有权限
            把沙僧放入妖怪组
            让沙僧 修改 该文件 monkey.c 加入一句话 我是沙僧,我是妖怪
            
            
            
            用root登录,创建用户mycentos,自己设定密码
            用mycentos登录,在主目录下建立目录test/t11/t1
            在t1中建立一个文本文件aa,用vi编辑其内容为 ls -al
            改变aa的权限为可执行文件[可以将当前日期追加到一个文件],运行该文件./aa
            删除新建立的目录test/t11/t1
            删除用户mycentos及其主目录中的内容
            将linux设置成进入到图形界面
            重新启动或者关机
            
            
            
                
                
                
                
                
    cront 任务调度    
        
        任务调度是指系统在某个时间执行特定的命令或程序
            任务调度分类:1.系统工作:有些系统工作必须周而复始的执行 比如病毒扫描等
            2.个别用户工作:个别用户可能希望执行某些程序 比如对mysql数据库备份
            
            如果是简单的任务,可以不用写脚本,直接在crontab中编辑即可
            基本语法
                crontab [选项]
                
            crontab -e  插入任务调度
            crontab -r  终止任务调度
            crontab -l  列出当前有哪些任务调度
            service crond restart  重启任务调度
            
            */ 1 * * * * ls -l/etc >>/tmp/to.txt    
                    五个占位符 0-59 分钟 ;0-23 小时 ;1-31 天数 ;1-12 月份 ;0-7 周几
                    * 代表任何时间
                    0 8,12,16 * * * 逗号表示不连续的时间
                    0 8 * * 1-6 横表示连续的时间范围
                    */10 * * * * 斜杠代表每隔多久执行一次
                    
                编写一个文件 /home/mytask1.sh
                    date >> /home/mydate
                    
                    chmod 744 mytask1.sh  # 给可执行权限
                    */1 * * * * /home/mytask1.sh
                
                每天凌晨两点将mysql数据库testdb备份到文件mydb.bak中
                    1.编写文件 /home/mytask3.sh
                    /usr/local/mysql/bin/mysqldump -u root -p 123456 testdb >> /tmp/mydb.bak
                    2.给mytask3.sh一个可以执行权限
                    chmod 744 /home/mytask3.sh
                    3.crontab -e
                    4. 0 2 * * * /home/mytask3.sh
                    
                
                
    磁盘分区、挂载
                    
        lsblk -f     查看系统分区和挂载情况
                    
        需求 给linux增加一块新的硬盘,并挂载到/home/newdisk            
            1.虚拟机添加硬盘
            2.分区 fdisk /dev/sdb                
            3.格式化 mkfs -t ext4 /dev/sdb1
            4.挂载 先创建1个目录 /home/newdisk 
                挂载 mount /dev/sdb1 /home/newdisk
                卸载 umount /dev/sdb1 或者 umount /newdisk
            5.设置可以自动挂载(永久挂载) 
                vim /etc/fstab 加入挂载
        磁盘情况查询
            查询系统整体磁盘使用情况
                基本语法
                    df -lh
                    
            查询指定目录的磁盘占用情况
                基本语法
                    du -h /目录
                        查询指定目录的磁盘占用情况,默认为当前目录
                        -s 指定目录占用大小汇总
                        -h 带计量单位
                        -a 含文件
                        -max-depth=1 子目录深度
                        -c 列出明细的同时,增加汇总值
                    应用:查询/opt 目录的磁盘占用情况
                        du -ach --max-depth=1 /opt
                    1. 统计/home 文件夹下文件的个数                    
                        ls -l /home | grep "^-" | wc -l
                    2. 统计/home 文件夹下目录的个数
                        ls -l /home | grep "^d" | wc -l
                    3. 统计/home 文件夹下文件的个数,包括子文件夹里的
                        ls -lR /home | grep "^-" | wc -l
                    4. 统计文件夹下目录的个数,包括子文件夹里的
                        ls -lR /home | grep "^d" | wc -l
                    5. 以树状显示目录结构 tree
                        yum install tree 安装一个指令
                    
                    
                    
    网络配置            
                
        自动获取ip    
            缺点:每次自动获取的ip地址可能不一样 不适用于做服务器 因为服务器的ip需要是固定的
                    
        指定固定ip            
            直接修改配置文件来指定ip,并可以连接到外网 
                vim /etc/sysconfig/network-scripts/ifcfg-eth0
                要求:将ip地址配置为静态的,ip地址为192.168.200.128
                修改后重启服务
    
    
    进程管理
        进程的基本介绍
            1.在linux中,每个执行的程序都称为一个进程 每一个进程都分配一个ID号
            2.每一个进程,都会对应一个父进程 而这个父进程可以复制多个子进程 例如www服务器
            3.每个进程都可能以两种方式存在 前台与后台(守护进程) 前台是指用户目前的屏幕上可以进行操作的
                后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常采用后台方式执行
            4.一般系统的服务都是以后台进程的方式存在 而且都会常驻在系统中 直到关机才结束
                
                
        显示系统执行的进程
            基本介绍
                ps   查看目前系统中 有哪些正在执行 以及它们执行的情况 可以不加任何参数
                PID  进程识别号
                TTY  终端机号
                TIME 此进程所消耗CPU时间
                CMD  正在执行的命令或进程名
                
                ps -a 显示当前终端的所有进程信息
                ps -u 以用户的格式显示进程信息
                ps -x 显示后台进程运行的参数
                ps -aux | grep ***  比如查看有无sshd  ps -aux | grep sshd
                ps -ef 可以显示父进程
                
        终止进程kill和killall
            kill [选项] 进程号
            killall 进程名称
            
            常用选项
                -9 强制kill
                
        查看进程树
            pstree
            -p 显示进程pid
            -u 显示所属用户
                
                
                
        服务管理 service
            服务的本质就是进程 但是是运行在后台的 通常会监听某个端口 等待其他程序的请求 比如(MySQL sshd 防火墙等)
            因此我们又称为守护进程     
                
            service管理指令
                service 服务名 [start | stop | restart | reload | status]
                centos7.0后 不再使用service 而是 systemctl
                systemctl start firewalld 开启防火墙
                systemctl status firewalld 查看防火墙状态
                systemctl stop firewalld 
                
                1.关闭或启动防火墙后 立即生效 win下 telnet测试 某个端口即可
                2.这种方式只是临时生效 当重启系统后 还是回归以前对服务的设置
                3.如果希望设置某个服务器自启或关闭永久生效 要使用chkconfig命令
            查看服务器
                setup
                ls -l /etc/init.d/
                
            服务的运行级别
                查看或修改默认运行级别 vim /etc/inittab
                

                Linux系统有7种运行级别(runlevel) 常用的是级别3和5
                0 系统停机状态 系统默认运行级别不能为0 否则不能正常启动
                1 单用户工作状态 root权限 用于系统维护 禁止远程登录
                2 多用户状态 没有NFS 不支持网络
                3 完全的多用户状态 有NFS 登陆后进入控制台命令模式
                4 系统未使用 保留
                5 X11控制台 登陆后进入图形GUI模式
                6 系统正常关闭并重启 默认级别不能为6 否则不能正常启动
                
                开机流程说明
                    开机-BISO-/boot-init进程1-运行级别-运行级对应的服务
                    
            chkconfig 可以给每个服务的各个运行级别设置自启动/关闭    
                查看服务 chkconfig --list|grep XXX
                chkconfig 服务名 --list
                chkconfig --level 5 服务名 on/off
                
                
                
    进程监控指令
        
        动态监控进程 top
            top和ps命令很相似 都是用来显示正在执行的进程 top与ps最大的不同之处在于top在执行一段时间可以更新正在运行的进程
            top [选项]
            -d  后面接秒数
            -i  使top不显示任何闲置或者僵死进程
            -p  通过指定监控进程id来仅仅监控某个进程的状态
            
            交互操作说明
            P 以CPU使用率排序 默认是此选项
            M 以内存使用率排序
            N 以PID排序
            q 退出top
            
        监控网络状态 netstat
            netstat [选项]
            -an 按一定顺序排列输出
            -p  显示哪个进程在调用
            netstat -anp | more
            netstat -anp | grep sshd
    

    
RPM 与YUM
    
    rpm 红帽包管理器 
        查询已安装的rpm列表 rpm -qa | grep xx    
        rpm -qi file 查询安装的软件信息
        rpm -ql 软件包名 查询文件所属的软件包
        rpm -qf 文件 查询某个文件属于哪个rpm包
        
        卸载软件包 rpm -e 包名
            rpm -e firefox
        
        安装软件包 rpm -ivh RPM包全路径名称
            i=install 安装
            v=verbose 提示
            h=hash 进度条
        
    yum 是一个shell前端软件包管理器 基于RPM包管理 能够从指定的服务器自动下载rpm包并且安装 可以自动处理依赖关系
        yum list | grep xx 查看服务器是否有xx软件
        yum install xx 下载安装xx软件

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值