- Snapper:
list指示特殊快照; 到底什么是 snapper 呢? - Bcache: 配置属性
- AutoYaST: 整个磁盘;分区 RAID;Xen 虚拟分区;更好的合并
- 启动: “警告,一切正常!”
- CaaSP/Kubic: 根据 DHCP 响应建议 NTP 服务器
- 分区器 UI 现在更快了一些
Snapper: 显示当前挂载和接下来要挂载的快照
Btrfs 有一些特殊的快照:当前挂载的快照,以及下次将要挂载的快照(除非在 grub 中选择了快照)。现在 snapper 在列出快照时,通过数字后的特殊符号告知用户这两个特殊的快照
# snapper --iso list --disable-used-space
# | Type | Pre # | Date | User | Cleanup | Description | Userdata
---+--------+-------+---------------------+------+---------+-----------------------+--------------
0 | single | | | root | | current |
1+ | single | | 2018-10-18 10:33:50 | root | | first root filesystem |
2 | single | | 2018-10-18 10:43:45 | root | number | after installation | important=yes
3- | pre | | 2018-10-18 11:03:11 | root | | ruin system |
4 | post | 3 | 2018-10-18 11:03:11 | root | | ruin system |
更多细节请访问 snapper 博客文章。
YaST 控制中心中 Snapper 模块的更具描述性的名称
以前,该模块仅称为“Snapper”,但对于不知道 Snapper 是什么的用户来说,这毫无意义。我们将其更改为“文件系统快照”。
有趣的轶事:一位团队成员在阅读副标题“管理 Btrfs / LVM 文件系统快照”时,问 Snapper 是否真的支持 LVM。是的,它支持!(它已经支持很长时间了)。您不需要 Btrfs 来进行快照;LVM 也可以这样做,尽管方式与 Btrfs 有点不同。
更多 Bcache 改进
如 上一篇博客文章 中所示,我们目前正在致力于将 Bcache 支持添加到 YaST 分区器中。这次我们允许配置新 bcache 设备的缓存模式。如果您不确定特定的缓存模式意味着什么,我们还提供了相当详细的帮助文本。除了这种配置,我们还限制了操作,以防止数据丢失或可能导致不可靠结果的操作。这里有一些截图
在 AutoYaST 中使用整个磁盘
一方面,现在可以格式化和挂载整个磁盘,而无需创建任何分区。为此,您只需要将 <disklabel> 元素设置为 none,AutoYaST 就会理解您不想对驱动器进行分区,而是将整个磁盘用作文件系统。
<drive>
<device>/dev/sdb</device>
<disklabel>none</disklabel>
<partitions config:type="list">
<partition>
<mount>/home</mount>
<filesystem config:type="symbol">xfs</filesystem>
</partition>
</partitions>
</drive>
根据上述定义,AutoYaST 将格式化整个 /dev/sdb 磁盘并将其挂载到 /home。但这还不是全部:甚至可以将整个磁盘用作 LVM 物理卷或软件 RAID 的成员。对第一种情况的支持已存在于以前的 AutoYaST 版本中,但它在 SUSE Linux Enterprise 15 和 openSUSE Leap 15 中无法正常工作。
<drive>
<device>/dev/sdb</device>
<disklabel>none</disklabel>
<partitions config:type="list">
<partition>
<lvm_group>system</lvm_group>
</partition>
</partitions>
</drive>
AutoYaST 和分区软件 RAID
AutoYaST 现在能够创建分区软件 RAID,这在 pre-storage-ng 时代是不可能的。但是,为了支持这种场景,我们需要更改 AutoYaST 配置文件中描述软件 RAID 的方式,尽管旧格式仍然受支持。所以让我们看看 RAID 现在是什么样子。
不再将所有 RAID 分组到一个特殊 <drive> 部分中,而是每个 RAID 都在其自己的部分中定义
<drive>
<device>/dev/md0</device>
<raid_options>
<raid_type>raid0</raid_type>
</raid_options>
<partitions config:type="list">
<partition>
<mount>/</mount>
<filesystem config:type="symbol">btrfs</filesystem>
</partition>
<partition>
<mount>/home</mount>
<filesystem config:type="symbol">xfs</filesystem>
</partition>
</partitions>
</drive>
当然,如果您不希望对 RAID 进行分区,只需将 <disklabel> 元素设置为 none,就像任何其他设备一样。
更好的 Xen 虚拟分区支持
类似于到目前为止在 AutoYaST 中定义软件 RAID 的方式,具有类似名称的 Xen 虚拟分区被分组在同一个 <drive> 部分中。这意味着 /dev/xvda1、/dev/xvda2 等在 <drive> 部分中定义,用于 xvda,而 xvda 根本不存在。
为了使事情更清楚,我们决定为分区使用单独的驱动器部分
<drive>
<type config:type="symbol">CT_DISK</type>
<device>/dev/xvdd1</device>
<disklabel>none</disklabel> <!-- not really needed -->
<use>all</use>
<partitions config:type="list">
<partition>
<format config:type="boolean">true</format>
<mount>/home</mount>
<size>max</size>
</partition>
</partitions>
</drive>
AutoYaST 规则:在合并之前清理配置文件
AutoYaST 规则提供了一种根据系统属性通过在安装期间合并多个控制文件来配置系统的方法。有关更多文档,请查看 规则和类 部分。
合并过程 常常让人们感到困惑,并且合并的 XML 文件中的部分必须按字母顺序排列才能成功合并。
AutoYaST 在合并后清理配置文件,但如果生成的配置文件与另一个配置文件合并,则这些配置文件在合并之前不会被清理。这令人困惑且容易出错,因此我们修复了它,在合并之前也清理它们。
更好地解释使用 GPT 启动的要求
正如我们的读者所知,yast-storage-ng 的主要目标之一是提供更可靠和精确的诊断,以确定需要创建哪些分区,以确保要安装的新系统能够启动。如果有什么不符合这种诊断,安装程序会显示警告消息。
在启动安装在 GPT 设备上的系统时,使用传统 BIOS 系统(与 EFI 相对),这意味着 SLE-15 和 openSUSE Leap 15.0 如果没有 BIOS Boot 类型的分区,会警告用户。但其中存在两个问题。
- 分区器和特别是 AutoYaST 中的警告消息无法很好地解释问题所在。
- 一些用户报告说,他们在传统模式下使用 GPT 系统启动良好,而没有 BIOS Boot 分区,因此在这些情况下我们的诊断可能不正确。
我们甚至在源代码中有一条注释来强化第二点!
因此,我们试图修复我们错误的诊断……只是最终意识到它实际上是正确的。在仔细评估所有可能的设置、检查不同的规范、Grub2 文档甚至检查 Grub2 源代码之后,我们发现没有 BIOS Boot 分区的一些布局可能会被破坏(导致无法启动的系统)由某些文件系统级别操作。因此,只有包含 BIOS Boot 分区的配置才能被认为是 100% 安全的,无论短期还是针对系统的未来更改。
我们不能让我们的用户陷入陷阱而至少没有警告消息。因此,我们保持了行为不变,并专注于改进消息。毕竟,了解风险的高级用户可以忽略这些警告。这是新警告在即将推出的 SLE-15-SP1(以及因此在 openSUSE Leap 15.1)的分区器中显示的方式。
如果配置文件没有指定 BIOS Boot 分区并且无法将其添加到配置文件描述的布局中,AutoYaST 将报告以下内容。
CaaSP / Kubic: 根据 DHCP 响应建议 NTP 服务器
CaaSP 安装程序的 all-in-one 对话框要求提供 NTP 服务器。到目前为止,它仅使用 SLP 搜索 NTP 服务器。否则,只能手动配置。
现在 CaaSP 安装程序解析 DHCP 响应并获取提供的任何 NTP 服务器。从 DHCP 获取的 NTP 服务器优先于通过 SLP 发现的 NTP 服务器。
分区器 UI 现在更快了一些
我们注意到在分区器 UI 周围点击感觉很慢。因此,我们使用了内置的 (Y2PROFILER=1) 以及外部 (rbspy) 分析器来确定需要优化的位置(主要是缓存)。您能在以下屏幕截图中看到差异吗?





