Linux 部署YUM仓库及NFS共享服务

发布于:2024-04-30 ⋅ 阅读:(35) ⋅ 点赞:(0)

目录

一.YUM仓库服务

YUM (Yellow dog Updater Modified)

 Linux系统各家厂商用的安装源

准备安装源

软件仓库的提供方式

RPM软件包的来源

构建Centos7软件仓库

在软件仓库中加入非官方RPM包组

为客户机指定YUM仓库位置

制作ftp源

服务端

(1)关闭防火墙

(2)下载vsftpd,启动vsftp服务

(3)将光盘镜像文件挂载到FTP共享目录中

(4) 配置ftp的yum源 

(5)清除原有缓存,建立元数据缓存

主机端

(2)编辑yum源

(3)清除原有缓存,建立元数据缓存,并检验

yum在线源替换方法

yum软件包的下载方式

(1)开启缓存下载

( 2)仅下载软件包

yum的常用操作命令


一.YUM仓库服务

YUM (Yellow dog Updater Modified)

  • 基于RPM包构建的软件更新机制
  • 可以自动解决依赖关系
  • 所有软件包由集中的YUM软件仓库提供

 Linux系统各家厂商用的安装源

  • centos7和rhel 7 默认使用的时 yum仓库源 ,软件包的结尾是".rpm"
  • centos8 和 rhel 8 可以使用 dhf (是yum的衍生产品)
  • Ubuntu    debian   使用的是  apt   软件包是以“.deb”结尾

准备安装源

软件仓库的提供方式

  • FTP服务:ftp://..…

  • HTTP服务:http://.

  • 本地目录:file://...

RPM软件包的来源

  • Centos发布的RPM包集合
  • 第三方组织发布的RPM包集合
  • 用户自定义的RPM包集合

构建Centos7软件仓库

  • RPM包来自CentOS7DVD光盘
  • 通过FTP方式提供给客户机

在软件仓库中加入非官方RPM包组

  • 包括存在依赖关系的所有RPM包
  • 使用createrepo工具建立仓库数据文件

为客户机指定YUM仓库位置

  • 配置文件:/etc/yum.repos.d/centos7.repo\

制作ftp源

服务端

(1)关闭防火墙
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# setenforce 0

 

(2)下载vsftpd,启动vsftp服务
[root@localhost ~]# yum -y install vsftpd
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
正在解决依赖关系
--> 正在检查事务
---> 软件包 vsftpd.x86_64.0.3.0.2-29.el7_9 将被 安装
--> 解决依赖关系完成

依赖关系解决

==========================================================================================
 Package            架构               版本                       源                 大小
==========================================================================================
正在安装:
 vsftpd             x86_64             3.0.2-29.el7_9             loacl             173 k

事务概要
==========================================================================================
安装  1 软件包

总下载量:173 k
安装大小:353 k
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : vsftpd-3.0.2-29.el7_9.x86_64                                          1/1 
  验证中      : vsftpd-3.0.2-29.el7_9.x86_64                                          1/1 

已安装:
  vsftpd.x86_64 0:3.0.2-29.el7_9                                                          

完毕!
[root@localhost ~]# systemctl start vsftpd

(3)将光盘镜像文件挂载到FTP共享目录中
[root@localhost ftp]# ls
pub
[root@localhost ftp]# mkdir centos7
[root@localhost ftp]# mount /dev/sr0 /var/ftp/centos7/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost ftp]# df
文件系统                   1K-块    已用     可用 已用% 挂载点
devtmpfs                  914412       0   914412    0% /dev
tmpfs                     931496       0   931496    0% /dev/shm
tmpfs                     931496   10740   920756    2% /run
tmpfs                     931496       0   931496    0% /sys/fs/cgroup
/dev/mapper/centos-root 17811456 5431252 12380204   31% /
/dev/sda1                1038336  191096   847240   19% /boot
tmpfs                     186300      68   186232    1% /run/user/0
/dev/sr0                 4635056 4635056        0  100% /run/media/root/CentOS 7 x86_

 

(4) 配置ftp的yum源 
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# vim ftp.repo

[ftp]
name=ftp
baseurl=ftp://20.0.0.146/centos7
enable=1
gpgcheck=1
gpgkey=ftp://20.0.0.146/centos7/RPM-GPG-KEY-CentOS-7

 

(5)清除原有缓存,建立元数据缓存
[root@localhost yum.repos.d]# yum clean all && yum makecache
已加载插件:fastestmirror, langpacks
正在清理软件源: ftp
Cleaning up list of fastest mirrors
Other repos take up 872 M of disk space (use --verbose for details)
已加载插件:fastestmirror, langpacks
Determining fastest mirrors
ftp                                                                   | 3.6 kB  00:00:00     
(1/4): ftp/group_gz                                                   | 153 kB  00:00:00     
(2/4): ftp/filelists_db                                               | 3.3 MB  00:00:00     
(3/4): ftp/primary_db                                                 | 3.3 MB  00:00:00     
(4/4): ftp/other_db                                                   | 1.3 MB  00:00:00     
元数据缓存已建立

主机端

(1)关闭防火墙

[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# setenforce 0

 

(2)编辑yum源
[root@localhost ~]# mkdir /opt/yum
[root@localhost ~]# mv /etc/yum.repos.d/* /opt/yum
[root@localhost ~]# vim /etc/yum.repos.d/local.repo

[ftpyum]
name=ftpyum
baseurl=ftp://20.0.0.146/centos7
enabled=1
gpgcheck=0

 

(3)清除原有缓存,建立元数据缓存,并检验
[root@localhost ~]# yum clean all && yum makecache
已加载插件:fastestmirror, langpacks
正在清理软件源: ftpyum
Cleaning up list of fastest mirrors
Other repos take up 872 M of disk space (use --verbose for details)
已加载插件:fastestmirror, langpacks
Determining fastest mirrors
ftpyum                                            | 3.6 kB     00:00     
(1/4): ftpyum/group_gz                              | 153 kB   00:00     
(2/4): ftpyum/filelists_db                          | 3.3 MB   00:00     
(3/4): ftpyum/primary_db                            | 3.3 MB   00:00     
(4/4): ftpyum/other_db                              | 1.3 MB   00:00     
元数据缓存已建立
[root@localhost ~]# yum repolist
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
源标识                            源名称                            状态
ftpyum                            ftpyum                            4,070
repolist: 4,070

 

yum在线源替换方法

sed -e 's|^mirrorlist=|#mirrorlist=|g' \
    -e 's|^#baseurl=http://mirror.centos.org/centos|baseurl=https://mirrors.tuna.tsinghua.edu.cn/centos|g' \
    -i.bak \
    /etc/yum.repos.d/CentOS-*.repo

cd /etc/yum.repos.d/
vim CentOS-Base.repo
baseurl=http://mirror.centos.org/ 替换成  https://mirrors.tuna.tsinghua.edu.cn/
                                          https://mirrors.aliyun.com/
										  https://mirrors.163.com/

yum软件包的下载方式

(1)开启缓存下载

  • yum下载软件包虽然会自动下载依赖包以保证正常安装所需软件包,但是依赖包会在安装完后自动删除,可以修改配置文件:/etc/yum.conf让依赖包不会被自动删除,即可得到所有下载的软件包
[root@localhost ~]# vim /etc/yum.conf

[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release

( 2)仅下载软件包

yum install -y 软件名 --downloadonly --downloaddir=软件包下载目录

[root@localhost ~]# yum install -y tomcat --downloadonly --downloaddir =/lll/
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
正在解决依赖关系
--> 正在检查事务
---> 软件包 tomcat.noarch.0.7.0.76-16.el7_9 将被 安装
--> 正在处理依赖关系 tomcat-lib = 7.0.76-16.el7_9,它被软件包 tomcat-7.0.76-16.el7_9.noarch 需要
--> 正在处理依赖关系 apache-commons-pool,它被软件包 tomcat-7.0.76-16.el7_9.noarch 需要
--> 正在处理依赖关系 apache-commons-logging,它被软件包 tomcat-7.0.76-16.el7_9.noarch 需要
--> 正在处理依赖关系 apache-commons-dbcp,它被软件包 tomcat-7.0.76-16.el7_9.noarch 需要
--> 正在处理依赖关系 apache-commons-daemon,它被软件包 tomcat-7.0.76-16.el7_9.noarch 需要
--> 正在处理依赖关系 apache-commons-collections,它被软件包 tomcat-7.0.76-16.el7_9.noarch 需要
--> 正在检查事务
---> 软件包 apache-commons-collections.noarch.0.3.2.1-22.el7_2 将被 安装
---> 软件包 apache-commons-daemon.x86_64.0.1.0.13-7.el7 将被 安装
---> 软件包 apache-commons-dbcp.noarch.0.1.4-17.el7 将被 安装
--> 正在处理依赖关系 mvn(org.apache.geronimo.specs:geronimo-jta_1.1_spec),它被软件包 apache-commons-dbcp-1.4-17.el7.noarch 需要
---> 软件包 apache-commons-logging.noarch.0.1.1.2-7.el7 将被 安装
--> 正在处理依赖关系 mvn(logkit:logkit),它被软件包 apache-commons-logging-1.1.2-7.el7.noarch 需要
--> 正在处理依赖关系 mvn(log4j:log4j),它被软件包 apache-commons-logging-1.1.2-7.el7.noarch 需要
--> 正在处理依赖关系 mvn(avalon-framework:avalon-framework-api),它被软件包 apache-commons-logging-1.1.2-7.el7.noarch 需要
---> 软件包 apache-commons-pool.noarch.0.1.6-9.el7 将被 安装
---> 软件包 tomcat-lib.noarch.0.7.0.76-16.el7_9 将被 安装
--> 正在处理依赖关系 tomcat-servlet-3.0-api = 7.0.76-16.el7_9,它被软件包 tomcat-lib-7.0.76-16.el7_9.noarch 需要
--> 正在处理依赖关系 tomcat-jsp-2.2-api = 7.0.76-16.el7_9,它被软件包 tomcat-lib-7.0.76-16.el7_9.noarch 需要
--> 正在处理依赖关系 tomcat-el-2.2-api = 7.0.76-16.el7_9,它被软件包 tomcat-lib-7.0.76-16.el7_9.noarch 需要
--> 正在处理依赖关系 ecj >= 1:4.2.1,它被软件包 tomcat-lib-7.0.76-16.el7_9.noarch 需要
--> 正在检查事务
---> 软件包 avalon-framework.noarch.0.4.3-10.el7 将被 安装
--> 正在处理依赖关系 xalan-j2,它被软件包 avalon-framework-4.3-10.el7.noarch 需要
---> 软件包 avalon-logkit.noarch.0.2.1-14.el7 将被 安装
--> 正在处理依赖关系 jms,它被软件包 avalon-logkit-2.1-14.el7.noarch 需要
---> 软件包 ecj.x86_64.1.4.5.2-3.el7 将被 安装
---> 软件包 geronimo-jta.noarch.0.1.1.1-17.el7 将被 安装
---> 软件包 log4j.noarch.0.1.2.17-18.el7_4 将被 安装
--> 正在处理依赖关系 mvn(javax.mail:mail),它被软件包 log4j-1.2.17-18.el7_4.noarch 需要
---> 软件包 tomcat-el-2.2-api.noarch.0.7.0.76-16.el7_9 将被 安装
---> 软件包 tomcat-jsp-2.2-api.noarch.0.7.0.76-16.el7_9 将被 安装
---> 软件包 tomcat-servlet-3.0-api.noarch.0.7.0.76-16.el7_9 将被 安装
--> 正在检查事务
---> 软件包 geronimo-jms.noarch.0.1.1.1-19.el7 将被 安装
---> 软件包 javamail.noarch.0.1.4.6-8.el7 将被 安装
---> 软件包 xalan-j2.noarch.0.2.7.1-23.el7 将被 安装
--> 正在处理依赖关系 xerces-j2,它被软件包 xalan-j2-2.7.1-23.el7.noarch 需要
--> 正在处理依赖关系 osgi(org.apache.xerces),它被软件包 xalan-j2-2.7.1-23.el7.noarch 需要
--> 正在检查事务
---> 软件包 xerces-j2.noarch.0.2.11.0-17.el7_0 将被 安装
--> 正在处理依赖关系 xml-commons-resolver >= 1.2,它被软件包 xerces-j2-2.11.0-17.el7_0.noarch 需要
--> 正在处理依赖关系 xml-commons-apis >= 1.4.01,它被软件包 xerces-j2-2.11.0-17.el7_0.noarch 需要
--> 正在处理依赖关系 osgi(org.apache.xml.resolver),它被软件包 xerces-j2-2.11.0-17.el7_0.noarch 需要
--> 正在处理依赖关系 osgi(javax.xml),它被软件包 xerces-j2-2.11.0-17.el7_0.noarch 需要
--> 正在检查事务
---> 软件包 xml-commons-apis.noarch.0.1.4.01-16.el7 将被 安装
---> 软件包 xml-commons-resolver.noarch.0.1.2-15.el7 将被 安装
--> 解决依赖关系完成

依赖关系解决

================================================================================================================
 Package                                架构               版本                           源               大小
================================================================================================================
正在安装:
 tomcat                                 noarch             7.0.76-16.el7_9                ftp              93 k
为依赖而安装:
 apache-commons-collections             noarch             3.2.1-22.el7_2                 ftp             509 k
 apache-commons-daemon                  x86_64             1.0.13-7.el7                   ftp              54 k
 apache-commons-dbcp                    noarch             1.4-17.el7                     ftp             167 k
 apache-commons-logging                 noarch             1.1.2-7.el7                    ftp              78 k
 apache-commons-pool                    noarch             1.6-9.el7                      ftp             113 k
 avalon-framework                       noarch             4.3-10.el7                     ftp              88 k
 avalon-logkit                          noarch             2.1-14.el7                     ftp              87 k
 ecj                                    x86_64             1:4.5.2-3.el7                  ftp             1.9 M
 geronimo-jms                           noarch             1.1.1-19.el7                   ftp              31 k
 geronimo-jta                           noarch             1.1.1-17.el7                   ftp              20 k
 javamail                               noarch             1.4.6-8.el7                    ftp             758 k
 log4j                                  noarch             1.2.17-18.el7_4                ftp             445 k
 tomcat-el-2.2-api                      noarch             7.0.76-16.el7_9                ftp              83 k
 tomcat-jsp-2.2-api                     noarch             7.0.76-16.el7_9                ftp              96 k
 tomcat-lib                             noarch             7.0.76-16.el7_9                ftp             3.9 M
 tomcat-servlet-3.0-api                 noarch             7.0.76-16.el7_9                ftp             214 k
 xalan-j2                               noarch             2.7.1-23.el7                   ftp             1.9 M
 xerces-j2                              noarch             2.11.0-17.el7_0                ftp             1.1 M
 xml-commons-apis                       noarch             1.4.01-16.el7                  ftp             227 k
 xml-commons-resolver                   noarch             1.2-15.el7                     ftp             108 k

事务概要
================================================================================================================
安装  1 软件包 (+20 依赖软件包)

总下载量:12 M
安装大小:15 M
Background downloading packages, then exiting:
警告:/root/=/lll/apache-commons-daemon-1.0.13-7.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
apache-commons-daemon-1.0.13-7.el7.x86_64.rpm 的公钥尚未安装
(1/21): apache-commons-daemon-1.0.13-7.el7.x86_64.rpm                                    |  54 kB  00:00:00     
(2/21): apache-commons-collections-3.2.1-22.el7_2.noarch.rpm                             | 509 kB  00:00:00     
(3/21): apache-commons-dbcp-1.4-17.el7.noarch.rpm                                        | 167 kB  00:00:00     
(4/21): apache-commons-logging-1.1.2-7.el7.noarch.rpm                                    |  78 kB  00:00:00     
(5/21): avalon-framework-4.3-10.el7.noarch.rpm                                           |  88 kB  00:00:00     
(6/21): apache-commons-pool-1.6-9.el7.noarch.rpm                                         | 113 kB  00:00:00     
(7/21): avalon-logkit-2.1-14.el7.noarch.rpm                                              |  87 kB  00:00:00     
(8/21): geronimo-jms-1.1.1-19.el7.noarch.rpm                                             |  31 kB  00:00:00     
(9/21): geronimo-jta-1.1.1-17.el7.noarch.rpm                                             |  20 kB  00:00:00     
(10/21): javamail-1.4.6-8.el7.noarch.rpm                                                 | 758 kB  00:00:00     
(11/21): ecj-4.5.2-3.el7.x86_64.rpm                                                      | 1.9 MB  00:00:00     
(12/21): tomcat-7.0.76-16.el7_9.noarch.rpm                                               |  93 kB  00:00:00     
(13/21): log4j-1.2.17-18.el7_4.noarch.rpm                                                | 445 kB  00:00:00     
(14/21): tomcat-el-2.2-api-7.0.76-16.el7_9.noarch.rpm                                    |  83 kB  00:00:00     
(15/21): tomcat-jsp-2.2-api-7.0.76-16.el7_9.noarch.rpm                                   |  96 kB  00:00:00     
(16/21): tomcat-servlet-3.0-api-7.0.76-16.el7_9.noarch.rpm                               | 214 kB  00:00:00     
(17/21): xalan-j2-2.7.1-23.el7.noarch.rpm                                                | 1.9 MB  00:00:00     
(18/21): tomcat-lib-7.0.76-16.el7_9.noarch.rpm                                           | 3.9 MB  00:00:00     
(19/21): xml-commons-apis-1.4.01-16.el7.noarch.rpm                                       | 227 kB  00:00:00     
(20/21): xerces-j2-2.11.0-17.el7_0.noarch.rpm                                            | 1.1 MB  00:00:00     
(21/21): xml-commons-resolver-1.2-15.el7.noarch.rpm                                      | 108 kB  00:00:00     
----------------------------------------------------------------------------------------------------------------
总计                                                                             88 MB/s |  12 MB  00:00:00     
exiting because "Download Only" specified

yumdownloader --destdir=软件包下载目录 --resolv  软件名       #--resolv代表下载软件所需的所有依赖包,不加这个选项代表仅下载指定的软件包

[root@localhost ~]# mkdir /ll
[root@localhost ~]# yumdownloader httpd --destdir=/ll --resolve
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
--> 正在检查事务
---> 软件包 httpd.x86_64.0.2.4.6-97.el7.centos.5 将被 已重新安装
--> 解决依赖关系完成
警告:/ll/httpd-2.4.6-97.el7.centos.5.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
httpd-2.4.6-97.el7.centos.5.x86_64.rpm 的公钥尚未安装
httpd-2.4.6-97.el7.centos.5.x86_64.rpm                                | 2.7 MB  00:00:00  

 

在Linux系统下载文件   
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

[root@localhost ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
--2024-04-29 16:00:08--  https://mirrors.aliyun.com/repo/Centos-7.repo
正在解析主机 mirrors.aliyun.com (mirrors.aliyun.com)... 27.19.248.237, 1.194.165.235, 124.115.10.169, ...
正在连接 mirrors.aliyun.com (mirrors.aliyun.com)|27.19.248.237|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:2523 (2.5K) [application/octet-stream]
正在保存至: “/etc/yum.repos.d/CentOS-Base.repo”

100%[======================================================================>] 2,523       --.-K/s 用时 0.005s  

2024-04-29 16:00:08 (496 KB/s) - 已保存 “/etc/yum.repos.d/CentOS-Base.repo” [2523/2523])

 yum的常用操作命令


网站公告

今日签到

点亮在社区的每一天
去签到