[转帖]创建并配置本地 yum 源

创建,配置,本地,yum · 浏览次数 : 0

小编点评

**1. 创建本地 yum 源** - 创建文件夹 `/myYumRepo1.2`。 - 在 `/myYumRepo1.2` 中创建 `jdk-8.jar` 文件。 - 将 `jdk-8.jar` 文件复制到 `/myYumRepo1.2/` 中。 **2. 配置 Apache** - 修改 `/etc/httpd/conf.d/httpd.conf` 文件,添加以下内容: ``` DocumentRoot /myYumRepo/ AllowOverride none Require all granted Allow from all Options Indexes FollowSymLinks ``` - 重启 Apache:`systemctl restart httpd` **3. 测试** - 在浏览器中输入 `localhost/myYumRepo`,应该看到 `jdk-8.jar` 文件。 **4. 总结** - 创建了一个名为 `myYumRepo` 的文件夹。 - 将 `jdk-8.jar` 文件复制到 `myYumRepo` 中。 - 配置了 Apache 以访问 `myYumRepo` 文件。 - 测试访问 `localhost/myYumRepo`,应该成功加载 `jdk-8.jar` 文件。

正文

https://zhuanlan.zhihu.com/p/445726458

 

本文共包含两部分:1 创建本地 yum 源;2 配置本地 yum 源。

1 创建本地 yum 源

1.1 创建文件夹

mkdir /myYumRepo

1.2 将 rpm 包放入该文件夹

此处放入一个 jdk-8u311-linux-x64.rpm 作为示例。

1.3 将文件夹初始化为 yum 源

createrepo /myYumRepo
使用 createrepo 命令需要先安装 createrepo:yum install createrepo。

命令执行成功后,文件夹内会多出一个 repodata 文件夹,这表明 yum 源创建成功。

此时,在 /etc/yum.repo.d/ 下新建一个 myYumRepo.repo 文件(名字可以任意取,但后缀 .repo 不能改),向文件中写入以下内容,即可使用此 yum 源。(例如,安装 jdk:yum install jdk

[myYumRepo]
name=myYumRepo
baseurl=file:///myYumRepo
enabled=1
gpgcheck=0

如果不能安装,请清理缓存:

yum clean all

(以下为可选项)

1.4 生成密钥

gpg --gen-key

该命令的后续步骤较多,请参考其它资料,此处不再赘述。

如果中途卡住,请先将 /dev/random 删掉,然后再为它建立一个软链接,源地址为 /dev/urandom:

mv /dev/random /dev/random.bak
ln -s /dev/urandom /dev/random

1.5 查看和导出公钥

# gpg -k                            # 查看公钥。
pub   1024R/531D86FC 2021-12-15     # 531D86FC 是这对密钥的标识符,公钥、私钥是相同的。
uid   xxxxxx
# gpg -K                            # 查看私钥,此步骤非必须。
sec   1024R/531D86FC 2021-12-15     # 531D86FC 是这对密钥的标识符,公钥、私钥是相同的。
uid   xxxxxx
# gpg -a --export 531D86FC > ~/RPM-GPG-KEY-myYumRepo                     # 导出公钥,不要导出到 yum 源所在的文件夹
# gpg -a --export-secret-keys 531D86FC > ~/RPM-GPG-KEY-myYumRepo-private # 导出私钥,此步骤非必须,且非常不建议这样做。

1.6 安装签名软件 rpm-sign,并对其进行设置

yum install rpm-sign

在用户目录(root 用户的根目录就是 /root,其他用户的根目录位于 /home/ 下的同名目录)下新建一个文件 .rpmmacros

vi ~/.rpmmacros

向其中写入以下内容:

%_signature gpg           # 指定签名软件我 gpg,无需更改
%_gpg_path /root/.gnupg   # 指定密钥的存储目录,无需更改
%_gpg_name 531D86FC       # 指定密钥的标识符,更改为你使用 gpg -k 查询到的标识符
%_gpgbin /usr/bin/gpg     # 指定 gpg 的执行文件

1.7 对 rpm 包进行签名

rpmsign --addsign /myYumRepo/jdk-8u311-linux-x64.rpm

注意,包名为 rpm-sign,命令为 rpmsign。

也可以使用 --resign 选项,与 --addsign 是完全相同的。

删除签名选项:--delsign。

1.8 分发公钥

将公钥“RPM-GPG-KEY-myYumRepo”分发给其它使用此 yum 源的主机。

本主机的公钥放在用户根目录下。

1.9 修改 /etc/yum.repo.d/myYumRepo.repo 文件

修改为:

[myYumRepo]
name=myYumRepo
baseurl=file:///myYumRepo
enabled=1
gpgcheck=1
gpgkey=file:///root/RPM-GPG-KEY-myYumRepo

此时如果安装 jdk,则会要求验证签名。

2 配置本地 yum 源

配置本地 yum 源有三种方法,方法一,使用 file:///,方法二,使用 http://,方法三,使用 ftp://,。

方法一搭建的 yum 源,仅本机可以使用。第一部分中的本地 yum 源就是采用这种方法。

方法二和方法三搭建的 yum 源,局域网中所有的主机均可使用。

由于方法二最简单好用,此处只介绍该方法。

2.1 安装 httpd,并确保其正在运行

(httpd 和 Apache HTTP Server 是同一个东西)

yum install httpd
systemctl restart httpd

2.2 设置 http 访问

有四种方法:更改根目录、指定别名、创建软连接、移动文件到 /var/www/html/

继续以第一部分中创建的 yum 源为例,它位于 /myYumRepo。

2.2.1 方法一(不推荐):更改根目录

删除 /etc/httpd/conf.d/welcome.conf 文件。

mv /etc/httpd/conf.d/welcome.conf /etc/httpd/conf.d/welcome.conf.bak

修改 /etc/httpd/conf/httpd.conf:

  • 将其中的 DocumentRoot "/var/www/html" 修改为 DocumentRoot "/myYumRepo/";
  • 修改标签 <Directory /> </Directory> 中的内容,如下所示:
<Directory />
    AllowOverride none
    Require all granted
    Allow from all
    Options Indexes FollowSymLinks
</Directory>

建议修改前先备份:

cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.bak
/etc/httpd/conf/httpd.conf 是 httpd 的主配置文件。不建议修改该文件。
/etc/httpd/conf.d/*.conf 是额外的配置文件。当你想自定义设置项,可以新建一个 *.conf 文件(名字可以任意取,但后缀必须为 .conf),然会在其中进行设置,不建议直接修改主配置文件 httpd.conf。

重启 httpd:

systemctl restart httpd

此时,在局域网其它主机的浏览器上范围这台主机的 IP 地址,即可看到 /myYumRepo 中的文件。

使用 VirtualBox 的话,host 主机想要访问,需要设置端口转发。

若依照上述步骤操作,如果还是不能访问,可能还需要修改 /myYumRepo 的文件权限。

2.2.2 方法二:指定别名

新建一个 .conf 配置文件(此处取名为 myYumRepo.conf):

vi /etc/httpd/conf.d/myYumRepo.conf

在其中写入如下内容:

Alias /myYumRepo /myYumRepo
<Directory /myYumRepo>
    AllowOverride none
    Require all granted
    Allow from all
     Options Indexes FollowSymLinks
</Directory>

重启 httpd,此时,在局域网其它主机的浏览器上范围这台主机的 IP 地址 + /myYumRepo,即可看到 /myYumRepo 中的文件。

2.2.3 方法三:创建软连接

在 /var/www/html 下创建 /myYumRepo 的软连接:

ln -s /myYumRepo /var/www/html

重启 httpd,此时,在局域网其它主机的浏览器上范围这台主机的 IP 地址 + /myYumRepo,即可看到 /myYumRepo 中的文件。

2.2.4 方法四:移动文件到 /var/www/html/

将 /myYumRepo 文件夹移动到 /var/www/html/ 目录下

mv /myYumRepo /var/www/html

重启 httpd,此时,在局域网其它主机的浏览器上范围这台主机的 IP 地址 + /myYumRepo,即可看到 /myYumRepo 中的文件。

特别说明:如果 yum 源位于移动硬盘或光碟上,可以直接将移动硬盘或光碟挂载到 /var/www/html 下的某一目录下。

2.3 修改 /etc/yum.repo.d/myYumRepo.repo 文件

针对 2.2.1 的方法一,将所有使用本 yum 源的主机的 /etc/yum.repo.d/myYumRepo.repo 文件修改为如下内容:

[myYumRepo]
name=myYumRepo
baseurl=http://xxx.xxx.xxx.xxx/    # xxx.xxx.xxx.xxx 为 /myYumRepo 所在主机的 IP 地址
enabled=1
gpgcheck=1
gpgkey=file:///root/RPM-GPG-KEY-myYumRepo

针对其它方法,将所有使用本 yum 源的主机的 /etc/yum.repo.d/myYumRepo.repo 文件修改为如下内容:

[myYumRepo]
name=myYumRepo 
baseurl=http://xxx.xxx.xxx.xxx/myYumRepo  # 此行是唯一有区别的地方
enabled=1 
gpgcheck=1 
gpgkey=file:///root/RPM-GPG-KEY-myYumRepo

注意:公钥应分发给其它所有主机,并都存储在 root 用户的根目录下。

与[转帖]创建并配置本地 yum 源相似的内容:

[转帖]创建并配置本地 yum 源

https://zhuanlan.zhihu.com/p/445726458 本文共包含两部分:1 创建本地 yum 源;2 配置本地 yum 源。 1 创建本地 yum 源 1.1 创建文件夹 mkdir /myYumRepo 1.2 将 rpm 包放入该文件夹 此处放入一个 jdk-8u311-

[转帖]总结:Springboot监控Actuator相关

一、介绍 由于项目中使用的仍然是比较老旧的1.5.6版本,所以本文是基于此版本进行描述。 二、Actuator使用 ActuatorActuator是Spring Boot提供的对应用系统的监控和管理的集成功能,可以查看应用配置的详细信息,例如自动化配置信息、创建的Spring beans信息、系统

[转帖]redis配置注意事项(适合于较大配置)

https://tool.4xseo.com/article/102125.html 实际中最好让redis主节点仅使用50-60%的内存,剩余的用于执行bgsave和创建写命令的缓冲区,保证最大可 ... 展开 根据官方的建议,redis-server的相关配置建议如下,但是有些并不合适,LZ会进

[转帖]【k8s】5、资源管理命令-声明式

文章目录 一、 yaml和json介绍1、yuml语言介绍2、k8s支持的文件格式3、yaml和json的主要区别 二、声明式对象管理1、命令式对象配置2、声明式对象配置3、声明式对象管理命令介绍 三、编写资源配置清单1、 编写yaml文件2、 启动并查看资源3、创建service服务对外提供访问测

[转帖]Nginx设置目录浏览模式

https://www.cnblogs.com/shanfeng1000/p/16259268.html Nginx除了可以实现反向代理外,还有个实用的功能,那就是目录浏览,它可以很方便的让我们查看某个目录下的文件内容,并可以选择性的下载。 启用目录浏览 一般的,我们可以创建一个demo.conf配

[转帖]k8s之PV、PVC、StorageClass详解

https://zhuanlan.zhihu.com/p/128552232 导读 上一篇写了共享存储的概述以及一个简单的案例演示。这一篇就写一下PV和PVC。 PV是对底层网络共享存储的抽象,将共享存储定义为一种“资源”,比如Node也是容器应用可以消费的资源。PV由管理员创建和配置,与共享存储的

[转帖]Barman安装及备份PostgreSQL

barman特点 零数据丢失备份。保证用户在只有一台备份服务器的情况下达到零数据丢失。 与备份服务器合作。允许备份服务器在与主服务器的流式复制不可用时,从barman获取wal文件。 可靠的监控集成。用于监控和创建有关Barman配置状态的报告。 可并行的备份和恢复。以更快的速度执行拷贝,加快了整个

[转帖]在KingbaseES数据库中批量创建数据库/表

1. 问题 如何在KingbaseES中批量创建表和库? 2. 通过shell脚本文件实现 有时候我们在进行测试的时候需要进行批量的建库以及建表,这时我们可以使用shell脚本实现或者是SQL实现,shell脚本实现时内容如下: user=system #用于配置数据库的用户名 port=54587

[转帖]【银河麒麟V10】【服务器】kvm创建桥接

1、前置条件:安装好麒麟V10服务器操作系统、安装kvm、在kvm创建好麒麟V10系统的虚拟机 实验环境:宿主机:麒麟V10 0711 x86_64 ip:192.168.1.11 虚拟机:kvm + 麒麟V10 0711 x86_64 ip:192.168.1.110 2、宿主机配置 # yum

[转帖]nginx限速

https://www.cnblogs.com/fengzi7314/p/16541440.html 第一步,先创建限制的规则,我这里直接在nginx默认的配置文件目录下配置,如果想自定义,需要在主配置文件添加include xx/xxx/xxx/*.conf配置 [root@node5 nginx