admin管理员组

文章数量:1656152

软件仓库

    • 了解软件包
          • 软件包的类型
          • 软件包的名称结构
    • rpm命令管理软件包
    • 本地软件仓库的搭建
    • dnf管理软件(使用dnf命令下载软件)
    • 下载安装包
    • 搭建共享软件仓库
    • 搭建epel源软件仓库为了下载第三方软件如qq

了解软件包

软件包的类型
1.DEB			UBlinux DEBlinux,主要用在ubuntu下
2.RPM			redhat centOS fadora
3.bz2|gz|xz		
				tar解档后分两类:1需要源码安装需要编译,
								 如ntfs-3g_ntfsprogs-2017.3.23.tgz就需要编译 
								 编译步骤:
								 "./configure"		检测当前系统是否适合软件运行,比如需要gcc
								 "make"				源码安装包里有MAKE文件
								 "make install"		想卸载的话make uninstall
								2绿色软件,直接可用,如Firefox-latest-x86_64.tar.bz2 绿色
		
"注意在rhel8中只能使用绿色软件,源码编译软件和rpm软件"
软件包的名称结构
[dhcp-server]-[4.3.6-30].[el8].[x86_64].[rpm]
	1			  2		   3 	   4 	  5
1.软件名称
2.软件版本
3.软件的授权协议版本,enterprise lable8即企业级别8版本
4.软件架构,几位系统
5.软件类型后缀

rpm命令管理软件包

rpm -ivh   ##安装参数组合 -i install -v verbose -h hash
-a   ##所有软件,-qa可以查看
-f   ##文件
-q   ##查询,其他参数基本上都要加上q参数使用

-p   ##软件包
-l   ##软件安装文件列表

-e   ##卸载

-c   ##配置文件
-d   ##说明文件

--info   ##软件信息,不可以直接用,要搭配其他参数使用,比如-qp

--force   ##强制,不可以直接用,要搭配其他参数使用,不会忽略依赖性

--nodeps   ##忽略依赖性,当两个软件相互依赖时,即A需要B,B需要A时,可以使用这个参数


--scripts   ##查询软件在安装或卸载过程中的运行脚本,防止流氓软件

-Kv   ##检测软件md5校验码,防止软件被修改,要是被修改过尽量不要安装
-V   ##检测已安装软件在系统中的文件被修改信息

拆解软件包,想要里面的东西使用命令:rpm2cpio 软件包 | cpio -id
##用cpio接收数据,并且用cpio输出后input到一个目录里,i表示input,d表示输出成目录

本地软件仓库的搭建

第一步:挂载镜像文件(可以去官方下载镜像文件)
使用命令mount /isos/rhel-8.2-x86_64-dvd.iso /lucky/将isos下的镜像挂载到lucky目录上

若是使用虚拟机,则打开虚拟机设置,使用映像文件:
rh真机下直接查看目录内容,已经挂载好了
若是虚拟机进入/run/media/root/目录下查看会看到已经自动挂载

然后进入/etc/yum.repos.d/目录下创建lucky.repo(前面的可以随便起,但后缀必须是repo)文件并编辑保存

文件内容:

[AppStream] 						仓库名称
name=local AppStream 				描述
baseurl=file:///lucky/AppStream 	地址
gpgcheck=0 							不检测gpgkey (跳过授权检测),若是1则不跳过需要写下面一行
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-REDHAT-release	根据上一行决定写不写	
enabled=1							1生效0不生效,这个也可以不写

[BaseOS]
name=local BaseOS
baseurl=file:///lucky/BaseOS
gpgcheck=0

搭建成功,使用dnf repolist查看

dnf管理软件(使用dnf命令下载软件)

dnf repolist   ##列出仓库信息
clean all   ##清除系统中已经加载的仓库缓存信息,缓存信息在/var/cache/dnf下

list all   ##列出所有软件
list available   ##列出未安装软件
list installed   ##列出已安装软件

install   ##安装,加-y参数的话安装不提示,默认输入yes
reinstall   ##重新安装,加-y参数的话安装不提示,默认输入yes

remove   ##卸载,加-y参数的话安装不提示,默认输入yes

search   ##搜索库里你想安装的软件的软件包都有哪些

whatprovides   ##搜索包含文件的软件包,当不小心误删了某个文件的时候可以用这个查是哪个软件的然后重新安装就可以了

history   ##dnf执行历史
history info id  ##dnf执行历史详细信息

group list   ##列出软件组
group list --installed   ##列出已安装软件组
group list --available   ##列出未安装软件组

group list --hidden   ##列出隐藏软件组
group install “组名”   ##安装软件组
group info “组名”  ##查看软件组信息

下载安装包

如果我们想用软件包安装,需要安装一个工具yumdownloader用来下载软件包:

yumdownloader httpd   ##下载仓库中指定软件的安装包到当前目录
yumdownloader --destdir=/mnt   ##下载仓库中指定软件的安装包到指定/mnt目录
yumdownloader httpd --destdir=/mnt --resolve   ##下载仓库中指定软件安装包和软件依赖性到/mnt目录

搭建共享软件仓库

第一步:安装web服务器apache,dnf install httpd.x86_64

第二步:开启apache服务,关闭火墙
systemctl enable --now httpd
systemctl disable --now firewalld

在浏览器中输入自己的ip地址访问成功!

第三步:在qpache目录/var/www/html/下创建一个目录,将镜像挂载在新建的目录上
mkdir /var/www/html/lucky

挂载命令mount /isos/rhel-8.2-x86_64-dvd.iso /var/www/html/lucky/
第四步:编辑开机自动运行脚本,开机自动挂载
vim /etc/rc.d/rc.local

在文件中加入挂载命令mount /isos/rhel-8.2-x86_64-dvd.iso /var/www/html/lucky/保存退出

给开机自动运行脚本可执行权限chmod +x /etc/rc.d/rc.local
第五步:更改本地 vim /etc/yum.repos.d/lucky.repo文件的路径(在搭建本地软件仓库时创建的那个)

第六步:测试是否成功
执行dnf list all 能列出所有的软件源就是成功!并且可以在浏览器访问!

第七步:在想要使用该软件仓库的主机编辑vim /etc/yum.repos.d/lucky1.repo文件,路径写成软件仓库所在的url其他和上面一样,退出保存

这样该主机就可以使用这个软件仓库下载东西了!

搭建epel源软件仓库为了下载第三方软件如qq

注意:搭建该软件仓库需要主机能上网!!!
源地址:https://dl.fedoraproject/pub/epel/epel-release-latest-8.noarch.rpm
下载官方提供的源rpm -ivh https://dl.fedoraproject/pub/epel/epel-release-latest-8.noarch.rpm

配置文件在/etc/yum.repos.d下:

安装成功后该源就可以使用了!直接使用dnf命令去下载想下载的软件!

本文标签: 仓库软件软件包共享软件下载软件