Benutzer-Werkzeuge

Webseiten-Werkzeuge


installation:linux-server_update

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
installation:linux-server_update [06.09.2009 21:14]
roland
installation:linux-server_update [02.09.2012 18:37] (aktuell)
roland Anderes Archivformat der Windows-DVD, Anpassung des Download-Pfades
Zeile 10: Zeile 10:
 Das Script verwendet das Windows-Programm TMAdmin, um eventuell noch angemeldete Clients zu bestimmen. Hier [[automatiserung/​tmadmin_unter_linux]] wird beschrieben,​ wie das mittels wine umgesetzt werden kann. Das Script verwendet das Windows-Programm TMAdmin, um eventuell noch angemeldete Clients zu bestimmen. Hier [[automatiserung/​tmadmin_unter_linux]] wird beschrieben,​ wie das mittels wine umgesetzt werden kann.
  
-Hier ist die aktuelle Version für Turbomed ​7.3.3 mit vielen NeuerungenErweiterungen und Bugfixes.+Hier ist die aktuelle Version für Turbomed ​12.3.3 (Leider ändert sich immer wieder etwas in den Update-DVDsbei dieser Version z.B. gibt es ein anderes Archivformat der Windows-DVD,​ und man benötigt das p7zip-rpm):
  
 <code bash> <code bash>
Zeile 16: Zeile 16:
 # #
 # #
 +# Aktueller Turbomed-Download-Server:​
 +DownloadServer="​ftp://​homepage:​download@85.214.141.157"​
 +
 # In diesem Verzeichnis werden die Downloads abgelegt und das Iso-Image erstellt: # In diesem Verzeichnis werden die Downloads abgelegt und das Iso-Image erstellt:
 ImagePath="/​opt/​TM_Images"​ ImagePath="/​opt/​TM_Images"​
 +
 +# Datei mit den Namen der aktuellen zip-Dateien auf dem Turbomed-Server:​
 +TMFiles="/​opt/​TM_Images/​Aktuelle_Version"​
  
 # Falls der Samba-Server aus Kompatibilitätsgründen nicht wie von TM empfohlen mit der # Falls der Samba-Server aus Kompatibilitätsgründen nicht wie von TM empfohlen mit der
Zeile 23: Zeile 29:
 # angegeben werden: # angegeben werden:
 SambaUnixCharset="​utf8"​ SambaUnixCharset="​utf8"​
 +
 +# Codierung der Zip-Dateien:​
 +ZipCharset="​ibm850"​
  
 # MountPoint der DVD: # MountPoint der DVD:
Zeile 33: Zeile 42:
 TMAdmin="/​usr/​local/​bin/​TMAdmin"​ TMAdmin="/​usr/​local/​bin/​TMAdmin"​
 TMClients="/​tmp/​TMClients"​ TMClients="/​tmp/​TMClients"​
 +
 +# Umgebungsvariable setzen, sonst Fehler bei der Zeichencodierung mit unzip:
 +LANG=de_DE.ibm850
  
  
Zeile 38: Zeile 50:
  
   cd $ImagePath   cd $ImagePath
-  WinImage=$(ls -1 *.zip | grep -iv linux) 
-  LinuxImage=$(ls -1 *.zip | grep -i linux) 
-  IsoImage=$(basename $WinImage .zip).iso 
  
-  ​if [ ! -f $LinuxImage ​-o ! -f $WinImage ​]; then+# Dateinamen der Downloads ermitteln:​ 
 + 
 +  cd Downloads 
 +  WinFile=$(ls -1 *.zip *.exe | grep -iv linux) 
 +  LinuxFile=$(ls -1 *.zip | grep -i linux) 
 +   
 +# IsoImage=$(basename $WinImage .zip).iso 
 + 
 +  ​if [ ! -f $LinuxFile ​-o ! -f $WinFile ​]; then
     echo "​Fehler beim Herunterladen der Installationsdateien"​     echo "​Fehler beim Herunterladen der Installationsdateien"​
     exit 1     exit 1
Zeile 48: Zeile 65:
   fi   fi
  
-  ​In gemeinsames Verzeichnis ​entpacken:+# entpacken:
  
-  mkdir $ImagePath/​DVD+  mkdir -p $ImagePath/​DVD
   cd $ImagePath/​DVD   cd $ImagePath/​DVD
-  ​unzip ../$WinImage+    echo 7z-Archiv entpacken:​ 
 +    7z x $ImagePath/​Downloads/​$WinFile 
 +  mv Disk1 TMWin 
 +  mv Disk2/* TMWin/ 
 +  rmdir Disk2 
 +  mv IV TMWin/ 
 +  ​unzip -oS $ImagePath/​Downloads/$LinuxFile
  
-  if [ -n "$(find -iname Disk2)" -a -n "​$(find -iname Disk1)"​ ];then +# Rechte korrigieren ​(sonst funktioniert Linux-Update nicht):
-    mkdir TMWin  +
-    mv "​$(find -iname Disk1)"/​* TMWin/ +
-    mv "​$(find -iname Disk2)"/​* TMWin/ +
-    unzip -o ../​$LinuxImage ​+
  
-  ​else +  ​chmod +x DVD/​TMWin/​linux/​bin/​*
-    echo "​FEHLER:​ keine Turbomed-Verzeichnisse im Archiv gefunden!"​ +
-    echo "​Wahrscheinlich wurde das Archiv nicht vollständig heruntergeladen."​ +
-    rm -r $ImagePath/DVD +
-    exit 1+
  
-  ​fi+  ​cd $ImagePath
  
-  ​# Umlautkodierung korrigieren:​+# Umlautkodierung korrigieren:​
  
-  if [ $SambaUnixCharset != "​iso-8859-1" ​]; then +  if [ $SambaUnixCharset != $ZipCharset ​]; then 
-    /​usr/​bin/​convmv -f iso-8859-1 ​-t $SambaUnixCharset -r $ImagePath/​DVD --notest+    echo "​Umlaute werden korrigiert..."​ 
 +    /​usr/​bin/​convmv -f $ZipCharset ​-t $SambaUnixCharset -r $ImagePath/​DVD --notest
   fi   fi
  
-  # Megaunsichere Steinzeitversion des AR eliminieren:​ +# DVD-Image neu erstellen, aber noch nicht einbinden:
- +
-  rm -r TMWin/​Acrobat +
- +
-  # Rechte korrigieren (sonst funktioniert Linux-Update nicht): +
- +
-  chmod +x TMWin/​linux/​bin/​* +
- +
-  cd .. +
- +
-  ​# DVD-Image neu erstellen, aber noch nicht einbinden:+
  
 +  IsoImage=TMVersion-$(grep Version $ImagePath/​DVD/​TMWin/​CD1 | cut -d "​="​ -f2 | dos2unix).iso
 +  echo "Jetzt wird das Iso-Image $IsoImage erstellt, bitte Taste druecken:"​
 +  read
   genisoimage -J -R -o $IsoImage DVD   genisoimage -J -R -o $IsoImage DVD
-  rm -r $ImagePath/​DVD+  rm -r $ImagePath/​DVD/*
  
   }   }
Zeile 95: Zeile 104:
  
   # Prüfen, ob alle Clients beendet sind:   # Prüfen, ob alle Clients beendet sind:
- 
   $TMAdmin /​listclients > $TMClients   $TMAdmin /​listclients > $TMClients
  
Zeile 111: Zeile 119:
   cd $ImagePath   cd $ImagePath
  
-  ​if [ -$ImagePath/$(basename $DownloadWin .zip).iso ]; then +  ​ActIso=$(ls ​-$ImagePath/TMVersion-*.iso | tail -n1) 
-    # Neue Version ​sicherheitshalber neu einbinden+  if [ -f $ActIso ​]; then 
 +    # Neue Version einbinden
     umount $CDROM     umount $CDROM
 +    mount -o loop $ActIso $CDROM
     rm TM.iso     rm TM.iso
-    ln -s $ImagePath/$(basename $DownloadWin .zip).iso ​TM.iso +    ln -s $ActIso ​$ImagePath/​TM.iso
-    mount -o loop TM.iso $CDROM +
- +
- +
-  elif [ -f $ImagePath/​*.iso ]; then +
-    echo "Es wird nicht die aktuellste Turbomed-Version verwendet."​ +
-    echo -n "Soll das Update mit der alten Version durchgeführt werden? (j/n)[n]: " +
-    read Antwort +
-    if [ "​$Antwort"​ != "​j"​ ]; then +
-      exit 0 +
-    fi+
  
   else   else
Zeile 142: Zeile 142:
     kill -15 $(pidof ptserver)     kill -15 $(pidof ptserver)
  
-    if [ $SambaUnixCharset == "​iso-8859-1" ​]; then+    if [ $SambaUnixCharset == $ZipCharset ​]; then
       /bin/sh $TMUpdateScript       /bin/sh $TMUpdateScript
     ​     ​
Zeile 148: Zeile 148:
       # Dateinamen konvertieren,​ Update starten, wieder rückkonvertieren       # Dateinamen konvertieren,​ Update starten, wieder rückkonvertieren
  
-      /​usr/​bin/​convmv -f $SambaUnixCharset -t iso-8859--\+      /​usr/​bin/​convmv -f $SambaUnixCharset -t $ZipCharset ​---replace ​\
       /​opt/​turbomed/​Bildverarbeitung /​opt/​turbomed/​MedWissen \       /​opt/​turbomed/​Bildverarbeitung /​opt/​turbomed/​MedWissen \
-      /​opt/​turbomed/​Vorlagen /​opt/​turbomed/​Daten /​opt/​turbomed/​Formulare ​--notest+      /​opt/​turbomed/​Vorlagen /​opt/​turbomed/​Daten /​opt/​turbomed/​Formulare
  
-      ​/​bin/​sh ​$TMUpdateScript+      ​case $? in
  
-      ​/​usr/​bin/​convmv -f iso-8859--t $SambaUnixCharset -r \ + 0) /​usr/​bin/​convmv -f $SambaUnixCharset ​-t $ZipCharset ​-r --replace \ 
-      /​opt/​turbomed/​Bildverarbeitung /​opt/​turbomed/​MedWissen \ +           /​opt/​turbomed/​Bildverarbeitung /​opt/​turbomed/​MedWissen \ 
-      /​opt/​turbomed/​Vorlagen /​opt/​turbomed/​Daten /​opt/​turbomed/​Formulare --notest+           /​opt/​turbomed/​Vorlagen /​opt/​turbomed/​Daten /​opt/​turbomed/​Formulare --notest 
 +         /​bin/​sh $TMUpdateScript 
 +    echo "Taste drücken:"​ 
 +    ​read 
 +         /​usr/​bin/​convmv -f $ZipCharset ​-t $SambaUnixCharset -r --replace ​
 +           ​/​opt/​turbomed/​Bildverarbeitung /​opt/​turbomed/​MedWissen \ 
 +           ​/​opt/​turbomed/​Vorlagen /​opt/​turbomed/​Daten /​opt/​turbomed/​Formulare --notest;; 
 + 
 + *) echo "​Konvertierung der Dateinamen ist nicht moeglich."​ 
 +    echo "Es wurden keine Daten veraendert."​ 
 +    echo "​Update nicht durchgeführt. Bitte Taste druecken."​ 
 +    ​read 
 +    /​etc/​init.d/​poetd start ;; 
 +      esac
  
     fi     fi
Zeile 163: Zeile 176:
     rm /​sbin/​TM_update     rm /​sbin/​TM_update
  
-    # Image sicherheitshalber wieder ​einbinden +    # Image auf NetSetup-Verzeichnis ​einbinden: 
-    ​mount -o loop $ImagePath/TM.iso $CDROM +    ​umount ​/media/cdrom 
-    ​rm -r /​opt/​turbomed/​NetSetup +    ​umount ​/​opt/​turbomed/​NetSetup 
-    ​ln -$CDROM/TMWin /​opt/​turbomed/​NetSetup +    ​mount -o loop $ImagePath/TM.iso ​/​opt/​turbomed/​NetSetup
     echo "Die Arbeitsstationen müssen jetzt ebenfalls aktualisiert werden."​     echo "Die Arbeitsstationen müssen jetzt ebenfalls aktualisiert werden."​
  
Zeile 175: Zeile 187:
  
  
-if [ ! -d $ImagePath ]; then +mkdir -p $ImagePath/Downloads
-  ​mkdir -p $ImagePath +
-fi+
  
-DownloadWin=$(wget -qO - http://​www.turbomed.de/​Online%20CD-Bibliothek |\ +WinFile=$(grep ^[^#$TMFiles | grep -v inux) 
-  sed -n -e 's/\(^.*<a href="​\)\([^"]*zip\)\(.*<a href="\)\([^"]*zip\)\("​.*$\)/​\2\n\4/​gp' ​|+LinuxFile=$(grep ^[^#] $TMFiles ​| grep inux)
-  ​grep -iv linux)+
  
-DownloadLinux=$(wget -qO - http://​www.turbomed.de/​Online%20CD-Bibliothek |\ +DownloadWin="$DownloadServer/$WinFile"​ 
-  sed -n -e '​s/​\(^.*<​a href="\)\([^"​]*zip\)\(.*<​a href="​\)\([^"​]*zip\)\("​.*$\)/\2\n\4/​gp'​ |\ +DownloadLinux="$DownloadServer/$LinuxFile"​
-  grep -i linux)+
  
-cd $ImagePath+echo $DownloadWin 
 +echo $DownloadLinux
  
-if [ -f $ImagePath/​$(basename ​$DownloadWin ​.zip).iso ​-a -n "$DownloadWin" -a -"$DownloadLinux" ]; then+cd $ImagePath/​Downloads 
 + 
 +if [ -n "$DownloadWin" ​-a -n "$DownloadLinux" -a ! \( -"$WinFile" ​-a -f "​$LinuxFile"​ \) ]; then
  
   echo "Es steht die neue Turbomed-Version $(basename $DownloadWin .zip) zum Herunterladen bereit."​   echo "Es steht die neue Turbomed-Version $(basename $DownloadWin .zip) zum Herunterladen bereit."​
Zeile 195: Zeile 206:
   read Antwort   read Antwort
   if [ "​$Antwort"​ != "​n"​ ]; then   if [ "​$Antwort"​ != "​n"​ ]; then
-    ​mkdir tmp + 
-    mv -t tmp $(basename ​$DownloadWin) $(basename $DownloadLinux) +    # andere Versionen löschen, falls vorhanden:​ 
-    rm $ImagePath/*.zip +    ​mkdir -p tmp 
-    mv tmp/* . && ​rmdir tmp+    mv -t tmp $WinFile ​$LinuxFile 
 +    rm -f ./*.zip 
 +    mv tmp/* . 
 +    ​rmdir tmp 
 + 
 +    # Dateien herunterladen:​
     wget -c $DownloadWin     wget -c $DownloadWin
     wget -c $DownloadLinux     wget -c $DownloadLinux
-    echo -n "​Download beendet, bitte Eingabetaste ​drücken: "+    echo -n "​Download beendet, bitte Taste drücken:"​
     read     read
 +    # Image erstellen:
     TM-Image     TM-Image
  
Zeile 219: Zeile 236:
   read Antwort   read Antwort
   if [ "​$Antwort"​ == "​j"​ ]; then   if [ "​$Antwort"​ == "​j"​ ]; then
 +
 +    # Sicherheitshalber nochmal Download starten, falls Dateien nicht vollständig heruntergeladen:​
 +    wget -c $DownloadWin
 +    wget -c $DownloadLinux
     TM-Image     TM-Image
   fi   fi
installation/linux-server_update.txt · Zuletzt geändert: 02.09.2012 18:37 von roland