close Warning: Can't synchronize with repository "keplertools" (/srv/svn/keplertools does not appear to be a Subversion repository.). Look in the Trac log for more information.

Changes between Version 11 and Version 12 of AdminLinbo


Ignore:
Timestamp:
Oct 22, 2018, 3:54:04 PM (8 years ago)
Author:
bau
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AdminLinbo

    v11 v12  
    3030== Anpassungen ==
    3131=== /etc/linuxmuster/import_workstations.d ===
    32 Wir setzen mehrere LTSP-Server mit dem DHCP/DNS-Server dnsmasq ein. Nach dem Workstation-Import werden aus den Config-Files von linuxmuster.net sowie unseren Config-Files für die LTSP-Server unter /etc/linuxmuster/ltsp_config/ die Konfigurationen für die verschiedenen dnsmasq-Server erstellt, auf die Server hochgeladen und die dnsmasq-Prozesse dort neu gestartet. Der Link wurde im script.d-Verzeichnis der LML abgelegt.
     32Wir setzen mehrere LTSP-Server mit dem DHCP/DNS-Server dnsmasq ein. Nach dem Workstation-Import werden aus den Config-Files von linuxmuster.net die Konfigurationen für die verschiedenen dnsmasq-Server erstellt, auf die Server hochgeladen und die dnsmasq-Prozesse dort neu gestartet.
    3333
    3434Dateien:
    35 * /etc/linuxmuster/ltsp_config/paedml.template[[BR]]
    36   Vorlage für die paedml-dnsmasq-Konfiguration, Script passt DNS, WPAD etc an 
    37 * /etc/linuxmuster/ltsp_config/ltsp.template[[BR]]
    38   Vorlage für die LTSP-dnsmasq-Konfiguration, Script passt die IP-Bereiche, DNS, WPAD etc an
    39 * /etc/linuxmuster/ltsp_config/ltspl.template[[BR]]
    40   Vorlage für die ltspl-dnsmasq-Konfiguration
    41 * /etc/linuxmuster/ltsp_config/paedml[[BR]]
    42   Hier lagert die fertig angepasste Konfiguration des paedml-Servers
    43 * /etc/linuxmuster/ltsp_config/ltspX/  und  /etc/linuxmuster/ltsp_config/ltsplX/[[BR]]
    44   Hier lagert die fertig angepasste Konfiguration der LTSP-Server
    45 * /etc/linuxmuster/ltsp_config/clientsS/clients[[BR]]
    46   In dieser Datei stehen die getaggten Clients (HWAdresse, IP, Name) des Schülernetzes.[[BR]]
    47   Die Tags legen fest, welches Bootmenü ausgeliefert wird, was also letztendlich gebootet wird.
    48 * /etc/linuxmuster/ltsp_config/dhcp/dhcp.conf[[BR]]
    49   Konfigurationsdatei für den DHCP-Server im Lehrernetz.
    50 * /etc/linuxmuster/ltsp_config/ltspclients[[BR]]
    51   Hier werden die LTSP-Clients aufgeführt, da diese keinen Workstation-Account auf der paedml benötigen und somit nicht in die workstations-Datei gehören
     35Der Vorgang der Erstellung der Config-Dateien für DNSMASQ muss überarbeitet werden!
     36
    5237     
    5338Wir benutzen den DNSMASQ und nicht wie die LML isc-dhcp-Servers und bind9. Die !Start/Stop-Scripte der beiden haben wir unter /etc/init.d unschädlich gemacht, so dass keine Anpassungen mehr am Script selbst erfolgen müssen.
    5439
    5540
    56 === /usr/share/linuxmuster-linbo/update-linbofs.sh ===
    57 Nach einem Featurerequest unter http://www.linuxmuster.net/flyspray/task/427 kann nun eine alternative Server-IP in den Start-conf-Dateien angegeben werden - eine Anpassung im Script ist nicht mehr nötig.
    5841
    5942=== /var/linbo/pxelinux.cfg/ ===
    60 Hier lagern die per TFTP ausgelieferten PXE-Boot-Configs für jede Gruppe. Da wir derzeit per DHCP keinen Dateinamen mit ausliefern wird die IP (in HEX) oder die default genommen. Das passt soweit, da wir keine Besonderheiten an der Hardware haben.
     43LINBO bootet seit Version 2.3 über PXE/Grub 2 - dieser Abschnitt ist obsolet.
    6144
    62 * /var/linbo/pxelinux.cfg/default[[BR]]
    63   Default für das Schülernetz, hier steht der APPEND server=10.32.1.1 drin, ansonsten würde LINBO versuchen von dem Server zu booten, von dem es seine IP erhalten hat, das muss schiefgehen :-)
    64 * Die Clients erhalten ab linuxmuster.net 6.1 hier einen Eintrag in HEX (symlink auf die Datei mit dem Gruppennamen - hier könnte ein alternatives Verhalten erzeugt werden)
    65 * Clients können hier subnetzweise oder IPweise mit einer eigenen Datei versorgt werden, die Datei muss einfach so heißen wie die IP in HEX
    6645
    6746== DHCP und DNS ==
    … …  
    6948
    7049Die Daten für DHCP/DNS werden von den Scripten /usr/local/sbin/make_ltsp_config und /usr/local/sbin/make_ltsp_config.php aus der /etc/linuxmuster/workstations entnommen, auf die DHCP/DNS-Server geladen und der dnsmasq neu gestartet. Die Scripte taggen die einzelnen Zeilen mit den MAC-Adressen/IP-Zuordnungen, so dass der DHCP individuelle PXE-Bootmenüs rausgeben kann. Der dhcp.kg-fds.de im Lehrernetz tagged auch die dhcp-leases, je nachdem, in welchem Subnetz der Lease ausgegeben wird, so dass individuelle Einstellungen (Defaukltgateway, DNS-Server, Routen, ...) ausgegeben werden können.
    71 
    72 
    73 === /var/linbo/menu.lst.Gruppe ===
    74 Für jede Gruppe wurde eine solche Datei angelegt, 3 Sekunden hat man dadurch bei lokalem Boot Zeit, Linbo zu umgehen und stattdessen Edubuntu direkt zu booten. Bei jedem rsync (z.B. Cache aktualisieren) wird die Datei auch auf den Client geholt.
    7550
    7651
    … …  
    10984  * !CronJob angelegt wird, der fünf Stunden später wieder auf 0 zurückändert
    11085  * Statusmeldungen von den Clients an den Server senden (/etc/issue.kepler)
     86
     87== Anpassungen in linbofs.lz ==
     88* linbofs.lz ist ein gepacktes cpio
     89  * packen
     90    {{{
     91       #!/bin/bash
     92       cd /srv/tftp/linbofs_unpacked
     93       find . | cpio --quiet -o -H newc | lzma -zcv > /srv/tftp/linbofs.lz
     94    }}}
     95  * entpacken
     96    {{{
     97      #!/bin/bash
     98      # Aufruf im Verzeichnis, in das das gepackte cpio entpackt werden soll
     99      xzcat ../linbofs.lz | cpio -i -d -H newc --no-absolute-filenames &> /dev/null ;
     100    }}}
     101* in /etc/inittab steht, was dann gestartet werden soll:
     102  {{{
     103    ::sysinit:/init.sh
     104    ::respawn:/linbo.sh
     105  }}}
     106* Linbo wird zusammengestellt in /init.sh
     107* die LINBO-GUI wird in /linbo.sh gestartet
     108* die Befehle sind im Script /usr/bin/linbo_cmd gesammelt
     109* Befehle an der Commandline werden über /usr/bin/linbo_wrapper abgesetzt
     110
     111* Manchmal liefert unser DHCP zu langsam eine IP aus (Ursache ist unklar). LINBO benutzt udhcp, der fragt aber nur maximal dreimal an, bricht ab. Wenn LINBO keine IP erhalten hat, kommt es immer mal wieder vor, dass die Cache-Partition formatiert wird - Anpassung in /init.sh:
     112{{{
     113  network() {
     114   (...)
     115   sleep 2s
     116   ip=""
     117   while [ -z "$ip" ]; do
     118     echo " ... GET Data per DHCP (udhcpc)"
     119     udhcpc -n -i "$dhcpdev" $dhcpretry ; RC="$?"
     120     ip="`get_ipaddr`"
     121   done
     122
     123   ipaddr="$ip"
     124
     125   (...)
     126}}}
     127
     128* LINBO hat umgestellt auf grundsätzlichen Reboot. Das wollen wir so nicht - Anpassung in /usr/bin/linbo_cmd:
     129{{{
     130start(){
     131  (...)
     132#auskommentiert   mk_boot "$partition" "$KERNEL" "$INITRD" "$APPEND" | tee -a /tmp/linbo.log
     133  (...)
     134#auskommentiert   [ "$(fstype "$partition")" = "ntfs" -a -d /cache/linuxmuster-win ] && update_win | tee -a /tmp/linbo.log
     135  (...)
     136#auskommentiert reboot -f
     137  (...)
     138 # boote das System
     139 --- Hier muss der Kernel aus busybox heraus gestartet werden
     140
     141}}}