跳转到内容跳转到页面导航:上一页 [访问键 p]/下一页 [访问键 n]
适用于 openSUSE Leap 15.6

B AutoYaST 常见问题解答—常见问题 编辑源文件

问:1. 如何启动 AutoYaST 安装?

在所有 openSUSE Leap 版本中,通过将 autoyast=<PATH_TO_PROFILE> 添加到内核参数列表来启动自动安装。例如,添加 autoyast=http://MYSERVER/MYCONFIG.xml 将启动自动安装,其中包含 AutoYaST 配置文件的 Web 服务器 myserver 获取配置文件。请参阅 第 9.3 节,“启动自动安装过程”,了解更多信息。

问:2. 什么是 AutoYaST 配置文件?

配置文件是 AutoYaST 配置文件。AutoYaST 配置文件的内容决定了系统将如何配置以及将安装哪些软件包。这包括分区、网络设置和软件源,仅举几例。几乎所有可以使用 YaST 在运行的系统中配置的内容也可以在 AutoYaST 配置文件中配置。配置文件是 ASCII XML 文件。

问:3. 如何创建 AutoYaST 配置文件?

创建 AutoYaST 配置文件的最简单方法是使用现有的 openSUSE Leap 系统作为模板。在已安装的系统上,启动 YaST › 杂项 › 自动安装。现在从菜单中选择 工具 › 创建参考配置文件。选择要包含在配置文件中的系统组件。或者,通过从命令行运行 sudo yast clone_system 来创建包含完整系统配置的配置文件。

两种方法都将在 /root/autoinst.xml 中创建文件。命令行创建的版本可用于设置与创建配置文件的系统相同的克隆。但是,通常您需要调整该文件,以便能够安装多个非常相似但并非完全相同的机器。可以通过使用您最喜欢的文本/XML 编辑器来调整配置文件来完成此操作。

问:4. 如何检查创建的 AutoYaST 配置文件的语法?

检查您创建的 AutoYaST 配置文件的最有效方法是使用 jingxmllint

请参阅 第 3.3 节,“手动创建/编辑控制文件”,了解详细信息。

问:5. 有意义的最小 AutoYaST 配置文件是什么?

如果在 AutoYaST 配置文件中未定义某个部分,则将使用常规 YaST 安装建议的设置。但是,您需要指定至少 root 密码才能在安装后登录到机器。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE profile>
<profile xmlns="http://www.suse.com/1.0/yast2ns" xmlns:config="http://www.suse.com/1.0/configns">
  <users config:type="list">
    <user>
      <encrypted config:type="boolean">false</encrypted>
      <user_password>linux</user_password>
      <username>root</username>
    </user>
  </users>
</profile>
问:6. 如何自动检测我的声卡进行自动安装?

在您的配置文件中使用以下 sound 部分

<sound>
  <autoinstall config:type="boolean">true</autoinstall>
  <configure_detected config:type="boolean">true</configure_detected>
</sound>
问:7. 我只想从 DVD 安装。我应该把 AutoYaST 配置文件放在哪里?

将配置文件放在 DVD 的根目录下。使用 file:///PROFILE.xml 引用它。

问:8. 如何在命令行上测试合并过程?

要合并两个配置文件 a.xmlbase.xml,请运行以下命令

> /usr/bin/xsltproc --novalid --param replace "'false'" \
--param dontmerge1 "'package'" --param with "'a.xml'" --output out.xml \
/usr/share/autoinstall/xslt/merge.xslt base.xml

这要求两个配置文件中的部分按字母顺序排列(例如,software 必须在 add-on 之后列出)。如果您使用 YaST 创建了配置文件,则配置文件会自动正确排序。

dontmerge1 参数是可选的,并且是您在配置文件中使用 dont_merge 元素时应该执行的操作的示例。请参阅 第 6.4 节,“规则和类的合并”,了解更多信息。

问:9. 我可以在脚本中调用 Zypper 吗?

Zypper 只能从 AutoYaST 初始化脚本调用,因为在后脚本阶段,YaST 仍然对 RPM 数据库具有独占锁。

如果您真的需要使用其他脚本类型(例如后脚本),您需要在您自己的风险下中断锁定。

<post-scripts config:type="list">
  <script>
    <filename>yast_clone.sh</filename>
    <interpreter>shell</interpreter>
    <location/>
    <feedback config:type="boolean">false</feedback>
    <source><![CDATA[#!/bin/sh
mv /var/run/zypp.pid /var/run/zypp.sav
zypper in foo
mv /var/run/zypp.sav /var/run/zypp.pid
]]></source>
  </script>
</post-scripts>
问:10. AutoYaST 配置文件的部分顺序重要吗?

实际上顺序并不重要。配置文件中部分顺序对 AutoYaST 工作流没有影响。但是,要 合并 不同的配置文件,部分需要按字母顺序排列。

问:11. linuxrc 使用 文件未签名 阻止安装。我需要手动交互。

linuxrc 发现了一个未签名的文件,例如驱动程序更新。要使用未签名的文件,您可以将 insecure=1 传递给 linuxrc 参数列表(以及 autoyast=... 参数),以抑制该消息。

问:12. 我想从 DVD/USB/HD 安装,但从网络获取 XML 文件。

您需要将 ifcfg 传递给 linuxrc。这是必需的,用于设置网络,否则 AutoYaST 无法从远程主机下载配置文件。请参阅 第 C.3 节,“高级网络设置”,了解更多信息。

问:13. 是否可以安装到 NFS 根目录 (/)?

是的,但它比其他方法更复杂。环境(DHCP、TFTP 等)必须设置得非常小心。AutoYaST 配置文件必须如下所示

<?xml version="1.0"?>
<!DOCTYPE profile>
<profile xmlns="http://www.suse.com/1.0/yast2ns" xmlns:config="http://www.suse.com/1.0/configns">
  <partitioning config:type="list">
    <drive>
      <device>/dev/nfs</device>
      <initialize config:type="boolean">false</initialize>
      <type config:type="symbol">CT_NFS</type>
      <partitions config:type="list">
        <partition>
          <filesystem config:type="symbol">nfs</filesystem>
          <fstopt>nolock</fstopt>
          <device>10.10.1.53:/tmp/m4</device>
          <mount>/</mount>
        </partition>
      </partitions>
      <use>all</use>
    </drive>
  </partitioning>
</profile>
问:14. 我可以在哪里提问尚未在此处解答的问题?

有一个 AutoYaST 邮件列表,您可以在其中发布问题。加入我们:https://lists.opensuse.org/opensuse-autoinstall/

打印此页面