三、Linux学习笔记 -- 软件包管理

一、 简介

         1.软件包分类

                 源码包

                        脚本安装包

                 二进制包(RPM包、系统默认包)

二、 RPM包管理-rpm命令管理

           ①. 包命名与依赖性

          1.RPM包命名规则

                    

                   httpd-2.2.15-15.e16.centos.1.i686.rpm

                   httpd            软件包名

                   2.2.15           软件版本

                   15                 软件发布的次数

                   e16.centos    适合的Linux平台

                   i686              适合的硬件平台

                   rpm              rpm包扩展名

           2.RPM包依赖性

          

                   树形依赖:        a->b->c

                   环形依赖:        a->b->c->a

                   模块依赖:        模块依赖查询网站:www.rpmfind.net

          ②. 安装升级与卸载

                

            1.包全名与包名

                   包全名:操作的包是没有安装的软件包时,使用包全名。而且要注意路径

                   包名:   操作已经安装的软件包时,使用包名。是搜索/var/lib/rpm/中的数据库

             2.RPM安装

        

                    rpm -ivh 包全名

                    选项:

                              -i (install)              安装

                              -v (verbose)          显示详细信息

                              -h (hash)               显示进度

                              --nodeps              不检测依赖性

              3.RPM包升级

                      

                     rpm -Uvh 包全名

                     选项:

                             -U(upgrade)    升级

                4.卸载

              

                        rpm -e 包名

                        选项:

                                -e (erase)        卸载

                                --nodeps        不检查依赖性

③. 查询

                1.查询是否安装

                       [root@localhost ~]#rpm -q 包名       #查询包是否安装

                       选项:

                                         -q               查询(query)

                       [root@localhost ~]#rpm -qa              #查询所有已经安装的RPM包

                        选项: 

                                         -a                所有(all)

                         示例:rpm -qa | grep httpd

                 2.查询软件包详细信息

                        [root@localhost ~]#rpm -qi 包名

                        选项:

                                         -i              查询软件信息(information)

                                         -p             查询未安装包信息(package)

                 3.查询包中文件安装位置

                        [root@localhost ~]#rpm -ql 包名

                        选项:

                                        -l               列表(list)

                                        -p              查询未安装包信息(package)

                 4.查询系统文件属于哪个RPM包

  

                        [root@localhost ~]#rpm -qf 系统文件名

                        选项:

                                        -f              查询系统文件属于哪个软件包(file)

                  5.查询软件包的依赖性

                         [root@localhost ~]#rpm  -qR  包名

                         选项:

                                       -R          查询软件包的依赖性(requires)

                                       -p          查询未安装包信息(package)

④. 校验和文件提取

                   1.RPM 包校验

                   

                            rpm -V 已安装的包名

                             选项:

                                    -V             校验指定RPM包中的文件(verify)

                             验证内容中的8个信息的具体内容如下:

                                 S        文件大小是否改变

                                 M       文件的类型或文件的权限(rwx)是否被改变

                                 5        文件MD5校验和是否改变(可以看成文件内容是否改变)

                                 D        设备的中,从代码是否改变

                                  L        文件路径是否改变

                                 U        文件的属主(所有者)是否改变

                                 G        文件的属组是否改变

                                 T         文件的修改时间是否改变

                               文件类型

                                   c       配置文件(config file)

                                   d       普通文件(documentation)

                                   g       “鬼”文件(ghost file),很少见,就是该文件不应该被这个PRM包包含

                                              l        授权文件(license file)

                                              r        描述文件(read me)

                              2.RPM包中文件提取

                                        rpm2cpio 包全名 | \

                                        cpio -idv .文件绝对路径

                                        示例:

                                                rpm2cpio            #将rpm包转换为cpio格式的命令

                                                cpio                    #是一个标准工具,它用于创建软件档案文件和从档案文件中提取文件

                                         cpio 选项 <[文件|设备]

                                          选项:

                                                    -i      copy-in模式,还原

                                                   -d      还原时自动新建目录

                                                   -v      显示还原过程

                                            \ 代表换行,无意义

                                            . 代表将文件提取到当前目录下

                                         示例:

                                           #rpm -qf /bin/ls

                                           查询ls 命令属于哪个软件包

                                           #mv /bin/ls /tmp/

                                           造成ls命令误删除假象

                                           #rpm2cpio /mnt/cdrom/Packages/coreutils-8.4-19.e16.i686.rpm | cpio -idv ./bin/ls

                                           提取RPM包中ls命令到当前目录的bin/ls下

                                           #cp /root/bin/ls /bin/

                                           把ls命令赋值回/bin/目录,修复文件丢失

三、 RPM包管理-yum在线管理

              

             ①. IP地址配置和网络yum源

                  

                    1.IP地址配置                  

                        setup       # 使用setup工具

                        vi /etc/sysconfig/network-scripts/ifcfg-eth0      把ONBOOT="no"改为ONBOOT=“yes”  #启动网卡

                        service network restart        #重启网络服务

                     2.网络yum源

                              vi /etc/yum.repos.d/CentOS-Base.repo

                                [base]            容器名称,一定要放在[ ] 中            

                                name             容器说明,可以自己随便写

                                mirrorlist        镜像站点,这个可以注释掉

                                baseurl           我们的yum源服务器的地址。默认是CentOS官方的yum源服务器,是可以使用的,如果你觉得蛮可以改成你喜欢的yum源地址

                                enabled          此容器是否生效,如果不写或写成enabl=1都是生效,写成enable=0就是不生效

                                gpgcheck       如果是1是指RPM的数字证书生效,如果是0则不生效

                                gpgkey           数字证书的公钥文件保存位置。不用修改

             ②. yum命令

                       1.常用yum命令

                                1) 查询

                                         yum list                   查询所有可用软件包列表

                                         yum search 关键字  搜索服务器上所有和关键字相关的包

                                2) 安装

                                         yum -y install 包名

                                          选项:

                                                    install    安装

                                                    -y         自动回答yes

                               3) 升级

                                         yum -y update 包名

                                           选项:

                                                    update    升级

                                                    -y            自动回答yes

                                         yum -y update    升级所有软件,包括linux内核,慎重

                                4) 卸载(一般不用yum卸载)

                                          yum -y remove 包名

                                          选项:

                                                   remove    卸载

                                                   -y            自动回答yes

                        2.YUM软件组管理命令

     

                                 yum grouplist                           列出所有可用的软件组列表

                                 yum groupinstall 软件组名         安装指定软件组,组名可以由grouplist查询出来

                                 yum groupremove 软件组名      卸载指定软件组

             ③. 光盘yum源

                        光盘yum源搭建步骤

                             1) 挂载光盘

                                      mount /dev/cdrom /mnt/cdrom

                             2) 让网络yum源文件失效

                                      cd /etc/yum.repos.d/

                                      mv CentOS-Base.repo CentOS-Base.repo.bak

                                      mv CentOS-Debuginfo.repo CentOS-Debuginfo.repo.bak

                                      mv CentOS-Vault.repo CentOS-Vault.repo.bak

                             3) 修改光盘yum源文件

                                      vim CentOS-Medio.repo

                                      [c6-media]

                                      name=CentOS-$releasever - Media

                                      baseurl=file:///mnt/cdrom

                                      #地址为你自己的光盘挂载地址

                                      #       file:///media/cdrom

                                      #       file:///media/cdrecorder/

                                      #注释这两个不存在的地址

                                      gpgcheck=1

                                      enabled=1

                                      #把enabled=0改为enabled=1,让这个yum源配置文件生效

                                      gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

四、 源码包管理

               ①. 源码包和RPM包的区别

                          1.区别

                                  安装之前的区别:概念上的区别

                                  安装之后的区别:安装位置不同

                           2.RPM包安装位置

                        

                          3.源码包安装位置

                                安装在指定位置当中,一般是

                                      /usr/local/软件名/

                          4.安装位置不同带来的影响

                                  RPM包安装的服务可以使用系统服务管理命令(service)来管理,例如RPM包安装的apache的启动方法是:

                                       /etc/rc.d/init.d/httpd start

                                       service httpd start    (红帽子专有)          

                                 而源码包安装的服务则不能被服务管理命令管理,因为没有安装到默认路径中。所以只能用绝对路径进行服务的管理,如:

                                       /usr/local/apache2/bin/apachectl start    

               ②. 源码包安装过程

                           1.安装准备

                   

                                  安装C语言编译器

                                  下载源码包

                                       Index of /apache/httpd

                           2.安装注意事项

                       

                                    源代码保存位置: /usr/local/src/

                                    软件安装位置:    /usr/local/

                                    如何确定安装过程报错:

                                             安装过程停止

                                             并出现error、warning或no的提示

                           3.源码包安装过程

                                   下载源码包

                                   解压缩下载的源代码

                                   进入解压缩目录

                                   

                                    ./configure  软件配置与检查

                                             定义需要的功能选项。    ./configure --prefix=/usr/local/apache2             

                                             检测系统环境是否符合安装要求。

                                             把定义好的功能选项和检测系统环境的信息都写入Makefile文件,用于后续的编辑。

                                      make             编译(将C语言编译成机器语言 )

                                               make clean    清空编译的临时文件(编译出错后)

                                      make install   编译安装    

                                      /usr/local/apache2/bin/apachectl start      (运行apache)

                           4.源码包的卸载

                     

                                   不需要卸载命令,直接删除安装目录即可。不会遗留任何垃圾文件。

                                   

                                    rm -rf /usr/local/apache2/     

五、 脚本安装包与软件包选择

               1.脚本安装包

            

                      脚本安装包并不是独立的软件包类型,常见安装的是源码包。

                      

                      是认为把安装过程写成了自动安装的脚本,只要执行脚本,定义简单的参数,就可以完成安装。

                      非常类似于Windows下软件的安装方式。

               2.Webmin的作用

      

                      Webmin是一个基于Web的Linux系统管理界面。您就可以通过图形化的方式设置用户账号、Apache、DNS、文件共享等服务。

                3.Webmin安装过程

                

                        下载软件

                               Index of /download/yum

                         解压缩,并进入加压缩目录

                         执行安装脚本         ./setup.sh

                                  回车即下一步

                                  ctrl+退格键     删除

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值