openSUSEの無人インストール


openSUSE Tumbleweed の無人インストールのメモです。

dist_remaster_dvd.sh でインストール用DVDイメージが作れますのでご利用ください。
最新ファイルはこちらのリンク にあります。

・インストール時にNICをDHCP設定で起動させています。
・インストール時にsudoのパスワード入力をrootからユーザーに変更します。
・ssh、dns、sambaをインストールします。
・NIC設定はIPv4:192.168.1.1、GW:192.168.1.254、ホスト名:sv-suse.workgroupです。
・ユーザー/パスワードはroot/r00t、master/masterです。

autoinst.xml
<?xml version="1.0"?>
<!DOCTYPE profile>
<profile xmlns="http://www.suse.com/1.0/yast2ns" xmlns:config="http://www.suse.com/1.0/configns">
  <add-on t="map">
    <add_on_others t="list">
      <listentry t="map">
        <media_url>http://download.opensuse.org/tumbleweed/repo/oss/</media_url>
        <name>repo-oss</name>
        <product_dir>/</product_dir>
      </listentry>
      <listentry t="map">
        <media_url>http://download.opensuse.org/tumbleweed/repo/non-oss/</media_url>
        <name>repo-non-oss</name>
        <product_dir>/</product_dir>
      </listentry>
      <listentry t="map">
        <media_url>http://download.opensuse.org/update/tumbleweed/</media_url>
        <name>repo-update</name>
        <product_dir>/</product_dir>
      </listentry>
    </add_on_others>
  </add-on>
  <bootloader t="map">
    <global t="map">
      <append>-B console=force-text</append>
      <cpu_mitigations>auto</cpu_mitigations>
    </global>
  </bootloader>
  <general t="map">
    <ask-list t="list"/>
    <mode t="map">
      <confirm t="boolean">false</confirm>
      <second_stage t="boolean">false</second_stage>
    </mode>
  </general>
  <groups t="list">
    <group t="map">
      <groupname>wheel</groupname>
      <userlist>master</userlist>
    </group>
  </groups>
  <host t="map">
    <hosts t="list">
      <hosts_entry t="map">
        <host_address>192.168.1.1</host_address>
        <names t="list">
          <name>sv-suse.workgroup sv-suse</name>
        </names>
      </hosts_entry>
    </hosts>
  </host>
  <keyboard>
    <keymap>japanese</keymap>
  </keyboard>
  <language t="map">
    <language>ja_JP</language>
    <languages>en_US,ja_JP</languages>
  </language>
  <networking t="map">
    <dns t="map">
      <hostname>sv-suse.workgroup</hostname>
      <nameservers t="list">
        <nameserver>192.168.1.254</nameserver>
      </nameservers>
    </dns>
    <interfaces t="list">
      <interface t="map">
        <bootproto>static</bootproto>
        <ipaddr>192.168.1.1</ipaddr>
        <name>ens160</name>
        <prefixlen>24</prefixlen>
        <startmode>auto</startmode>
        <zone>home</zone>
      </interface>
    </interfaces>
    <keep_install_network t="boolean">true</keep_install_network>
    <routing t="map">
      <routes t="list">
        <route t="map">
          <destination>default</destination>
          <device>ens160</device>
          <gateway>192.168.1.254</gateway>
          <netmask>-</netmask>
        </route>
      </routes>
    </routing>
  </networking>
  <ntp-client t="map">
    <ntp_servers t="list">
      <ntp_server t="map">
        <address>ntp.nict.jp</address>
      </ntp_server>
    </ntp_servers>
  </ntp-client>
  <partitioning t="list">
    <drive t="map">
      <device>/dev/sda</device>
      <initialize t="boolean">true</initialize>
      <use>all</use>
    </drive>
  </partitioning>
  <scripts t="map">
    <init-scripts t="list">
      <script t="map">
        <debug t="boolean">true</debug>
        <filename>zzz_sudoers.sh</filename>
        <source>#!/bin/sh

chmod u+w /etc/sudoers
sed -i.orig /etc/sudoers \
    -e 's/^\(Defaults.*targetpw\)/# \1/g' \
    -e 's/^\(ALL.*ALL\)/# \1/g' \
    -e '/NOPASSWD:/! s/^#.*\(%wheel.*ALL\)/\1/g'
chmod u-w /etc/sudoers
exit 0
        </source>
      </script>
    </init-scripts>
  </scripts>
  <software t="map">
    <install_recommended t="boolean">true</install_recommended>
    <packages t="list">
      <package>chromium</package>
    </packages>
    <patterns t="list">
      <pattern>apparmor</pattern>
      <pattern>base</pattern>
      <pattern>basesystem</pattern>
      <pattern>console</pattern>
      <pattern>enhanced_base</pattern>
      <pattern>minimal_base</pattern>
      <pattern>sw_management</pattern>
      <pattern>x11</pattern>
      <pattern>x11_enhanced</pattern>
      <pattern>laptop</pattern>
      <pattern>multimedia</pattern>
      <pattern>devel_basis</pattern>
      <pattern>fonts</pattern>
      <pattern>fonts_opt</pattern>
      <pattern>lxde</pattern>
      <pattern>lxde_laptop</pattern>
      <pattern>lxde_office</pattern>
      <pattern>dhcp_dns_server</pattern>
      <pattern>file_server</pattern>
      <pattern>x11_yast</pattern>
      <pattern>yast2_basis</pattern>
    </patterns>
    <products t="list">
      <product>openSUSE</product>
    </products>
  </software>
  <timezone t="map">
    <hwclock>UTC</hwclock>
    <timezone>Asia/Tokyo</timezone>
  </timezone>
  <users t="list">
    <user t="map">
      <encrypted t="boolean">false</encrypted>
      <fullname>Master</fullname>
      <user_password>master</user_password>
      <username>master</username>
    </user>
    <user t="map">
      <encrypted t="boolean">false</encrypted>
      <fullname>root</fullname>
      <user_password>r00t</user_password>
      <username>root</username>
    </user>
  </users>
</profile>

※openSUSE-Tumbleweed-DVD-x86_64-Current.iso を使用しVMware Workstation 14上でefi環境にして確認しました。
(vmxファイルにfirmware = "efi"を追加でefi環境に変更)

★dist_remaster_dvd.sh の使用例を以下に載せておきます。

dist_remaster_dvd.sh
sudo ./dist_remaster_dvd.sh ← 管理者権限で実行してください。
…
# ----------------------------------------------------------------------------#
# ID:Version                         :リリース日:サポ終了日:備考          #
#  1:debian-8.11.1-amd64-DVD-1       :2015-04-25:2020-04-xx:oldoldstable  #
#  2:debian-9.13.0-amd64-DVD-1       :2017-06-17:2022-xx-xx:oldstable     #
#  3:debian-10.6.0-amd64-DVD-1       :2019-07-06:20xx-xx-xx:stable        #
#  4:debian-testing-amd64-DVD-1      :20xx-xx-xx:20xx-xx-xx:testing       #
#  5:ubuntu-16.04.7-server-amd64     :2016-04-21:2021-04-xx:Xenial Xerus  #
#  6:ubuntu-18.04.5-server-amd64     :2018-04-26:2023-04-xx:Bionic Beaver #
#  7:ubuntu-20.04.1-legacy-server-amd:2020-04-23:2025-04-xx:Focal Fossa   #
#  8:ubuntu-20.04.1-live-server-amd64:2020-04-23:2025-04-xx:Focal Fossa   #
#  9:CentOS-8.2.2004-x86_64-dvd1     :2020-06-15:2029-05-31:RHEL 8.0      #
# 10:CentOS-Stream-8-x86_64-20201007-:2019-xx-xx:20xx-xx-xx:RHEL x.x      #
# 11:Fedora-Server-dvd-x86_64-32-1.6 :2020-04-28:20xx-xx-xx:kernel 5.6    #
# 12:openSUSE-Leap-15.2-DVD-x86_64   :2020-xx-xx:20xx-xx-xx:              #
# 13:openSUSE-Tumbleweed-DVD-x86_64-C:2020-xx-xx:20xx-xx-xx:              #
# ----------------------------------------------------------------------------#
ID番号+Enterを入力して下さい。
13 ← 作りたいDVDの番号を選んで入力してください。
…