Linux软件包安装和卸载
安装软件包的三种方法
rpm工具
rmp包在卸载与安装时都会有依赖
安装rpm包附带参数:
--force 表示强制安装,即使覆盖属于其他包的文件也要安装。
--nodeps 表示当要安装的RPM包依赖于其他包时,即使其他包没有安装,也要安装这个包
rpm -ivh可跟可不跟版本号
rpm -evh一定不要跟版本号
rpm -qf 查询文件绝对路径 (要加文件版本号)
rpm -ql 包名即可
rpm -qa |grep 包名, 此命令很常用,用来查询某包是否安装,通过管道符号以及grep把某包名筛选出来
note, rpm 的构成:包名;版本号;发布版本号;平台
针对于rpm -qf+文件绝对路径,当你不确定绝对路径时,可以采用命令 rpm -qf ‘which XX’
yum工具
yum可以自动解决依赖关系
yum list 可以列出所有RPM包的资源
yum search “vim” 是针对于所有含有vim的进行搜索,即使说明里面含有vim的也会被筛选出来。对此如何进行更精确的筛选: yum list | grep "vim"
yum insatall -y 除去询问
!yum remove 卸载时要小心,因为会同时删除所有依赖的包
yum update 后面如果不加上包名,会把所有的包全部升级,包括系统,内核,此操作往往是刚刚安装完系统,如果已经运行了一段时间的系统,不建议使用此命令
note. 输入命令那是如果命令后跟的名字是一个单词可以直接输入,如果是两个单词并且中间有空格的,需要用''单引号隔开
yum搭建本地仓库
**如何把包download到本地?
利用一个工具reposync
1. yum install createrepo (createrepo 就是构建repodate的文件)
2. yum insatll -y repo*
有时候安装了系统但是不能用yum,因为系统环境不能联网
搭建本地yum源
设置光驱并挂载: mount /dev/cdrom /mnt/ 或者 mount /dev/sr0 /mnt/
vim fred.repo
注,下图repodata非常重要,它记录着各个包之间的关系(比如依赖文件),如果没有此文件,yum命令讲无法使用
将源下载到本地 (reposync)
reposync是将repo下所有仓库关于.repo只要是enable的文件都会存储到本地
1.搭建本地仓库fred,并下载源至此仓库
2.安装reposync, yum install yum-utils
reposync -p
3.把文件同步到opt文件夹里 reposync -p /opt
4.createrepo -p /opt/
更换yum仓库源
自带的yum仓库(源)无效时,可以想办法更改为国内的源
yum下载rmp包
有些时候base源和163源里面没有,所以需要安装扩展源 epel
yum下载的包一般会默认安装在ls /var/cache/yum/x86_64/7/下面,但具体位置请看安装后的提示
建议用yum reinstall命令而非删除原包在安装
源码包
源码包安装
源码包统一放到一个地方 cd /usr/local/src/
note. 运行echo $? 命令可以看上条命令是否正确(返回非0数字均证明上调命令错误)
下载源码包一定要从官方或者可信任的站点!