您的位置:首页 > 运维架构 > Linux

linux 系统中的软件管理- rpm、dnf命令 软件仓库的搭建

2020-06-05 09:00 381 查看

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                  2         3          4         5
 1.软件名称

2.软件版本

3.软件的授权协议版本

4.软件架构

5.软件类型后缀

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_linux: 172.25.254.10

westos_lue: 172.25.254.20

在westos_lue中已经搭建好软件仓库, 在westos_linux中是无法访问的

在企业中,我们维护的系统数量庞大,当我们需要在每个系统安装软件管理软件时

可以在每个系统中各自搭建软件仓库 但是这样管理软件会浪费大量的资源

如何节省这部分重复的资源 需要把大家都要使用的资源共享到互联网中

这样大家就可以利用网络访问资源,不需要在每一台 主机中独立建立软件资源了。

搭建方法

  •  1.利用景象搭建本地软件仓库 

  • 2.安装共享软件

共享方式http:// 超文本传输协议

提供此协议的软件  Apache

软件包名称             httpd

共享位置                 /var/www/html

安装命令                在westos_node1: dnf install httpd -y

  • 3.启用共享软件Apache

 systemctl stop firewalld  

systemctl disable firewalld

 systemctl enable --now httpd 

  • 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_linux中访问资源并书写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

6.第三方软件仓库的搭建方法

可以使用dnf命令管理第三方软件

并使第三方软件在网络中共享

步骤

  •  1.建立共享目录

mkdir /var/www/html/software

  • 2.把所有的第三方软件存放到/var/www/html/software中

 /var/www/html/software中只能存在rpm类型的文件,压缩包是不能使用dnf 管理的

  • 3.采集第三方软件数据生成repodate目录

dnf install createrepo -y                   安装采集工具    

cd /var/www/html/software              进入到共享目录

createrepo -v /var/www/html/software/   对共享目录中进行扫描生成repodate数据目录

  • 4.在测试主机中指定第三方共享源

 vim /etc/yum.repos.d/westos.repo

 [software]

 name=software

 baseurl=http://172.25.254.20/software

gpgcheck=0

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐