Ich habe mir mal wie ich mir Arch Linux angefangen habe ein Script geschrieben, welches mir die Installation komplett automatisiert.
Das Script geht bis zu einem installiertem Xorg Server. Danach muss man selber weitermachen.
In Prinzip ist es nichts anderes als die Befehle (hier und da mal etwas angepasst - Arch sei Dank) aus der Anleitung für Einsteiger.
Da ich am Anfang noch viel mit Arch getestet habe usw. habe ich es dementsprechend oft neu installiert. Ich bin mit der Zeit zwar
richtig schnell geworden, aber an die Geschwindigkeit eines Scripts komm ich trotzdem nicht ran xD.
Es ist zwar kein Graphischer Installer, und die DE muss man sich am Ende auch noch selbst installieren, aber das Grundgerüst ist da.
Kannst ja das Script auch für dich anpassen und die Installationsbefehle für deine Lieblings-DE reinschreiben.
#!/bin/bash
mkfs.ext4 -F -L boot -O \^64bit /dev/sda1
mkfs.ext4 -F -L root -O \^64bit /dev/sda2
mkfs.ext4 -F -L home -O \^64bit /dev/sda3
mkswap -L swap /dev/sda4
echo
echo "Festplatten wurden formatiert"
echo
mount /dev/sda2 /mnt
mkdir /mnt/boot
mkdir /mnt/home
mount /dev/sda1 /mnt/boot
mount /dev/sda3 /mnt/home
swapon /dev/sda4
echo
echo "Fesplatten wuden eingehangen"
echo
cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak
grep -E -A 1 ".*Germany.*$" /etc/pacman.d/mirrorlist.bak | sed '/--/d' > /etc/pacman.d/mirrorlist.backup
pacman -Sy pacman-contrib --noconfirm
rankmirrors -n 5 /etc/pacman.d/mirrorlist.backup > /etc/pacman.d/mirrorlist
rm /etc/pacman.d/mirrorlist.bak
rm /etc/pacman.d/mirrorlist.backup
echo
echo "Die Mirrorlist wurde bearbeitet"
echo
pacstrap /mnt base base-devel bash-completion networkmanager screenfetch syslinux
echo
echo "Das Basissystem wurde installiert"
echo
genfstab -Up /mnt > /mnt/etc/fstab
echo
echo "Die Filesystem Tabelle wurde erzeugt"
echo
cp /root/setup/install/configvm.sh /mnt
echo
echo "Die configvm Datei wurde nach mnt kopiert"
echo
cp /root/setup/config/99-sysctl.conf /mnt/etc/sysctl.d/
cp /root/setup/config/audio_powersave.conf /mnt/etc/modprobe.d/
echo
echo "Audio Powersave und Magic Key wurden kopiert"
echo
mkdir -p /mnt/etc/X11/xorg.conf.d/
echo
echo "Das Verzeichnis xorg.conf.d wurde erstellt"
echo
cp /root/setup/config/20-keyboard.conf /mnt/etc/X11/xorg.conf.d/
cp /root/setup/config/50-mouse.conf /mnt/etc/X11/xorg.conf.d/
echo
echo "Xorg Konfigurationsdateien wurden kopiert"
echo
mkdir -p /mnt/usr/share/backgrounds/custom
echo
echo "Das Verzeichnis background custom wurde erstellt"
echo
cp /root/setup/pic/g-man.jpg /mnt/usr/share/backgrounds/custom
cp /root/setup/pic/hl.jpg /mnt/usr/share/backgrounds/custom
cp /root/setup/pic/spacecore.jpg /mnt/usr/share/backgrounds/custom
echo
echo "Bilder wurden kopiert"
echo
echo
echo "Nun wird der Setup Ordner Kopiert"
echo
echo "Kann etwas dauern"
echo
cp -r /root/setup /mnt/srv
echo
echo "Der Setup Ordner wurde kopiert"
echo
arch-chroot /mnt ./configvm.sh
echo
echo "Die Konfiguration wurde abgeschlossen"
echo
rm /mnt/configvm.sh
echo
echo "Die configvm Datei wurde entfernt"
echo
/root/setup/install/endvm.sh
#!/bin/bash
# ----------Standardkonfiguration----------
# Hostname setzen
echo archvm > /etc/hostname
echo
echo "Der Hostname wurde gesetzt"
echo
# Sprache setzen
echo LANG=de_DE.UTF-8 > /etc/locale.conf
echo
echo "Die Systemsprache wurde gesetzt"
echo
# Tastaturlayout setzen
echo KEYMAP=de-latin1 > /etc/vconsole.conf
echo FONT=lat9w-16 >> /etc/vconsole.conf
echo
echo "Das Tastaturlayout wurde gesetzt"
echo
# Lokalzeit setzen
ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime
echo
echo "Die Lokalzeit wurde gesetzt"
echo
# Backup der local-Datei erstellen und localen erstellen
cp /etc/locale.gen /etc/locale.gen.bak
cat /etc/locale.gen.bak | egrep "#de_DE|#en_US.UTF" | cut -c 2- > /etc/locale.gen
locale-gen
echo
echo "Die Lokalen wurden gesetzt"
echo
# ----------Pacman.conf Datei----------
# Multilib Section aktivieren
sed -i '/#\[multilib\]/i \[multilib\]' /etc/pacman.conf
echo
echo "Die Multilib Section wurde aktiviert"
echo
# Den Server für die Multilib Section aktivieren
sed -i '/#\[multilib\]/i Include = /etc/pacman.d/mirrorlist' /etc/pacman.conf
echo
echo "Der Server für Multilib wurde aktiviert"
echo
# ----------Standardkonfiguration----------
# Ein Repositorie Update durchführen
pacman -Syyu
echo
echo "Eine Aktualisierung wurde erledigt"
echo
# Den Linux Kernel erzeugen
mkinitcpio -p linux
echo
echo "Der Linux Kernel wurde erzeugt"
echo
# Das Root Passwort setzen
echo "root:unsicher1234" | chpasswd
echo
echo "Das Root Passwort wurde gesetzt"
echo
# ----------Syslinux Konfiguration----------
# Das Zeit Prompt ausschalten
sed -i 's/^TIMEOUT 50/TIMEOUT 0/' /boot/syslinux/syslinux.cfg
echo
echo "Das Boot-Prompt wurde abgeschalten"
echo
# Das Bootmenu ausschalten
sed -i 's/^UI menu.c32/#UI menu.c32/' /boot/syslinux/syslinux.cfg
echo
echo "Das Boot-Menu wurde abgeschalten"
echo
# Root Partition setzen
sed -i 's/\/dev\/sda3/\/dev\/sda2/' /boot/syslinux/syslinux.cfg
echo
echo "Die Root Partition wurde geaendert"
echo
# Syslinux installieren
syslinux-install_update -iam
echo
echo "Der Bootloader wurde installiert"
echo
# ----------User hinzufügen----------
useradd -m -g users -G wheel,audio,video,games,power -s /bin/bash vmuser
echo "vmuser:sicher1234" | chpasswd
echo
echo "Der Benutzer vmuser wurde mit PW eingerichtet"
echo
sed -i 's/^# %wheel ALL=(ALL) NOPASSWD: ALL/%wheel ALL=(ALL) NOPASSWD: ALL/' /etc/sudoers
echo
echo "Der Benutzer vmuser bekommt sudo Rechte ohne PW"
echo
# ----------Programme installieren----------
pacman -S acpid dbus avahi cups cronie xdg-user-dirs linux-headers git --needed --noconfirm
pacman -S xorg-server xorg-xinit pulseaudio pulseaudio-alsa pavucontrol network-manager-applet ttf-liberation ttf-dejavu virtualbox-guest-utils virtualbox-guest-modules-arch --needed --noconfirm
xdg-user-dirs-update
echo
echo "Wichtige Programme wurden installiert"
echo
# ----------Systemdienste aktivieren----------
systemctl enable acpid avahi-daemon org.cups.cupsd.service cronie NetworkManager systemd-timesyncd.service vboxservice.service
echo
echo "Wichtige Systemdienste wurden aktiviert"
echo
# ----------Hintergrundbilder kopieren----------
chown -R vmuser:users /usr/share/backgrounds/custom
chmod -R 755 /usr/share/backgrounds/custom
echo
echo "Der Besitzer von custom ist jetzt vmuser"
echo
#!/bin/bash
# Swap ausschalten
swapoff /dev/sda4
# Home Partition auswerfen
umount /dev/sda3
# Boot Partition auswerfen
umount /dev/sda1
# Root Partition auswerfen
umount /dev/sda2
# PC ausschalten
# poweroff
# PC neustarten
reboot
echo
echo "Arch Linux 64-Bit wurde erfolgreich installiert"
echo
Du legst dir einfach die 3 Skripte an, brennst sie auf CD oder kopierst sie auf einen USB-Stick, mountest sie in der Arch Live Boot Umgebung und führst das erste aus. (Die anderen beiden Skripte werden automatisch aufgerufen).
Durchlaufzeit waren bei mir in einer VM ca. 6-7 Minuten. Aber ich habe einen alten PC. Kann sein dass es auf stärkerer Hardware schneller geht.
ACHTUNG!!!:
Diese Skripte habe ich für mich geschrieben, ich habe sie unkontrolliert hier rein kopiert.
Bitte vorher anpassen, da sie evtl. sonst nicht funktionieren könnten.
Abgesehen davon Befehle immer erst kontrollieren bevor man sie abtippt oder kopiert.
Das Script ist auch nicht perfekt, da ich z. B. mit regulären Ausdrücken auch noch nicht so fit bin.
Aber für mich funktioniert es so. Und um dir die Installation von Arch Linux zu vereinfachen sollte es auch gehen.