Fedora 26 现已推出,为整个操作系统提供了广泛的改进。 蟒蛇—— Fedora 安装程序 — 实现了许多新功能和改进 Fedora 26. 最明显的增加是引入 图形用户界面,为高级用户提供另一种配置分区的方法。 此外,还通过 kickstart 对自动安装进行了改进、一系列网络改进、在安装过程中提供了更好的状态报告等等。
使用 Blivet GUI 增强存储配置
Anaconda 的主要亮点在 Fedora 26是积分 图形用户界面 存储配置工具进入安装环境。 以前,存储配置有两种选择——自动分区和手动分区。 自动分区对于非常简单的配置非常有用,例如安装 Fedora 在空的硬盘驱动器或另一个现有操作系统旁边。 现有的手动分区工具可以更好地控制分区布局和大小,从而实现更复杂的设置。
以前可用的手动分区工具非常独特。 用户无需手动创建所有存储组件,只需指定未来的挂载点及其属性。 为了 example,您只需为
/家
和
/
(root),指定加密或 RAID 等属性,Anaconda 会正确配置以下所有必要组件。 这种自上而下的模型非常强大且易于使用,但对于某些复杂的存储设置可能过于简单。
这就是 Blivet GUI 可以提供帮助的地方——它是一种以标准方式工作的存储配置工具。 如果您想要在 RAID 之上的 LVM 存储,您需要从构建块手动创建它——从下往上。 凭借对自定义分区布局的深入了解,使用 BlivetGUI 可以轻松创建复杂的自定义存储设置。
在 Anaconda 中使用 Blivet GUI
Blivet GUI 可从 Fedora 存储库作为独立的桌面应用程序,因为 Fedora 21,现在也作为存储配置的第三个选项出现在 Anaconda 中。 只需选择 高级自定义(Blivet-GUI) 来自 安装目的地 Anaconda 中的窗口。
Anaconda 中的安装目标窗口
Blivet GUI 已完全集成到 Anaconda 安装工作流程中。 只有选定的磁盘在 安装目的地 BlivetGUI 中的窗口显示。 在您离开窗口并选择 开始安装. 此外,您始终可以返回并使用其他分区方法之一。 但是,如果您切换到不同的分区方法,Blivet GUI 会丢弃更改。
在 Anaconda 中使用 Blivet GUI 进行存储配置
在 Anaconda 中使用 Blivet GUI 添加新设备
自动安装(kickstart)改进
Kickstart 是用于自动化安装过程的配置文件格式。 Kickstart 文件可以配置图形和文本界面中可用的所有选项等等。 观看 Kickstart 文档 有关 Kickstart 以及如何使用它的更多信息。
在自动分区中支持 –nohome、–noswap 和 –noboot 选项
当您不想指定分区时,可以让 anaconda 使用 autopart 命令为您执行此操作。 它将自动创建一个根分区、一个交换分区和一个引导分区。 和 Fedora 工作站,安装在足够大的驱动器上创建一个 /home 分区。 为了使自动分区更加灵活,anaconda 现在支持 –nohome、–noswap 和 –noboot 选项来禁用给定分区的创建。
使用 inst.ksstrict 严格验证 kickstart 文件
系统管理员拥有复杂的kickstart 文件并不少见,有时kickstart 文件有错误。 在安装开始时,anaconda 检查 kickstart 文件并产生错误和警告。 错误导致安装终止。日志记录警告并且安装继续。
要确保 kickstart 文件不会产生任何警告,请使用引导选项启用新的严格验证
inst.ksstrict
. 这以与错误相同的方式处理 kickstart 中的警告。
快照支持
有时保存旧安装或备份新安装的系统以进行恢复会很有帮助。 对于这些情况,现在可以使用 snaphost kickstart 命令。 观看 pykickstart 文档 有关此新命令的完整使用说明。 此功能目前仅在 LVM 精简池上受支持。 要请求对其他分区类型的支持,请在 bugzilla 上提交 RFE 错误。
网络改进
网络是 Anaconda 的关键部分,因为许多安装部分或完全基于网络。 Anaconda 还支持安装到网络附加存储设备,例如 iSCSI、FCoE 和 Multipass。 出于这个原因,Anaconda 需要能够支持复杂的网络设置,不仅要开始安装,还要为已安装的系统正确设置网络。
为了这 Fedora 循环我们主要修复了错误,适应 NetworkManager rebase,增强了网络 启动测试 套件来发现由 NM 更改和我们通常使用的组件的一些更改引起的问题。 还添加了对各种(主要是企业驱动的)功能的支持:
- 在 TUI 中支持 IPoIB(IP over infiniband)设备。
- 支持在安装早期设置桥接设备(例如获取 kickstart)。
- 新的 inst.waitfornet 引导选项用于在安装后期等待连接,以防由于特殊网络环境(DHCP 服务器)设置而导致默认等待 DHCP 配置不足。
其他改进
关于阅读文档的 Anaconda 和 Pykickstart 文档
Anaconda 和 Pykickstart 文档在 ReadTheDocs 上有一个新家:
此外,Pykickstart 文档现在包含完整详细的 kickstart 命令参考,既适用于 Fedora 和 RHEL.
所有安装阶段的进度报告
当 Anaconda 说“处理安装后设置任务”几分钟(甚至几十分钟!)而没有任何迹象表明实际发生了什么以及可能需要多长时间时,您是否也讨厌它?
之前缺少状态报告的原因很简单——在 RPM 安装事务的最后部分,RPM post 和 posttrans 脚本正在运行,这可能需要大量时间。 直到最近,RPM 和 DNF 都不支持此安装阶段的进度报告。
但这已得到纠正,RPM 和 DNF 现在提供必要的进度报告,因此 Anaconda 最终可以报告完整安装运行期间实际发生的情况。 ?
在所有可用的控制台上运行初始设置 TUI
Initial Setup 是一个实用程序,用于在首次启动时配置新安装的系统。 Initial Setup 提供图形和文本模式界面,基本上只是 Anaconda 通常提供的配置屏幕的启动器。
在“正常”安装期间,一切都在 Anaconda 中进行了配置,并且 Initial Setup 不会运行。 但是,对于不同的情况,情况是不同的 支持的 ARM 板 Fedora. 这里一般会跳过安装步骤,用户从一个 Fedora SD 卡上的图像。 在这种情况下,初始设置是一个关键组件,使用户能够根据需要自定义预制系统映像。
Initial Setup 文本界面 (TUI) 通常用于 ARM 系统。 在此期间 Fedora 25 时间框架出现了两个令人讨厌的问题:
- 一些 ARM 板同时具有串行和图形控制台,无法轻松检测用户正在使用哪个
- 一些 ARM 板控制台似乎可以正常工作,但在 Initial Setup 尝试在其上运行 TUI 时会抛出错误
为了解决这些问题,Initial Setup TUI 在所有看起来可用的控制台上运行。 这解决了第一个问题——TUI 将在串行和图形控制台上运行。 它还解决了第二个问题,因为无法按预期工作的控制台被简单地跳过。
内置帮助现在也可用于 TUI
以前,只有图形安装模式提供帮助。 但是,可以从提供“h to help”选项的每个屏幕在 TUI 中访问帮助。
TUI 中显示的帮助
新的日志捕获脚本
新的 日志捕获 脚本 是社区贡献者 Pat Rieecky 的补充。 这个新脚本可以轻松地将许多与安装相关的日志文件收集到一个 tarball 中,该 tarball 可以很容易地转移到安装环境之外进行详细分析。
设想的用例正在运行 日志捕获 kickstart 中的脚本 %onerror 脚本。
结构化安装任务
Anaconda 在安装阶段做了很多事情(配置存储、安装包、创建用户和组等)。 为了使安装阶段更易于监控和调试任何问题,各个安装任务现在是不同的单元(例如用户创建、用户组创建、root 用户配置。)可以成为任务组的一部分(例如用户和组配置) )。
最终结果 – 现在可以在日志中轻松查看每个任务执行的时间、当前正在运行的任务以及在安装完成之前还需要执行多少任务。
用户交互配置文件
Anaconda 支持新的 用户交互配置文件. 用于记录屏幕和(可选)用户操作的设置的特殊配置文件。
用户交互配置文件背后的主要思想是,用户在安装运行期间通常会接触到多个单独的应用程序(Anaconda、Gnome Initial Setup、Initial Setup、Live CD 上的假设语言选择器等),它会每个配置选项(比如语言或时区选择)只显示一次而不是多次是有意义的。 这应该有助于减少用户需要点击的屏幕数量,从而加快安装速度。
Anaconda 将记录访问过的屏幕,并将隐藏在现有用户交互配置文件中标记为已访问的屏幕。 但是一旦其他安装前后的工具(例如 example Gnome Initial Setup)开始支持它应该很容易发现,因为不再要求用户配置相同的设置两次。 但我们可能不必等待很长时间 Fedora 27 变更提案 用于添加 Gnome Initial Setup 的支持已经存在。