BSDForen.de  

Zurück   BSDForen.de > NetBSD > NetBSD - Allgemein

Antwort
 
Themen-Optionen Thema bewerten Ansicht
Alt 20.12.2006, 21:51   #1
explorer
Registered User
 
Registrierungsdatum: Feb 2006
Beiträge: 78
Von amd64 auf i386 kernel switchen

Hallo.
Vorweg erstmal eine generelle Frage:
Ist es möglich ohne das System neu aufzusetzen von einem amd64 Kernel auf einen i386 Kernel zu wechseln?

Ich wollte das mal probieren, da es in der pkgsrc oft hieß:"Not available for NetbsdX86_64".

Habe also mit
Code:
cvs -d $CVSROOT checkout -PA src
die current Quellen gezogen und mit
Code:
./build.sh -U -u tools ./build.sh -U -u distribution ./build.sh -U -m i386 -u kernel=GENERIC_ISDN
meinen i386 Kernel gebaut.
Dann erstmal eingestellt und gereebotet.
Beim Reboot mit dem neuen Kernel kam dann:
Zitat:
exec /sbin/init: error 8
init: trying /sbin/oinit
exec /sbin/oinit: error 2
init: trying /sbin/init.bak
exec /sbin/init.bak: error 2
init: not found
panic: no init
kdb breakpoint at 11d11e0
Stopped in pid 1.1 (init) at netbsd:cpu_Debugger+0x4: nop
db>
Was kann ich da machen?
Wenn ich vom alten Kernel boote geht es wieder.
Ich tippe mal drauf, das meine /sbin/init einfach nicht mit einem i386 Kernel läuft.
Wäre ein
Code:
./build.sh -U install=/
angebracht?Oder zerstöre ich damit mein System?

Danke schonmal im Vorraus.

mfg
Explorer
__________________
Eine klügere Spezies mit ähnlicher Agressivität hätte es inzwischen wenigstens geschafft sich selbst zu eliminieren .
Aber selbst dazu sind wir zu dumm...
explorer ist offline   Mit Zitat antworten
Alt 21.12.2006, 06:43   #2
TCM
Registered User
 
Registrierungsdatum: Mar 2005
Beiträge: 410
das problem duerfte sein, dass ein 32bit-kernel keine 64bit-binaries ausfuehren kann.

ich wuerde:

1) /rescue durch die 32bit-version ersetzen. vorher das alte /rescue sichern, z.b. nach /rescue.bak
2) /sbin/init und /lib sichern
3) in single-user wechseln
4) /sbin/init und /lib durch die 32bit-varianten austauschen. dafuer allerdings /rescue.bak/mv bzw. cp benutzen
5) mit /rescue.bak/reboot neustarten
6) den 32bit-kernel in single-user booten
7) mit /rescue/mv bzw. cp oder tar alle restlichen systembinaries sichern und durch 32bit-versionen ersetzen

kann sein, dass ich was vergessen habe auf die schnelle, aber so muesste das moeglich sein.

einfacher geht das ganze, wenn du eine extra partition wie z.b. /tmp kurzzeitig zur / deklarieren kannst. du installierst im laufenden 64bit-system das 32bit-system nach /tmp und bootest den neuen kernel dann mit -a und gibst als root-partition dann die an, die vorher /tmp war.
TCM ist offline   Mit Zitat antworten
Alt 21.12.2006, 09:41   #3
explorer
Registered User
 
Registrierungsdatum: Feb 2006
Beiträge: 78
Danke für die schnelle und ausführliche Antwort.
Werd ich dann im laufe des Tages mal ausprobieren.
Ich melde mich dann später mit dem Ergebnis, da ich dann erstmal alle pakete neu kompilieren darf, wenns klappt

mfg
explorer
__________________
Eine klügere Spezies mit ähnlicher Agressivität hätte es inzwischen wenigstens geschafft sich selbst zu eliminieren .
Aber selbst dazu sind wir zu dumm...
explorer ist offline   Mit Zitat antworten
Alt 22.12.2006, 23:52   #4
explorer
Registered User
 
Registrierungsdatum: Feb 2006
Beiträge: 78
So.
Letztendlich habe ich es so versucht:

Erst das komplette /usr/src Verzeichnis in den Ursprungszustand versetzt um keine Probleme mit Abhängigkeiten oder noch liegenden .o's zu bekommen.

Dann ein ewig dauerndes
Code:
./build.sh -U -u -m i386 -D /usr/src/cross distribution
, welches gleich tools etc. mit gebaut hat.
Dann noch ein
Code:
./build.sh -U -u -m i386 kernel=GENERIC_ISDN
Danach habe ich meine Netbsd cd genommen und von da aus mit der Konsole /sbin, /rescue und /lib resichert.
Dann habe ich auch mit der cd die i386 /sbin und /lib genommen und die Alten durch sie ersetzt.
Dann noch den amd Kernel nach /netbsd.amd gesichert und den Neuen nach /netbsd kopiert.

Dann ein Reboot und die cd raus.

Beim Booten kommt jedoch weiterhin:
Code:
exec /sbin/init: error 8 init: trying /sbin/oinit exec /sbin/oinit: error 2 init: trying /sbin/init.bak exec /sbin/init.bak: error 2 init: not found panic: no init kdb breakpoint at 11d11e0 Stopped in pid 1.1 (init) at netbsd:cpu_Debugger+0x4: nop db>
Daher sehe ich den Versuch bis hier hin als gescheitert an.
Wenn noch jemand eine Idee hat, würde ich mich freuen diese zu hören.

Ich für mich werde jetzt erstmal eine unplanmäßige Backuprunde einschieben

mfg
explorer
__________________
Eine klügere Spezies mit ähnlicher Agressivität hätte es inzwischen wenigstens geschafft sich selbst zu eliminieren .
Aber selbst dazu sind wir zu dumm...
explorer ist offline   Mit Zitat antworten
Antwort


Dieses Thema betrachten zurzeit 1 Personen. (0 registrierte Benutzer und 1 Gäste)
 
Themen-Optionen
Ansicht Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist An.
Smileys sind An
[IMG] Code ist An
HTML-Code ist Aus
Gehe zu

Ähnliche Themen
Thema Erstellt von Forum Antworten Letzter Beitrag
UPDATE 15.6.04: BSD Bücher - Eine kleine Rezension asg FreeBSD - Allgemein 82 30.05.2007 02:42
DRM müllt mir meine logs zu JiYu FreeBSD - Allgemein 8 09.08.2006 07:13
UFS2 auf amd64 und i386 Feanor FreeBSD - Allgemein 5 27.10.2004 17:59
NetBSD auf AMD64 'belügen' SierraX NetBSD - Anwendungen 3 21.07.2004 07:14


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:18 Uhr.


Powered by vBulletin (Deutsch)
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.