CentOS 7 制作本地repository的方法, 适用于没有外网访问权限的CentOS 7的升级。
大概步骤:

  1. 找一台系统版本相同,但是有外网访问权限的CentOS 7的机器
  2. 在这台机器上下载yum包,并制作本地repository
  3. 拷贝repository到内网机器
  4. 配置内网机器,从制作好的本地repository升级yum包

详细步骤

  1. 在有公网连接的机器上,下载yum包, 并制作本地repository

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    # 建立目录
    mkdir download
    # 如果是系统需要升级的包使用yum install --downloadonly 进行下载
    yum install --downloadonly --downloaddir=./download/ openjpeg2.x86_64
    # 如果是系统已经安装过的包,则使用yumdownloader命令
    yumdownloader ftp --destdir=./download/
    # 制作本地repository
    createrepo -pdo ./download/ ./download/
    createrepo --update ./download/
    # 打包成tar.gz文件
    tar czvf download.tar.gz download/
  2. 内网机器上通过制作好的本地repository来安装yum包
    目标机器上,本地repository目录为/root/tmp/only_for_repository为例

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    # 拷贝download.tar.gz到目标机器上 /root/tmp/only_for_repository
    # 解压tar包
    tar xzvf download.tar.gz
    # 建立本地repository
    cd /etc/yum.repos.d
    cp CentOS-Media.repo local-custom.repo
    vim local-custom.repo
    [local-custom]
    name=CentOS-local-custom
    baseurl=file:///root/tmp/only_for_repository/download
    gpgcheck=1
    enabled=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
    # 使用local custom reposiroty进行升级
    yum --disablerepo=\* --enablerepo=local-custom update

一些yum命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
# 安装yum-config-manager
yum install yum-utils
# 查看yum repository
yum repolist [enabled|disabled|all]
# 启用某个yum repository
1. yum-config-manager --enable repository_name # 或者到
2. 到/etc/yum.repos.d目录下,找到要启动的repository的文件,修改enabled字段为1
# 禁用某个yum repository
1. yum-config-manager --disable repository_name
2. 到/etc/yum.repos.d目录下,找到要启动的repository的文件,修改enabled字段为0
# yum安装
yum install ftp
# yum更新
yum update ftp
# yum删除包
yum remove ftp
# yum 列出包
yum list ftp # 某个包
yum list installed # 列出已经安装的包
# 搜索某个包
yum search ftp
# 查看包的信息
yum info ftp
# 查看可更新的包
yum check-update
# yum group 相关
yum grouplist # 列出所有组
yum groupinstall '虚拟化主机' # 按组安装,支持中文
yum groupupdate '虚拟化主机' # 按组更新
yum groupremove '虚拟化主机' # 安祖删除
# yum 清理cache
yum clean all
# 查看yum操作记录
yum history
# 查看某个repository下的可用包, 以pgdg96为例
yum --disablerepo="*" --enablerepo="pgdg96" list available
# 查看某几个repository下的可用包, repository之间用逗号隔开
yum --disablerepo="*" --enablerepo="pgdg96,epel" list available
# 只更新来自某个repository的package
yum --disablerepo="*" --enablerepo="pgdg96,epel" update
# yum security相关
yum --security check-update # 检查安全更新
yum --security update # 只更新安全补丁
# 查看包依赖
yum deplist ImageMagick-devel

Reference

留言