# /(root) und /boot einfach kopieren

## Kurmis

Moin Leute.

Hab grad auf nen PC (P3) gentoo installiert, mit /(root) , swap und /boot.

/dev/sda1  /boot  reiserfs        noatime,notail  0 2

/dev/sda2   none  swap            defaults        0 0

/dev/sda3  /      reiserfs        noatime         0 1

Jetzt wuerde ich gerne dieses System irgend wie klonen auf ne andere Kiste, mit P4,

aber jetzt  /(root) und /boot ich wuerde gerne zusammen halten.

Zielpartition /(root) ist mit reiserfs 3.6 formatiert.

Geht so was ueberhaupt ?

Natuerlich /etc/fstab anpassen, und IP wechseln.

Was ist mit make conf ?

Welche CFLAGS="" sollte ich setzen fuer P4 Kiste ?

Was noch besonderes  muss ich dabei beachten ?

Im voraus besten dank.

----------

## Max Steel

Hallöle,

Also für deine CFlag Sammlung würde ich die folgende Lektüre empfehlen:

http://en.gentoo-wiki.com/wiki/Safe_Cflags

Die Kopiererei würde ich an einem PC (vorzugsweiße dem schnelleren) per rsync empfehlen.

----------

## Kurmis

Kopieren selbst wäre das kleinste problem.

Muss ich auch neue GraKa eintragen unter VIDEO_CARDS=  ??

Wie stelle ich sicher dass meine neue NetzwerkKarte wird eth0 und nicht ath0 oder eth1 ?

Wie werde ich am besten alte Hardware Konfiguration los und mach eine neue ?

----------

## schachti

Das Kopieren klappt nur, wenn der neue Prozessor binärkompatibel zum bisherigen ist und das System mit CFLAGS gebaut wurde, die auch für den neuen Prozessor passen. Auch der Kernel sollte bereits die komplette neue Hardware unterstützen, so dass Du beim Booten später keine böse Überraschung erlebst. Andernfalls solltest Du zunächst den Kernel mit entsprechenden Änderungen neu bauen und das komplette System mit CFLAGS, die für beide Prozessoren funktionieren, neu kompilieren. Gibt es keine CFLAGS, die für beide Prozessoren funktionieren (weil es zum Beispiel komplett unterschiedliche Architekturen sind) kommst Du nicht umhin, das System neu aufzusetzen.

Zum Kopieren selbst: am besten in einem Rescue-System die alten und die neuen Partitionen mounten und mit zum Beispiel tar kopieren (eine Anleitung, die für SuSE geschrieben ist, gibt es hier - im wesentlichen lässt die sich auf gentoo übertragen, Du musst aber evtl. noch vorhandene weitere Partitionen auch mounten, poste doch mal Dein Partitionslayout beider Platten).

Nach dem Kopieren musst Du natürlich noch die /etc/fstab anpassen und den Bootloader passend konfigurieren und in den MBR schreiben (ist im gentoo Handbuch beschrieben). Um sicherzustellen, dass die neue Netzwerkkarte eth0 wird, musst Du dann /etc/udev/rules.d/70-persistent-net.rules anpassen.

Nach dem Booten im neuen System kannst Du dann die /etc/make.conf anpassen (CFLAGS, VIDEO_CARDS, ggf. auch INPUT_DEVICES) und dann mit emerge -DuNpvl @system @world die Pakete neue bauen, die von Änderungen betroffen sind (gilt natürlich nicht für die CFLAGS). Dann kannst Du entweder das ganze System komplett neu bauen, damit die aktualisierten CFLAGS genutzt werden, oder Du verzichtest darauf - dann wird das System nach und nach bei Updates immer mit den neuen CFLAGS gebaut. Um es etwas einfacher zu machen kannst Du auch vor dem Kopieren die VIDEO_CARDS in /etc/make.conf um die neue Karte ergänzen und betroffene Pakete neue bauen - dann hast Du beim Booten des neuen System hoffentlich gleich eine graphische Oberfläche.

----------

## Kurmis

Daach zosamme.

Wieso dann hier  http://de.opensuse.org/SDB:SuSE_Linux_umkopieren  mit tar wird kopiert ??

Bei mir hat es wunderbar gefunzt mit :

cp  --recursive --preserve=all  --archive  --verbose  /mnt/hdb5/*  /mnt/hda10/

cp  --recursive --preserve=all  --archive  --verbose  /mnt/hdb2/*  /mnt/hda10/boot/

weil /(root) und /boot sind jetzt auf neue Kiste kopiert, und die sogar bootet .

Oder könnte doch was im Hosen gehen, weil doch nicht alle attribute,rechte,.... auf diese Weise kopiert werden ??

====

```
lspci | grep VGA

00:02.0 VGA compatible controller: Intel Corporation 82845G/GL[Brookdale-G]/GE Chipset Integrated Graphics Device (rev 01)
```

Was soll man(n) für diese GraKa unter VIDEO_CARDS=`` eintragen ?

Einfach "intel" , oder was anderes ?

Also für deine CFlag Sammlung würde ich die folgende Lektüre empfehlen:

http://en.gentoo-wiki.com/wiki/Safe_Cflags

```

cat /proc/cpuinfo

processor       : 0

vendor_id       : GenuineIntel

cpu family      : 15

model           : 2

model name      : Intel(R) Pentium(R) 4 CPU 1.80GHz

stepping        : 4

cpu MHz         : 1794.127

cache size      : 512 KB

fdiv_bug        : no

hlt_bug         : no

f00f_bug        : no

coma_bug        : no

fpu             : yes

fpu_exception   : yes

cpuid level     : 2

wp              : yes

flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pebs bts

bogomips        : 3588.25

clflush size    : 64

power management:

```

Welche CFLAGS= wäre geeignet für mein P4 ?

-march=i686 -march=pentium4 -march=native ?

Im voraus besten dank.

----------

## Josef.95

Hi Kurmis

 *Kurmis wrote:*   

> 
> 
> ```
> lspci | grep VGA
> 
> ...

  Ja, schlicht und einfach "intel" 

Die verfügbaren Flags und deren genaue Bezeichnung kannst du dir auch im mata Paket x11-base/xorg-drivers ansehen, also zb 

```
eix xorg-drivers

oder auch

equery u xorg-drivers
```

 zeigt alles auf was dein Admin-Herz begehrt...  :Wink: 

 *Kurmis wrote:*   

> Welche CFLAGS= wäre geeignet für mein P4 ?
> 
> -march=i686 -march=pentium4 -march=native ? 

   *Wiki Safe Cflags wrote:*   

> -march=native
> 
> GCC 4.2 introduces a new -march option, -march=native, which automatically detects the features your CPU supports and sets the options appropriately. If you have an Intel or AMD CPU and are using >=sys-devel/gcc-4.2.3, using -march=native is recommended. Do not use -march=native if you use distcc on nodes with different architectures as this may produce unusable code.

 Sollte doch keine Fragen offen lassen..., oder?

Ansonsten siehe zb auch im Gentoo Kompilations-Optimierungs-Leitfaden

und eventuell auch in den gcc.gnu.org/onlinedocs Intel 386 and AMD x86-64 Options

----------

## Kurmis

Ich will aber nicht so  Safe Cflags , sondern optimierte Flags fuer mein CPU.

Was ist mit math Coprozessor ??

Welche CFLAGS gibt es dafuer, und welche kann man ohne zu viel risiko einsetzen ?

Gibt es irgend wo ne Liste/Tabelle,... , welche CFLAGS sind geeignet fuer welches CPU/Coprozessor

Geht es fuer pentium4 solche Flags ?

CFLAGS="-march=pentium4 -O2 -pipe -fomit-frame-pointer -msse -mfpmath=sse,387 -mmmx -pipe -ffast-math"

# -fprefetch-loop-arrays -falign-functions=4 

Im voraus besten dank

----------

## schachti

 *Kurmis wrote:*   

> 
> 
> Wieso dann hier  http://de.opensuse.org/SDB:SuSE_Linux_umkopieren  mit tar wird kopiert ??
> 
> Bei mir hat es wunderbar gefunzt mit :
> ...

 

Ich mache das immer mit tar, weil sich das Kommando mit einer zusätzlichen Pipe leicht so abwandeln lässt, dass man über ssh zwischen zwei verschiedenen Rechnern kopieren kann; es spricht aber auch nichts gegen cp, solange die passenden Optionen gewählt sind (Deine Optionen sollten eigentlich alles umfassen, was man braucht; evtl. noch -x, wenn andere gemountete Dateisysteme nicht mitkopiert werden sollen).

 *Kurmis wrote:*   

> 
> 
> Ich will aber nicht so Safe Cflags , sondern optimierte Flags fuer mein CPU.
> 
> Was ist mit math Coprozessor ??
> ...

 

Die Liste der CFLAGS, die ohne viel Risiko eingesetzt werden können, wurde doch schon gegeben (die heißen nicht umsonst safe CFLAGS). Alles, was darüber hinaus geht, sollte man nur einsetzen, wenn man wirklich genau weiß, was man tut. Manche CFLAGS (zum Beispiel -ffast-math können zu fehlerhaft funktionierender Software führen, andere bewirken vielleicht, dass Programme länger laufen, und bei anderen bewegt sich der Performancegewinn im einstelligen Promillebereich... Und den Tipp mit -march=native hat Josef.95 ja schon gegeben.

----------

