Linux学习笔记之软件安装管理

Linux学习笔记之软件安装管理

1.软件包分类
    源码包
        脚本安装包
    二进制包(RPM包、系统默认包)

    源码包的优点:
        - 开源,如果有足够的能力可以修改源代码
        - 可以自己选择所需的功能
        - 软件是编译安装,所以更加适合自己的系统,更加稳定,效率也越高
        - 卸载方便
    源码包的缺点:
        - 安装过程步骤较多,尤其安装较大的软件集合时(如LAMP环境搭建),容易出现拼写错误
        - 编译过程时间较长,安装比二进制安装时间长
        - 因为是编译安装,安装过程中一旦报错新手很难解决

    PRM包
        二进制包的优点:
            - 包管理系统简单,只通过几个命令就可以实现包的安装、升级、查询和卸载
            - 安装速度比源码包安装快得多

        二进制包缺点:
            - 经过编译,不再可以看到源代码
            - 功能选择不如源码包灵活
            - 依赖性(非常麻烦

    脚本安装包
        所谓的脚本安装包,就是把复杂的软件包安装过程写成了程序脚本,初学者可以执行程序脚本实现一键安装。但实际安装的还是源码包和二进制包
        优点:安装简单、快捷
        缺点:完全丧失了自定义性

RPM包的来源

    - RPM包的来源
        RPM包在光盘中
            1、先在虚拟机中设置光盘的iso镜像
            mkdir /mnt/cdrom
            mount /dev/sr0 /mnt/cdrom
            cd /mnt/cdrom
            cd Packages/

    - RPM包命名原则
        http-2.2.15-15.el6.centos.1.i686.rpm
            - httpd 软件包
            - 2.2.15 软件版本
            - 15 软件发布的次数
            - el6.centos 适合的Linux平台
            - i686 适合的硬件平台
            - rpm rpm包扩展名

    - RPM包依赖性
        - 树形依赖: a->b->c
        - 环形依赖: a->b->c->a
        - 模型依赖: 模块依赖,查询网站:www.rpmfind.net 

    包全名、包名的区别
        - 包全名:操作的包是没有安装的软件包时,使用包全名。包括: 路径/包名.rpm
        - 包名:操作已经安装的软件包时,使用包名,是搜索/var/lib/rpm/中的数据库

    - RPM命令规则

        rpm -ivh 包名/包全名     //安装命令
            -i 安装
            -v 显示详细信息
            -h 显示进度
            --nodeps 不检测依赖性,实际安装中,不允许使用

          例如:
              rpm -ivh httpd      //安装apache

        rpm -Uvh 包全名
          选项:
              -U      //升级  
        rpm -e 包名

        //rpm准备了这个卸载命令的原因是,我们安装时根本不知道这个包装了在哪里(要知道linux下的安装的软件的文件散布多个地方的,很难一一找),而rpm知道,所以干脆就为我们准备了这条便利的命令。
        3) window下卸载软件,往往容易留很多垃圾数据难以除完,例如注册表等等。而linux中不会出现这个问题,只要把软件的安装目录所有都删除掉,就不会有残留。

        rpm -q 包名   //查询包是否安装
            -q  //查询

        rpm -qa //查询所有已经安装的RPM包
            -a  //所有

        rpm -qi 包名
            -i  //查询软件信息
            -p  //查询未安装包信息

        rpm -ql 包名
            -l //列表
            -p //查询未安装包的信息

        rpm -qf 系统文件名
            -f  //查询系统文件属于那个软件包

        RPM包默认安装位置:
            /ect/   //配置文件安装目录
            /usr/bin/   //可执行的命令安装目录
            /usr/lib/   //程序所使用的函数库保存位置
            /usr/share/doc/     //基本的软件使用手册保存位置
            /usr/share/man/     //帮助文件保存位置

        rpm -V 包名       //检验文件类型
            c   //配置文件
            d   //普通文档
            g   //ghost file
            L   //授权文件
            r   //描述文件

        rpm2cpio 包全名 | cpio -idv .文件绝对路径

        - rpm2cpio  //将rpm包转换cpio格式的命令
        - cpio  //是一个标准工具,它用于创建软件档案和从档案文件中提取文件 

        系统文件丢失的处理方法:
            rpm -qf /bin/ls //查询ls命令属于哪个软件包
            mv /bin/ls/tmp  //造成ls命令误删除假象
            rpm2cpio /mnt/cdrom/Packages/coreutils-8.4-19.el6.i686.rpm | cpio -idv ./bin/ls     //提取RPM包中ls命令道当前目录的/bin/ls下
            cp /root/bin/ls /bin/   //把ls命令复制到/bin/目录,修复丢失文件

    - Yum在线安装:yum源文件
        1、yum的优点:将所有软件包放到官方服务器上,当进行yum在线安装时,可以自动解决依赖性问题。(rpm缺点:安装过程中,rpm包依赖性太强)
        2、redhat的yum在线安装需要付费,centOS不需要。
        3、在【/etc/yum.repos.d/】目录中,默认有4个yum源文件,其中【CentOS-Base.repo】是基本yum源文件,如果我们能上网,那它是默认生效的,而其他的都是默认不生效的。
        4、[base]:名字可以随便起。
        5、name:名字也是随便起。
        6、mirrorlist和baseurl一个是主站点,一个是辅助站点,这两个有一个就行。可以找一个163或清华大学的yum源更换。
        7、enabled:默认最后一个容器不生效,其他容器都生效。
        8、gpgcheck:一般都要开启,开启后安装时会验证rpm包是否是官方的,以保证系统安全。
        9、gpgkey:默认系统安装后,在目录【/etc/pki/rpm-gpg】下都会存在数字证书。注:前面的【file://】表示文件协议,后面的【/etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6】是数字证书的位置。

    - 光盘yum云搭建
        - 挂载光盘
         mkdir /mnt/cdrom   //建立挂载点
         mount /dev/cdrom /mnt/cdrom    //挂载光盘
        - 使网络yum源失效
         cd /etc/yum.repos.d/   //进入yum源目录
         mv CentOS-Base.repo CentOS-Base.repo.bak   //修改yum源文件后缀名,使其失效
        - 使光盘yum源生效
         vim CentOS-Media.repo

         [c6-media]
         name=CentOS-$releasever - Media
         baseurl=file:///mnt/cdrom/   -->将baseurl设置为实际光盘挂载地址(另外两个要注释掉,否则会因为找不到光盘而报错。【#】注释时,必须写在行开头)
         # file:///media/cdrom/
         # file:///media/cdrecorder/
         gpgcheck=1
         enabled=1  -->将enabled设置为1,使这个yum源配置文件生效
         gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

         编辑后保存退出即可。

    常用yum命令
        1.查询
            yum list    //查询所有可用软件包列表
            yum search 关键词  //搜索服务器上所有和关键词相关的包 
        2.安装
            yum -y install 包名
            选项:
                install //安装
                -y      //自动回答yes
            yum -y install gcc 
        3.升级
            yum -y update 包名
            选项:
                update  //升级
                -y  //自动回答yes
        4.卸载
            yum -y remove 包名
            选项:
                remove  //卸载
                -y  //自动回答yes

    YUM软件组管理命令
        yum grouplist   //列出所有可用的软件组列表
        yum groupinstall 软件组名   //安装指定软件组,组名可以由grouplist查询出来
        yum groupremove 软件组名    //卸载指定软件组
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值