mex604
Goto Top

Suse 9.2 auf SATA (gelöst)

Moin,

ich stehe vor dem Problem, auf einem aktuellen Supermicro - System mit Quadcore-CPU und SATA ein etwas älteres SUSE 9.2 installieren zu müssen (geht nicht anders, die Clustersoftware, die später darauf laufen soll ist speziell darauf angepaßt) und wollte fragen, ob es eine Möglichkeit gibt, den SATA-Treiber bei der Installation zu aktualisieren, oder war SATA damals schon dabei? Ich denke mal, gerade mit Chipsatz und Treibern wird es da Probleme geben, nach der Installation soll auf jeden Fall nen aktueller Kernel gebaut werden, aber bis dahin? Irgendwelche Ideen?

Mein erster Ansatz ist, das Suse in ner VMWare zu installieren, dort nen aktuellen Kernel zu backen, dann das ganze zu TARen und auf ne USB-Platte zu packen, dann die neuen Maschinen mit Knoppix zu booten, die Installation auf die Platten zu bügeln und dann zu beten face-wink)
Bin cih damit auf dem richtigen oder dem hölzernen Weg?

ich hab lange nicht mehr mit Suse gearbeitet, seit 6.irgendwas nur noch Debian, aber Suse kommt wohl, gerade im Business-Bereich.


mex

Content-Key: 57523

Url: https://administrator.de/contentid/57523

Printed on: April 19, 2024 at 11:04 o'clock

Member: BartSimpson
BartSimpson Apr 28, 2007 at 08:37:00 (UTC)
Goto Top
Der VMWare Ansatz ist nicht schlecht.
Nur würde ich auf der neuen Maschine VMware Server drauf tun.
Und das alte Suse denn als VM laufen lassen. Der der Kernel mit großer Wahrscheinlichkeit eh Probleme mit dem Rest der Hardware bekommen würde. Ausderm kannst mit der Lösung jederzeit umziehenface-smile
Die alternative währe den SATA Controller im legency Modus zu betreiben.(falls das BIOS das zulässt).
Member: mex604
mex604 May 02, 2007 at 10:31:07 (UTC)
Goto Top
moin,

die suse 9.2 als vmware laufen zu lassen geht nicht, weil das die
installation (7 maschinen) als clusterknoten laufen sollen und je 2 x quadcore-cpus
haben, die von der clustersoftware direkt angesprochen werden.

howto folgt.

mex

Der VMWare Ansatz ist nicht schlecht.
Nur würde ich auf der neuen Maschine
VMware Server drauf tun.
Und das alte Suse denn als VM laufen lassen.
Der der Kernel mit großer
Wahrscheinlichkeit eh Probleme mit dem Rest
der Hardware bekommen würde. Ausderm
kannst mit der Lösung jederzeit
umziehenface-smile
Die alternative währe den SATA
Controller im legency Modus zu
betreiben.(falls das BIOS das zulässt).

Member: mex604
mex604 May 02, 2007 at 11:12:20 (UTC)
Goto Top
  • suse 9.2 in einer vmware installieren
  • aktuellen kernel/initrd/ => /boot & /lib/modules/xxx von ner knoppix rüberkopieren
  • lilo.conf für den neuen kernel konfigurieren
  • funktionskontrolle: mit dem neuen kernel starten
  • kopieren des rootverzeichnisses auf eine andere partition und dann dort:
-> entfernen von /dev /sys /proc & neuanlegen der leeren verzeichnisse
-> löschen von /tmp
-> modifikation von diversen dateien (fstab, lilo.conf)
-> alles in ein tar_archiv packen und wegsichern
  • ich hab mir dann ein kleines script (clusterbakery) gebaut, weil die nexten schritte 7 x ausgeführt werden und für spätere setups zur verfügung stehen sollen, das script stelle ich gerne hier oder als download zur verfügung
  • /sbin/e2fsck | /sbin/fsck & /lib/libext2fs.so.2.4 von der aktuellen knoppix-cd kopieren und wegsichern, da das zum späteren zeitpunkt per knoppix erstellte ext3 mit den alten libs und programmen der suse 9.2 nicht funktionieren
  • alles.tar + kopierte dateien + clusterbakery_script auf in ein verzeichnis usb_platte kopieren
  • von knoppix_cd booten
  • usb platte einstecken, mounten, script aufrufen, dabei geschieht dann folgendes:
-> fdisk der unpartitionierten platte (swap, / bei bedarf weitere partitionen)
-> dateisystem wird erstellt (ext3)
-> alles.tar wird auf / kopiert
-> akutelle versionen e2fsck, fsck, libext2fs.so.2.4 in die verzeichnisse kopieren
-> neue fstab wird aufgespielt (kann, wenn nötig, editiert werden)
-> neue lilo.conf wird aufgespielt (kann, wenn nötig, editiert werden)
-> reboot
  • nach dem reboot muss noch kurz mit sax2 die grafische oberfläche eingerichtet und etwas hw installiert werden ( alle HW bis auf die Grafikkarte erkennt yast automatisch), et voila, fertig ist der zitronenkuchen (klingt hier alles so einfach, aber ich hab 12h für den ganzen kram verbraten)

#!/usr/bin/python
#
# clusterbakery v 0.3.4
#
# (c) copyight 2007 mex604@mare-system.de
#
# d: 2007-04-30

import posix, os, sys

# start siehe clusterbakery.lst
#

root_dir = "/media/sda2" # da kommt das neue system hin  

print "-----------------------------------------------"  
print ""  
print " CLUSTERBAKERY  "  
print ""  
print "-----------------------------------------------"  
print ""  
print " auswahl, ob server oder client: "  
print "  "  
print " 1 - server | SCSI "  
print " 2 - client | SATA "  


def server():

    # scsi: server; sda2 -> / => 4GB | sda3 -> /home => rest
    print "\n---------------------------------\n"  
    print "festplatte partitionieren "   
    print "server  (SCSI): sda1 => 4GB SWAP | sda2 => 4GB / | sda3 => der Rest /home"  
    raw_input("[enter] to continue ")  
    posix.system("fdisk /dev/sda ")  
    posix.system("mkswap /dev/sda1 ")  
    posix.system("swapon -a ")  
    print "\n---------------------------------\n"  
    print "beim ersten aufruf, falls /dev/sda3 nicht formatiert"  
    print "werden konnte (fehlermeldung beim zureckschreiben der"  
    print "partitionstabelle auf die hd in fdisk mit [w]"  
    print "mit [ctl]-c und mit # init 6 den rechner neu starten, "  
    print "danach das scipt erneut aufrufen und fdisk mit [q] verlassen"  
    
    raw_input("[enter] to continue ")  
    
    print "\n---------------------------------\n"  
    print "dateisystem anlegen"  
    raw_input("[enter] to continue ")  
    posix.system("mkfs.ext3 /dev/sda2 ")  
    posix.system("mkfs.ext3 /dev/sda3 ")  
    posix.system("mount /dev/sda2 /media/sda2 ")  
    print "\n---------------------------------\n"  
    print "daten auf die festplatte kopieren"  
    raw_input("[enter] to continue ")  
    posix.system("tar xvvf alles.tar -C /media/sda2 ./")  
    print "\nfstab wird neu angelegt "  
    posix.system("cp " + root_dir + "/etc/fstab.server " + root_dir + "/etc/fstab")  
    print "\n---------------------------------\n"  
    print "home_directories werden angelegt"  
    raw_input("[enter] to continue ")  
    posix.system("mkdir /root/homes")  
    posix.system("mv " + root_dir + "/home/* /root/homes")  
    posix.system("mount /dev/sda3 /media/sda3")  
    posix.system("mv /root/homes/* /media/sda3")  
    


def client():

    # sata: clients, nur eine root_patrition /
    print "\n---------------------------------\n"  
    print "festplatte partitionieren "  
    print "clients (SATA): sda1 => 4GB SWAP | sda2 => der Rest /"  
    print "/dev/sda1 => swap, 4GB"  
    print "/dev/sda2 => / "  
    raw_input("[enter] to continue ")  
    posix.system("fdisk /dev/sda ")  
    posix.system("mkswap /dev/sda1 ")  
    posix.system("swapon -a ")  
    print "\n---------------------------------\n"  
    print "dateisystem anlegen"  
    raw_input("[enter] to continue ")  
    posix.system("mkfs.ext3 /dev/sda2 ")  
    posix.system("mount /dev/sda2 /media/sda2 ")  
    print "\n---------------------------------\n"  
    print "daten auf die festplatte kopieren"  
    raw_input("[enter] to continue ")  
    posix.system("tar xvvf alles.tar -C /media/sda2 ./")  



def lilo():

    print "\n---------------------------------\n"  
    print "neue fstab anlegen"  
    raw_input("[enter] to continue ")  
    posix.system("jmacs /media/sda2/etc/fstab")  
    print "\n---------------------------------\n"  
    print "lilo wird neu konfiguriert"  
    raw_input("[enter] to continue ")  
    posix.system("jmacs /media/sda2/etc/lilo.conf")  

    posix.system("lilo -M /dev/sda ")  
    posix.system("lilo -A /dev/sda 2")  
    posix.system("lilo -b /dev/sda -r /media/sda2/ ")  

def dev_sys():
    print "\n---------------------------------\n"  
    print "/proc /sys /dev werden angelegt "  
    raw_input("[enter] to continue ")  
    #posix.system("rm -Rf /media/sda2/proc ")  
    #posix.system("rm -Rf /media/sda2/sys ")  
    #posix.system("rm -Rf /media/sda2/dev ")  
    #posix.system("mkdir /media/sda2/dev ")  
    #posix.system("mkdir /media/sda2/proc ")  
    #posix.system("mkdir /media/sda2/sys ")  
    posix.system("mount --bind /dev /media/sda2/dev ")  
    posix.system("mount --bind /sys /media/sda2/sys ")  
    posix.system("mount --bind /proc /media/sda2/proc ")  
    print "\n---------------------------------\n"  
    print "aktuelle fsck_versionen werden eingespielt "  
    raw_input("[enter] to continue ")  
    posix.system("cp ./fsck " + root_dir + "/sbin/fsck")  
    posix.system("cp ./e2fsck " + root_dir + "/sbin/e2fsck")  
    posix.system("cp -f ./libext2fs.so.2.4 " + root_dir + "/lib/libext2fs.so.2.4")  
    posix.system("cp clustersetup " + root_dir + "/root")  
    
    


def restart():
    print "\n---------------------------------\n"  
    print "neustart des systems"  
    raw_input("[enter] to continue ")  
    posix.system("init 6")  


def network():
    print "\n---------------------------------\n"  
    print "hostname / netzwerk_konfiguration"  
    raw_input("[enter] to continue ")  
    posix.system("jmacs " + root_dir + "/etc/hostname")  
    
    

def main():
    host = raw_input(" ")  
    if host is "1":  
        server()
    elif host is "2":  
        client()
    else:
        print " \n > falsche eingabe " + host + "\n > nochmal von vorne bitte"  
        sys.exit()

    dev_sys()
    lilo()
    #network()
    restart()


main()