断剑重铸之日 骑士归来之时
软件安装
1.软件名称识别(下面在安装的是lftp,所以这里用lftp做示例)
[lftp]-[4.4.8-7].[el7].[x86_64].rpm ##rpm结尾的适用与redhat操作系统
|| || || ||
软件名称 软件版本 软件适用系统64位
1.yum命令进行的软件安装
1.软件名称识别
yum是上层软件管理工具,最重要的功能是可以解决软件的倚赖关系
yum能够投入使用的前提是必须要有yum源,以及配置源的指向文件
yum install softwarename ##安装(使用yum安装时可以智能的解决软件安装的依赖性问题故不用再对依赖性进行单独解决)
安装rpm包出现依赖性时 可以自己手动 yum install xxx -y解决依赖性
repolist ##列出设定yum源信息
remove softwarename ##卸载
list softwarename ##查看软件源中是否有次软件
list all ##列出所有软件名称
list installd ##列出已经安装的软件名称
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 list 中可以用 vim /etc/yum.conf 禁止(什么开头或者什么类型等等)软件安装
下图中就禁止的是*.i686 和 zsh_x86_64进行软件安装
2.如何安装软件
1.rpm
rpm -ivh name.rpm ##安装 ,-v显示过程,-h指定加密方式为hash
-e name ##卸载
-ql name ##查询软件生成文件
-qlp name.rpm ##查询软件安装后会生成什么文件
-qa ##查询系统中安装的所有软件名称
-qa |grep name ##查询软件是否安装
-q name ##。。。。
-qp name.rpm ##查询软件安装包安装后的名字
-qf filename ##查看filename属于那个安装包
-ivh name.rpm --force ##强制安装,但不能忽略依赖性
-ivh name.rpm --nodeps --force ##忽略依赖性并且强制安装
-qi name ##查看软件信息
-Kv name.rpm ##检测软件包是否被篡改
-qp name.rpm --scripts ##检测软件在安装或卸载过程中执行的动作(可以看出安装A的时候会删除跟下的所有东西 故A是流氓软件 不可安装)
3.server源端
1.从网络上下本机系统版本匹配的iso镜像文件
rhel-server-7.2-x86_64-dvd.iso
2.首先建立/iso的目录 再把镜像文件移动进去 然后建立/rhel7.2 再把rhel-server-7.2-x86_64-dvd.iso挂在到/rhel7.2以便访问镜像中的文件 mount /iso/rhel-server-7.2-x86_64-dvd.iso /rhel7.2 挂载镜像文件
用df可以查询是否挂载成功及其挂载的位置所在 ls /rhel7.2/可以查看挂载目录下的软件
3.配置本机yum源指向
rm -fr /etc/yum.repos.d/*(配置yum指向源的时候必须保证/etc/yum/repos.d/下面只有一个有效的XXX.reepo)
vim /etc/yum.repos.d/yum.repo
[Server]
name=rhel7.2
baseurl=file:///rhel7.2
gpgcheck=0
配置完yum指向源就可以在本机中使用指向源所指向的镜像文件
4.安装资源共享服务(安装资源共享服务就可以在例如虚拟机中使用真机中所挂载的镜像文件)
yum install httpd -y(安装网络共享服务 前提保证真机的yum源挂载没有问题才可以进行安装)
systemctl stop firewalld (应该保证防火墙处于关闭状态才可以进行共享服务的实验)
systemctl disable firewalld(防火墙开机关闭)
systemctl start httpd(开启网络共享服务)
systemctl enable httpd(开机自启动)
5.建立共享目录,并挂在镜像文件到共享目录上
mkdir /var/www/html/rhel7.2(这是网络共享服务镜像挂载的默认路径)
umount /iso
mount rhel-server-7.1-x86_64-dvd.iso /var/www/html/rhel7.2
在这里就要更改一下真机的yum源指向了(这里非常注意因为网络共享的默认路径为/var/www/html/所以真机指向源中指向的时候不用加上这个否则真机用yum下载东西的时候指向源是错误的)
真机这里的yum源指向也可以使用本地的file(file本地获取镜像的话更快)但是使用file这里加上绝对路径了变成了file:///var/www/html/rhel7.2 虚拟机没有本地镜像所以虚拟机还是必须用网络共享的http
6.测试
在浏览器中输入:http://本机ip/rhel7.2
可以看到镜像中的内容
可以在浏览器中测试一下这个路径的正确与否 如下图所示指向源正确
7.修改虚拟机yum源指向
8.测试虚拟机下载软件 看共享是否成功 成功下载说明成功
9.这里也可以设置开机自动挂载 否则重启后每一次都要重新挂载
vim /etc/rc.d/rc.local
mount rhel-server-7.1-x86_64-dvd.iso /var/www/html/rhel7.2
:wq
chmod +x /etc/rc.d/rc.local
9.第三方软件仓库的搭建
把所有的rpm软件包放到一个目录中,这个目录中只能存在rpm文件
createrepo -v /rpm存放目录 这里建立的是一个/software 注意的是链接其他地方下载第三方软件时应该将路径切换到/software下才能保证下载的rpm包存放在这个仓库内 这样yum源指向才有意义
vim /etc/yum.repos.d/xxx.repo
[Software]
name=software
baseurl=file:///rpm存放目录
gpgcheck=0
lftp链接250的这个下载地址 下载软件的安装包 效果如下图所示
client指向端
vim /etc/yum.repos.d/xxxx.repo ##仓库指向文件位置
[xxxx] ##自定义软件仓库名称
name=xxxx ##自定义软件仓库描述
baseurl=ftp://|http://|file:// ##仓库位置
gpgcheck=0 ##不检测gpgkey
##gpgkey表示软件的出品logo
例子:
vim /etc/yum.repos.d/yum.repo
[Server]
name=rhel7.1
baseurl=ftp://172.25.0.254/pub/rhel7.2
gpgcheck=0
:wq
阅剑知其主