VM-Installation von openSUSE

Jede Woche erscheint in unserem Newsletter ein neuer ADMIN-Tipp. Eine Sammlung aller Tipps finden Sie im Archiv der ADMIN-Tipps.

Mit einem Befehl lassen sich die beiden Ausgaben von openSUSE in einer VM installieren.

Anschließend an unseren ADMIN-Tipp zur Installation von VMs mit einem einzigen Befehl wollen wir die Installation einer damals übergangenen Distribution nachholen: openSUSE. Eine Zeit lang waren Suse-Distributionen vor allem in Deutschland überaus populär, aber die Wirren um der Besitzverhältnisse der Firma haben den Ruf der alteingesessenen Linux-Produkt nicht unbedingt gefördert. Zudem wurde die Entwicklung der openSUSE-Distribution mehrfach umstrukturiert, was zu noch mehr Verwirrung unter den Suse-Anhängern geführt hat. 

Derzeit gibt es die beiden openSUSE-Distributionen Tumbleweed und Leap. Zwar gibt es noch zwei klassische openSUSE-Versionen 13.1 und 13.2, die noch bis Ende 2016 respektive Anfang 2017 Support erhalten, aber die Zukunft gehört den beiden vorher genannten Distributionen. Leap basiert auf dem Code von Suse Linux Enterprise Server 12.1, also einer aktuellen Enterprise-Distribution, für die Suse noch bis 2024 Support leisten will. Tumbleweed ist dagegen ein sogenanntes Rolling Release, in das stets die neueste Versionen der enthaltenen Softwarepakete einfließen. Mit einem automatischen Build-Prozess werden diese Pakete regelmäßig neu übersetzt und mit einem öffentlichen Qualitätssicherungsprozess namens OpenQA getestet.

Interessant sind die openSUSE-Distributionen beispielsweise deshalb, weil sie auf Btrfs als Dateisystem für die Systempartition setzen. Dazu bietet Suse noch das Tool Snapper, das dabei hilft, die Snapshots mit Btrfs anzufertigen und zu verwalten.

Bei der automatisierten Installation hat Suse einen eigenen Mechanismus entwickelt, der auf dem Management-Tools YaST beziehungsweise dessen Nachfolger YaST2 basiert. Für die Installation mit Autoyast müssen Administratoren eine Datei in einem XML-Format schreiben, die die Systemkonfiguration enthält. Eine solche Datei lässt sich wie eine Kickstart- oder Preseed-Datei dem Libvirt-Installer übergeben.

Für Leap sieht der Aufruf wie folgt aus:

virt-install -n s2 -r 1024 --cpu=host --disk path=/var/lib/libvirt/images/s2.qcow2,format=qcow2,bus=virtio,size=10 -w network=internal,model=virtio --nographics --location=http://download.opensuse.org/distribution/leap/42.1/repo/oss -x "autoyast=file:////autoyast.xml textmode=1 console=ttyS0,115200n8" --initrd-inject=autoyast.xml

Bei der Installation von Tumbleweed ändert sich nur die URL zu den Installationsdateien:

virt-install -n s2 -r 1024 --cpu=host --disk path=/var/lib/libvirt/images/s2.qcow2,format=qcow2,bus=virtio,size=10 -w network=internal,model=virtio --nographics --location=http://download.opensuse.org/tumbleweed/repo/oss -x "autoyast=file:////autoyast.xml textmode=1 console=ttyS0,115200n8" --initrd-inject=autoyast.xml

Die folgende Autoyast-Datei lässt sich in beiden Fällen verwenden. Über die Installation hinaus installiert das File auch einen SSH Public Key im Root-Account und startet den SSH-Server:

<?xml version="1.0"?>
<!DOCTYPE profile>
<profile
  xmlns="http://www.suse.com/1.0/yast2ns"
  xmlns:config="http://www.suse.com/1.0/configns">
<general>
  <mode>
    <confirm config:type="boolean">false</confirm>
    <second_stage config:type="boolean">false</second_stage>
  </mode>
</general>
  <partitioning  config:type="list">
    <drive>
      <device>/dev/vda</device>
      <partitions config:type="list">
        <partition>
          <filesystem config:type="symbol">btrfs</filesystem>
          <size>10G</size>
          <mount>/</mount>
        </partition>
      </partitions>
    </drive>
  </partitioning>
<users config:type="list">
     <user>
       <encrypted config:type="boolean">false</encrypted>
       <uid>0</uid>
       <gid>0</gid>
       <user_password>password</user_password>
       <username>root</username>
    <forename/>
    <surname/>
     </user>
 </users>
<software>
  <packages config:type="list">
    <package>zypper</package>
  </packages>
  <do_online_update config:type="boolean">true</do_online_update>
</software>
<services-manager>
  <default_target>multi-user</default_target>
  <services>
    <enable config:type="list">
      <service>sshd</service>
    </enable>
  </services>
</services-manager>
  <scripts>
    <chroot-scripts config:type="list">
        <script>
        <chrooted config:type="boolean">true</chrooted>
        <filename>ssh.sh</filename>
        <source>
        <![CDATA[
        #!/bin/sh
        umask 077
        mkdir /root/.ssh
        echo "ssh-dss AAAAB3NzaC1kc3MAAACBAPKD0JbHFAiTgBGigIhUAampaBf6Szzqo43zxjzjCQFrbKYXLYbah7+DfpnQnNyvzkQ1KDXPKrfIHuDuHEF153xhQr62gqIoMRlbxtKbi+iQ/O7orqjrtFCEc57rGayJmWXa/qCoNy97KWlyFOSnjPNcZtsJvlZnLF3hxf+U10rvAAAAFQCoJbNCpHlvdM9nw1y+Pl3pcRaQAADFHDFDSFLFKLJLHDFFDSFLKJHDFLDSF14UdRDMvEVzhkefsUodqnEQG81cmUk3veY4Uhv3r28pgdbtrKis7p8kMZBLq4Pdd9DFRyZkcG+dff1PBgcoXi1ni0JGTR+aooyNoxmaPpKTp2vxKGRPirafQAAAIEA7bUbZzMTlol8ZoDNht2wVWk2EG/9k/L6EZyrSe39SrO5Tf7MDuqB0wLtlae2q+upWka3Ba39HsjtG7BeErJsZT9jTfRbiBKR8JAFQni5T+kVVpZl3ihEXA5kdfYp2xfvoRXSP8Uq0aDzwudwaxFgprObn8N9V7XEHHUOBR7a+Bw= of@itanet.de" >> /root/.ssh/authorized_keys
        systemctl enable sshd
exit 0
]]>
        </source>
      </script>
  </chroot-scripts>
  </scripts>
</profile>

Zum einfacheren Kopieren ist das Autoyast-File auch als Github-Gist hinterlegt.

04.04.2016

Ähnliche Artikel

comments powered by Disqus

Artikel der Woche

Support-Ende von SMBv1

Mit dem aktuellen Update für Windows 10 und Windows Server 2016 steht eine Änderung ins Haus, die gerade für Benutzer älterer Linux-Distributionen große Auswirkungen hat. Nachdem Microsoft es über viele Jahre schon angekündigt hat, entfernt der Konzern mit dem aktuellen Update-Release den Support für das SMB-Protokoll 1. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Linux-Backup

Welche Backup-Lösung setzen Sie für Linux im professionellen Umfeld ein?

  • keine
  • eigene Scripts
  • rsnapshot
  • rdiff-backup
  • Bacula
  • Bareos
  • Borg
  • Duplicity
  • Amanda
  • Burp
  • Clonezilla
  • Acronis
  • Arkeia
  • SEP sesam
  • Veeam
  • Redo Backup
  • Relax-and-Recover
  • andere kommerzielle Software
  • andere Open-Source-Software

Google+

Ausgabe /2017

Microsite