Linux-rpm包管理工具(程序安装)

一:应用程序基础
            1.应用程序与系统命令的关系:
                     文件位置
                               系统命令:一般在/bin和/sbin目录中,或为Shell内部指令。
                               应用程序:通常在/usr/bin和/usr/sbin目录中。
                     主要用途
                               系统命令:完成对系统的基本管理工作,例如IP配置工具。
                               应用程序:完成相对独立的其他辅助任务,例如网页浏览器。
                     适用环境
                               系统命令:一般只在字符操作界面中运行。
                               应用程序:根据实际需要,有些程序可在图形界面中运行。
                     运行格式
                               系统命令:一般包括命令字、命令选项和命令参数。
                               应用程序:通常没有固定的执行格式。


  
2.典型应用程序的目录结构:(Linux系统中,把安装的软件打散了以后放在不同的目录中,方便管理)


                    普通执行程序文件                     /usr/bin 
                    服务器执行程序文件和管理程序文件     /usr/sbin 
                    应用程序配置文件                     /etc 
                    日志文件                             /var/log 
                    应用程序文档文件                     /usr/share/doc 
                    应用程序手册页文件                   /usr/share/man 


            
3.常见的软件包类型:(主要rpm,源码包)

       rpm软件包                 扩展名为“.rpm” 
                    deb软件包                 扩展名为“.deb” 
                    源代码软件包              一般为“.tar.gz”、“.tar.bz2”等格式的压缩包包含程序的原始代码
                    附带安装程序的软件包      在压缩包内提供install.sh、setup等安装程序或以“.bin”格式的单个执行文件提供
                    
绿色免安装的软件包 




二:RPM 包管理工具


            1.RPM软件包一般命名格式:
                     bash-4.1.2-15.el6_4.x86_64.rpm
            
                     bash      软件名称
                     4.1.2     版本号
                     15.el6_4  发布次数
                     x86       硬件平台
                     64        表示适用于64位系统




            2.查询已安装的 RPM 软件信息:
       
格式: rpm  -q[子选项]  软件名
                    
子选项:(结合不同的子选项 完成不同查询) 
                
                          · -qa:查看系统中已安装的所有RPM软件包列表
                          · -qi:查看指定软件的详细信息
                          · -ql:查询指定软件包所安装的目录、文件列表 
                            -qc:仅显示指定软件包安装的配置文件
                            -qd:仅显示指定软件包安装的文档文件


                    举例:
      # rpm -qi sssd
                            
            查看sssd软件包的详细信息           
 
      # rpm -ql mcpp
  
           查看mcpp软件包所安装的 目录/文件列表
 
  # rpm -qa | grep ss
                                    
添加grep命令按需要筛选
 
3.查询文件或目录属于哪个 RPM 软件:
   
       格式: rpm  - qf  文件或目录名


       举例:
              [root@wkn ~]# rpm -qf /usr/libexec/sssd/krb5_child
                            sssd-krb5-common-1.13.3-56.el6.x86_64
     

4.查询未安装的 RPM 包文件:
                    
格式:rpm  - qp[子选项]  .rpm结尾的RPM包文件


子选项:(结合不同的子选项 完成不同查询)
 
-qpi:通过.rpm包文件查看该软件的详细信息
-qpl:查看.rpm安装包内所包含的目录、文件列表
-qpc:查看.rpm安装包内包含的配置文件列表
-qpd:查看.rpm安装包内包含的文档文件列表


       举例:
     [root@node1 ~]# cd /mnt/Packages/
     [root@ns1 Packages]# rpm -qpi ethtool-3.5-6.el6.x86_64.rpm 
                                  查看未安装的ethtool包文件的详细信息

                          [root@node1 ~]# cd /mnt/Packages/
 [root@ns1 Packages]# rpm -qpl ethtool-3.5-6.el6.x86_64.rpm
                                  查看未安装的ethtool包文件会安装到哪些目录  
 
 
5. 安装、升级、卸载 RPM 软件包 :
       
安装/升级:

格式:rpm  [选项]  .rpm结尾的RPM包文件  
     
选项: 
-i:安装(install)一个新的 rpm 软件包
-U:升级(update)某个 rpm 软件,若原本未装,则进行安装
-F:更新某个 rpm 软件,若原本未装,则放弃安装
    --force:强制安装所指定的rpm软件包
--nodeps:安装、升级或卸载软件时,忽略依赖关系 
-h:以“#”号显示安装的进度
-v:显示安装过程中的详细信息 


举例:
   [root@node1 ~]# cd /mnt/Packages/
   [root@ns1 Packages]# rpm -ivh ethtool-3.5-6.el6.x86_64.rpm

                卸载:
                     
                    格式:rpm  -e  软件名
 
                    举例:  [root@localhost ~]# rpm –e elinks        //卸载 
[root@localhost ~]# rpm -q elinks        //查看
package elinks is not installed


            6.重建RPM数据库:
       
[root@localhost ~]# rpm --rebuilddb
                    或
                    [root@localhost ~]# rpm --initdb


                  
三:解决依赖关系,yun仓库安装方法:
1.mount
   Linux系统中,自动把硬件映射成文件,但文件不能直接使用,必须挂载到目录上才能看到,/mnt , /media , 或自己指定。 
 
挂载思路:放光盘(保证最上面2个勾是被选中的)-->在命令行下挂载


挂在命令:mount /dev/cdrom  /mnt
               /dev/hda1
               /dev/sda1

卸载挂载:umount /mnt

2. [root@node1 ~]# cd /mnt/Packages/
[root@node1 Packages]# rpm -ivh lynx-2.8.6-27.el6.x86_64.rpm 
备注:lynx是文本模式下的网页浏览器,格式:lynx 网址
举例:[root@node1 Packages]# lynx www.baidu.com

[root@node1 Packages]# rpm -ivh lrzsz-0.12.20-27.1.el6.x86_64.rpm 
备注:lrzsz是终端向服务器传输文件数据的软件
举例: [root@node1 Packages]# cd /tmp
[root@node1 tmp]# rz -y
备注:命令输入后会弹出对话框,之后选中要上传的文件,点击打开即可!



3.YUM仓库的搭建:

a.本地YUM源:
       一,挂载
二,yum仓库设置  /etc/yum.repos.d/       
三,安装
      
  CentOS-Media.repo 本地yum (默认优先)
  CentOS-Base.repo  网络yum
  
[root@node1 ~]# mount /dev/sr0 /mnt/
[root@node1 ~]# cd /etc/yum.repos.d/
[root@node1 yum.repos.d]# ls
显示结果:CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-fasttrack.repo  CentOS-Media.repo  CentOS-Vault.repo
[root@node1 yum.repos.d]# vim CentOS-Media.repo
显示部分内容: [c6-media] //中括号中的内容不能有空格
name=CentOS-$releasever - Media
baseurl=file:///mnt/ //YUM仓库的软件从什么地方提供
#file:///media/cdrom/
#file:///media/cdrecorder/
gpgcheck=0 //是否验证软件包。0不验证,1验证
#gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
enabled=1 //开启YUM,安装软件包时会自动解决依赖关系



验证实例:
1.[root@ns1 ~]# rpm -ivh /mnt/Packages/time-1.7-38.el6.x86_64.rpm
备注:会报错,有依赖关系
2.[root@ns1 ~]# yum -y install /mnt/Packages/time-1.7-38.el6.x86_64.rpm
备注:没有报错,自行解决依赖关系
    或
  [root@ns1 ~]# cd /mnt/Packages/
                           [root@ns1 Packages]# yum -y install time-1.7-38.el6.x86_64.rpm


验证YUM源:
yum repolist

删除:
       yum remove ethtool



b.网络YUM源
只要保证Linux能上互联网就行(CentOS-Media.repo保持安装系统后时候默认)

                一,把本地yum改名
二,清空缓存
三,重新获取
yum clean all 清空缓存
yum makecache 重新生成缓存
yum update 系统更新



4.软件包组:
   查询:
                    yum grouplist                      //查看软件包组
                    yum groupinfo  <包组名>...         //查看软件包组的详细信息
   
                     举例:
[root@localhost ~]# yum grouplist


                     [root@localhost ~]# yum grouplist "Desktop"


   安装:
                    yum groupinstall  <包组名>
                    
                     举例:       
    [root@ns1 ~]#yum -y groupinstall "X 窗口系统" "中文支持" "桌面"
                       -y:表示自动确认

   升级:
   yum groupupdate


                卸载:
   yum groupremove <包组名>...


举例:
[root@localhost ~]# yum -y groupremove "Desktop"


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值