Linux菜鸟成长日记 (Linux中的软件管理程序rpm)

Linux中的软件管理程序rpm



- 软件安装及卸载

通常会执行rpm -ivh 安装包名称来进行安装

 [root@foundation151 ~]#  rpm  -ivh  package_name
选项与参数:
-i  :install(安装)的意思
-v  :查看更细致的安装信息画面
-h  :以安装信息列显示安装进度

当ivh 无法完成安装时,可通过添加参数“–nodeops”,“–force”来进行安装

  • --nodepes
    何时使用:当发生软件属性相依问题而无法安装,但你执意安装时
    危险性:软件会有相依性的原因是因为彼此会使用到对方的机制或功能,如果强制安装而不考虑软件的属性相依,则可能会造成该软件的无法正常使用
  • --force
    忽略软件的依赖性和附加要求,对软件进行强制性的安装

示例:

 [root@foundation151 software]# rpm -ivh google-chrome-stable_current_x86_64.rpm
error: Failed dependencies:      ##错误:没有依赖性

具体执行:
这里写图片描述

忽略依赖性进行安装:
执行:

 [root@foundation151 software]# rpm -ivh google-chrome-stable_current_x86_64.rpm --nodeps

具体执行:
这里写图片描述

注:Redirecting to /bin/systemctl start atd.service:重定向到/bin/systemctl启动服务。

通常会执行rpm -e 加软件名来进行软件的卸载

 [root@foundation151 ~]#   rpm  -e  software 

- 通过rpm进行软件信息查询

 rpm     参数       软件/安装包
         -ql         软件名称         #列出该软件所有的文件与目录所在完整文件名 (list)
         -qc         软件名称         #列出该软件的所有配置文件(找出在/etc/下面的文件名而已)
         -qd         软件名称         #列出该软件的所有说明文档(找出与man有关的文件而已)
         -qlp       软件包名称        #如过安装了安装的位置是哪些
         -qa                        #所有已安装的软件
   -qa | grep name  软件相关名称       #查询软件是否安装(模糊搜索)
         -q          软件名称         #查看软件是否安装(必须加精确的名字)
         -qp        软件包名称        #查看软件包安装后软件在系统中的名字
         -qf        filename        #查看某一个文件属于哪个安装包
         -qi         软件名称         #查看软件详细信息
         -qip        软件包名称       #查看软件包信息
         -Kv         软件包名称       #查看软件是否被篡改  看是否OK,对称加密,若不是则被篡改
         -qp  安装包   --scripts     #查看软件安装过程中或卸载过程中执行的动作(很重要!!!!)

示例一:rpm -qc 软件名

 [root@foundation151 software]# rpm -qc httpd

具体如下:
这里写图片描述

示例二:rpm -q 软件名

 [root@foundation151 Downloads]#rpm -q wps-office-10.1.0.5672-1.a21.x86_64

具体如下:
这里写图片描述
如上所示 wps-office-10.1.0.5672-1.a21.x86_64 未安装

示例三:rpm -ql 软件名

 [root@foundation151 Downloads]# rpm -ql wps-office 

具体如下:可以看出该软件到底提供了多少的文件与目录,也可以追踪软件的数据。
这里写图片描述

示例四:rpm -qi 软件名

 [root@foundation151 Downloads]# rpm -qi wps-office
Name        : wps-office                               #软件名称
Version     : 10.1.0.5672                              #软件版本
Release     : 1.a21                                    #释出版本
Architecture: x86_64                                   #编译时所针对的硬件等级
Install Date: Wed 02 May 2018 10:24:09 PM CST          #这个软件安装到本系统的时间 
Group       : Applications/Editors                     #软件是放再哪一个软件群组中
Size        : 361400998                                #软件的大小
License     : Proprietary                              #释出的授权方式
Signature   : (none)                                 
Source RPM  : wps-office-10.1.0.5672-1.a21.src.rpm     #这就是源RPM的文件名
Build Date  : Fri 24 Jun 2016 07:40:13 AM CST          #软件编译打包的时间
Build Host  : dbx64                                    #在哪一部主机上面编译的 
Relocations : (not relocatable)
URL         : http://wps-community.org/
Summary     : WPS Office Suite
Description :                                          #详细的描述
WPS Office including Writer, Presentation
and Spreadsheets, is a powerful office suite, which is able to process
word file, produce wonderful slides, and analyze data as well. It is
deeply compatible with all of the latest Microsoft Office file formats.
It can easily open and read the documents created with Microsoft Office.
This is the Linux version, and it's now an BETA package.
Welcome to our website: http://wps-community.org

- 搭建第三方软件仓库

为了方便解决软件安装的依赖性,可以通过搭建第三方软件仓库的方式进行操作

1.将所有的rpm软件包放到一个目录中,此目录只能存在rpm文件
2.createrepo -v /rpm的存放目录 会生成/rpm存放目录/repodata #此目录中是被扫描的软件信息数据

编辑/etc/yum.repos.d/xxx文件进行第三方软件在yum源中的添加
vim /etc/yum.repos.d/xxx
[Software]
nam=software
baseurl=file:///rpm软件包存放的目录
gpgcheck=0

保存后执行:

yum clean all

就可在yum源中对第三次方软件进行操作

示例:

1.将第三方软件统一放置在/mnt/software下:

这里写图片描述

2.扫描软件数据
 [root@foundation151 software]# createrepo -v /mnt/software/

这里写图片描述

3.编辑/etc/yum.repo.d/yum.repo
 [root@foundation151 software]# vim /etc/yum.repos.d/yum.repo

编辑如下:
这里写图片描述

在上述试验基础上,安装httpd并且使其可以开机自动启动,后再关闭防火墙进行共享,将/rpm软件包存放目录复制到 /var/www/html/目录中

就可以实现第三方软件的共享yum源操作

- 屏蔽yum仓库中的某类或某些软件

编辑/etc/yum.conf,添加软件或系统版本,在列出时

不存在注:在第11行进行添加,除此外不要进行其他操作
这里写图片描述

结果如下:将不会列出上面约束的软件或系统版本
 [root@foundation151 software]# vim /etc/yum.conf
Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-
              : manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Installed Packages
GConf2.x86_64                          3.2.6-8.el7                 @anaconda/7.3
GeoIP.x86_64                           1.5.0-11.el7                @anaconda/7.3
ModemManager-glib.x86_64               1.6.0-2.el7                 @anaconda/7.3
NetworkManager.x86_64                  1:1.4.0-12.el7              @anaconda/7.3
NetworkManager-config-server.x86_64    1:1.4.0-12.el7              @anaconda/7.3
NetworkManager-glib.x86_64             1:1.4.0-12.el7              @anaconda/7.3
NetworkManager-libnm.x86_64            1:1.4.0-12.el7              @anaconda/7.3
NetworkManager-libreswan.x86_64        1.2.4-1.el7                 @anaconda/7.3
NetworkManager-libreswan-gnome.x86_64  1.2.4-1.el7                 @anaconda/7.3
~ ~ ~
此处略去
~ ~ ~
celt051.x86_64                         0.5.1.3-8.el7               @anaconda/7.3
cgdcbxd.x86_64                         1.0.2-7.el7                 @anaconda/7.3
check.x86_64                           0.9.9-5.el7                 @anaconda/7.3

猜你喜欢

转载自blog.csdn.net/buster_zr/article/details/80171733