Benutzer-Werkzeuge

Webseiten-Werkzeuge


freebsd:freebsd_-_formatieren_mit_ufs

FreeBSD - formatieren mit UFS

Hier zeige ich wie man einen Datenträger für das formatieren mit UFS vorbereitet und dann formatiert, allerdings bevorzuge ich seit FreeBSD 8.0 das Dateisystem ZFS. ;-)

Disketten mit UFS formatieren

# fdformat -f 1440 fd0
# disklabel -w fd0 floppy3
# newfs -i 65536 /dev/fd0

Festplatte partitionieren/formatieren

Die Blockgerätebezeichnungen, für z.B. Festplatten, unterscheiden sich in FreeBSD erst einmal nach IDE-Geräten zu denen auch SATA-Geräte zählen und SCSI-Geräten zu denen auch USB–Geräte zählen.

  1. SCSI/USB z.B.: /dev/da4
  2. IDE/S-ATA z.B.: /dev/ad4

Als nächstes gibt es die Möglichkeit, dass man die komplette Platte nutzt. Hierbei wird nicht auf Zylindergrenzen geachtet, sondern wirklich der gesamte Platz von Anfang bis Ende genutzt:

# fdisk -I /dev/da4

Oder man möchte die Platte unterteilen, dann muss man Slise's einrichten. Hierbei wird nur der Bereich zwischen ganzen Zylindern genutzt, dabei bleibt im Regelfall immer etwas ungenutzter Platz am Ende der Platte übrig:

# fdisk -i /dev/da4
  1. die Bezeichnung für die Partition "a" sieht bei Nutzung der ganzen Platte z.B. so aus: /dev/da4a
  2. die Bezeichnung für die Partition "a" sieht bei Nutzung einer Slise (s1) z.B. so aus: /dev/da4s1a

Im folgenden zeige ich Schritt für Schritt, welche Arbeitsschritte beim einrichten, z.B. einer Backup-Platte, abzuarbeiten sind. Ich gehe hier mal von einer USB-Platte aus und verwende deshalb die Bezeichnung für eine SCSI-Platte. Weiterhin verzichte ich auf das einrichten von Slise's, da ich eine einzige große Partition brauche. Aber im Grunde macht es kaum einen Unterschied, nur das kleine "i" an Stelle des großen "I" und die paar MB Verlust am Ende der Platte.

Platte sauber machen

Beispiel-Platte: "/dev/da4":

# /bin/dd if=/dev/zero of=/dev/da4 bs=1k count=1

Initialisieren

ohne Boot-Code und ohne Slise's (Sektor "0" wird initialisiert):

# fdisk -I /dev/da4
******* Working on device /dev/da4 *******

diese Schritte sind optional und für unsere Backup-Platte unwichtig

will man die Platte bootfähig machen, dann müsste auch der Boot-Code mit rauf:

# /sbin/fdisk -BI /dev/da4

allerdings kann man den Boot-Code auch separat auf die Platte schreiben:

# /sbin/fdisk -B /dev/da4

Sollen auf der Platte nur die aktive Partition verändert werden, dann wird das mit dem folgenden Aufruf bewirkt:

# fdisk -a da4

BSD-Label schreiben

Schreibschutz aufheben (in neueren Versionen ist "-W" nicht mehr drin und damit dieser Schritt überflüssig):

# disklabel -W da4

Standard-Label schreiben:

# disklabel -w da4 auto

es geht auch:

# disklabel -w da4

Anlegen der neuen Disklabel bei SCSI-Platten:

# disklabel -e /dev/da4

Wenn jetzt die Meldung "disklabel: Operation not supported by device" erscheint, dann ist es in diesem Fall nicht möglich, die ganze Festplatte ohne Slise's zu verwenden.

Es ist dann automatisch eine Slise angelegt worden, geben Sie zum editieren des Disk-Label's die Slise mit an (z.B.: /dev/ad4s1).

will man die Platte bootfähig machen, was wir nicht wollen, dann müsste auch der Bootloader mit drauf:

# disklabel -B da4

Jetzt müssen wir einfach eine eigene Partition anlegen, in unserem Fall legen wir (wie allgemein üblich) die Partition "e" an.

Dazu müssen wir das Label editieren (Schalter "-e"):

# disklabel -e /dev/da4

vorher:

#        size   offset    fstype   [fsize bsize bps/cpg]
  c: 60074784        0    unused        0     0     0   # (Cyl.    0 - 59597)

nachher:

#        size   offset    fstype   [fsize bsize bps/cpg]
  c: 60074784        0    unused        0     0     0   # (Cyl.    0 - 59597)
  e: 60074784        0    4.2BSD        0     0     0   # (Cyl.    0 - 59597)

Es ist aber auch möglich, dass die Partition "a" automatisch beim Standard-Label schreiben angelegt wurde:

#        size   offset    fstype   [fsize bsize bps/cpg]
  a: 60074721       63    unused        0     0     0
  c: 60074784        0    unused        0     0     0   # (Cyl.    0 - 59597)

In dem Fall können wir auch gleich diese verwenden und brauchen keine eigene anlegen. Im folgenden gehe ich mal davon aus, dass die Partition "a" automatisch angelegt wurde, allerdings müssen wir auch dann noch den "fstype" für die Partition "a" auf "4.2BSD" ändern. Sonst können wir die Partition nicht mit dem Dateisystem UFS nutzen:

#        size   offset    fstype   [fsize bsize bps/cpg]
  a: 60074721       63    4.2BSD        0     0     0
  c: 60074784        0    unused        0     0     0   # (Cyl.    0 - 59597)

Wollen wir dagegen ZFS drauf machen, dann können wir den "fstype" für die Partition "a" auch so lassen.

den Schreibschutz wieder auf das LABEL setzen (in neueren Versionen ist "-N" nicht mehr drin und damit dieser Schritt überflüssig):

# disklabel -N da4

Zum schluss muss die Partition noch mit einem Dateisystem versehen werden

UFS-Dateisystem anlegen

ohne Slise:

/sbin/newfs /dev/da4a

mit Slise:

/sbin/newfs /dev/da4s1a
SoftUpdate aktivieren

Das SoftUpdate bewirkt, dass die Arbeit mit der Platte etwas flotter geht und das bei einem Absturz die Platte eigentlich immer einen konsistenten Zustand haben sollte. So das "fsck" weniger Fehler beheben muss und schneller fertig ist.

# tunefs -n enable /dev/da4a
der Partition einen Namen geben (Disk-Label)
# tunefs -L BACKUP /dev/da4a
man kann all diese Optionen auch gleich beim formatieren kombiniert angeben
# newfs -O 2 -U -L BACKUP /dev/da4a
POSIX.1e ACL aktivieren/deaktivieren

Die ACL's lassen sich beim formatieren leider nicht beeinflussen, deshalb muss das nach dem formatieren mit "tunefs" gemacht werden.

einschalten:

# tunefs -a enable /dev/da4a

abschalten:

# tunefs -a disable /dev/da4a

/etc/fstab

Als erstes muss man den "Mount-Punkt" festlegen, dazu wird gewöhnlich ein Verzeichnis angelegt. Da unser Bestreben darin liegt, Speicherplatz für ein regelmäßiges Backup ins System einzubinden, geben wir dem Verzeichnis einen "sprechenden" Namen:

# mkdir /BACKUP

Jetzt können wir den Eintrag in der "/etc/fstab" vornehem.

Wollen wir, dass die Platte beim booten automatisch eingebunden wird, dann reicht in der 4. Spalte ein "rw":

# vi /etc/fstab:
  /dev/da4a              /BACKUP          ufs     rw       0       0

Allerdings ist das bei einer USB-Platte recht ungewöhnlich und meistens auch nicht erwünscht!

Deshalb ergänzen wir die 4. Spalte um den Parameter "noauto":

# vi /etc/fstab:
  /dev/da4a              /BACKUP          ufs     rw,noauto       0       0

Jetzt lässt sich die Platte ganz bequem mit diesem kurzen Kommando einhängen:

# mount /BACKUP

Die wichtigsten Schritte noch einmal im Überblick

Eine komplette Platte auf die schnelle mit UFS versehen:

# dd if=/dev/zero of=/dev/da4 bs=1k count=1
# fdisk -i /dev/da4
# disklabel -w /dev/da4s1
# disklabel -r /dev/da4s1
  # /dev/da4s1:
  8 partitions:
  #        size   offset    fstype   [fsize bsize bps/cpg]
    a: 732558334        2    unused        0     0
    c: 732558336        0    unused        0     0         # "raw" part, don't edit
# disklabel -e /dev/da4s1
# disklabel -r /dev/da4s1
  # /dev/da4s1:
  8 partitions:
  #        size   offset    fstype   [fsize bsize bps/cpg]
    a: 732558334        2    4.2BSD        0     0
    c: 732558336        0    unused        0     0         # "raw" part, don't edit
# newfs -O 2 -U -L BACKUP /dev/da4s1a
# mount /dev/da4s1a /mnt

Partition und Dateisystem vergrößern

Partition vergrößern

# bsdlabel /dev/vinum/testvol > savedlabel
# vi savedlabel
# bsdlabel -R -n /dev/vinum/testvol savedlabel
# bsdlabel -R /dev/vinum/testvol savedlabel

Dateisystem vergrößern

vergrößert das Dateisystem auf /dev/vinum/testvol bis zu 2GB wenn dort genug freier Speicherplatz ist.

# growfs -s 4194304 /dev/vinum/testvol
/home/http/wiki/data/pages/freebsd/freebsd_-_formatieren_mit_ufs.txt · Zuletzt geändert: von manfred