Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ fs_vxfs(4-vxfs) — Reliant UNIX 5.44c4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

fsck(1M)

fsdb(1M)

mkfs(1M)

mount(2)

inode(4-vxfs)

fs(4-vxfs)                         (VxFS)                        fs(4-vxfs)

NAME
     fs (vxfs) - Format eines Datenträgers im Veritas-Dateisystem (VxFS)

SYNTAX
     #include <sys/types.h>
     #include <sys/param.h>
     #include <sys/fs/vxfs.h>

SYNTAX
     Der VxFS-Superblock beginnt immer ab der Position 1024 Bytes vom
     Anfang des Dateisystems. Die Position des Superblocks ist festgelegt,
     so daß jedes Kommando und Dienstprogramm weiß, wo er zu finden ist.

     Der Superblock enthält folgende grundlegenden Größen und Offsets:

     fsmagic
          Die Dateiformatkennung (magic number) des Dateisystems
          (VXMAGIC). Sie dient zur Unterscheidung eines VxFS-Dateisystems
          von dem eines anderen Typs.

     fsversion
          Die Versionnummer der Dateisystemarchitektur (VXVERSION), zur
          Zeit 1.

     fsctime
          Das Erstellungsdatum des Dateisystems. Der Systemaufruf time(2)
          liefert die Zeit.

     fsectime
          Dieses Feld ist ein Platzhalter für den Fall, daß das Erstel-
          lungsdatum des Dateisystems präzisiert werden soll. Es enthält
          zur Zeit eine Null.

     fsobsolete1
          Leerer Platzhalter.

     fsobsolete2
          Leerer Platzhalter.

     fslogstart
          Die Blockadresse des ersten Blocks des Protokollbereichs. Sie
          lautet zur Zeit 2.

     fslogend
          Die Blockadresse des letzten Blocks des Protokollbereichs. Die
          Größe des Protokollbereichs in Blöcken kann mit dem Kommando
          mkfs(1M) festgelegt werden. Wird nichts angegeben, beträgt die
          Größe 256 Blöcke. Die Mindestgröße beträgt 32 Blöcke.







Seite 1                      Reliant UNIX 5.44               Gedruckt 11/98

fs(4-vxfs)                         (VxFS)                        fs(4-vxfs)

     fsbsize
          Die Blockgröße des Dateisystems. Zur Auswahl stehen 1024, 2048,
          4096 und 8192 Bytes.

     fssize
          Die Anzahl der Blöcke im Dateisystem ausgedrückt in Anzahl der
          Blöcke von der Größe fsbsize. Das Feld fssize enthält eine 32
          Bit lange Zahl mit Vorzeichen. Die maximale Anzahl der Blöcke in
          einem VxFS-Dateisystem ist auf 31 Bits beschränkt.

     fsdsize
          Die Anzahl der Datenblöcke im Dateisystem. Ein Datenblock ist ein
          Block, der einer Datei im Dateisystem zugeordnet wird.

     fsninode
          Die Anzahl der I-Nodes im Dateisystem. Sie unterliegt folgenden
          Regeln:

          -  Das Feld fsninode enthält eine 32 Bit lange Zahl.

          -  Die Anzahl der I-Nodes wird derart abgerundet, daß die Liste
             der I-Nodes in jeder Zuweisungseinheit eine gerade Anzahl von
             Blöcken der I-Node-Liste ergibt (siehe fsilbsize).

          -  Die Anzahl der I-Nodes kann mit dem Kommandos mkfs(1M) festge-
             legt werden. Wird nichts festgelegt, ist die Anzahl fsdsize
             geteilt durch 4.

     fsnau
          Die Anzahl der Zuweisungseinheiten im Dateisystem. Sie kann mit
          dem Kommando mkfs(1M) festgelegt werden. Wird nichts festgelegt,
          ist die Anzahl fssize aufgerundet zur nächsthöchsten 32K Block-
          grenze geteilt durch 32.

     fsdefiextsize
          Die Standardgröße indirekter Speicherbereiche in Blöcken. Sie
          kann mit dem Kommando mkfs(1M) festgelegt werden. Wird nichts
          festgelegt, wird eine Standardgröße von 64 Blöcken verwendet.

     fsilbsize
          Die Größe eines Blocks in der I-Node-Liste in Bytes. Sie kann mit
          dem Kommando mkfs(1M) festgelegt werden. Ohne Angabe der Option
          wird als Standardwert der größere der beiden Werte 2K oder
          fsbsize verwendet.

     fsimmedlen
          Die Größe in Bytes des unmittelbaren Datenbereichs jeder I-Node.
          Dieser Wert ist 96 für ein VxFS-Dateisystem in der Version 1.






Seite 2                      Reliant UNIX 5.44               Gedruckt 11/98

fs(4-vxfs)                         (VxFS)                        fs(4-vxfs)

     fsndaddr
          Die Anzahl direkter Speicherbereiche, die von VXEXT4 unterstützt
          werden (siehe den Abschnitt über die I-Node-Liste). Dieser Wert
          ist 10 für ein VxFS-Dateisystem in der Version 1.

     Die vorangegangenen Felder legen die Größe und das Aussehen des Datei-
     systems fest. Um die für die Kommandos benötigten Berechnungen zu
     reduzieren, werden einige Werte aus den Grundwerten gewonnen und im
     Superblock gespeichert.

     Der Superblock enthält folgende gewonnene Werte:

     fsaufirst
          Die Adresse der ersten Zuweisungseinheit in Blöcken. Es kann eine
          Lücke zwischen dem Ende des Absichts-Protokolls und der ersten
          Zuweisungseinheit vorhanden sein. Diese Lücke kann dazu benutzt
          werden, die erste Zuweisungseinheit an einer gewünschten Grenze
          auszurichten.

     fsemap
          Der Versatz in Blöcken der Liste der freien Speicherbereiche
          (emap) ab dem Beginn der Zuweisungseinheit.

     fsimap
          Der Versatz in Blöcken der Liste der freien I-Nodes (imap) ab dem
          Beginn der Zuweisungseinheit.

     fsiextop
          Der Versatz in Blöcken der Liste der erweiterten I-Node-Operation
          ab dem Beginn der Zuweisungseinheit.

     fsistart
          Der Versatz in Blöcken der I-Node-Liste (ilist) ab dem Beginn der
          Zuweisungseinheit.

     fsbstart
          Der Versatz in Blöcken des ersten Datenblocks ab dem Beginn der
          Zuweisungseinheit. Der Header einer Zuweisungseinheit kann aufge-
          füllt sein, um am ersten Datenblock ausgerichtet zu werden.

     fsfemap
          Der Versatz in Blöcken der ersten Liste freier Speicherbereiche
          (emap) ab dem Beginn des Dateisystems.

     fsfimap
          Der Versatz in Blöcken der ersten Liste freier I-Nodes (imap) ab
          dem Beginn des Dateisystems.

     fsfiextop
          Der Versatz in Blöcken der ersten Liste freier erweiterter I-
          Node-Operationen ab dem Beginn des Dateisystems.



Seite 3                      Reliant UNIX 5.44               Gedruckt 11/98

fs(4-vxfs)                         (VxFS)                        fs(4-vxfs)

     fsfistart
          Der Versatz in Blöcken der I-Node-Liste (ilist) ab dem Beginn des
          Dateisystems.

     fsfbstart
          Der Versatz in Blöcken des ersten Datenblocks ab dem Beginn des
          Dateisystems.

     fsnindir
          Die Anzahl der Einträge in einem indirekten Adreßbereich. Ein
          indirekter Adreßbereich ist im allgemeinen 8192 Bytes lang und
          bestimmt den aktuellen Wert für fsnindir 2048.

     fsaulen
          Die Länge einer Zuweisungseinheit in Blöcken.

     fsauimlen
          Die Länge einer Liste freier I-Nodes in Blöcken.

     fsauemlen
          Die Länge einer Liste freier Speicherbereiche in Blöcken.

     fsailen
          Die Länge der I-Node-Liste dieser Zuweisungseinheit in Blöcken.

     fsaupad
          Die Länge der Ausrichtungsauffüllung der Zuweisungseinheit in
          Blöcken.

     fsaublocks
          Die Anzahl der Datenblöcke in einer Zuweisungseinheit.

     fsmaxtier
          Der Logarithmus zur Basis 2 von fsaublocks.

     fsinopb
          Die Anzahl der I-Node-Einträge pro fsbsize-Block in der I-Node-
          Liste.

     fsinopau
          Die Anzahl der I-Nodes in einer Zuweisungseinheit.

     fsinopilb
          Die Anzahl der I-Node-Einträge pro fsilbsize-Block in der I-
          Node-Liste.

     fsndiripau
          Die erwartete Anzahl von I-Nodes für Dateiverzeichnisse pro
          Zuweisungseinheit.





Seite 4                      Reliant UNIX 5.44               Gedruckt 11/98

fs(4-vxfs)                         (VxFS)                        fs(4-vxfs)

     fsiaddrlen
          Die Größe eines indirekten Adreßblocks in Blöcken. Ein indirekter
          Adreßblock ist normalerweise 8 KBytes groß. Dieses Feld wird mit
          dem Wert (8K / fsbsize) versorgt.

     fsbshift
          Der Logarithmus zur Basis 2 von fsbsize. Wird benutzt um einen
          Byte-Versatz in einen Block-Versatz zu konvertieren.

     fsinoshift
          Der Logarithmus zur Basis 2 von fsinopb. Wird benutzt um eine
          I-Node-Nummer in einen Block-Versatz in der I-Node-Liste zu kon-
          vertieren.

     fsbmask
          Ein maskierter Wert, der bewirkt, daß der Versatz (byteoffset &
          fsbmask) zur nächst kleineren Blockgrenze gerundet wird.

     fsboffmask
          Ein maskierter Wert, durch den sich der Versatz (byteoffset &
          fsboffmask) vom Beginn der nächst kleineren Blockgrenze ergibt.

     fsinomask
          Ein maskierter Wert, durch den sich der Versatz (inodenumber &
          fsinomask) vom Beginn des Blocks mit der I-Node-Liste und des
          zugehörigen Eintrags in der I-Node-Liste ergibt.

     fschecksum
          Eine einfache Prüfsumme über die Felder. Das Makro VXFSCHECKSUM
          liefert die Berechnung der Prüfsumme oder bestätigt sie.

     Die vorangegangenen Felder werden beim Erstellen eines Dateisystems
     initialisiert. Die Werte ändern sich nicht, es sei denn, das Dateisy-
     stem wird vergrößert. Diese Felder werden im Header jeder Zuweisungs-
     einheit abgelegt.

     Daneben gibt es zusätzlich folgende dynamische Felder:

     fsfree
          Die aktuelle Anzahl freier Datenblöcke.

     fsifree
          Die aktuelle Anzahl freier I-Nodes.

     fsefree
          Ein Array der aktuellen Anzahl freier Speicherbereiche jeder
          Bereichsgröße im Dateisystem.







Seite 5                      Reliant UNIX 5.44               Gedruckt 11/98

fs(4-vxfs)                         (VxFS)                        fs(4-vxfs)

     fsflags
          Folgende Optionen werden erkannt:

          VXFULLFSCK
               Wird gesetzt, wenn das Dateisystem eine vollständige Struk-
               turüberprüfung zur Fehlerbehebung benötigt. Wenn diese
               Option gesetzt ist, wird nach Beendigung der Bearbeitung des
               Absichts-Protokolls eine vollständige Überprüfung vorgenom-
               men.

          VXNOLOG
               Wird gesetzt, wenn das Dateisystem mit der VXMSNOLOG-
               Option eingehängt war. Wenn diese Option gesetzt ist, wird
               keine Bearbeitung des Absichts-Protokolls vorgenommen.

          VXLOGBAD
               Wird gesetzt, wenn ein E/A-Fehler das Protokoll unbrauchbar
               gemacht hat. Wenn diese Option gesetzt ist, wird keine Bear-
               beitung des Absichts-Protokolls vorgenommen.

          VXLOGRESET
               Wird gesetzt, wenn die Log-ID größer als VXMAXLOGID (2^30)
               wird. Die Log-ID wird bei der nächsten Gelegenheit zurückge-
               setzt (z. B. bei mount oder 60-Sekunden sync).

          VXRESIZE
               Wird gesetzt, wenn gerade eine Vergrößerung des Dateisystems
               stattfindet. Wenn das Dienstprogramm fsck(1M) diese Option
               erkennt, muß eine Wiederherstellung durchgeführt werden.
               Eine Beschreibung der Größenänderung von Dateisystemen fin-
               den Sie beim Kommando fsadm(1M).

     fsmod
          Wird gesetzt, wenn ein eingehängtes Dateisystem verändert wurde.
          Diese Option wird benutzt um sicherzustellen, daß der Superblock
          neu geschrieben wird, wenn das Kommando sync ausgeführt wird.

     fsclean
          Wird auf VXDIRTY gesetzt, wenn das Dateisystem für lesende und
          schreibende Zugriffe eingehängt ist. Nach dem Aushängen des
          Dateisystems mit umount(1M) oder nach einer erfolgreichen Über-
          prüfung mit fsck(1M) wird der Feldinhalt auf VXCLEAN gesetzt.
          Das Kommando mount(1M) erlaubt es nicht, ein Dateisystem mit
          lesendem und schreibendem Zugriff einzuhängen, wenn das Feld
          fsclean mit dem Wert VXDIRTY belegt ist.

     fsreserved
          Für eine zukünftige Belegung reserviert.

     fsfirstlogid
          Beginnt mit der ersten ID des Absichts-Protokolls, wenn das
          Dateisystem das nächste Mal eingehängt wird.


Seite 6                      Reliant UNIX 5.44               Gedruckt 11/98

fs(4-vxfs)                         (VxFS)                        fs(4-vxfs)

     fstime
          Gibt den Zeitpunkt an, zu dem der Superblock zuletzt auf die
          Festplatte geschrieben wurde. Diese Feld hat das gleiche Format
          wie das Feld fsctime.

     fsetime
          Hilfsfeld, wenn Zeitangaben 8 Bytes groß werden.

     fsfname
          Name des Dateisystems (6 Zeichen).

     fsfpack
          Etikett des Dateisystems (6 Zeichen).

SIEHE AUCH
     fsck(1M), fsdb(1M), mkfs(1M), mount(2), inode(4-vxfs).






































Seite 7                      Reliant UNIX 5.44               Gedruckt 11/98

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026