16 设置网络安装源 #
本章介绍如何创建服务器,来通过网络提供安装 SUSE Linux Enterprise Server 时所需的数据。
根据用作 SUSE Linux Enterprise Server 网络安装源的计算机的操作系统,可以使用多种方法来配置服务器。设置安装服务器最简单的方法是使用 YaST。
16.1 使用 YaST 设置安装服务器 #
YaST 提供了一个用于创建网络软件源的图形工具。它支持 HTTP、FTP 和 NFS 网络安装服务器。
- 以 - root登录到充当安装服务器的机器上。
- 启动 › › 。 
- 选择软件源类型(HTTP、FTP 或 NFS)。所选的服务将在系统每次启动时自动启动。如果所选服务器类型中的某项服务已经在系统上运行,但您希望对该服务器进行手动配置,则请通过来停用服务器服务的自动配置。在这两种情况下,都需要定义服务器上可用安装数据所在的目录。 
- 配置所需的软件源类型。此步骤与服务器服务的自动配置相关。如果停用自动配置,则将跳过此步骤。 - 定义安装数据所在的 FTP 或 HTTP 服务器的 root 目录的别名。该软件源以后将放在 - ftp://Server-IP/Alias/name(ftp) 或- http://Server-IP/Alias/Name(HTTP) 下。Name 代表软件源的名称,该名称将在下面的步骤中定义。如果您在上一步中选择了 NFS,请定义通配符和导出选项。可在- nfs://Server-IP/Name下访问 NFS 服务器。有关 NFS 和导出的细节,请参见第 19 章 “通过 NFS 共享文件系统”。提示:防火墙设置- 务必使服务器系统的防火墙设置允许 HTTP、NFS 和 FTP 端口的数据流量。先启用或选中(如果当前尚未启用或选中)。 
- 配置软件源。在将安装媒体复制到其目标位置前,请先定义该软件源的名称(最好是容易记忆的产品和版本的缩写)。YaST 允许提供安装媒体的 ISO 映像来取代安装 DVD 副本。如果希望使用 ISO 映像,请激活相关的复选框并指定 ISO 文件所在的本地目录路径。根据要使用此安装服务器分发的产品,可能需要添加媒体(例如服务包 DVD)作为附加软件源。要通过 OpenSLP 在网络中就安装服务器发布通告,请激活相应的选项。 提示:通告软件源- 如果您的网络设置支持此选项,请考虑通过 OpenSLP 发布软件源通告。这样就无需在每台目标计算机上输入网络安装路径。这些目标系统会使用 SLP 引导参数引导,并会查找网络软件源,而无需任何进一步配置。有关该选项的详细信息,请参见第 7 章 “引导参数”。 
- 配置额外的软件源。YaST 遵循特定的命名约定来配置附加 CD 或服务包 CD 软件源。仅当附加 CD 的软件源名称以安装媒体的软件源名称开头时,才接受该配置。换言之,如果您之前选择 - SLES12SP1作为 DVD1 的软件源名称,则现在应选择- SLES12SP1addon作为 DVD2 的软件源名称。
- 上载安装数据。配置安装服务器过程中最耗时的一步是复制实际的安装媒体。按 YaST 要求的顺序插入媒体,然后等待复制过程结束。当软件源完全复制完毕后,选择返回到现有软件源的概述并关闭配置。 - 现在您的安装服务器就已完全配置好并准备提供服务了。它将在每次系统启动时自动启动。不需要执行额外操作。如果您一开始就使用 YaST 停用了所选网络服务的自动配置,那么只需正确地手动配置并启动此服务即可。 
要停用软件源,可以选择要删除的软件源,然后选择。安装数据将从系统删除。要取消对网络服务的激活,请使用相应的 YaST 模块。
如果您的安装服务器需要为该产品版本的多个产品提供安装数据,请启动 YaST 安装服务器模块。然后在现有软件源的概览中选择,以配置新软件源。
使用 YaST 将某台服务器配置为安装服务器,会自动安装并配置侦听端口 80 的 Apache Web 服务器。
但是,将某台计算机配置为 RMT(软件源镜像工具)服务器会自动安装 NGINX Web 服务器并将其配置为侦听端口 80。
请勿尝试在同一台服务器上启用这两项功能。一台服务器无法同时托管 Apache Web 服务器和 NGINX Web 服务器。
16.2 手动设置 NFS 软件源 #
设置 NFS 安装源的过程主要有两步。第一步:创建存放安装数据的目录结构,然后将安装媒体全部复制到该结构中。第二步:将存放安装数据的目录导出到网络。
要创建存放安装数据的目录,请执行如下操作:
- 以 - root身份登录。
- 创建稍后用于存放所有安装数据的目录,然后切换到该目录。例如: - #mkdir -p /srv/install/PRODUCT/PRODUCTVERSION- #cd /srv/install/PRODUCT/PRODUCTVERSION- 将 PRODUCT 替换为产品名称的缩写,将 PRODUCTVERSION 替换为包含该产品名称和版本的字符串(例如 - /srv/install/SLES/15.1)。
- 对媒体工具包中的每个安装媒体执行以下命令: - 将安装媒体的所有内容复制到安装服务器目录中: - #cp -a /media/PATH_TO_YOUR_MEDIA_DRIVE .- 将 PATH_TO_YOUR_MEDIA_DRIVE 替换为安装媒体驱动器所在的实际路径。 
- 将目录重命名为媒体编号。 - #mv PATH_TO_YOUR_MEDIA_DRIVE DVDX- 将其中的 X 替换为安装媒体的实际编号。 
 
在 SUSE Linux Enterprise Server 上,可以使用 YaST 通过 NFS 导出软件源。按如下所示继续:
- 以 - root身份登录。
- 启动 › › 。 
- 选择和,然后单击。 
- 选择并浏览含有安装源的目录,在本例中为 - PRODUCTVERSION。
- 选择,然后输入用于存放导出的安装数据的计算机主机名。此处除了指定主机名之外,还可以使用通配符、网络地址范围或网络域名。输入合适的导出选项或保留默认值,在大多数设置中默认值可有效工作。有关用于导出 NFS 共享的语法的详细信息,请参见 - exports手册页。
- 单击。存放 SUSE Linux Enterprise Server 软件源的 NFS 服务器将自动启动并集成到引导过程中。 
如果您希望通过 NFS 手动导出软件源,而不使用 YaST NFS 服务器模块,请执行如下操作:
- 以 - root身份登录。
- 打开文件 - /etc/exports,然后输入以下行:- /PRODUCTVERSION *(ro,root_squash,sync) - 这会将目录 - /PRODUCTVERSION导出到此网络中的任意主机或能够连接到此服务器的任意主机。为了限制对该服务器的访问,请使用网络掩码或域名取代常规通配符- *。请参见- export手册页了解细节。保存并退出该配置文件。
- 要将 NFS 服务添加到系统引导期间已启动的服务器的列表中,请执行以下命令: - #systemctl enable nfsserver
- 使用 - systemctl start nfsserver启动 NFS 服务器。如果日后需要更改 NFS 服务器的配置,请修改配置文件,然后通过- systemctl restart nfsserver重启动 NFS 守护程序。
通过 OpenSLP 就该 NFS 服务器发布通告,可使网络中的所有客户端都获知其地址。
- 以 - root身份登录。
- 使用以下命令行创建 - /etc/slp.reg.d/install.suse.nfs.reg配置文件:- # Register the NFS Installation Server service:install.suse:nfs://$HOSTNAME/PATH_TO_REPOSITORY/DVD1,en,65535 description=NFS Repository - 将 PATH_TO_REPOSITORY 替换为服务器上的安装源的实际路径。 
- 使用 - systemctl start slpd启动 OpenSLP 守护程序。
   关于 OpenSLP 的更多信息,请参见位于 /usr/share/doc/packages/openslp/ 下的软件包文档,或参见第 41 章 “SLP”。有关 NFS 的详细信息,请参见第 19 章 “通过 NFS 共享文件系统”。
  
16.3 手动设置 FTP 软件源 #
创建 FTP 软件源的方式与创建 NFS 软件源非常类似。也可以通过 OpenSLP 在整个网络上发布 FTP 软件源通告。
- 按第 16.2 节 “手动设置 NFS 软件源”中所述创建存放安装源的目录。 
- 配置 FTP 服务器以分发安装目录的内容: - 以 - root身份登录,然后使用 YaST 软件管理功能安装- vsftpd软件包。
- 输入 FTP 服务器 root 目录: - #cd- /srv/ftp
- 在 FTP root 目录中创建存放安装源的子目录: - #mkdir REPOSITORY- 将 REPOSITORY 替换为产品名称。 
- 将已经存在的软件源的内容挂载该 FTP 服务器的更改 root 目录环境中。 - #mount --bind PATH_TO_REPOSITORY /srv/ftp/REPOSITORY- 将 PATH_TO_REPOSITORY 和 REPOSITORY 替换为符合您设置的值。如果需要将其永久保留,请将其添加到 - /etc/fstab。
- 通过 - vsftpd启动 vsftpd。
 
- 通过 OpenSLP 发布软件源通告(如果网络设置支持此操作): - 使用以下命令行创建 - /etc/slp.reg.d/install.suse.ftp.reg配置文件:- # Register the FTP Installation Server service:install.suse:ftp://$HOSTNAME/REPOSITORY/DVD1,en,65535 description=FTP Repository - 将 REPOSITORY 替换为服务器上软件源目录的实际名称。 - service:行应作为一个连续无中断的行输入。
- 使用 - systemctl start slpd启动 OpenSLP 守护程序。
 
16.4 手动设置 HTTP 软件源 #
创建 HTTP 软件源的方式与创建 NFS 软件源非常类似。也可以通过 OpenSLP 在整个网络上发布 HTTP 软件源通告。
- 按第 16.2 节 “手动设置 NFS 软件源”中所述创建存放软件源的目录。 
- 配置 HTTP 服务器以分发安装目录的内容: - 如第 42.1.2 节 “安装”所述安装 Web 服务器 Apache。 
- 进入 HTTP 服务器的 root 目录 ( - /srv/www/htdocs) 并创建用于存放安装源的子目录:- #mkdir REPOSITORY- 将 REPOSITORY 替换为产品名称。 
- 创建一个从安装源位置到 Web 服务器 root 目录( - /srv/www/htdocs)的符号链接:- #ln -s /PATH_TO_REPOSITORY/srv/www/htdocs/REPOSITORY
- 修改 HTTP 服务器的配置文件( - /etc/apache2/default-server.conf),使其遵循符号链接。替换以下行:- Options None - 替换为 - Options Indexes FollowSymLinks 
- 使用 - systemctl reload apache2重新装载 HTTP 服务器配置。
 
- 通过 OpenSLP 发布软件源通告(如果网络设置支持此操作): - 使用以下命令行创建 - /etc/slp.reg.d/install.suse.http.reg配置文件:- # Register the HTTP Installation Server service:install.suse:http://$HOSTNAME/REPOSITORY/DVD1/,en,65535 description=HTTP Repository - 将 REPOSITORY 替换为服务器上软件源的实际路径。 - service:行应作为一个连续无中断的行输入。
- 使用 - systemctl start slpd启动 OpenSLP 守护程序。
 
16.5 管理 SMB 软件源 #
通过使用 SMB,您可以从 Microsoft Windows 服务器导入软件源,甚至可以在周围没有 Linux 计算机的情况下开始 Linux 部署。
要设置存放 SUSE Linux Enterprise Server 软件源的导出 Windows 共享,请执行以下操作:
- 登录到 Windows 计算机。 
- 新建一个用于存放整个安装树的目录,并将其指定为诸如 - INSTALL的名称。
- 根据 Windows 文档中所述的过程导出此共享。 
- 进入此共享,然后创建名为 - PRODUCT的子目录。将 PRODUCT 替换为实际产品名称。
- 进入 - INSTALL/PRODUCT目录,并将每个媒体复制到单独的目录,例如- DVD1和- DVD2。
要将挂载的 SMB 共享用作软件源,请执行如下操作:
- 引导安装目标。 
- 选择: 
- 按 F4 选择软件源。 
- 选择 SMB,然后输入 Windows 计算机的名称或 IP 地址、共享名(在本例中为 - INSTALL/PRODUCT/DVD1)、用户名和口令。语法如下所示:- smb://workdomain;user:password@server/INSTALL/DVD1 - 按 Enter 后 YaST 将会启动,您便可以执行安装了。 
16.6 在服务器上使用安装媒体的 ISO 映像 #
您不用将物理媒体手动复制到服务器目录下,而是可以将安装媒体的 ISO 映像挂载到安装服务器中并将它们用作软件源。要设置使用 ISO 映像,而不是媒体副本的 HTTP、NFS 或 FTP 服务器,请执行以下操作:
- 下载 ISO 映像并将它们保存到用作安装服务器的计算机上。 
- 以 - root身份登录。
- 按照第 16.2 节 “手动设置 NFS 软件源”、第 16.3 节 “手动设置 FTP 软件源”或第 16.4 节 “手动设置 HTTP 软件源”中的描述,选择并创建安装数据的合适位置。 
- 创建对应于每个安装媒体的子目录。 
- 要将各个 ISO 映像安装和解开到最终位置,请发出以下命令: - #mount -o loop PATH_TO_ISO PATH_TO_REPOSITORY/PRODUCT/MEDIUMX- 将 PATH_TO_ISO 替换为 ISO 映像本地副本的路径。将 PATH_TO_REPOSITORY 替换为服务器的源目录。将 PRODUCT 替换为产品名称,将 MEDIUMX 替换为所用媒体的类型(CD 或 DVD)和编号。 
- 多次重复上述步骤,以安装产品所需的全部 ISO 映像。 
- 按照第 16.2 节 “手动设置 NFS 软件源”、第 16.3 节 “手动设置 FTP 软件源”或第 16.4 节 “手动设置 HTTP 软件源”中的描述,与往常一样启动安装服务器。 
   要在引导时自动挂载各 ISO 映像,请将各自的挂载项添加到 /etc/fstab 中。依照上一示例的项显示如下:
  
PATH_TO_ISO PATH_TO_REPOSITORY/PRODUCTMEDIUM auto loop