Bearbeiten von „HOWTO:LinuxInstallationsParty

Zur Navigation springen Zur Suche springen

Warnung: Du bist nicht angemeldet. Deine IP-Adresse wird bei Bearbeitungen öffentlich sichtbar. Melde dich an oder erstelle ein Benutzerkonto, damit Bearbeitungen deinem Benutzernamen zugeordnet werden.

Die Bearbeitung kann rückgängig gemacht werden. Bitte prüfe den Vergleich unten, um sicherzustellen, dass du dies tun möchtest, und veröffentliche dann unten deine Änderungen, um die Bearbeitung rückgängig zu machen.

Aktuelle Version Dein Text
Zeile 10: Zeile 10:
* nfs-server
* nfs-server


=== Netwerk ===
=== Precondition ===


Die Ethernetschnittstelle des Hauptcomputer heißt in diesem Falle <code>enp9s0</code> (die WLANschnitstelle <code>wlp3s0</code>) und soll eine feste IP bekommen.
Die Ethernetschnittstelle des Hauptcomputer heißt in diesem Falle enp9s0 und soll eine feste IP bekommen.


Der Networkmanager kann dies per GUI tun (LAN-Verbindung einrichten -> IPv4 Settings -> Shared to other computers), oder per Terminal
Entweder per GUI oder per
 
$ ip a add 10.0.0.1 enp9s0
# ip link set up dev enp9s0
# ip a add 10.0.0.1/24 dev enp9s0
# sysctl net.ipv4.ip_forward=1
# iptables -t nat -A POSTROUTING -o wlp3s0 -j MASQUERADE
# iptables -A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
# iptables -A FORWARD -i enp9s0 -o wlp3s0 -j ACCEPT
 
Bedenkt, dass der gesamte Traffic nun über euren Rechner geleitet wird. '''Seid dabei verantwortungsvoll'''! Beachtet, dass ihr eventuell eure Firewall noch ausschalten/Freigaben einrichten müsst. [https://wiki.archlinux.org/index.php/Internet_sharing]


=== dnsmasq ===
=== dnsmasq ===


  $ cat /etd/dnsmasq.d/lip.conf
  $ cat /etd/dnsmasq.d/lip.conf
interface=enp9s0
bind-interfaces
dhcp-range=10.0.0.50,10.0.0.200,12h
dhcp-boot=/pxelinux.0,0.0.0.0
enable-tftp
tftp-root=/var/ftpd
pxe-service=X86PC, "Boot from network", pxelinux
=== NFS ===
$ cat /etc/exports
/var/ftpd 10.0.0.1/24(ro,no_subtree_check)
# systemctl restart nfs-server.service


=== squid/polipo (optional) ===
1 interface=enp9s0
Optional kann noch ein http cache eingerichtet werden, damit man die Geschwindigkeit beim installieren erhöht, da doch sehr viele gleiche Pakete installiert werden. Polipo ist ein einfacher web-cache-proxy, squid ist die ausgewachsene Variante. [https://wiki.archlinux.org/index.php/Polipo] [https://wiki.archlinux.org/index.php/Squid] Dabei sind die IPtables regeln von oben zu verändern (siehe verlinkte artikel)
2 bind-interfaces
3 dhcp-range=10.0.0.50,10.0.0.200,12h
4 dhcp-boot=/pxelinux.0,0.0.0.0
5
6 enable-tftp
7 tftp-root=/var/ftpd
8 pxe-service=X86PC, "Boot from network", pxelinux
9


=== PXE ===
=== PXE ===
Zeile 54: Zeile 36:
unter /var/ftpd müssen die syslinuxconfig dateien liegen.
unter /var/ftpd müssen die syslinuxconfig dateien liegen.


$ ls -l /var/ftpd/
$ ls -l /var/ftpd/
-rw-r--r-- 1 root root  24604 12. Okt 2014  chain.c32
-rw-r--r-- 1 root root  24604 12. Okt 2014  chain.c32
drwxrwxrwx 4 root root  4096 13. Okt 19:08 debian/
drwxrwxrwx 4 root root  4096 13. Okt 19:08 debian/
drwxr-xr-x 2 root root  4096 13. Okt 18:58 fedora/
drwxr-xr-x 2 root root  4096 13. Okt 18:58 fedora/
-rw-r--r-- 1 root root 116636 12. Okt 2014  ldlinux.c32
-rw-r--r-- 1 root root 116636 12. Okt 2014  ldlinux.c32
-rw-r--r-- 1 root root 182572 12. Okt 2014  libcom32.c32
-rw-r--r-- 1 root root 182572 12. Okt 2014  libcom32.c32
-rw-r--r-- 1 root root  23492 12. Okt 2014  libutil.c32
-rw-r--r-- 1 root root  23492 12. Okt 2014  libutil.c32
dr-xr-xr-x 9 root root  4096 13. Okt 18:48 mint/
dr-xr-xr-x 9 root root  4096 13. Okt 18:48 mint/
-rw-r--r-- 1 root root  42985 12. Okt 2014  pxelinux.0
-rw-r--r-- 1 root root  42985 12. Okt 2014  pxelinux.0
drwxr-xr-x 2 root root  4096 13. Okt 19:11 pxelinux.cfg/
drwxr-xr-x 2 root root  4096 13. Okt 19:11 pxelinux.cfg/
-rw-r--r-- 1 root root  1372 12. Okt 2014  reboot.c32
-rw-r--r-- 1 root root  1372 12. Okt 2014  reboot.c32
-rw-r--r-- 1 root root  26212 12. Okt 2014  vesamenu.c32
-rw-r--r-- 1 root root  26212 12. Okt 2014  vesamenu.c32


die *.c32 bekommt man aus seiner syslinuxinstallation (einfach per apt/dnf/pacman/... installieren) und dann unter /usr/lib/syslinux/bios/ die dateien kopieren. Mehr werden nicht benötigt, können aber reinpackt werden (schadet nicht).
die *.c32 bekommt man aus seiner syslinuxinstallation (einfach per apt/dnf/pacman/... installieren) und dann unter /usr/lib/syslinux/bios/ die dateien kopieren. Mehr werden nicht benötigt, können aber reinpackt werden (schadet nicht).


  $ cat /var/ftpd/pxelinux.cfg/default
  $ cat /var/ftpd/pxelinux.cfg/default
 
default vesamenu.c32
  1 default vesamenu.c32
prompt 0
  2 prompt 0
timeout 0
  3 timeout 0
menu hshift 7
  4 menu hshift 7
menu width 61
  5 menu width 61
  6
menu title Linux Installations Party
  7 menu title Linux Installations Party
include pxelinux.cfg/appearance
  8 include pxelinux.cfg/appearance
  9
   
  10
  label -
  11 label -
    menu label Bitte waehle deine Distribution aus
12    menu label Bitte waehle deine Distribution aus
    menu disable
13    menu disable
   
  14
  label Fedora
  15 label Fedora
    menu label ^Fedora 22
16    menu label ^Fedora 22
    kernel fedora/vmlinuz
17    kernel fedora/vmlinuz
    append initrd=fedora/initrd.img inst.stage2=nfs:nfsvers=4:10.0.0.1:/var/ftpd/fedora <nowiki>inst.repo=http://ftp.tu-chemnitz.de/pub/linux/fedora/linux/releases/22/Workstation/x86_64/os/</nowiki>
18    append initrd=fedora/initrd.img inst.stage2=nfs:nfsvers=4:10.0.0.1:/var/ftpd/fedora inst.repo=http://ftp.tu-chemnitz.de/pub/linux/fedora/linux/releases/22/Workstation/x86_64/os/
   
  19
  label Debian
  20 label Debian
    menu label ^Debian Jessie
21    menu label ^Debian Jessie
    kernel debian/vmlinuz
22    kernel debian/vmlinuz
    append initrd=debian/initrd.gz vga=788 quiet
23    append initrd=debian/initrd.gz vga=788 quiet
   
  24
  label Mint (Debian)
  25 label Mint (Debian)
    menu label ^LMDE2 (aka Mint)
26    menu label ^LMDE2 (aka Mint)
    kernel mint/live/vmlinuz
27    kernel mint/live/vmlinuz
    append initrd=mint/live/initrd.lz config boot=live netboot=nfs nfsroot=10.0.0.1:/var/ftpd/mint/
28    append initrd=mint/live/initrd.lz config boot=live netboot=nfs nfsroot=10.0.0.1:/var/ftpd/mint/
   
  29


Die config kann um weitere Einträge erweitert werden und dient hier nur dem Beispiel. Die Datein werden über nfs geladen, da tftp sehr langsam ist und eine effiziente übertragung nicht möglich ist.
Die config kann um weitere Einträge erweitert werden und dient hier nur dem Beispiel. Die Datein werden über nfs geladen, da tftp sehr langsam ist und eine effiziente übertragung nicht möglich ist.


Letzendlich noch ein
# systemctl restart dnsmasq.service
und fertig ist die laube


=== Images ===
Die Networkimages bekommt ihr zumeist aus dem so der distribution extrahiert (guckt nach dem oder pxeboot o.ä.). Bei Fedora existiert eine s.g. <code>.treeinfo</code> [http://ftp.tu-chemnitz.de/pub/linux/fedora/linux/releases/22/Workstation/x86_64/os/.treeinfo.signed], in der die benötigten Dateien samt Pfad stehen. Für Debian existiert ein tar archiv [https://www.debian.org/distrib/netinst#netboot], dort im ordner <code>debian-installer/amd64/</code> die <code>linux</code> (kernel) und <code>initrd.gz</code> (initram) entpacken und fertig (genaueres steht in einer config datei im boot-screens ordner (bei mir die txt.cfg))
Für alle anderen Distros muss man googlen, gerade um die parameter für den kernel rauszufinden etc, aber mit diesen beiden Distros (plus das obige für Debian mint) seid ihr schon gut bedient ;)


=== TODO ===
=== TODO ===
efi32/efi64 bereitstellen (zur zeit ist nur legacy bios möglich) [https://wiki.ubuntu.com/UEFI/SecureBoot-PXE-IPv6]
efi32/efi64 bereitstellen (zur zeit ist nur legacy bios möglich) [[https://wiki.ubuntu.com/UEFI/SecureBoot-PXE-IPv6]]


[[Kategorie:HOWTO]]
[[Kategorie:HOWTO]]

Bitte beachte, dass alle Beiträge zu Fachschaft_Informatik von anderen Mitwirkenden bearbeitet, geändert oder gelöscht werden können. Reiche hier keine Texte ein, falls du nicht willst, dass diese ohne Einschränkung geändert werden können.

Du bestätigst hiermit auch, dass du diese Texte selbst geschrieben hast oder diese von einer gemeinfreien Quelle kopiert hast (weitere Einzelheiten unter Fachschaft Informatik:Urheberrechte). ÜBERTRAGE OHNE GENEHMIGUNG KEINE URHEBERRECHTLICH GESCHÜTZTEN INHALTE!

Bitte beantworte die folgende Frage, um diese Seite bearbeiten zu können (<a href="/Fachschaft/wiki/index.php?title=Special:Captcha/help" class="internal">weitere Informationen</a>):

Abbrechen Bearbeitungshilfe (wird in einem neuen Fenster geöffnet)