linux / bsd partitionen reunion??

sammy2ooo

voll Tohuwabohu
Hallo Leute,

ich bin neu was FreeBSD betrifft, deswegen suche ich hier Rat. Ich habe parallel zu FreeBSD Gentoo Linux installiert, bisher boote ich FreeBSD per Grub. Da ich mitlerweile mit FreeBSD alles soweit machen kann wie mit Linux, möchte ich mein Gentoo löschen und den Plattenplatz dem bestehenden Slice hinzufügen. Ist sowas generell überhaupt möglich? Desweiteren möchte ich Grub durch den FreeBSD Loader ersetzen. Meine Festplatte ist wie folgt aufgeteilt:

<----><-------------><----------------------->
<-ext2-><---freebsd---><---ext2------->
<-boot-><---/usr etc.--><----gentoo -->

etwas gebirnt aber hoffentlich einigermaßen anschaulich ;)

kann ich die part vor fbsd und nach fbsd irgendwie zu einem slice verknüpfen?
steh echt vor ner wand, trau mich nicht mit fdisk mit nem gefährlichen halbwissen was zu ändern :zitter:

Hoffe ihr könnt mir weiterhelfen, bin damit noch überfordert :)
 
Ehrm

Ich kann das leider nicht entziffern. Damit wir damit was anfangen können wäre eine konkrete Angabe mit device-names vielleicht nützlich.
Generell sei gesagt, dass man BSD-Slices mit "growfs" vergrößern kann. Das ist allerdings imho nicht unbedingt nötig. Einfacherweise kannst du auch weitere Slices anlegen und in /etc/fstab mounten - was natürlich nur mit richtigen Partitionen funktioniert. Falls du den Platz garnicht wirklich brauchst wäre meine Empfehlung die Linux-Slices vorerst ungenutzt zu lassen. Ändern kannst du das dann je nach Bedarf immernoch.

Gruß, matze
 
jau, also ich hab mit "fdisk -B -b /boot/boot0 ad0" mal den mbr von grub mit dem von fbsd überschrieben, soweit so gut. Auch hab ich mit bsdlabel meine linux partition (ad0s3 platt gemacht und dann mit newfs daraus ein ufs label gemacht, was ich auch mounten kann. allerdings ist mir immernoch schleierhaft wie ich mit growfs dieses label meinem bestehenden slice hinzufügen kann bzw das slice vergrößern kann (ad0s2a...f):apaul:

gruß
 
sammy2ooo schrieb:
Ich habe parallel zu FreeBSD Gentoo Linux installiert, bisher boote ich FreeBSD per Grub. Da ich mitlerweile mit FreeBSD alles soweit machen kann wie mit Linux, möchte ich mein Gentoo löschen und den Plattenplatz dem bestehenden Slice hinzufügen. Ist sowas generell überhaupt möglich?
Ja.
Desweiteren möchte ich Grub durch den FreeBSD Loader ersetzen. Meine Festplatte ist wie folgt aufgeteilt:
etwas gebirnt aber hoffentlich einigermaßen anschaulich ;)
Da fehlen leider die wichtigen Informationen.
kann ich die part vor fbsd und nach fbsd irgendwie zu einem slice verknüpfen?
Vorher? Nur mit Backup und getestetem Restore -- man müßte die Partition mit dd verschieben. Hintendran? Das geht einfacher.
steh echt vor ner wand, trau mich nicht mit fdisk mit nem gefährlichen halbwissen was zu ändern :zitter:
Aber gern. Dazu brauchen wir ein paar Informationen:
Wie sieht der Output von mount, fdisk und bsdlabel /dev/<device> aus?

Beispiel:
Code:
[COLOR=DarkSlateBlue]bash-2.05b$[/COLOR] [B]mount[/B]
/dev/[B][COLOR=DarkRed]ad0[/COLOR][/B]s1a on / (ufs, local)
devfs on /dev (devfs, local)
/dev/ad0s1e on /tmp (ufs, local, soft-updates)
/dev/ad0s1f on /usr (ufs, local, soft-updates)
/dev/ad0s1d on /var (ufs, local, soft-updates)
[COLOR=DarkSlateBlue]bash-2.05b$[/COLOR] [B]fdisk /dev/[U][COLOR=DarkRed]ad0[/COLOR][/U][/B]
******* Working on device /dev/ad0 *******
parameters extracted from in-core disklabel are:
cylinders=8322 heads=16 sectors/track=63 (1008 blks/cyl)

Figures below won't work with BIOS for partitions not in cyl 1
parameters to be used for BIOS calculations are:
cylinders=8322 heads=16 sectors/track=63 (1008 blks/cyl)

Media sector size is 512
Warning: BIOS sector numbering starts with sector 1
Information from DOS bootblock is:
The data for [B][COLOR=DarkGreen]partition 1[/COLOR][/B] is:
sysid 165 (0xa5),(FreeBSD/NetBSD/386BSD)
    start 63, size 8388513 (4095 Meg), flag 80 (active)
        beg: cyl 0/ head 1/ sector 1;
        end: cyl 1023/ head 15/ sector 63
The data for partition 2 is:
<UNUSED>
The data for partition 3 is:
<UNUSED>
The data for partition 4 is:
<UNUSED>
[COLOR=DarkSlateBlue]bash-2.05b$[/COLOR] [B]bsdlabel /dev/ad0[U][COLOR=DarkGreen]s1[/COLOR][/U][/B]
# /dev/ad0s1:
8 partitions:
#        size   offset    fstype   [fsize bsize bps/cpg]
  a:   524288        0    4.2BSD     2048 16384 32776
  b:   603776   524288      swap
  c:  8388513        0    unused        0     0         # "raw" part, don't edit
  d:   524288  1128064    4.2BSD     2048 16384 32776
  e:   524288  1652352    4.2BSD     2048 16384 32776
  f:  6211873  2176640    4.2BSD     2048 16384 28552
Immer her mit den Infos!
 
Zuletzt bearbeitet:
Mit fdisk den FreeBSD Slice um den ext2fs Slice nach hinten vergroessern. Mit disklabel eine neue Partition anlegen, oder die letzte Partition um die entsprechende Groesse nach hinten vergroessern. Das Dateisystem mit growfs um den neuen Platz erweitern.

Wenn du's nicht unbedingt brauchst und noch Platz im disklabel hast, wuerde ich growfs bleiben lassen, und nur den Slice vergroessern und den neuen Platz als neue Partition ranfuegen.

Wie das dann alles geht steht in den manpages.
 
Code:
sammy@uranos sammy $ mount
/dev/ad0s2a on / (ufs, local)   
devfs on /dev (devfs, local)    
/dev/ad0s2e on /tmp (ufs, local, soft-updates)
/dev/ad0s2f on /usr (ufs, local, soft-updates)
/dev/ad0s2d on /var (ufs, local, soft-updates)
/dev/ad1s1 on /usr/home/sammy/bunker (ufs, local)
192.168.1.254:/mnt/fileservice on /mnt/fileservice (nfs)


Code:
sammy@uranos sammy $ sudo fdisk /dev/ad0
Password:
******* Working on device /dev/ad0 *******
parameters extracted from in-core disklabel are:
cylinders=239340 heads=16 sectors/track=63 (1008 blks/cyl)

Figures below won't work with BIOS for partitions not in cyl 1
parameters to be used for BIOS calculations are:
cylinders=239340 heads=16 sectors/track=63 (1008 blks/cyl)

Media sector size is 512
Warning: BIOS sector numbering starts with sector 1
Information from DOS bootblock is:
The data for partition 1 is:
sysid 131 (0x83),(Linux native)
    start 63, size 96327 (47 Meg), flag 0
        beg: cyl 0/ head 1/ sector 1;
        end: cyl 5/ head 254/ sector 63
The data for partition 2 is:
sysid 165 (0xa5),(FreeBSD/NetBSD/386BSD)
    start 96390, size 19551105 (9546 Meg), flag 80 (active)
        beg: cyl 6/ head 0/ sector 1;
        end: cyl 1023/ head 254/ sector 63
The data for partition 3 is:
sysid 5 (0x05),(Extended DOS)
    start 19647495, size 221600610 (108203 Meg), flag 0
        beg: cyl 1023/ head 255/ sector 63;
        end: cyl 1023/ head 254/ sector 63
The data for partition 4 is:
<UNUSED>
Hier hab ich noch ein Verständnissproblem: Warum fängt Part1 bei Sektor 63 und nicht bei 1 an. Sektor 0 = MBR und der darf ja nicht größer als 512B sein.

Also, ich habe eine Linux ext2 Bootpart, mit 47MB welche ich löschen möchte, bzw. ich möchte den ganzen ad0s2 slice an den Anfang der Platte verschieben und die dahinter liegenden slices verknüpfen (ad0s3 ad0s5 ad0s6 ad0s7).

Code:
sammy@uranos sammy $ sudo bsdlabel /dev/ad0s1
bsdlabel: /dev/ad0s1: no valid label found
sammy@uranos sammy $ sudo bsdlabel /dev/ad0s2 
# /dev/ad0s2:
8 partitions:
#        size   offset    fstype   [fsize bsize bps/cpg]
  a:   524288        0    4.2BSD     2048 16384 32776 
  b:  2045568   524288      swap                    
  c: 19551105        0    unused        0     0         # "raw" part, don't edit
  d:   524288  2569856    4.2BSD     2048 16384 32776 
  e:   524288  3094144    4.2BSD     2048 16384 32776 
  f: 15932673  3618432    4.2BSD     2048 16384 28552 
sammy@uranos sammy $ sudo bsdlabel /dev/ad0s3
# /dev/ad0s3:
8 partitions:
#        size   offset    fstype   [fsize bsize bps/cpg]
  a: 221600594       16    unused        0     0       
  c: 221600610        0    unused        0     0         # "raw" part, don't edit
sammy@uranos sammy $ sudo bsdlabel /dev/ad0s4
bsdlabel: /dev/ad0s4: No such file or directory
sammy@uranos sammy $ sudo bsdlabel /dev/ad0s5
bsdlabel: /dev/ad0s5: no valid label found
sammy@uranos sammy $ sudo bsdlabel /dev/ad0s6
bsdlabel: /dev/ad0s6: no valid label found
sammy@uranos sammy $ sudo bsdlabel /dev/ad0s 
bsdlabel: /dev/ad0s: No such file or directory
sammy@uranos sammy $ sudo bsdlabel /dev/ad0s7
bsdlabel: /dev/ad0s7: no valid label found
sammy@uranos sammy $ l /dev/ad0s*            
crw-r-----  1 root  operator    4,  14 Mar  9 11:02 /dev/ad0s1
crw-r-----  1 root  operator    4,  15 Mar  9 11:02 /dev/ad0s2
crw-r-----  1 root  operator    4,  18 Mar  9 12:02 /dev/ad0s2a
crw-r-----  1 root  operator    4,  19 Mar  9 11:02 /dev/ad0s2b
crw-r-----  1 root  operator    4,  20 Mar  9 11:02 /dev/ad0s2c
crw-r-----  1 root  operator    4,  21 Mar  9 12:02 /dev/ad0s2d
crw-r-----  1 root  operator    4,  22 Mar  9 12:02 /dev/ad0s2e
crw-r-----  1 root  operator    4,  23 Mar  9 12:02 /dev/ad0s2f
crw-r-----  1 root  operator    4,  16 Mar  9 11:02 /dev/ad0s3
crw-r-----  1 root  operator    4,  24 Mar  9 11:02 /dev/ad0s5
crw-r-----  1 root  operator    4,  25 Mar  9 11:02 /dev/ad0s6
crw-r-----  1 root  operator    4,  26 Mar  9 11:02 /dev/ad0s7

danke für eure Unterstützung :p

Gruß und nen schöngen Tag
 
Zuletzt bearbeitet:
sammy2ooo schrieb:
Hier hab ich noch ein Verständnissproblem: Warum fängt Part1 bei Sektor 63 und nicht bei 1 an. Sektor 0 = MBR und der darf ja nicht größer als 512B sein.
Das ist imho aus Gründen der Kompatibilität so. Manche Betriebssysteme benötigen diesen Platz um zusätzliche Informationen zum bootup dort abzulegen. Damit ein Multibootsystem reibungslos funktioniert legen Linux und BSD den Startpunkt der ersten Partition per default einfach dahinter.

Gruß, matze
 
Jupp, die ersten 63 Sektoren sind fuer DOS reserviert ...

Zu deinem Problem, den Extended Slice (ad0s3) kannst du problemlos an ad0s2 ranflanschen, aber ad0s1 kannst du nicht ohne groesseren Aufwand da mit unterbringen (wenn du wuesstest wie's geht, haettest du hier bestimmt nicht gefragt).

Aber stoeren 47MB wirklich bei einer Platte die mehr als 100GB hat? Wohl kaum ...
 
Zurück
Oben