赞
踩
Lesson12 Linux系统中第三方软件的安装
在只有本地yum源的情况下,某些第三方软件在安装时会出现死循环,即在用yum安装某个软件时会报其他rpm包依赖性问题的错误,当安装这个rpm包时又会报上一个软件的依赖性的错误,进入一个死循环。此时就要用rpm强行安装一个,再用yum命令寻找依赖性的那个软件再安装,yum与rpm一起使用
yum命令进行安装可以解决大多数问题,但是不能解决死循环问题
用rpm命令安装软件可以解决死循环的问题
依赖性关系就是安装一个软件时会提醒你需要安装另外一个软件
注:系统是什么版本就用什么安装包
这里以wps-office办公软件, google chrome浏览器, Smplayer视频播放器和kolourpaint画图软件为例
由于yum源的软件仓库里没有第三方的软件安装包,所以只能在官方浏览器下载第三方的软件安装包,然后再用yum命令安装,但是利用下载下来的第三方软件安装包安装软件时要处理依赖性关系。
实验步骤:
安装wps-office
将软件包通过下载或拷贝的方式下载到真机的/software目录里,通过ls 可以看到这里有六个软件包
在真机里切换路径到/mnt/,然后通过yum install 命令来安装wps-office
可以看到,在系统里已经安装好wps软件
安装谷歌浏览器
可以看到,安装成功
输入google-chrome,发现此时谷歌浏览器无法使用
由于下载后的浏览器中无法找到libudev.so.1,所以需要将它改名为libudev.so.0
需要用普通用户才能打开谷歌浏览器,此时切换到student用户,可以使用google浏览器
安装Smplayer视频播放器
输入yum install 软件rpm 包
发现会报错,这是因为在安装谷歌浏览器的时候i,会自动生成一个谷歌的网络源,会干扰本地yum源,导致视频播放器无法安装,删掉这个网络源,重新安装
可以看到安装成功
安装kolourpaint画图软件
使用yum解决可以解决的依赖性问题,安装kolourpaint的依赖性软件
忽略依赖性问题,安装kolourpaint的依赖性软件
再安装kolourpaint的软件,可以看到可以成功安装
yum只读取xml文件
第三方软件仓库中依赖性的数据库:repodata
createrepo -v
:采集所有rpm文件的元数据,并把这些数据存放到文件里。 -v表示指定文件目录。 扫描文件
利用createrepo来搭建第三方软件仓库,这样第三方的软件安装包也会有repodata,就可以自动识别依赖性直接安装了。 yum不能安装第三方软件,因为不能识别依赖性 因此应该使用createrepo来给第三方软件添加依赖性的数据库 这样安装时候就会自动识别依赖性 ,直接安装
将所有的rpm包放到一个目录/mnt中,然后输入命令:
createrepo -v 存放软件包的目录
##命令执行成功会生repodata目录
可以看到,/mnt已经有repodata这个目录了,此后可以不需要处理依赖性问题,直接利用yum命令安装第三方软件
将/mnt/*移动到/software/下
yum源仓库文件里写入第三方软件的安装信息
查看/software/repodata中的依赖性关系
查看repo文件由4751增加到4757个,证明第三方软件仓库创建成功
然后再用yum install来安装画图软件
可以看到,kolourpaint软件可以不需要处理依赖性问题,一次性成功安装
rpm -i
#安装软件
rpm -v
#显示软件安装过程
rpm -h
# hash加密
rpm -e
# 卸载软件
rpm -q
# 查看指定软件是否安装
rpm -a
# a表示所有
rpm -p
#查看软件包
rpm -ql
# 查看软件在系统中的安装文件路径以及文件
rpm -qlp
#查看未安装的软件包在系统中如果安装后会产生什么文件
rpm -qf
#根据某个文件找出此文件属于哪个安装包
rpm -qc
#查看软件的配置文件名称
rpm -qd
# 查看软件的帮助文件
rpm --scripts
# 查看脚本
rpm -q --scripts
# 查看软件安装前后的脚本
安装前:
安装后:
rpm --nodeps
#安装软件时忽略软件依赖
rpm --force
#强行安装软件(只要不存在依赖性)
rpm -Kv
#检测软件是否被篡改,可以对比SHA1 和MD5等信息,如果信息被篡改,则一定不要用这个软件包安装软件
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。