Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

fstatvfs, statvfs - Dateisystem-Informationen

&pagelevel(4)&pagelevel

Die Programmschnittstellen fstatvfs und statvfs liefern Informationen über das Dateisystem, in dem eine Datei liegt. Diese Datei wird bei fstatvfs über einen Dateideskriptor (filedescriptor) und bei statvfs über ihren Namen spezifiziert.

In beiden Fällen erfolgt die Ausgabe in dem Format, das in der Struktur statvfs_t im Header sys/statvfs.h definiert ist.


typedef struct statvfs {
  unsigned long f_bsize;         /* Blockgröße des Dateisystems */
  unsigned long f_frsize;        /* Fragmentgröße */
  unsigned long f_blocks;        /* # Blöcke auf Dateisystem mit Größe f_frsize */
  unsigned long f_bfree;         /* # freie Blöcke mit Größe f_frsize */
  unsigned long f_bavail;        /* # verfügbare freie Blöcke für Nicht-Superuser */
  unsigned long f_files;         /* # Dateiknoten (inodes) */
  unsigned long f_ffree;         /* # freie Dateiknoten (inodes) */
  unsigned long f_favail;        /* # verfügbare freie Inodes für Nicht-Superuser */
  unsigned long f_fsid;          /* Dateisystem-Id (Nummer) */
  char f_basetype[FSTYPSZ];      /* Name des Ziel-Dateisystems, Null-terminiert */
  unsigned long f_flag;          /* Bitmaske der Optionen von f_flag */
  unsigned long f_namemax;       /* maximale Länge der Dateinamen */
  char f_fstr[32);               /* dateisystemspezifische Zeichenkette */
  unsigned long f_filler[16];    /* reserviert für zukünftige Versionen */
} statvfs_t;


Dieses Format ist allerdings auf ufs-Dateisysteme zugeschnitten. Bei einem bs2fs-Dateisystem muss der Anwender diese Information entsprechend der folgenden Tabelle interpretieren. Die Daten werden mit Hilfe der BS2000-Schnittstelle $SJINFO erzeugt.


unsigned long f_bsize

Wird auf 2048 gesetzt (PAMBLOCKSIZE).

unsigned long f_frsize

Wird auf 2048 gesetzt (PAMBLOCKSIZE).

unsigned long f_blocks (*)

Diese Daten werden aus den entsprechenden Werten der BS2000-Schnittstelle $SJINFO gewonnen. Allerdings lassen sich nicht alle BS2000-Werte auf ein exaktes Äquivalent abbilden, das für ufs-Dateisystemen verwendet wird.

unsigned long f_bfree (*)

unsigned long f_bavail (*)

unsigned long f_files (*)

unsigned long f_ffree (*)

unsigned long f_favail (*)

unsigned long f_fsid

Enthält den Index, der von der Schnittstelle sysfs verwendet wird.

char f_basetype[FSTYPSZ]

Enthält den String "bs2fs" zur Kennzeichnung.

unsigned long f_flag

Nur die Kennzeichnung ST_RDONLY ist von Bedeutung.

unsigned long f_namemax

Wird abhängig vom Katalog- und Benutzerkennung auf 38 - 41 gesetzt. Dieser Wert gilt nur für DVS-Dateien bzw. PLAM-Bibliotheken. Bei Bibliothekselementen oder Typen enthält die Variable den Wert für die übergeordnete PLAM-Bibliothek. Die Beschränkungen für Namen von Elementen und Elementtypen können nur mit pathconf ermittelt werden. Innerhalb der Beschränkung von "Elementname+Version" auf 89 Zeichen ist zu beachten, dass der Bestandteil Elementname auf 64 Zeichen und der Bestandteil Version auf 24 Zeichen begrenzt ist.

char f_fstr[32]


(*)unsigned long long bei fstatvfs64() oder statvfs64()