• Diese Seite verwendet Cookies. Indem du diese Website weiterhin nutzt, erklärst du dich mit der Verwendung von Cookies einverstanden. Erfahre mehr

gpart und BSD-Partionsschema

Themenstarter #1
Hallo Forum,

im Moment befasse ich mich mit Schulungsunterlagen und bin gerade im Kapitel "Partitionierung".
Folgendes habe ich gemacht:
Code:
# gpart create -s MBR da0
# gpart add -t freebsd da0
# gpart set -a active -i 1 da0
# gpart bootcode -b /boot/boot0 da0
# gpart create -s BSD da0s1
# gpart add -t freebsd-ufs -s 1G da0s1
# gpart add -t freebsd-swap -s 512M da0s1
# gpart add -t freebsd-ufs da0s1
# gpart show -p da0
=>     63  7935937  da0  MBR  (3.8G)
       63  7935937    da0s1  freebsd  [active]  (3.8G)
# gpart show -p da0s1
=>      0  7935937   da0s1  BSD  (3.8G)
        0  2097152  da0s1a  freebsd-ufs  (1.0G)
  2097152  1048576  da0s1b  freebsd-swap  (512M)
  3145728  4790209  da0s1d  freebsd-ufs  (2.3G)
Meine Frage nun: Wieso wird die Partition c nicht in der Liste angezeigt, auch wenn man sie nicht benutzen sollte?

# gpart create -s BSD -n 4 da0s1
bringt die Fehlermeldung "gpart: entries '4': Invalid argument". Welcher Wert ist denn "valid"?

Danke im Voraus für die Antworten.
 

mr44er

moderater Moderator
Mitarbeiter
#4
https://www.freebsd.org/doc/de_DE.ISO8859-1/books/handbook/disk-organization.html

Ist normalerweise genauso groß wie die Slice in der die Partition liegt. Werkzeuge, die auf der kompletten Slice arbeiten, wie ein Bad-Block-Scanner, können so die c-Partition benutzen. Für gewöhnlich wird in dieser Partition kein Dateisystem angelegt.
Und Beispiel 3.13:
Die c-Partition bezieht sich auf die gesamte Slice und wird nicht für gewöhnliche Partitionen verwendet.
Es erscheint mir daher als eine Art Kompatibilitätsfunktion. Vermutung: weil MBR uralt ist und man sich workarounds zum Draufsatteln überlegen musste.
 

Yamagi

Possessed With Psi Powers
Mitarbeiter
#7
Read the Source, Luke ;) Also:

# gpart create -s BSD -n 4 da0s1
bringt die Fehlermeldung "gpart: entries '4': Invalid argument". Welcher Wert ist denn "valid"?
Laut dem Code zwischen 8 und 20 .

Wieso wird die Partition c nicht in der Liste angezeigt, auch wenn man sie nicht benutzen sollte?
Also, der Code schließt zwei Fälle aus:
  • Partitionen einer Länge 0.
  • Partitionen, die vor dem Ende des Labels (also der Partitionstabelle) beginnen.
Ich vermute, dass die Partition C unter den zweiten Fall fällt. Weil es eine Partition über die Länge aller Partitionen innerhalb des Label sein sollte.