跳到内容跳到页面导航:上一页 [access key p]/下一页 [access key n]
documentation.suse.com / SUSE Linux Enterprise Server 文档 / AutoYaST 指南 / 附录 / AutoYaST FAQ — 常见问题
适用范围 SUSE Linux Enterprise Server 15 SP2

B AutoYaST FAQ — 常见问题

1. 如何调用 AutoYaST 安装?

在所有 SUSE Linux Enterprise Server 版本中,您可以通过将 autoyast=<PATH_TO_PROFILE> 添加到内核参数列表来调用自动安装。例如,添加 autoyast=http://MYSERVER/MYCONFIG.xml 将启动自动安装,安装过程中会从 Web 服务器 myserver 提取包含 AutoYaST 配置的配置文件。有关更多信息,请参见第 6.3 节 “调用自动安装过程”

2. 什么是 AutoYaST 配置文件?

此配置文件是指 AutoYaST 配置文件。AutoYaST 配置文件的内容决定了如何配置系统,以及要安装哪些软件包。包括分区、网络设置和软件源等。可在运行中系统上使用 YaST 配置的所有设置几乎也都可以在 AutoYaST 配置文件中进行配置。配置文件格式是 ASCII XML 文件。

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

创建 AutoYaST 配置文件的最简单方法是使用现有 SUSE Linux Enterprise Server 系统作为模板。在已安装的系统上,启动 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 这两个配置文件,请运行以下命令:

tux > /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 元素时要怎样做。有关更多信息,请参见第 5.4 节 “合并规则和类”

9. 是否可以从脚本调用 Zypper?

只能从 AutoYaST init 脚本调用 Zypper,因为在安装后脚本阶段,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 阻止安装并显示 File not signed。我需要手动交互。

linuxrc 找到了一个未签名的文件,例如某个驱动程序更新。要使用未签名的文件,可以通过将 insecure=1(连同 autoyast=... 参数)传递到 linuxrc 参数列表来隐藏该消息。

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 邮件列表中发布问题。请通过 http://lists.opensuse.org/opensuse-autoinstall/ 加入我们。