linux中的软件管理
这一篇我们主要叙述linux系统中的软件管理,包括
1.认证软件以及第三方软件的安装方式方法
2.软件管理命令yum,rpm的基本参数 用法及不同
3.网络共享仓库的搭建等
(一)软件安装
第一部分主要讲解不同路径的软件下载方式方法,其过程中会用到yum和rpm命令
我们会在第二部分通过实验对其基本参数作出详细讲解
一.从红帽官方镜像上下载软件
1.从官方下载与自己主机系统相同的镜像,并在"/"下新建目录来存放,防止自己不小心误删
[[email protected] ~]# cd /iso
[[email protected] iso]# ls
rhel-server-7.2-x86_64-dvd.iso ##红帽7.2版本的官方镜像
2.建立一个文档 将镜像内容挂载到新建立的文档上
[[email protected] iso]# mkdir /rh7.2 ##新建一个根下的目录 用来挂载镜像
[[email protected] iso]# mount /iso/rhel-server-7.2-x86_64-dvd.iso /rh7.2 ##将镜像挂载到新建目录
mount: /dev/loop0 is write-protected, mounting read-only ##提示挂载成功
[[email protected] iso]# cd /rh7.2
[[email protected] rh7.2]# ls ##挂载成功后可以挂载目录下 查看到镜像中的内容
addons images Packages RPM-GPG-KEY-redhat-release
EFI isolinux release-notes TRANS.TBL
EULA LiveOS repodata
GPL media.repo RPM-GPG-KEY-redhat-beta
3.查看yum配置文件里的内容 将错误的路径删除
[[email protected] rh7.2]# cd /etc/yum.repos.d/ ##地址转换为yum配置文件目录中
[[email protected] yum.repos.d]# ls ##查看配置文件
[[email protected] yum.repos.d]# ls ##我的主机中并没有多余的错误配置 跳过此步
4.将路径修改为镜像的挂载文档上
[[email protected] yum.repos.d]# vim yum.repo ##编辑一个新的配置文件 名字任意 后缀必须为.repo
[[email protected] yum.repos.d]# cat yum.repo
[rh7.2] ##相关描述
name=rh7.2 ##名字
baseurl=file:///rh7.2 ##yum寻找安装软件的指向
gpgcheck=0 ##不启用gpg检测
5.清理yum缓存 让yum新的配置生效
6.安装软件
二.安装第三方软件
1.从网上下载需要的第三方软件安装包,并在根下建立一个新的目录 方便管理
2.用rpm尝试安装
## 存在大量依赖性 无法安装
3.用yum安装
##自动解决依赖性 安装成功
(二)网络共享仓库的搭建
一.建立网络共享仓库
目的为将本机资源共享出去 是在同一网段的主机都可以使用本机的资源安装软件
在实验中我们用真机和虚拟机 模拟同一网段的不同主机
1.在真机中安装httpd共享服务
2.关闭防火墙
3.开启共享服务
[[email protected] software]# systemctl start httpd ##开启服务
[[email protected] software]# systemctl enable httpd.service ##开机自启动服务
ln -s '/usr/lib/systemd/system/httpd.service' '/etc/systemd/system/multi-user.target.wants/httpd.service'
4.在 /var/www/html/建立目录
5.将镜像挂载到新建目录上
6.重启httpd服务
7.编辑本地配置文件(开机自动挂载)
[[email protected] html]# vim /etc/rc.d/rc.local
8.给配置文件加执行权限
9.清空缓存
###效果
(1)虚拟机的yum指向修改
[rh7.2]
name=rh7.2
baseurl=http://172.25.99.250/rh7.2 ##yum下载路径指向为真机/var/www/html/rh7.2
gpgcheck=0
(2)清空yum缓存
(3)下载软件
##先卸载火狐浏览器
##重新安装火狐浏览器 成功
二.将第三方软件添加到共享仓库里
目的:让同网段的不同主机 可在服务器的共享仓库中下载第三方软件
1.把存放第三方软件的文件放到/var/www/html
[[email protected] html]# mkdir software
[[email protected] html]# ls
ks.cfg rh7.2 software
[[email protected] html]# cp -rp /software/* ./software/
2.扫描目录中的软件
###生成repodata文件
##效果(客户端的配置及下载)
(1)编辑客户段的配置文件
(2)清空缓存(客户端yum)
(3)列出yum源文件
(4)安装软件
(三)软件管理命令yum,rpm的基本参数 用法及不同
一.rpm ###底层软件管理工具
rpm
-i ###install
-v ###显示信息
-h ###指定包的解密方式为hash
-q ###查询
-p ###指定软件包本身
-l ###列出软件中文件的名字
--scripts ###查看软件安装和卸载过程中所执行的动作
-f ###查询某个文件属于那个安装包
-a ###所有
-e ###卸载
--force ###强制
--nodeps ###忽略依赖性
1.-ivh ##安装
注意:无法完成安装 rpm是底层安装命令 无法自动解决依赖性
2.-e ##删除软件
注意:不会删除之前安装软件时下载的依赖性 若想删除依赖性 需要手动删除
3.-- force ##强制安装(如已存在,不覆盖,只更新)
4.--nodeps ##忽略依赖性
注意:忽略依赖性的安装 会使安装后的软件在运行时出现问题 或根本无法运行
5.-Kv ##查看安装包是否被更改
[[email protected] software]# rpm -Kv wps-office-10.1.0.5672-1.a21.x86_64.rpm
wps-office-10.1.0.5672-1.a21.x86_64.rpm:
Header SHA1 digest: OK (6f484bc49b51424956678ac1b55ae74a86af2a28)
MD5 digest: OK (5bb5b15d9d6006305856c903999398a6)
[[email protected] software]# echo hello >> wps-office-10.1.0.5672-1.a21.x86_64.rpm ##将hello导入到wps安装包中
[[email protected] software]# rpm -Kv wps-office-10.1.0.5672-1.a21.x86_64.rpm
wps-office-10.1.0.5672-1.a21.x86_64.rpm:
Header SHA1 digest: OK (6f484bc49b51424956678ac1b55ae74a86af2a28)
MD5 digest: BAD Expected(5bb5b15d9d6006305856c903999398a6) != (cd666bf78a1c370117f1211835868dcf) ##安装包被更改的报错
二.yum ##顶层软件管理工具
yum install softwarename ##安装
repolist ##列出设定yum源信息
remove softwarename ##卸载
list softwarename ##查看软件源中是否有次软件
list all ##列出所有软件名称
list installed ##列出已经安装的软件名称
list available ##列出可以用yum安装的软件名称
clean all ##清空yum缓存
search softwareinfo ##根据软件信息搜索软件名字
whatprovides filename ##在yum源中查找包含filename文件的软件包
update ##更新软件
history ##查看系统软件改变历史
reinstall softwarename ##重新安装
info softwarename ##查看软件信息
groups list ##查看软件组信息
groups info softwaregroup ##查看软件组内包含的软件
groups install softwaregroup ##安装组件
groups remove softwaregroup ##卸载组件
*.yum黑名单
ps:
###第三方软件安装包地址
rpmsearch
sourceforget (源码包)