Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: Linux Forum Linux-Web.de. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

25.05.2006, 14:05

Image von Linux unter neuer Hardware

Hallo!

Ich beschäftige mich erst seit einigen Monaten mit Linux und bin nun auf eine Frage gestoßen, die ich trotz langer Suche unter google (backup linux geänderte hardware rsync usw) nicht beantworten konnte :-(

Ich habe einige howtos zum Thema Backup gefunden, die sich jedoch oftmals auf Dateien oder spezielle Verzeichnisse oder Dienste beziehen.

Wenn ich unter Windows ein Systembackup erstelle, nutze ich eine Imagesoftware, um die gesamte Platte zu spiegeln. Raucht die Platte ab, so kann ich das Image auf eine neue Platte spielen und gut ist.
Wenn jedoch mein Board den Geist aufgiebt, besteht die Möglichkeit, daß mein Windows vom Image startet und die neue Hardware erkennt und die fehlenden Treiber installiert (ist auch ein wenig Glückssache ;-) )

Jetzt würde ich gerne wissen, wie es sich mit Linux generell verhält?
Was passiert, wen ich ein Image eines Linux-Systems auf einen REchner mit neuer Hardware setze?

Ich habe noch nicht so ganz das Prinzip hinter dem Funktionsprinzip verstanden und finde leider auch keine guten Infos im Netz!

Ich würde mich freuen, wenn Ihr mir helfen könntet :-)

Viele Grüße
itsy

linuxerr

Prof. Dr. Schlaumeier

  • »linuxerr« ist männlich

Beiträge: 8 557

Wohnort: Mecklenburg, zur Entwicklungshilfe in Chemnitz/Sachsen ;-)

  • Nachricht senden

2

25.05.2006, 14:13

RE: Image von Linux unter neuer Hardware

ich würde lügen, wenn ich sage, dass es keine probleme gibt. ein 1:1 abzug mit dd auf eine sicherungsplatte benutze ich schon seit längerem um ein system zu kopieren und es funktioniert einwandfrei. ich konfiguriere auf einem system und ziehe das dann immer nur per dd auf eine andere platte für einen neuen rechner. damit sind bootloader, system, programme, configs immer komplett auf dem neuen system. da ich identische hds verwende, ist dann die partitionierung auch gleich dabei. probleme wird es geben, wenn neue hardware nicht vom kernel oder den modulen unterstützt wird, das müsstest du dann nachinstallieren.
Die Rechtschreibfehler in diesem Beitrag sind nicht urheberrechtlich geschützt.
Jeder der einen findet darf ihn behalten und in eigenen Werken weiterverwenden.

3

25.05.2006, 14:40

RE: Image von Linux unter neuer Hardware

Hallo und vielen Dank für Deine Antwort :-)
Kanst Du mir vielleicht auch sagen, wie dies intern verwaltet wird?
Also, es gibt wie unter Windows ein Verzeichnis, in dem eine Reihe von Treibern zur verfügung stehen. Gehen wir mal davon aus daß die Treiber für die neue Hardware nicht so exotisch sind, daß sie vorhanden sind.

Möglichkeit 1, so wie ich mir das vorstellen könnte:
Bei jedem Bootvorgang erkennt das Linux-System die Hardware neu und nutzt die entsprechenden passenden Treiber, sofern vorhanden.

Möglichkeit 2, so wie ich mir das vorstellen könnte:
Bei der Installation wird die Hardware wie unter Windows erkannt und die Hardware, sowie die vorhandenen Treiber werden irgendwo eingebunden und in eine Datei geschrieben . Beim Bootvorgang wird auf Grundlage der Datei und den eigebundenen Treibern dann gebootet. Dabei wird festgestellt, daß sich die Hardware geändert hat oder daß ein Treiber nicht funktioniert (aufgrund der geänderten Hardware), ein neuen Treiber wird nun gesucht, irgendwo eingebunden und in die Config-Datei geschrieben. Danach wird das geänderte System neu gestartet.

Wie habe ich mir den Vorgang nun vorzustellen?

Viele Grüße
itsy

linuxerr

Prof. Dr. Schlaumeier

  • »linuxerr« ist männlich

Beiträge: 8 557

Wohnort: Mecklenburg, zur Entwicklungshilfe in Chemnitz/Sachsen ;-)

  • Nachricht senden

4

25.05.2006, 15:09

RE: Image von Linux unter neuer Hardware

grundsätzlich ist es so, dass für sämtliche hardwareunterstützung der kernel zuständig ist (liegt in /boot , heißt meist vmlinuz oä). alles was der kernel nicht kennt, wird nicht unterstützt. die harwaretreiber sind entweder fest in den kernel einkompiliert oder können als module später hinzugeladen werden. im kernel sind die wichtigsten module eincompiliert um das system starten zu können (ide, scsi treiber etc) als module gibt es eine vielzahl (je nach distribution und adminerfahrung) die liegen unter /lib/modules/....
wenn der kernel nun gestartet ist müssen die module für die extra-hardware geladen werden. auch dazu gibt es verschiedene möglichkeiten. der kernel stößt nach seinem start eine reihe von initialisierungsscripten an, auf die der admin (root) zugriff hat. in diese kann man nun das laden von kernelmodulen fest vorgeben. das passiert meist in config dateien wie /etc/modules.conf oder /etc/sysconfig/... als nächstes kommen automatische loader ins spiel, wie zb hotplug, usb, pcmcia die zur laufzeit anhand der produkt-id des gerätes das entsprechende modul in den kernel laden, wenn es vorhanden ist und in den entsprechenden map-listen geführt wird. deshalb wird ein grosser teil der hardware beim start automatisch erkannt. es besteht ebenfalls die möglichkeit diese module per hand zu laden (modprobe, insmod) oder zu entladen (rmmod), was besonders beim testen sinnvoll ist. die konfiguration der hardware obliegt dann wieder dem admin. je nach distribution gibt es dann wieder entsprechende scripte die die einbindung der hardware übernehmen.
wenn du also zb eine netzwerkkarte in deinen rechner einbaust (zb mit einem realteck chip), dann wird diese durch das system erkannt und das entsprechende modul geladen. das bedeutet, dass der kernel ein device (gerätedatei zb /dev/eth0) erzeugt, über die man nun auf die hardware zugreifen kann. der netzwerkkontakt funktioniert dann noch lange nicht, denn der kernel selbst kann ja nicht wissen welche ip diese karte nun bekommen soll. das muss der admin festlegen und die karte konfigurieren (ifconfig). wie gesagt, in vielen distributionen geschieht diese konfiguration automatisch nach dem einbau der hardware, wenn bestimmte vorgaben gemacht wurden (zb im yast bei suse). dieses ist nichts anderes als ein graphisches frontend, das deine eingaben (ip, netmask, standardgateway etc) in die entsprechenden systemscripte einzutragen. das bedeutet, das man das auch von hand machen kann. das hat den vorteil, das man das system auch ohne grafische oberfläche konfigurieren kann.
du solltest dir deshalb stets im klaren sein, das die graphische oberfläche (kde, gnome, xfce....) kein immanenter bestandteil von linux ist, sondern nur eine laufende anwendung. diese gibt dem anwender aber eine einfache möglichkeit das system zu konfigurieren, indem es die scriptdaten graphisch aufbereitet, notwendig ist sie nicht.

diese ganzen startscripte sind in den verschiedenen distributionen mehr oder weniger komfortabel ausgebaut, sodass die hardware nach dem hochfahren bereits einsatzfähig ist. eventuelle konfigurationen die noch nötig sind können in konfigurationstools vorgenommen werden.
Die Rechtschreibfehler in diesem Beitrag sind nicht urheberrechtlich geschützt.
Jeder der einen findet darf ihn behalten und in eigenen Werken weiterverwenden.

5

25.05.2006, 15:55

RE: Image von Linux unter neuer Hardware

Hab vielen Dank für die sehr gute und ausführliche Antwort :-)

Ich möchte nochmal kurz zusammenfasssen, ob ich es richtig verstanden habe:

1. Beim Bootvorgang wird sämtliche Hardware neu erkannt, sofern es dem Kernel möglich ist.

2. Die Treiber zur erkannten Hardware bringt der Kernel selbst mit oder er läd diese aus den Modulen nach.

Was ist dann mit eingebundenen Treibern in /etc/modules.conf oder /etc/sysconfig/ für die es keine Hardware mehr gibt. Werden diese ignoriert oder gibt es Fehlermeldungen wie bei Windows?

Du schreibst:

Zitat

wenn der kernel nun gestartet ist müssen die module für die extra-hardware geladen werden. auch dazu gibt es verschiedene möglichkeiten. der kernel stößt nach seinem start eine reihe von initialisierungsscripten an, auf die der admin (root) zugriff hat. in diese kann man nun das laden von kernelmodulen fest vorgeben. das passiert meist in config dateien wie /etc/modules.conf oder /etc/sysconfig/...


Also alle Module, die der Kernel nicht mitbringt müssen über die Module nachgeladen werden. Jetzt verstehe ich nicht so ganz, ob dieses Nachladen nur statisch aus der /etc/modules.conf oder /etc/sysconfig/ geschieht, oder ob der Kernel, bei erkannter Hardware, für die er aber keinen Treiber mitbringt, selbst das richtige Modul "findet" sofern vorhanden.

Dies hätte dann folgende Auswirkungen, wenn ich richtig verstanden habe:
Hardware, die nicht vom Kernel erkannt wird, muß ich manuell in /etc/modules.conf oder /etc/sysconfig/ konfigurieren, damit sie eingebunden wird.

Für Hardware, die erkannt wird, muß ich nur das richtige Modul im Modulverzeichnis zur Verfügung stellen, der Rest wird automatisch erledigt.


Für die Imageproblematik würde dies bedeuten:
Wenn ich die Hardware wechsel und ich weiß, daß der Kernel die neue Hardware unterstützt, dann muß ich die Hardware ggf. nur neu konfigurieren, sofern dies nicht über eine alte Konfiguration in /etc bereits erledigt wird?!

Viele Grüße
itsy

linuxerr

Prof. Dr. Schlaumeier

  • »linuxerr« ist männlich

Beiträge: 8 557

Wohnort: Mecklenburg, zur Entwicklungshilfe in Chemnitz/Sachsen ;-)

  • Nachricht senden

6

25.05.2006, 16:30

RE: Image von Linux unter neuer Hardware

Zitat

Original von itsy
1. Beim Bootvorgang wird sämtliche Hardware neu erkannt, sofern es dem Kernel möglich ist.
jein, siehe unten

Zitat

2. Die Treiber zur erkannten Hardware bringt der Kernel selbst mit oder er läd diese aus den Modulen nach.

ja. sollte zu deiner hardware kein modul installiert sein, dann kann man diese modules ( falls es schon welche gibt, zb bei souceforge.org) später zum kernel compilieren oder wenn sie für den kernel schon compiliert sind, nachinstallieren.

Zitat

Was ist dann mit eingebundenen Treibern in /etc/modules.conf oder /etc/sysconfig/ für die es keine Hardware mehr gibt. Werden diese ignoriert oder gibt es Fehlermeldungen wie bei Windows?

die module erkennen selbst, ob eine entsprechende hardware installiert ist oder nicht. wird keine entsprechende hardware gefunden, so entladen sich die module im allgemeinen selbständig. fehlermeldungen kannst du dann in /var/log/messages oder in der ausgabe von dmesg lesen.

Zitat


Also alle Module, die der Kernel nicht mitbringt müssen über die Module nachgeladen werden. Jetzt verstehe ich nicht so ganz, ob dieses Nachladen nur statisch aus der /etc/modules.conf oder /etc/sysconfig/ geschieht, oder ob der Kernel, bei erkannter Hardware, für die er aber keinen Treiber mitbringt, selbst das richtige Modul "findet" sofern vorhanden.

die module in /etc/modules.conf ... etc werden statisch geladen, das ist richtig. für das automatische nachladen ist das hotplug-system (pci,usb,pcmcia) zuständig. jede hardware besitzt eine eindeutige id die es identifiziert. sie setzt sich aus mehreren zahlen zusammen, die hersteller, produkt und version angeben. diese id wird durch den kernel ausgelesen (siehe zb die ausgaben von lspci oder lsusb ). im hotplug-system werden nun mehrere listen (/etc/hotplug/****.handmap oder usermap oder distmap) geführt, in denen steht, welches modul zu welcher hardware-id passt. wird ein solcher eintrag gefunden, so läd das hotplug-system das zugehörige modul automatisch. fehlt dieser eintrag, so passiert nichts. das hat folgende konsequenz. wenn du hardware einbaust und sie wird nicht erkannt, dann kann das zwei ursachen haben
1. es existiert kein passendes modul auf deinem rechner
2. es gibt zwar ein passendes modul, aber zu deiner hardware existiert in den mapdateien kein eintrag. das kann vorkommen, da viele produkte zwar technisch gleich sind, aber die id unterschiedlich ist, weil sie einfach in china gekauft und umgelabelt werden. dann kannst du entweder eine entsprechende zeile in der usermap des hotplug-systems ergänzen oder du trägst das modul statisch in /etc/modules.conf ein.

Zitat


Dies hätte dann folgende Auswirkungen, wenn ich richtig verstanden habe:
Hardware, die nicht vom Kernel erkannt wird, muß ich manuell in /etc/modules.conf oder /etc/sysconfig/ konfigurieren, damit sie eingebunden wird.

siehe vorhergehende sätze.

Zitat


Für Hardware, die erkannt wird, muß ich nur das richtige Modul im Modulverzeichnis zur Verfügung stellen, der Rest wird automatisch erledigt.

und einen eintrag in der hotplug-usermap oder /etc/modules.conf erzeugen.

Zitat


Für die Imageproblematik würde dies bedeuten:
Wenn ich die Hardware wechsel und ich weiß, daß der Kernel die neue Hardware unterstützt, dann muß ich die Hardware ggf. nur neu konfigurieren, sofern dies nicht über eine alte Konfiguration in /etc bereits erledigt wird?!

ja genau!

gruss
Die Rechtschreibfehler in diesem Beitrag sind nicht urheberrechtlich geschützt.
Jeder der einen findet darf ihn behalten und in eigenen Werken weiterverwenden.

7

25.05.2006, 20:18

Vielen Dank!

Ich hab's verstanden :-)

linuxerr

Prof. Dr. Schlaumeier

  • »linuxerr« ist männlich

Beiträge: 8 557

Wohnort: Mecklenburg, zur Entwicklungshilfe in Chemnitz/Sachsen ;-)

  • Nachricht senden

8

25.05.2006, 20:41

bitte sehr. :)

gruss
Die Rechtschreibfehler in diesem Beitrag sind nicht urheberrechtlich geschützt.
Jeder der einen findet darf ihn behalten und in eigenen Werken weiterverwenden.

Thema bewerten