版权所有 © 2006– 2024 SUSE LLC 和贡献者。保留所有权利。
根据 GNU 自由文档许可证 (GNU Free Documentation License) 版本 1.2 或(根据您的选择)版本 1.3 中的条款,在此授予您复制、分发和/或修改本文档的许可权限;本版权声明和许可证附带不可变部分。许可证版本 1.2 的副本包含在题为“GNU 自由文档许可证”的部分。
有关 SUSE 商标,请参见 http://www.suse.com/company/legal/。所有其它第三方商标是其各自拥有者的财产。商标符号(®、™ 等)代表 SUSE 及其附属公司的商标。星号 (*) 代表第三方商标。
本指南力求涵盖所有细节。但这并不确保本指南准确无误。SUSE LLC 及其附属公司、作者和译者对于可能出现的错误或由此造成的后果皆不承担责任。
关于本指南 #
可通过不同的方法升级 SUSE Linux Enterprise Server。不可能涵盖所有的引导服务器或安装服务器、自动安装或部署映像的组合。本手册有助于为您的安装选择适当的升级方法。
- Book “升级指南”
本部分提供有关术语、SUSE 产品生命周期和服务包版本,以及建议的升级策略的背景信息。
1 可用文档 #
此外,您安装的系统的 /usr/share/doc/manual
下通常会提供产品文档。
针对本产品提供的文档如下:
- Article “安装快速入门”
此《快速入门》引导您逐步完成安装 SUSE® Linux Enterprise Server 15 的过程。
- Book “部署指南”
显示如何安装单个或多个系统,以及如何利用产品继承功能建立部署基础结构。有各种方法可供选择,可以选择使用本地安装或网络安装服务器,也可以选择使用远程控制、高度自定义的自动安装技术进行大规模部署。
- Book “管理指南”
讲述系统管理任务,如维护、监视和自定义初始安装的系统。
- Book “Virtualization Guide”
概述虚拟化技术,并介绍虚拟化的统一接口 libvirt,以及有关特定超级管理程序的详细信息。
- Book “储存管理指南”
提供有关如何在 SUSE Linux Enterprise Server 上管理储存设备的信息。
- Book “AutoYaST Guide”
AutoYaST 系统会使用包含安装和配置数据的 AutoYaST 配置文件,让您以无人照管方式批量部署 SUSE Linux Enterprise Server 系统。该手册将引导您完成自动安装的基本步骤,包括准备、安装和配置。
- Book “Security and Hardening Guide”
介绍系统安全的基本概念,包括本地安全方面和网络安全方面。说明如何使用产品固有的安全软件(例如 AppArmor),或者能够可靠收集有关任何安全相关事件的信息的审核系统。
- Book “System Analysis and Tuning Guide”
关于问题检测、解决和优化的管理员指南。了解如何使用监视工具检查和优化系统以及如何有效管理资源。还包含常见问题和解决方法的概述以及其他帮助和文档资源。
- Book “Repository Mirroring Tool Guide”
储存库管理工具管理员指南。储存库管理工具是 SUSE Customer Center 及储存库与注册目标的代理系统。了解如何安装和配置本地 RMT 服务器、镜像和管理储存库、管理客户端计算机,以及配置客户端以使用 RMT。
- Book “GNOME 用户指南”
介绍 SUSE Linux Enterprise Server 的 GNOME 桌面。指导您使用和配置桌面并帮助您执行关键任务。它主要面向想要有效使用 GNOME 作为其默认桌面的最终用户。
2 反馈 #
提供了多种反馈渠道:
- Bug 和增强请求
有关产品可用的服务和支持选项,请参见 http://www.suse.com/support/。
有关 openSUSE 的帮助由社区提供。有关更多信息,请参考 https://en.opensuse.org/Portal:Support。
要报告产品组件的 Bug,请访问 https://scc.suse.com/support/requests 并登录,然后单击 。
- 用户意见
我们希望收到您对本手册和本产品中包含的其他文档的意见和建议。请使用联机文档每页底部的“用户注释”功能或转到 http://www.suse.com/documentation/feedback.html 并在此处输入注释。
- 邮件
如有对本产品文档的反馈,也可以发送邮件至
doc-team@suse.com
。请确保反馈中含有文档标题、产品版本和文档发布日期。要报告错误或给出增强建议,请提供问题的简要说明并指出相应章节编号和页码(或 URL)。
3 文档约定 #
本文档中使用了以下通知和排版约定:
/etc/passwd
:目录名称和文件名PLACEHOLDER:PLACEHOLDER 将会替换为实际的值
PATH
:环境变量 PATHls
、--help
:命令、选项和参数user
:用户和组package name :包名称
Alt、Alt–F1:按键或组合键;这些键以大写形式显示,如在键盘上一样
AMD/Intel 本段内容仅与 AMD64/Intel 64 体系结构相关。箭头标记文本块的开始位置和结束位置。
IBM Z, POWER 本段内容仅与
IBM Z
和POWER
体系结构相关。箭头标记文本块的开始位置和结束位置。跳舞的企鹅(企鹅一章,↑其他手册):此内容参见自其他手册中的一章。
必须使用
root
特权运行的命令。您往往还可以在这些命令前加上sudo
命令,以非特权用户身份来运行它们。root #
command
tux >
sudo
command
可以由非特权用户运行的命令。
tux >
command
注意
警告:警告通知在继续操作之前,您必须了解的不可或缺的信息。向您指出有关安全问题、潜在数据丢失、硬件损害或物理危害的警告。
重要:重要通知在继续操作之前,您必须了解的重要信息。
注意:注意通知额外信息,例如有关软件版本差异的信息。
提示:提示通知有用信息,例如指导方针或实用性建议。
1 升级路径和方法 #
SUSE® Linux Enterprise (SLE) 允许您将现有系统升级到新版本,例如,从 SLE 11 SP4 升级到最新的 SLE 12 服务包。不需新安装。主目录和数据目录以及系统配置等现有数据将保持不变。您可以从本地 CD 或 DVD 驱动器或从中央网络安装源进行更新。
本章介绍如何通过 DVD、网络、自动化过程或 SUSE Manager 手动升级 SUSE Linux Enterprise 系统。
1.1 支持的 SLE 15 升级路径 #
在执行任何迁移操作之前,请阅读第 3 章 “准备升级”。
不支持跨体系结构升级!例如从 32 位版本的 SUSE Linux Enterprise Server 升级到 64 位版本,或者从大字节序升级到小字节序。
具体而言,从 SLE 11 on POWER(大字节序)升级到 SLE 15 on POWER(新增:小字节序)不受支持。
另外,由于 SUSE Linux Enterprise 15 只有 64 位版本,因此不支持从任何 32 位 SUSE Linux Enterprise 11 系统升级到 SUSE Linux Enterprise 15 和更高版本。
要跨体系结构升级,需执行全新安装。
按顺序安装所有服务包是最安全的升级路径。在某些情况下,支持在升级时跳过一到两个服务包,但建议不要跳过任何服务包。
建议在升级到新的主要版本时(例如从 SUSE Linux Enterprise 11 升级到 SUSE Linux Enterprise 12),执行全新安装。
- 从 SUSE Linux Enterprise 10(任何服务包)升级
不支持直接迁移到 SUSE Linux Enterprise 15。在此情况下,建议执行全新安装。
- 从 SUSE Linux Enterprise 11 GA/SP1/SP2/SP3 升级
不支持直接迁移到 SUSE Linux Enterprise 15。您的版本至少需为 SLE 11 SP4,才能升级到 SLE 15。
如果您不能执行全新安装,请先将已安装的 SLE 11 服务包升级到 SLE 11 SP4。《SUSE Linux Enterprise 11 部署指南》中说明了这些步骤。
- 从 SUSE Linux Enterprise 11 SP4 升级
要从 SLE 11 SP4 升级,只支持采用脱机升级方式。有关详细信息,请参见第 1.2 节 “联机和脱机升级”。
- 从 SUSE Linux Enterprise 12 GA/SP1/SP2 升级
不支持直接从 SLE 12 GA/SP1/SP2 升级到 SLE 15。需要先升级到 SLE 12 SP3。
- 从 SUSE Linux Enterprise 12 SP3 升级
要从 SUSE Linux Enterprise 12 SP3 升级,只支持采用脱机升级方式。有关详细信息,请参见第 1.2 节 “联机和脱机升级”。
- 从 openSUSE Leap 15 迁移
支持从 openSUSE Leap 15 迁移。请参见第 5.8 节 “从 openSUSE Leap 迁移到 SUSE Linux Enterprise Server”。
1.2 联机和脱机升级 #
SUSE 支持两种不同的升级和迁移方法。有关术语的详细信息,请参见第 2.1 节 “术语”。这些方法是:
- 联机
从正在运行的系统本身执行的所有升级均视为联机升级。示例:使用 Zypper 或 YaST 通过 SUSE Customer Center、储存库管理工具 (RMT) 或 SUSE Manager 连接进行的升级。
有关细节,请参见第 5 章 “联机升级”。
在同一主要版本的服务包之间迁移时,建议使用下面两种方法:第 5.4 节 “使用联机迁移工具 (YaST) 升级”或第 5.5 节 “使用 Zypper 升级”。
- 脱机
脱机升级意味着要升级的操作系统未在运行,相反,需引导另一个操作系统(例如,从安装 DVD 或网络引导),然后执行升级。
有关细节,请参见第 4 章 “脱机升级”。
2 生命周期和支持 #
本章提供有关术语、SUSE 产品生命周期和服务包版本,以及建议的升级策略的背景信息。
2.1 术语 #
本节使用了一些术语。要理解这些信息,请阅读以下定义:
- 向后移植
向后移植是指通过较新版本的软件采取特定的更改,然后将这些更改应用到较旧版本的做法。最常见的用例是修复较旧软件组件中的安全漏洞。通常,它也是用于提供增强或新功能(不太常见)的维护模型的一部分。
- 增量 RPM
增量 RPM 仅包含某个包的两个已定义版本之间的有区别二进制文件,因此其下载大小最小。安装前,需要在本地计算机上重构建完整 rpm 包。
- 下游
开放源代码领域中的软件开发方式的形象说法(与上游相对)。下游一词指从上游将源代码与其他软件集成,从而构建供最终用户使用的发行套件的人员或组织,例如 SUSE。因此,软件将从其开发者开始,通过集成者向下游流向最终用户。
- 扩展, 附加产品
扩展和第三方附加产品为 SUSE Linux Enterprise Server 的产品价值提供附加功能。它们由 SUSE 及 SUSE 的合作伙伴提供,并且在基本产品 SUSE Linux Enterprise Server 的基础上注册和安装。
- LTSS
LTSS 是 Long Term Service Pack Support 的缩写,它以 SUSE Linux Enterprise Server 扩展的形式提供。
- 主要版本, 正式发布 (GA) 版本
SUSE Linux Enterprise(或任何软件产品)的主要版本是一个新版本,其中会引入新功能和工具、停用先前弃用的组件,并加入一些不向后兼容的更改。例如,SUSE Linux Enterprise 11 或 12 是主要版本。
- 迁移
使用联机更新工具或安装媒体更新到某个服务包 (SP),以安装相应的增补程序。它会将安装的系统的所有包更新到最新状态。
- 迁移目标
系统可迁移到的兼容产品集,包含产品/扩展的版本以及储存库的 URL。迁移目标随时间而变化,并依赖于安装的扩展。可以选择多个迁移目标,例如,SLE 12 SP2 和 SES2 或 SLE 12 SP2 和 SES3。
- 模块
模块则全部由 SUSE Linux Enterprise Server 负责支持,其生命周期也不同。它们都有明确定义的范围,只通过联机通道提供。要订阅 SUSE Customer Center、RMT(储存库管理工具)或 SUSE Manager,必须先在这些通道中注册。
- 包
包是
rpm
格式的压缩文件,其中包含特定程序的所有文件,包括配置、示例和文档等可选组件。- 增补程序
增补程序由一个或多个包组成,可通过增量 RPM 方式应用。它也可能带来与尚未安装的包的依赖性。
- 服务包 (SP)
将几个增补程序合并到便于安装或部署的一个组织体中。服务包是有编号的并通常包含安全性修复、更新、升级或程序增强。
- 上游
开放源代码领域中的软件开发方式的形象说法(与下游相对)。术语上游表示以源代码形式分发的软件的原始项目、作者或维护者。反馈、增补程序、功能增强或其他改进措施将从最终用户或贡献者流向上游开发者。开发者决定是要集成还是拒绝请求。
如果项目成员决定集成请求,则会在更新版本的软件中显示这一点。接受的请求将为所有相关方带来好处。
如果某个请求未被接受,则可能是因其他原因而遭到拒绝。原因是该请求的状态不符合项目的准则、该请求无效、已集成该请求,或者它不在项目的考虑范围或路线图内。未被接受的请求会给上游开发者带来不利,因为他们需要将其增补程序与上游代码同步。通常会避免这种做法,但有时仍有必要予以采取。
- 更新
安装某个包的较新次要版本,其中通常包含安全修复或 Bug 修复。
- 升级
安装包或分发包的更新主要版本,引入新功能。
2.2 产品生命周期 #
SUSE 产品的生命周期如下:
SUSE Linux Enterprise Server 的生命周期为 13 年:10 年的标准支持,3 年的扩展支持。
SUSE Linux Enterprise Desktop 的生命周期为 10 年:7 年的标准支持,3 年的扩展支持。
主要版本每 4 年发行一次。服务包每 12-14 个月发行一次。
新服务包发行后,SUSE 对以前的服务包的支持会延续 6 个月。图 2.1 “主要版本和服务包”描述了以上某些方面。
如果您需要更多的时间来设计、验证和测试您的升级计划,长期服务包支持可以延长支持期,让您额外获得以 12 个月为增量的 12 到 36 个月的支持。如此,对于任何服务包,您一共可以得到 2 到 5 年的支持。有关细节,请参见图 2.2 “长期服务包支持”。
有关详细信息,请参见 https://www.suse.com/products/long-term-service-pack-support/。
有关所有产品的生命周期,请参见 https://www.suse.com/lifecycle/。
2.3 模块依赖项和生命周期 #
有关模块、其依赖项和生命周期的列表,请参见 https://www.suse.com/releasenotes/x86_64/SUSE-SLES/15/#Intro.ModuleExtensionRelated。
2.4 生成定期生命周期报告 #
SUSE Linux Enterprise Server 可定期检查所有已安装产品的支持状态更改,如有更改,则会通过电子邮件发送报告。要生成报告,请安装 zypper-lifecycle-plugin
(通过 zypper in zypper-lifecycle-plugin
命令)。
使用 systemctl
命令在系统上启用报告生成功能:
root #
systemctl
enable lifecycle-report
可使用任何文本编辑器,在 /etc/sysconfig/lifecycle-report
文件中配置报告电子邮件的收件人和主题,以及生成报告的时间段。MAIL_TO
和 MAIL_SUBJ
设置分别定义邮件收件人和主题,而 DAYS
则设置生成报告的间隔。
报告显示的是更改发生之后(而不是之前)的支持状态更改。如果更改是在最后一份报告生成之后立即发生的,则您最长可能需要 14 天才会收到更改通知。在设置 DAYS
选项时,需考虑到这一点。更改以下配置项可满足您的需要:
MAIL_TO='root@localhost' MAIL_SUBJ='Lifecycle report' DAYS=14
最新报告可在文件 /var/lib/lifecycle/report
中获得。该文件包含两个部分。第一段告知对所使用产品的支持已结束。第二部分列出包以及它们的支持结束日期和更新可用性。
2.5 支持级别 #
扩展支持级别的范围从第 10 年开始直至第 13 年。这些包含持续的 L3 工程级别诊断和反应性关键 bug 修复。具有这些支持级别,您将接收到针对以下漏洞的更新:内核中可被轻易利用的 root 漏洞,以及其他无需用户交互即可直接执行的 root 漏洞。此外,它们还支持现有的工作负载、软件堆栈和硬件,其中只对少数包不提供支持。可在表 2.1 “安全更新和 bug 修复”中找到概述。
最新服务包 (SP) 的标准支持 |
上个 SP 的标准支持,含 LTSS |
含 LTSS 的扩展支持 | |||
---|---|---|---|---|---|
特性 |
第 1-5 年 |
第 6-7 年 |
第 8-10 年 |
第 4-10 年 |
第 10-13 年 |
技术服务 |
是 |
是 |
是 |
是 |
是 |
可访问增补程序和修复 |
是 |
是 |
是 |
是 |
是 |
可访问文档和知识库 |
是 |
是 |
是 |
是 |
是 |
支持现有堆栈和工作负载 |
是 |
是 |
是 |
是 |
是 |
支持新部署 |
是 |
是 |
受限制(根据合作伙伴和客户要求) |
受限制(根据合作伙伴和客户要求) |
否 |
增强请求 |
是 |
受限制(根据合作伙伴和客户要求) |
受限制(根据合作伙伴和客户要求) |
否 |
否 |
硬件支持与优化 |
是 |
受限制(根据合作伙伴和客户要求) |
受限制(根据合作伙伴和客户要求) |
否 |
否 |
通过 SUSE SolidDriver 程序(前身为 PLDP)进行驱动程序更新 |
是 |
是 |
受限制(根据合作伙伴和客户要求) |
受限制(根据合作伙伴和客户要求) |
否 |
从最新 SP 向后移植修复 |
是 |
是 |
受限制(根据合作伙伴和客户要求) |
不适用 |
不适用 |
重要安全更新 |
是 |
是 |
是 |
是 |
是 |
缺陷解决方法 |
是 |
是 |
受限制(仅限严重性级别 1 和 2 缺陷) |
受限制(仅限严重性级别 1 和 2 缺陷) |
受限制(仅限严重性级别 1 和 2 缺陷) |
2.6 使用 SUSEConnect 注册和取消注册计算机 #
注册系统后,它将从 SUSE Customer Center(请参见 https://scc.suse.com/)或本地注册代理(如 RMT)接收储存库。储存库名称会映射到该客户中心内的特定 URI。要列出系统上所有可用的储存库,请按如下方式使用 zypper
:
root #
zypper
repos -u
这会显示系统上所有可用储存库的列表。每个储存库的别名、名称都会列出,并会指出它是否已启用且会刷新。使用选项 -u
也可以从 URI 的来源处获取该 URI。
要注册您的计算机,请运行 SUSEConnect,例如:
root #
SUSEConnect
-r REGCODE
要取消注册计算机,也可以使用 SUSEConnect:
root #
SUSEConnect
--de-register
要查看本地安装的产品及其状态,请使用以下命令:
root #
SUSEConnect
-s
2.7 识别 SLE 版本 #
如果需要识别 SLE 安装的版本,请检查 /etc/os-release
文件的内容。
可以使用 zypper
获取计算机可读的 XML 输出:
tux >
zypper --no-remote --no-refresh --xmlout --non-interactive products -i
<?xml version='1.0'?> <stream> <product-list> <product name="SLES" version="15" release="0" epoch="0" arch="x86_64" vendor="SUSE" summary="SUSE Linux Enterprise Server 15" repo="@System" productline="sles" registerrelease="" shortname="SLES15" flavor="" isbase="true" installed="true"><endoflife time_t="0" text="0"/><registerflavor/><description>SUSE Linux Enterprise offers [...]</description></product> </product-list> </stream>
3 准备升级 #
在开始升级过程之前,请确保您的系统已准备妥当。这些准备工作包括备份数据,查看发行说明,以及其他工作。
3.1 确保当前系统是最新的 #
仅支持从最新的增补级别升级系统。运行 zypper patch
或启动 YaST 模块 ,以确保已安装最新的系统更新。
3.2 阅读发行说明 #
在发行说明中,您可以找到有关自 SUSE Linux Enterprise Server 的上一个版本发行后所进行的更改的其他信息。检查发行说明以了解:
您的硬件是否有特殊的注意事项;
所用的任何软件包是否已发生重大更改;
是否需要对您的安装实施特殊预防措施。
发行说明还提供未能及时编入手册中的信息。它们还包含有关已知问题的说明。
如果您跳过了一个或多个服务包,另请检查所跳过服务包的发行说明。发行说明通常只包含两个连续的版本之间的更改。如果您只阅读最新的发行说明,可能会了解不到某些重大更改。
在 https://www.suse.com/releasenotes/ 上在线查找最新的发行说明。
您也可在安装 DVD 上的 docu
目录中查找发行说明。
3.3 创建备份 #
在更新之前,请将现有配置文件复制到单独一个媒体(如磁带设备、可卸硬盘等)上,用以备份数据。这主要适用于储存在 /etc
中的文件以及 /var
和 /opt
中的一些目录和文件。最好将 /home
(HOME
目录)中的用户数据也写入备份媒体。以 root
用户的身份备份此数据。仅 root
用户对所有本地文件具有读许可权限。
如果您已在 YaST 中选择/etc/sysconfig
目录中的文件。但是,此备份尚不完整,因为缺少了上述所有其他重要目录。在 /var/adm/backup
目录中查找备份。
3.4 列出已安装的包和储存库 #
保存已安装包的列表通常很有用,例如,在全新安装某个新的主要 SLE 版本或恢复到旧版本时就是如此。
请注意,并非所有已安装的包或使用的储存库在 SUSE Linux Enterprise 的较新版本中都可用。有些包或储存库可能已被重命名,有些可能已被取代。还有可能提供的一些包只是用于旧版,而默认会使用另一个替代它的包。因此,可能需要手动编辑一些文件。您可使用任何文本编辑器进行编辑。
创建包含全部所用储存库列表的文件 repositories.bak.repo
:
root #
zypper
lr -e repositories.bak
另外,创建包含所有已安装包的列表的文件 installed-software.bak
:
root #
rpm
-qa --queryformat '%{NAME}\n' > installed-software.bak
备份这两个文件。使用以下命令可恢复储存库和已安装的包:
root #
zypper
ar repositories.bak.reporoot #
zypper
install $(cat installed-software.bak)
升级到新主要版本的系统 (SLE X+1) 包含的包可能会比初始系统 (SLE X) 的多,也会比选择相同模式执行的 SLE X+1 全新安装所包含的包多。原因如下:
包经过拆分,以便用户能以更高的粒度选择包。例如,SLE 11 上的 37 个 texlive 包已拆分成 SLE 12 上的 422 个包。
将某个包拆分成其他包后,在升级过程中会安装所有新包,以与旧版本保持相同的功能。但是,SLE X+1 全新安装的新默认设置可能不会安装所有包。
出于兼容原因,可能会保留 SLE X 中的旧包。
包依赖项和模式范围可能已发生变化。
3.5 从 SUSE Linux Enterprise Server 11 SP4 升级 #
如果您在 SUSE Linux Enterprise Server 11 SP4 上使用的是 MySQL、PostgreSQL 或基于 Java MD5 的证书,请根据以下各节所述准备系统。
3.5.1 迁移 MySQL 数据库 #
从 SUSE Linux Enterprise 12 开始,SUSE 已从 MySQL 转移到 MariaDB。在开始任何升级操作之前,强烈建议您备份数据库。
要进行数据库迁移,请执行以下操作:
登录到 SUSE Linux Enterprise 11 计算机。
创建转储文件:
root #
mysqldump
-u root -p --all-databases > mysql_backup.sql默认情况下,
mysqldump
不会转储INFORMATION_SCHEMA
或performance_schema
数据库。有关详细信息,请参见 https://dev.mysql.com/doc/refman/5.5/en/mysqldump.html。将您的转储文件、配置文件
/etc/my.cnf
以及/etc/mysql/
目录储存在安全位置,以供日后调查(不要用于安装!)。执行升级。升级后,以前的配置文件
/etc/my.cnf
仍将保持不变。新配置保存在/etc/my.cnf.rpmnew
文件中。根据需要配置 MariaDB 数据库。不要使用以前的配置文件和目录,只是将其用作提醒,并对其进行改编。
确保启动 MariaDB 服务器:
root #
systemctl
start mysql如果您希望每次引导时都启动 MariaDB 服务器,请启用以下服务:
root #
systemctl
enable mysql通过连接数据库来校验 MariaDB 是否正常运行:
root #
mysql
-u root -p
3.5.2 迁移 PostgreSQL 数据库 #
SLE 15 的 PostgreSQL 数据库版本有更新。由于需要完成数据库的迁移工作,因此无法使用自动升级过程。您需要手动完成从一个版本到另一个版本的转移。
迁移过程通过使用 pg_upgrade
命令执行,这种方法可替代传统的转储和重新装载。与“转储并重新装载”方法相比,pg_upgrade
可以减少迁移耗费的时间。
每个 PostgreSQL 版本将其文件储存在与版本相关的不同目录中。更新后,目录将从 /usr/lib/postgresql96/
更改为 /usr/lib/postgresql10/
。
要进行数据库迁移,请执行以下操作:
确保满足以下先决条件:
如果尚未通过维护更新将旧 PostgreSQL 版本的任何包升级到最新版本,请执行该操作。
创建现有数据库的备份。
安装新 PostgreSQL 主要版本的包。对于 SLE15,这意味着要安装 postgresql10-server 及其依赖的所有包。
安装包 postgresql10-contrib, 其中包含命令
pg_upgrade
。确保 PostgreSQL 数据区域(默认为
/var/lib/pgsql/data
)中有足够的可用空间。如果空间不足,请对每个数据库使用以下 SQL 命令,以尝试减少大小(这可能需要花费很长时间!):VACUUM FULL
停止 PostgreSQL 服务器:
root #
systemctl stop postgresql.service重命名旧数据目录:
root #
mv
/var/lib/pgsql/data /var/lib/pgsql/data.old创建新数据目录:
root #
mkdir
-p /var/lib/pgsql/data如果您已更改旧版本中的配置文件,请将文件
postgresql.conf
、pg_hba.conf
复制到新的data
目录:root #
cp
/var/lib/pgsql/data.old/*.conf \ /var/lib/pgsql/data使用
initdb
手动初始化新的数据库实例,或者启动再停止 PostgreSQL 让数据库实例自动初始化:root #
systemctl start postgresql.serviceroot #
systemctl stop postgresql.service启动迁移过程:
root #
pg_upgrade
\ --old-datadir "/var/lib/pgsql/data.old" \ --new-datadir "/var/lib/pgsql/data" \ --old-bindir "/usr/lib/postgresqli96/bin/" \ --new-bindir "/usr/lib/postgresql10/bin/"启动新数据库实例:
root #
systemctl start postgresql.service检查迁移是否成功。没有通用的工具可用来自动执行此步骤。此项操作取决于您的用例,以及要测试的数量和内容。
去除所有旧 PostgreSQL 包和旧数据目录:
root #
zypper
search -s postgresql94 | xargs zypper rm -uroot #
rm
-rf /var/lib/pgsql/data.old
3.5.3 创建用于 Java 应用程序的非 MD5 服务器证书 #
从 SP1 更新到 SP2 期间,在安全性修复时禁用了基于 MD5 的证书。如果您之前创建的证书是 MD5 证书,请执行以下步骤重新创建证书:
打开终端窗口并以
root
身份登录。创建一个私用密钥:
root #
openssl
genrsa -out server.key 1024如果需要强度更高的密钥,请将
1024
替换为更大的数字,例如4096
。创建证书签名请求 (CSR):
root #
openssl
req -new -key server.key -out server.csr对证书自我签名:
root #
openssl
x509 -req -days 365 -in server.csr -signkey server.key -out server.crt创建 PEM 文件:
root #
cat
server.key server.crt > server.pem将
server.crt
、server.csr
、server.key
和server.pem
文件放在可在其中找到密钥的相应目录中。例如,对于 Tomcat,此目录为/etc/tomcat/ssl/
。
3.6 关闭虚拟机 Guest #
如果您的计算机充当 KVM 或 Xen 的 VM 主机服务器,请确保在更新之前关闭所有正在运行的 VM Guest。否则,更新后您可能无法访问 guest。
3.7 检查 RMT 客户端上的 clientSetup4SMT.sh
脚本 #
要迁移针对 RMT 服务器注册的客户端操作系统,需要检查主机上的 clientSetup4SMT.sh
脚本是否为最新版本。较旧版 RMT 的 clientSetup4SMT.sh
无法管理 RMT 12 客户端。如果您在 RMT 服务器上定期应用软件增补程序,那么位于 <SMT_HOSTNAME>/repo/tools/clientSetup4SMT.sh
的 clientSetup4SMT.sh
始终都是最新版本。
3.8 磁盘空间 #
从旧版本到新版本,软件的大小有增长的趋势。因此,在进行更新之前,请查看可用分区空间。如果您怀疑磁盘空间不足,请先备份数据,再通过调整分区大小等方法来增大可用空间。对于每个分区应该具有多少空间,没有一般的经验可以借鉴。空间要求取决于特定的分区配置文件和选定的软件。
在更新过程中,YaST 会检查可用磁盘空间的容量,并在安装大小可能超出可用空间时向用户显示警告。在该情况下,执行更新会导致系统不可用!只有在您完全了解自己要进行的操作的情况下(通过事先测试),才能跳过警告继续更新。
3.8.1 检查非 Btrfs 文件系统上的磁盘空间 #
使用 df
命令可列出可用磁盘空间。例如,在例 3.1 “使用 df -h
列示信息”中,根分区为 /dev/sda3
(作为 /
装入)。
df -h
列示信息 #Filesystem Size Used Avail Use% Mounted on /dev/sda3 74G 22G 53G 29% / tmpfs 506M 0 506M 0% /dev/shm /dev/sda5 116G 5.8G 111G 5% /home /dev/sda1 44G 4G 40G 9% /data
3.8.2 检查 Btrfs 根文件系统上的磁盘空间 #
如果您在计算机上使用 Btrfs 作为根文件系统,请确保有足够的可用空间。在最坏的情况下,升级进程需要将当前根文件系统的所有磁盘空间(不含 /.snapshot
)用于存放新快照。要显示可用的磁盘空间,请使用以下命令:
root #
df
-h /
另外请检查所有其他装入分区上的可用空间。下列建议已证实值得采纳:
包含 Btrfs 在内的所有文件系统需有足够的可用磁盘空间用于下载和安装大型 RPM。旧 RPM 的空间只会在新 RPM 安装之后释放。
对于包含快照的 Btrfs,至少需要有当前安装任务所需的可用空间。建议提供两倍于当前安装大小的可用空间。
如果没有足够的可用空间,您可以尝试使用
snapper
删除旧快照:root #
snapper
listroot #
snapper
delete NUMBER但这种做法并不总是有用。在迁移之前,大多数快照只会占用极少的空间。
3.9 升级订阅管理工具 (SMT) 服务器 #
对于运行 SMT 的服务器,需要执行特殊的升级过程。请参见《Repository Management Tool Guide》中的Book “Repository Mirroring Tool Guide”, Chapter 2 “Migrate from SMT to RMT”。
3.10 暂时禁用内核多版本支持 #
SUSE Linux Enterprise Server 允许您在 /etc/zypp/zypp.conf
中启用相应设置来安装多个内核版本。为了升级到某个服务包,需要暂时禁用对此功能的支持。当更新成功完成后,可以重新启用多版本支持。要禁用多版本支持,请对 /etc/zypp/zypp.conf
中的相应行加上注释。结果应类似如下内容:
#multiversion = provides:multiversion(kernel) #multiversion.kernels = latest,running
要在成功更新后重新激活此功能,请去除注释符号。有关多版本支持的详细信息,请参见Book “部署指南”, Chapter 19 “安装多个内核版本”, Section 19.1 “启用和配置多版本支持”。
3.11 在 IBM Z 上升级 #
在 IBM Z 上升级 SUSE Linux Enterprise 安装需要设置 Upgrade=1
内核参数(例如,通过 parmfile)。请参见第 5.4 节 “Parmfile — 自动进行系统配置”。
3.12 IBM POWER:启动 X 服务器 #
在 SLES 12 for IBM POWER 上,显示管理器配置为默认不启动本地 X 服务器。该设置在 SLES 12 SP1 则相反,即显示管理器现在会启动 X 服务器。
为了避免升级期间出现问题,SUSE Linux Enterprise Server 设置不会自动更改。如果要让显示管理器在升级后启动 X 服务器,请按如下所示在 /etc/sysconfig/displaymanager
中更改 DISPLAYMANAGER_STARTS_XSERVER
设置:
DISPLAYMANAGER_STARTS_XSERVER="yes"
4 脱机升级 #
本章介绍如何使用从安装媒体引导的 YaST,升级现有的 SUSE Linux Enterprise 安装。YaST 安装程序有多种启动方法,例如从 DVD 启动、通过网络启动或从系统所在的硬盘启动。
4.1 概念概述 #
在升级系统之前,请先阅读第 3 章 “准备升级”。
要升级系统,请像执行全新安装时那样从安装源引导。但是,当引导屏幕出现时,您需要选择
(而不是 )。可从以下媒体启动升级:可移动媒体: 包括 CD、DVD 或 USB 大容量储存设备等媒体。更多信息请参见第 4.2 节 “从安装媒体启动升级”。
网络 资源: 您可以从本地媒体引导然后选择相应的网络安装类型,或者通过 PXE 引导。有关详细信息,请参见第 4.3 节 “从网络源启动升级”。
4.2 从安装媒体启动升级 #
下面的过程介绍如何从 DVD 引导,不过,您也可以使用其他本地安装媒体,例如 USB 大容量储存设备上的 ISO 映像。要选择的媒体和引导方法取决于系统体系结构,以及计算机使用的是传统的 BIOS 还是 UEFI。
选择并准备引导媒体,请参见Book “部署指南”。
插入 SUSE Linux Enterprise 12 SP3 安装媒体的 DVD 1 并引导计算机。
屏幕即会显示,接着是引导屏幕。在引导菜单中选择升级以启动系统。
按第 4.5 节 “升级 SUSE Linux Enterprise”中所述继续执行升级过程。
4.3 从网络源启动升级 #
要从网络安装源开始升级,请确保满足以下要求:
- 网络安装源
网络安装源已按照Book “部署指南”, Chapter 14 “设置网络安装源”所述设置妥当。
- 网络连接和网络服务
安装服务器与目标计算机的网络连接均必须正常。必需的网络服务如下:
域名服务
DHCP(仅在通过 PXE 引导时需要,可在设置期间手动设置 IP)
OpenSLP(可选)
- 引导媒体
可引导的 SUSE Linux Enterprise DVD、ISO 映像或功能正常的 PXE 设置。有关通过 PXE 引导的细节,请参见Book “部署指南”, Chapter 15 “准备网络引导环境”, Section 15.4 “准备目标系统的 PXE 引导”。请参见Book “部署指南”, Chapter 11 “远程安装”,深入了解从远程服务器开始升级的相关信息。
4.3.1 通过网络安装源手动升级 — 从 DVD 引导 #
此过程举例说明了如何从 DVD 引导,不过,您也可以使用其他本地安装媒体,例如 USB 大容量储存设备上的 ISO 映像。如何选择引导方法以及从媒体启动系统取决于系统体系结构,以及计算机使用的是传统 BIOS 还是 UEFI。有关细节,请参见以下链接。
插入 SUSE Linux Enterprise 12 SP2 安装媒体的 DVD 1 并引导计算机。
屏幕即会显示,接着是引导屏幕。选择要使用的网络安装源类型(FTP、HTTP、NFS、SMB 或 SLP)。通常可以按 F4 选择此选项,但是,如果您计算机上装配的是 UEFI 而不是传统 BIOS,则可能需要手动调整引导参数。有关细节,请参见Book “部署指南”, Chapter 7 “引导参数”和Book “部署指南”, Chapter 8 “安装步骤”。
按第 4.5 节 “升级 SUSE Linux Enterprise”中所述继续执行升级过程。
4.3.2 通过网络安装源手动升级 — 通过 PXE 引导 #
要通过 PXE 引导从网络安装源执行升级,请按以下步骤操作:
调整 DHCP 服务器的设置以提供通过 PXE 引导所需的地址信息。有关细节,请参见Book “部署指南”, Chapter 15 “准备网络引导环境”, Section 15.1 “设置 DHCP 服务”。
设置 TFTP 服务器,以保存通过 PXE 引导所需的引导映象。为此,请使用 SUSE Linux Enterprise 12 SP2 安装媒体的 DVD 1,或者遵循Book “部署指南”, Chapter 15 “准备网络引导环境”, Section 15.2 “设置 TFTP 服务器”中的指导。
在目标计算机上准备 PXE Boot 和局域网唤醒。
对目标系统引导进行初始化,并用 VNC 远程连接到此计算机正运行的安装例程上。有关详细信息,请参见Book “部署指南”, Chapter 11 “远程安装”, Section 11.3 “通过 VNC 监视安装”。
按第 4.5 节 “升级 SUSE Linux Enterprise”中所述继续执行升级过程。
4.4 启用自动升级 #
升级过程可以自动执行。要启用自动更新,必须设置内核参数 autoupgrade=1
。可在引导时于引导选项
字段中设置该参数。有关细节,请参见 https://www.suse.com/documentation/sles-12/book_autoyast/data/introduction.html。
4.5 升级 SUSE Linux Enterprise #
在升级系统之前,请先阅读第 3 章 “准备升级”。要执行自动迁移,请如下操作:
(从安装媒体或网络)引导后,请在引导屏幕上选择第 4.4 节 “启用自动升级”。
这一项。要按照后续步骤所述手动执行升级,则需禁用自动升级过程。请参考警告:不当的选择可能会导致数据丢失如果您选择
而不是 ,之后数据可能会丢失。请格外小心不要执行全新安装,以免损坏数据分区。请务必在此处选择
。YaST 将启动安装系统。
在
屏幕上,选择 和 。单击 继续。YaST 将检查您的分区上是否已安装 SUSE Linux Enterprise 系统。
在
屏幕上,选择要升级的分区,然后单击 。YaST 会装入选定的分区,并显示所升级产品的许可协议。要继续升级,请接受许可条款。
在
屏幕上,调整储存库的状态:启用您要包含在升级过程中的储存库,并禁用不再需要的所有储存库。单击 继续。下一步骤取决于要升级的系统是否已注册。
如果该系统未注册,YaST 会显示一条弹出讯息,建议使用另一个安装媒体,即 SLE-15-Packages 媒体。
如果您没有该媒体,则只能将该系统升级到精简的 SUSE Linux Enterprise 15 系统。
如果该系统已注册,则 YaST 将显示可能的迁移目标和摘要。
从列表中选择一个迁移目标,然后单击
继续。
在下一个对话框中,您可以选择性地添加额外的安装媒体。如果您有额外的安装媒体,请激活
选项,并指定媒体类型。检查升级的
。如果所有设置都符合您的需要,请单击
开始安装与去除过程。升级过程成功完成后,检查是否存在任何“孤立的包”。孤立的包是指不再属于活动储存库的包。以下命令可以列出这些包:
tux >
zypper packages --orphaned借助该列表,您可以决定是仍需要该包还是可以将其安全卸装。
4.6 通过 SUSE Manager 更新 #
SUSE Manager 是一个服务器解决方案,用于提供适用于 SUSE Linux Enterprise 客户端的更新、增补程序和安全修复。它随附了一套工具和基于 Web 的用户界面,用于执行管理任务。有关 SUSE Manager 的详细信息,请参见 https://www.suse.com/products/suse-manager/。
SUSE Manager 可为您提供 SP 迁移或完整系统升级支持。
- SP 迁移
SP 迁移允许从一个主要版本中的一个服务包 (SP) 迁移到另一个服务包(例如,从 SLES 12 SP1 迁移到 12 SP2)。有关详细信息,请参见《SUSE Manager Best Practices》(SUSE Manager 最佳实践)“Client Migration”(客户端迁移)一章中的“Migrating SUSE Linux Enterprise Server 12 or later to version 12 SP2”(将 SUSE Linux Enterprise Server 12 或更高版本迁移到版本 12 SP2)一节:
- 系统升级
您可以使用 SUSE Manager 来执行系统升级。通过集成的 AutoYaST 技术,可以从一个主要版本升级到下一个主要版本(例如,从 SLES 11 SP3 升级到 12 SP2)。有关详细信息,请参见《SUSE Manager Best Practices》(SUSE Manager 最佳实践)“Client Migration”(客户端迁移)一章中的“Migrating SUSE Linux Enterprise 11 SP3 to version 12 SP2”(将 SUSE Linux Enterprise 11 SP3 迁移到版本 12 SP2)一节:
4.7 回滚后更新注册状态 #
执行服务包升级时,必须在注册服务器上更改配置,以提供对新储存库的访问权限。如果升级过程被中断或恢复(通过从备份或快照恢复),注册服务器上的信息会与系统的状态不一致。这样可能会导致您无法访问更新储存库,或是在客户端上使用错误的储存库。
如果回滚是通过 Snapper 完成的,系统会通知注册服务器以确保在引导过程中设置对正确储存库的访问信息。如果使用其他方法恢复了系统,或者与注册服务器通讯失败,请在客户端上手动触发回滚。例如,在因网络问题而无法访问服务器时,可以手动触发回滚。要进行回滚,请执行:
tux >
sudo
snapper
rollback
我们建议始终检查系统上是否设置了正确的储存库,特别是使用以下命令刷新服务后::
tux >
sudo
zypper
ref -s
此功能在 rollback-helper 包中提供。
4.8 注册您的系统 #
如果在运行升级之前未注册系统,您随时都可使用 YaST 中的
模块来注册系统。注册系统可以获得以下优势:
有资格获得支持
获取安全性更新和 Bug 修复
访问 SUSE Customer Center
启动 YaST 并选择
› 以打开 对话框。提供与您或您的组织管理订阅时所用的 SUSE 帐户关联的https://scc.suse.com/) 创建一个帐户。
地址。如果您没有 SUSE 帐户,请转到 SUSE Customer Center 主页 (输入与 注册代码。
副本一同收到的如果您的网络中有一个或多个本地注册服务器可用,您可以从列表中选择一个。
要开始注册,请继续执行
。成功注册后,YaST 会列出系统可用的扩展、附加产品和模块。要选择并安装所列的项,请继续Book “部署指南”, Chapter 18 “安装模块、扩展和第三方附加产品”, Section 18.1 “从在线通道安装模块与扩展”。
5 联机升级 #
SUSE 提供了直观的图形工具和简单的命令行工具,供您将正在运行的系统升级到新服务包。它们提供“回滚”服务包支持及其他功能。本章将逐步介绍如何使用这些工具来执行服务包升级。
5.1 概念概述 #
SUSE 会定期发布用于 SUSE Linux Enterprise 系列的新服务包。为了方便客户迁移到新的服务包,并最大限度减少停机时间,SUSE 支持在系统运行时进行联机迁移。
从 SLE 12 开始,YaST Wagon 已经由 YaST 迁移 (GUI) 和 Zypper 迁移(命令行)替代。系统支持以下功能:
系统在首个 RPM 更新之前始终处于指定的状态
在首个 RPM 更新之前可以取消
如果出现错误可以轻松恢复
通过系统工具“回滚”;不需要备份/恢复
使用所有活动储存库
可以跳过服务包
仅支持在服务包之间进行联机迁移。不支持通过联机迁移升级到新的主要版本。有关细节,请参见第 1 章 “升级路径和方法”。
请通过脱机迁移升级到新的主要版本。有关细节,请参见第 4 章 “脱机升级”。
5.2 服务包迁移工作流程 #
服务包迁移可通过 YaST、zypper
或 AutoYaST 执行。
在开始服务包迁移之前,必须在 SUSE Customer Center 或本地 RMT 服务器中注册您的系统。也可以使用 SUSE Manager。
不论使用哪种方式,服务包迁移都包含以下步骤:
在注册系统中查找可能的迁移目标。
选择一个迁移目标。
请求并启用新的储存库。
运行迁移。
迁移目标列表取决于您所安装和注册的产品。如果您安装的扩展没有新的 SP 可用,则无法向您提供迁移目标。
主机可用的迁移目标列表将始终从 SUSE Customer Center 检索,并与安装的产品或扩展相关。
5.3 取消服务包迁移 #
服务包迁移只能在迁移过程中的特定阶段取消:
包升级过程开始之前,系统上只有极小的更改,例如服务和储存库的更改。恢复
/etc/zypp/repos.d/*
以便还原到之前的状态。包升级过程开始之后,可以使用 Snapper 快照(请参见Book “管理指南”, Chapter 7 “通过 Snapper 进行系统恢复和快照管理”)还原到之前的状态。
选择迁移目标之后,SUSE Customer Center 更改了储存库数据。要手动还原此状态,请使用
SUSEConnect
--rollback
。
5.4 使用联机迁移工具 (YaST) 升级 #
要通过 YaST 执行服务包迁移,请使用
工具。默认情况下,YaST 不会从第三方储存库安装任何包。如果某包是从第三方储存库安装的,YaST 会阻止该包替换成来自 SUSE 的相同包。执行服务包迁移时,YaST 会安装所有推荐的包。特别是在自定义最小安装的情况下,这样可能会大幅增加系统的安装大小。
要更改这种默认行为,只允许安装所需的包,请调整 /etc/zypp/zypp.conf
并设置以下变量:
solver.onlyRequires = true installRecommends=false # or commented
这会更改所有与包相关操作的行为,例如安装增补程序或新包的行为。
要开始服务包迁移,请执行以下操作:
停用注册服务器上所有未使用的扩展,以免将来发生依赖性冲突。YaST 稍后会检测未使用的扩展储存库并将其停用,以防您忘记了某个扩展。
如果您已登录到要更新的计算机上某个正在运行的 GNOME 会话,请切换到文本控制台。建议不要从 GNOME 会话运行更新。请注意,这并不适用于从远程计算机登录的情况(除非您正在使用 GNOME 运行 VNC 会话)。
如果您是 LTSS 订购者,请确保 LTSS 扩展储存库处于活动状态。
运行 YaST 联机更新以获得系统的最新包更新。
安装包 yast2-migration 及其依赖项(在 YaST 的 › 下)。
重启动 YaST;如果不重启动,新安装的模块将不会显示在控制中心中。
在 YaST 中,选择SUSE Linux Enterprise Server 版本,此模块会列于 或 类别下)。YaST 将显示可能的迁移目标和摘要。如果有多个迁移目标可用于系统,请从列表中选择一个。
(根据要升级的从列表中选择一个迁移目标,然后单击
继续。如果迁移工具提供更新储存库,建议单击
继续。如果“联机迁移”工具找到来自 DVD 或本地服务器的过时储存库,强烈建议您将其禁用。过时储存库来自上一个服务包。系统会自动去除来自 SUSE Customer Center 或 RMT 的所有旧储存库。
单击
,查看摘要并继续迁移过程。确认 。成功迁移后,请重启动系统。
5.5 使用 Zypper 升级 #
要用 Zypper 执行服务包迁移,请使用命令行工具 zypper
migration
(来自包
zypper-migration-plugin)。
执行服务包迁移时,YaST 会安装所有推荐的包。特别是在自定义最小安装的情况下,这样可能会大幅增加系统的安装大小。
要更改这种默认行为,只允许安装所需的包,请调整 /etc/zypp/zypp.conf
并设置以下变量:
solver.onlyRequires = true installRecommends=false # or commented
这会更改所有与包相关操作的行为,例如安装增补程序或新包的行为。要更改某次调用的 Zypper 行为,请在命令行上添加参数 --no-recommends
。
要开始服务包迁移,请执行以下操作:
如果您已登录到要更新的计算机上某个正在运行的 GNOME 会话,请切换到文本控制台。建议不要从 GNOME 会话运行更新。请注意,这并不适用于从远程计算机登录的情况(除非您正在使用 GNOME 运行 VNC 会话)。
注册 SUSE Linux Enterprise 计算机(如果尚未注册):
tux >
sudo
SUSEConnect
--regcode YOUR_REGISTRATION_CODE如果您是 LTSS 订购者,请确保 LTSS 扩展储存库处于活动状态。
运行
zypper
migration
:tux >
sudo
zypper
migration Executing 'zypper patch-check' Refreshing service 'SUSE_Linux_Enterprise_Server_12_x86_64'. Loading repository data... Reading installed packages... 0 patches needed (0 security patches) Available migrations: 1 | SUSE Linux Enterprise Server 12 SP1 x86_64 2 | SUSE Linux Enterprise Server 12 SP2 x86_64有关迁移过程的一些备注:
如果有多个迁移目标可用于系统,Zypper 会让您从列表中选择一个服务包。这与跳过一个或多个服务包一样。请注意,基础产品(SLES、SLED)的联机迁移仍然只适用于在主要版本的服务包之间进行。
默认情况下,Zypper 会使用
--no-allow-vendor-change
选项,以传递到zypper
dup
。如果某包是从第三方储存库安装的,此选项会阻止该包替换成来自 SUSE 的相同包。如果 Zypper 找到来自 DVD 或本地服务器的过时储存库,强烈建议您将其禁用。系统会自动去除旧的 SUSE Customer Center 或 RMT 储存库。
查看所有更改,特别是即将去除的包。键入
y
(要升级的包的确切数目会根据系统的不同而变化)继续:266 packages to upgrade, 54 to downgrade, 17 new, 8 to reinstall, 5 to remove, 1 to change arch. Overall download size: 285.1 MiB. Already cached: 0 B After the operation, additional 139.8 MiB will be used. Continue? [y/n/? shows all options] (y):
使用 Shift–Page ↑ 或 Shift–Page ↓ 键在外壳中滚动。
成功迁移后,请重启动系统。
5.6 使用 Plain Zypper 升级 #
如果不能使用 YaST 迁移或 Zypper 迁移,您仍可以单纯通过 Zypper 并执行一些人工交互进行迁移。要开始服务包迁移,请执行以下操作:
如果您已登录到要更新的计算机上某个正在运行的 GNOME 会话,请切换到文本控制台。建议不要从 GNOME 会话运行更新。请注意,这并不适用于从远程计算机登录的情况(除非您正在使用 GNOME 运行 VNC 会话)。
用旧 SUSE Linux Enterprise 储存库更新包管理工具:
tux >
sudo
zypper
patch --updatestack-only如果系统已注册,则需要先取消注册:
tux >
sudo
SUSEConnect
--de-register去除旧安装源和储存库,并调整第三方储存库。
添加新的安装源,不论是本地的还是远程的(有关占位符 REPOSITORY,请参考第 2.3 节 “模块依赖项和生命周期”):
sudo
zypper
addrepo REPOSITORY您也可以使用 SUSE Customer Center 或储存库管理工具。适用于 AMD64/Intel 64 上的 SUSE Linux Enterprise 12 SP1 的命令为:
tux >
sudo
SUSEConnect
-p SLES/12.2/x86_64 OPTIONS请注意,系统不支持跨体系结构升级。
Zypper 将显示新旧内核之间的冲突。选择解决方案 1 继续。
Problem: product:SLES-12.2-0.x86_64 conflicts with kernel < 4.4 provided by kernel-default-VERSION Solution 1: Following actions will be done: replacement of kernel-default-VERSION with kernel-default-VERSION deinstallation of kernel-default-VERSION Solution 2: do not install product:SLES-12.2-0.x86_64
完成迁移:
tux >
sudo
zypper
ref -f -stux >
sudo
zypper
dup --no-allow-vendor-change --no-recommends第一个命令会更新所有服务和储存库。第二个命令会执行发行套件升级。在这里,最后两个选项比较重要:
-no-allow-vendor-change
确保第三方 RPM 不会重写基础系统中的 RPM。--no-recommends
选项可确保初始安装过程中取消选择的包不会再次被添加。
5.7 回滚服务包 #
如果服务包对于您而言不起作用,则 SUSE Linux Enterprise 支持将系统恢复到开始服务包迁移之前的状态。前提是对 Btrfs 根分区启用了快照(这是安装 SLES 12 时的默认设置)。有关详细信息,请参见Book “管理指南”, Chapter 7 “通过 Snapper 进行系统恢复和快照管理”。
获取所有 Snapper 快照的列表:
tux >
sudo
snapper list查看输出以找到在开始服务包迁移之前刚创建的快照。
列包含相应的声明,并且 列中会将该快照标记为important
。记住 列中的快照编号,以及 列中该快照的日期。重引导系统。从引导菜单中选择
,然后选择上一步中记下的日期和编号所对应的快照。此时会装载第二个引导菜单(快照中的那个)。选择以SLES 12
开头的项并引导它。系统会引导到先前的状态,并且系统分区会以只读方式装入。以
root
身份登录,并检查您是否选择了正确的快照。另外,请确保一切如常。请注意,由于根文件系统是以只读方式装入的,因此功能可能受限。如果出现问题,或者您引导了错误的快照,请重新引导并选择从另一个快照引导 — 到此为止,系统尚未进行任何永久更改。如果快照正确并且按预期工作,请运行以下命令让更改永久生效:
tux >
sudo
snapper rollback然后重引导。在引导屏幕上,选择默认的引导项以重引导至恢复后的系统。
检查是否已正确重设置储存库配置。另外,检查是否所有产品均已正确注册。如果以上任何一项不正确,则稍后可能无法再有效地执行系统更新,或者可能会使用错误的包储存库更新系统。
请先确保系统可以访问因特网,再开始此过程。
运行以下命令以刷新服务和储存库:
tux >
sudo
zypper ref -fs运行以下命令以获得活动的储存库列表:
tux >
sudo
zypper lr仔细检查此命令的输出。为此次更新添加的服务和储存库不应该包含在列表中。例如,如果您是从 SLES 12 SP1 回滚到 SLES 12 SP2,则列表中必须包含
SP1
储存库,而不包含SLES12-SP2-Pool
和SLES12-SP2-Updates
储存库。如果列出了错误的储存库,请将其删除,必要时,请用与您的产品或服务包版本匹配的版本替换它们。有关受支持迁移路径的储存库列表,请参见第 2.3 节 “模块依赖项和生命周期”。
最后,通过运行以下命令检查所有已安装产品的注册状态:
tux >
sudo
SUSEConnect --status所有产品都应该报告为
已注册
。若非如此,请运行以下命令修复注册:tux >
sudo
SUSEConnect --rollback
现在,您已成功将系统恢复到就在开始服务包迁移之前捕获的状态。
5.8 从 openSUSE Leap 迁移到 SUSE Linux Enterprise Server #
可将 openSUSE 安装联机迁移到 SUSE Linux Enterprise Server。此过程与第 5.5 节 “使用 Zypper 升级”类似,但需要执行一些额外的步骤。我们建议先在与生产设置相同的测试系统上运行此过程,然后再在生产系统中执行。
要查看支持迁移的 openSUSE Leap 版本,请阅读第 1.1 节 “支持的 SLE 15 升级路径”。
openSUSE 储存库提供的包比 SUSE Linux Enterprise Server 储存库提供的包要多。如果您安装了 openSUSE 储存库中的任何包,迁移后,它们将不再会接收更新。如果执行下面的过程,将会去除这些包。
请确保 SUSE Linux Enterprise Server 储存库中提供了运行系统所需的全部包。您也可以检查 SUSE Package Hub 储存库中是否提供了这些包。有关细节,请参见Book “部署指南”, Chapter 18 “安装模块、扩展和第三方附加产品”, Section 18.3 “SUSE Package Hub”。
要从 openSUSE Leap 迁移,请执行以下过程:
切换到 TTY,例如,按 Ctrl–Alt–F1。然后以
root
身份登录。安装 SUSEConnect。
root #
zypper in SUSEConnect
下载安装 DVD ISO 文件并装入到系统中。然后导入 SLE 的储存库密钥。
root #
mount /PATH/TO/ISO_FILE /mnt
root #
rpm --import /mnt/repodata/repomd.xml.key
root #
umount /mnt
在 SCC 中注册,以获取 SUSE Linux Enterprise Server 储存库。
root #
SUSEConnect -r REGISTRATION_CODE -p SLES/PRODUCT_VERSION/ARCHITECTURE
将 PRODUCT_VERSION 替换为 SUSE Linux Enterprise Server 的目标版本,例如
15.0
。将 ARCHITECTURE 替换为系统的体系结构,例如
x86_64
或AArch64
。忽略有关产品冲突的错误讯息。
现在手动添加
SLES
产品。root #
zypper in --force-resolution -t product SLES
按
y
确认包选择。列出然后去除系统上的所有 openSUSE 储存库。
root #
zypper lr
root #
zypper rr [REPOSITORY_IDS]
现在,添加安装所需的模块。
root #
SUSEConnect --list-extensions
[...]root #
SUSEConnect -p sle-module-basesystem/VERSION/ARCHITECTURE
将安装的包迁移到 SUSE Linux Enterprise Server 储存库。
root #
zypper dup --force-resolution
下载后,文件冲突可能会显示出来。确认这些冲突是否对您有影响,然后键入
yes
继续。可选:添加其他储存库(例如 Package Hub),然后再次运行
zypper dup
。去除孤立的包。
root #
zypper rm $(zypper packages --orphaned | gawk '{print $5}' | tail -n +7)
最后,重引导系统。
6 向后移植源代码 #
SUSE 广泛使用了向后移植,例如当前的软件修复和功能迁移到过去发布的 SUSE Linux Enterprise 包中。本章中的信息解释通过比较版本号来判断 SUSE Linux Enterprise 软件包的功能和安全性为何有误导性。此外,本章还会说明 SUSE 如何在确保系统软件安全且最新的同时,保持 SUSE Linux Enterprise 产品上所运行应用程序软件的兼容性。您还将了解如何检查在 SUSE Linux Enterprise 系统软件中实际解决了哪些公共安全问题,以及您的软件的当前状态。
6.1 向后移植的原因 #
上游开发者主要关心所开发软件的进度。他们往往会在修复 bug 的同时引入尚未经过广泛测试并可能会造成新 bug 的新功能。
对于分发包开发者而言,必须区分两种情况:
在对功能造成有限中断的情况下执行的 bug 修复;以及
可能会中断现有功能的更改。
通常情况下,当某个包已属于所发布的发行套件时,发行套件开发者不会遵照所有的上游更改。通常,他们会继续使用最初发布的上游版本,并根据上游更改来创建增补程序以修复 bug。这种做法称为向后移植。
通常,分发包开发者只会在两种情况下引入软件的更新版本:
当他们的包与上游版本之间的差异过大,以致向后移植的做法不再可行,或者
软件(例如防恶意软件的软件)由于固有的性质而变得不合时宜。
由于我们致力于在几个企业软件考虑因素之间实现合理的平衡,SUSE 广泛使用了向后移植。其中,最重要的考虑因素包括:
提供稳定的接口 (API),软件供应商在构建可用于 SUSE 企业产品的产品时可以依赖这些接口。
确保 SUSE 企业产品版本中使用的包具有最好的质量,这些包本身以及在成为整个企业产品的一部分后已经过充分的测试。
由其他供应商对 SUSE 的企业产品维持各种认证,就像对 Oracle 或 SAP 产品的认证一样。
让 SUSE 开发人员专注于开发下一个产品版本,而不是顾此失彼地将精力分散在众多不同的修订版上。
清楚明了特定企业版本中包含的功能和特性,以便我们的支持可以提供有关该版本的准确及时的信息。
6.2 反对向后移植的原因 #
不要将新的上游包版本引入我们的企业产品,这是常见的策略规则,但不是硬性规则。对于特定的包类型,尤其是防病毒软件,安全方面是我们考虑更多的因素,而不是优先考虑质量保证方面的保守做法。对于这个种类的包,偶尔会将更新的版本引入企业产品系列的发布版本。
有时,对于其他类型的包,我们也会选择引入新版本,而不是向后移植。当生成向后移植在经济效益上不可行,或者由于极其相关的技术原因而需要引入更新版本时,我们会采取这种做法。
6.3 使用向后移植时解释版本号所产生的效果 #
由于采用向后移植的做法,用户不能简单地通过比较版本号来确定 SUSE 包是否包含针对特定问题的修复,或者其中是否添加了特定的功能。在使用向后移植时,SUSE 包版本号的上游部分只是表示 SUSE 包基于的上游版本。它可能包含相应上游版本中没有但已向后移植到 SUSE 包中的 bug 修复和功能。
在涉及到向后移植时,版本号的这种有限价值可能会造成在特定情况下产生问题,也就是在使用安全扫描工具的时候。某些安全漏洞扫描工具(或者在此类工具中进行特定的测试)只能基于版本号运行。因此,在涉及到向后移植时,这些工具和测试很容易生成“误报”(将某个软件错误地识别为有漏洞)。在评估安全扫描工具生成的报告时,请始终检查其中的条目是基于版本号,还是基于实际的漏洞测试。
6.4 检查已修复的 Bug 和向后移植的功能 #
有关向后移植的 bug 修复和功能等的信息储存在几个位置:
包的更改日志:
tux >
rpm -q --changelog name-of-installed-packagetux >
rpm -qp --changelog packagefile.rpm其输出简要记录了包的更改历史记录。
包的更改日志可能包含类似于引用 SUSE Bugzilla 跟踪系统中的
bsc#1234
(“Bugzilla Suse.Com”) 之类的项,或者包含指向其他 Bug 跟踪系统的链接。出于保密政策的缘故,您不一定能够访问所有此类信息。包中可能包含
/usr/share/doc/PACKAGENAME/README.SUSE
文件,该文件包含特定于 SUSE 包的一般概要信息。RPM 源包包含构建普通二进制 RPM 期间应用的增补程序,这些增补程序以独立文件的形式存在,如果您熟知如何阅读源代码,可以对这些文件进行解释。请参见Book “管理指南”, Chapter 6 “使用命令行工具管理软件”, Section 6.1.2.5 “安装或下载源包”,了解如何安装 SUSE Linux Enterprise 软件的源。请参见Book “管理指南”, Chapter 6 “使用命令行工具管理软件”, Section 6.2.5 “安装和编译源包”,了解如何在 SUSE Linux Enterprise 上构建包。请参见《Maximum RPM》(充分利用 RPM)一书,了解有关 SUSE Linux Enterprise 软件包构建的细节。
有关安全 Bug 修复,请查阅 SUSE 安全声明。这些声明往往通过公共漏洞和披露 (CVE) 项目所维护的标准化名称(例如
CAN-2005-2495
)来称呼 Bug。
A GNU 许可证 #
此附录包含 GNU 自由文档许可证版本 1.2。
GNU Free Documentation License #
Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.
0. PREAMBLE #
The purpose of this License is to make a manual, textbook, or other functional and useful document "free" in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or non-commercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others.
This License is a kind of "copyleft", which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software.
We have designed this License to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference.
1. APPLICABILITY AND DEFINITIONS #
This License applies to any manual or other work, in any medium, that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. Such a notice grants a world-wide, royalty-free license, unlimited in duration, to use that work under the conditions stated herein. The "Document", below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as "you". You accept the license if you copy, modify or distribute the work in a way requiring permission under copyright law.
A "Modified Version" of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language.
A "Secondary Section" is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document's overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (Thus, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them.
The "Invariant Sections" are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License. If a section does not fit the above definition of Secondary then it is not allowed to be designated as Invariant. The Document may contain zero Invariant Sections. If the Document does not identify any Invariant Sections then there are none.
The "Cover Texts" are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License. A Front-Cover Text may be at most 5 words, and a Back-Cover Text may be at most 25 words.
A "Transparent" copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, that is suitable for revising the document straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup, or absence of markup, has been arranged to thwart or discourage subsequent modification by readers is not Transparent. An image format is not Transparent if used for any substantial amount of text. A copy that is not "Transparent" is called "Opaque".
Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML, PostScript or PDF designed for human modification. Examples of transparent image formats include PNG, XCF and JPG. Opaque formats include proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machine-generated HTML, PostScript or PDF produced by some word processors for output purposes only.
The "Title Page" means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, "Title Page" means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text.
A section "Entitled XYZ" means a named subunit of the Document whose title either is precisely XYZ or contains XYZ in parentheses following text that translates XYZ in another language. (Here XYZ stands for a specific section name mentioned below, such as "Acknowledgements", "Dedications", "Endorsements", or "History".) To "Preserve the Title" of such a section when you modify the Document means that it remains a section "Entitled XYZ" according to this definition.
The Document may include Warranty Disclaimers next to the notice which states that this License applies to the Document. These Warranty Disclaimers are considered to be included by reference in this License, but only as regards disclaiming warranties: any other implication that these Warranty Disclaimers may have is void and has no effect on the meaning of this License.
2. VERBATIM COPYING #
You may copy and distribute the Document in any medium, either commercially or non-commercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3.
You may also lend copies, under the same conditions stated above, and you may publicly display copies.
3. COPYING IN QUANTITY #
If you publish printed copies (or copies in media that commonly have printed covers) of the Document, numbering more than 100, and the Document's license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects.
If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages.
If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a computer-network location from which the general network-using public has access to download using public-standard network protocols a complete Transparent copy of the Document, free of added material. If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public.
It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document.
4. MODIFICATIONS #
You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version:
Use in the Title Page (and on the covers, if any) a title distinct from that of the Document, and from those of previous versions (which should, if there were any, be listed in the History section of the Document). You may use the same title as a previous version if the original publisher of that version gives permission.
List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modifications in the Modified Version, together with at least five of the principal authors of the Document (all of its principal authors, if it has fewer than five), unless they release you from this requirement.
State on the Title page the name of the publisher of the Modified Version, as the publisher.
Preserve all the copyright notices of the Document.
Add an appropriate copyright notice for your modifications adjacent to the other copyright notices.
Include, immediately after the copyright notices, a license notice giving the public permission to use the Modified Version under the terms of this License, in the form shown in the Addendum below.
Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document's license notice.
Include an unaltered copy of this License.
Preserve the section Entitled "History", Preserve its Title, and add to it an item stating at least the title, year, new authors, and publisher of the Modified Version as given on the Title Page. If there is no section Entitled "History" in the Document, create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then add an item describing the Modified Version as stated in the previous sentence.
Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and likewise the network locations given in the Document for previous versions it was based on. These may be placed in the "History" section. You may omit a network location for a work that was published at least four years before the Document itself, or if the original publisher of the version it refers to gives permission.
For any section Entitled "Acknowledgements" or "Dedications", Preserve the Title of the section, and preserve in the section all the substance and tone of each of the contributor acknowledgements and/or dedications given therein.
Preserve all the Invariant Sections of the Document, unaltered in their text and in their titles. Section numbers or the equivalent are not considered part of the section titles.
Delete any section Entitled "Endorsements". Such a section may not be included in the Modified Version.
Do not retitle any existing section to be Entitled "Endorsements" or to conflict in title with any Invariant Section.
Preserve any Warranty Disclaimers.
If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version's license notice. These titles must be distinct from any other section titles.
You may add a section Entitled "Endorsements", provided it contains nothing but endorsements of your Modified Version by various parties--for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a standard.
You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one.
The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version.
5. COMBINING DOCUMENTS #
You may combine the Document with other documents released under this License, under the terms defined in section 4 above for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice, and that you preserve all their Warranty Disclaimers.
The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work.
In the combination, you must combine any sections Entitled "History" in the various original documents, forming one section Entitled "History"; likewise combine any sections Entitled "Acknowledgements", and any sections Entitled "Dedications". You must delete all sections Entitled "Endorsements".
6. COLLECTIONS OF DOCUMENTS #
You may make a collection consisting of the Document and other documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects.
You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document.
7. AGGREGATION WITH INDEPENDENT WORKS #
A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, is called an "aggregate" if the copyright resulting from the compilation is not used to limit the legal rights of the compilation's users beyond what the individual works permit. When the Document is included in an aggregate, this License does not apply to the other works in the aggregate which are not themselves derivative works of the Document.
If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one half of the entire aggregate, the Document's Cover Texts may be placed on covers that bracket the Document within the aggregate, or the electronic equivalent of covers if the Document is in electronic form. Otherwise they must appear on printed covers that bracket the whole aggregate.
8. TRANSLATION #
Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License, and all the license notices in the Document, and any Warranty Disclaimers, provided that you also include the original English version of this License and the original versions of those notices and disclaimers. In case of a disagreement between the translation and the original version of this License or a notice or disclaimer, the original version will prevail.
If a section in the Document is Entitled "Acknowledgements", "Dedications", or "History", the requirement (section 4) to Preserve its Title (section 1) will typically require changing the actual title.
9. TERMINATION #
You may not copy, modify, sublicense, or distribute the Document except as expressly provided for under this License. Any other attempt to copy, modify, sublicense or distribute the Document is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
10. FUTURE REVISIONS OF THIS LICENSE #
The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See http://www.gnu.org/copyleft/.
Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License "or any later version" applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation.
ADDENDUM: How to use this License for your documents #
Copyright (c) YEAR YOUR NAME. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled “GNU Free Documentation License”.
If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, replace the “with...Texts.” line with this:
with the Invariant Sections being LIST THEIR TITLES, with the Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.
If you have Invariant Sections without Cover Texts, or some other combination of the three, merge those two alternatives to suit the situation.
If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your choice of free software license, such as the GNU General Public License, to permit their use in free software.