1.Linux中软件包的类型
1.DEB #UBlinux DEBlinux
2.RPM #redhat centOS fc
3.bz2|gz|xz #1.需要源码安装需要编译
#2.绿色软件,直接可用
#ntfs-3g_ntfsprogs-2017.3.23.tgz 需要编译
"configure"
#Firefox-latest-x86_64.tar.bz2 绿色
"注意在rhel8中只能使用绿色软件,源码编译软件和rpm软件"
2.软件包的名称结构
[dhcp-server]-[4.3.6-30].[el8].[x86_64].[rpm]
1.[dhcp-server]软件名称
2.[4.3.6-30]软件版本
3.[el8]软件的授权协议版本
4.[x86_64]软件架构
5.[rpm]软件类型后缀
3.rpm命令管理软件包
rpm -ivh #安装参数组合 -i install -v verbose -h hash
-a #所有
-f #文件
-p #软件包
-q #查询
-l #软件安装文件列表
-e #卸载
-c #配置文件
-d #说明
--info #软件信息
--force #强制
--nodeps #忽略依赖性
--script #查询软件在安装或卸载过程中的运行脚本
-Kv #检测软件md5校验码
-V #检测已安装软件在系统中的文件被修改信息
4.本地软件仓库的搭建
系统软件仓库的作用
- 在系统中对软件进行管理
- rpm命令是不能解决依赖关系的
- 如果需要软件在安装过程中自动解决依赖关系,需要搭建系统软件仓库
搭建方法
1.在系统中加载安装系统时使用的安装镜像
2.编写软件仓库文件
/etc/yum.repos.d/ #软件源指向文件配置目录,在此目录中不能有无法访问的源指向
vim /etc/yum.repos.d/xxxx.repo #软件仓库指向文件
[AppStream] #仓库名称
name=westos AppStream #描述
baseurl=file:///run/media/root/RHEL-8-0-0-BaseOS-x86_64/AppStream #地址
gpgcheck=0 #不检测gpgkey (跳过授权检测)
[BaseOS]
name=westos BaseOS
baseurl=file:///run/media/root/RHEL-8-0-0-BaseOS-x86_64/BaseOS/
gpgcheck=0
5.dnf 软件管理命令
dnf repolist #列出仓库信息
clean all #清除系统中已经加载的仓库缓存信息
list all #列出所有软件
list available #列出未安装软件
list installed #列出已安装软件
install #安装
remove #卸载
reinstall #重新安装
search #搜索
whatprovides #搜索包含文件的软件包
history #dnf执行历史
history info #dnf执行历史详细信息
group list #列出软件组
group list --installed #列出已安装软件组
group list --available #列出未安装软件组
group list --hidden #列出隐藏软件案组
group install #安装软件组
group info #查看软件组信息
如图所示,以上部分命令示例:
6.网络软件仓库的搭建
实验环境:
westos: 172.25.254.10
node: 172.25.254.20
在westos_node1中已经搭建好软件仓库,在westos_linux中是无法访问的。在企业中,我们维护的系统数量庞大,当我们需要在每个系统安装软件管理软件时可以在每个系统中各自搭建软件仓库,但是这样管理软件会浪费大量的资源,如何节省这部分重复的资源,需要把大家都要使用的资源共享到互联网中,这样大家就可以利用网络访问资源,不需要在每一台主机中独立建立软件资源了。
搭建方法
- 利用镜像搭建本地软件仓库
- 安装共享软件
共享方式http:// 超文本传输协议
提供此协议的软件 Apache
软件包名称 httpd
共享位置 /var/www/html
安装命令 在node:
dnf install httpd -y
显示已安装完成
3. 启用共享软件Apache
systemctl stop firewalld
systemctl disable firewalld
systemctl enable --now httpd
可以在网络上访问172.25.254.20
4. 建立共享目录
mkdir /var/www/html/westos_8
5. 挂载镜像到共享目录
mount /xxxxxxx.iso /var/www/html/westos_8 #当镜像在系统中存在
mount /dev/cdrom /var/www/html/westos_8 #当使用光驱读取镜像
vim /etc/rc.d/rc.local #在开机时自动挂载
mount /dev/cdrom /var/www/html/westos_8
chmod 755 /etc/rc.d/rc.local
6. 在远程主机westos中访问资源并书写repo文件
vim /etc/yum.repos.d/westos.repo
[AppStream]
name=AppStream
baseurl=http://172.25.254.20/westos_8/AppStream/
gpgcheck=0
[BaseOS]
name=BaseOS
baseurl=http://172.25.254.20/westos_8/BaseOS/
gpgcheck=0
7.第三方软件仓库的搭建方法
可以使用dnf命令管理第三方软件并使第三方软件在网络中共享
步骤
- 建立共享目录
mkdir /var/www/html/software
2. 把所有的第三方软件存放到/var/www/html/software中, /var/www/html/software中只能存在rpm类型的文件,压缩包是不能使用dnf管理的
在主机westos中访问172.25.254.20/software
3. 采集第三方软件数据生成repodate目录
dnf install createrepo -y #安装采集工具
cd /var/www/html/software #进入到共享目录
createrepo . #对共享目录中进行扫描生成repodate数据目录
4. 4.在测试主机中指定第三方共享源
vim /etc/yum.repos.d/westos.repo
[software]
name=software
baseurl=http://172.25.254.20/software
gpgcheck=0
附上没见过世面的我装好的QQ
讲真这个QQ界面好复古,哈哈!