Provided by: manpages-de-dev_4.13-4_all bug

BEZEICHNUNG

       getmntent,    setmntent,    addmntent,    endmntent,    hasmntopt   -   Lesen   des   Eintrags   in   der
       Dateisystem-Beschreibungsdatei

ÜBERSICHT

       #include <stdio.h>
       #include <mntent.h>

       FILE *setmntent(const char *filename, const char *type);

       struct mntent *getmntent(FILE *stream);

       int addmntent(FILE *stream, const struct mntent *mnt);

       int endmntent(FILE *streamp);

       char *hasmntopt(const struct mntent *mnt, const char *opt);

       /* GNU-Erweiterung */
       #include <mntent.h>

       struct mntent *getmntent_r(FILE *streamp, struct mntent *mntbuf,
                                  char *buf, int buflen);

   Mit Glibc erforderliche Makros (siehe feature_test_macros(7)):

       getmntent_r():
           Seit Glibc 2.19:
               _DEFAULT_SOURCE
           Glibc 2.19 und älter:
               _BSD_SOURCE || _SVID_SOURCE

BESCHREIBUNG

       Diese Routinen werden  benutzt,  um  auf  die  Dateien  /etc/fstab  und  /etc/mtab  zuzugreifen.  Erstere
       beschreibt die Dateisysteme, letztere die aktuell eingehängten Dateisysteme.

       Die Funktion setmntent() öffnet die Dateisystem-Beschreibungsdatei filename und liefert einen Dateizeiger
       zurück,  der  von  getmntent() benutzt werden kann. Das Argument type ist die Art des benötigten Zugriffs
       und kann dieselben Werte annehmen wie das mode-Argument von  fopen(3).  Der  zurückgelieferte  Datenstrom
       sollte mittels endmntent() statt fclose(3) geschlossen werden.

       Die  Funktion  getmntent()  liest  die  nächste  Zeile  der Dateisystem-Beschreibungsdatei aus stream und
       liefert einen Zeiger auf eine Struktur zurück, welche die einzelnen Felder der gelesenen  Zeile  enthält.
       Der  Zeiger  weist  zu  einem  statischen Speicherbereich, der von den folgenden Aufrufen von getmntent()
       wieder überschrieben wird.

       Die Funktion addmntent() fügt die mntent-Struktur an das Ende des offenen stream an.

       Die Funktion endmntent() schließt den mit der Dateisystemdeskriptorendatei assoziierten stream.

       Die Funktion hasmntopt() durchsucht das Feld mnt_opts (siehe unten) der mntent-Struktur  mnt  nach  einer
       Teilzeichenkette, die zu opt passt. Gültige Optionen finden Sie unter <mntent.h> und in mount(8).

       Die  ablaufinvariante  Funktion  getmntent_r()  ähnelt  getmntent(),  speichert  aber die struct mount im
       bereitgestellten *mntbuf und die Zeichenketten, auf welche die Einträge in  dieser  Struktur  zeigen,  im
       Array buf der Größe buflen.

       Die Struktur mntent wird in <mntent.h> wie folgt definiert:

           struct mntent {
               char *mnt_fsname;   /* Name des eingehängten Dateisystems */
               char *mnt_dir;      /* Präfix des Dateisystempfads */
               char *mnt_type;     /* Typ des Dateisystems (siehe mntent.h) */
               char *mnt_opts;     /* Mount-Optionen (siehe mntent.h) */
               int  mnt_freq;      /* Dump-Häufigkeit in Tagen */
               int  mnt_passno;    /* Durchgangsnummer beim parallelen fsck */
           };

       Da   die   Felder   in  den  Dateien  mtab  und  fstab  durch  Leerräume  getrennt  sind,  werden  oktale
       Maskierungszeichen verwendet, um die Zeichen Leerzeichen (\040), Tabulator (\011),  Zeilenumbruch  (\012)
       und  Rückwärtsschrägstrich  (\\) in diesen Dateien darzustellen, wenn sie in einer der vier Zeichenketten
       in einer mntent-Struktur auftreten. Die Routinen addmntent() und getmntent() wandeln die Darstellung  der
       Zeichenketten  mit  und  ohne  Maskierungszeichen  ineinander  um.  Beim  Umwandeln  aus  der  maskierten
       Darstellung wird die Sequenz \134 auch in einen Rückwärtsschrägstrich umgewandelt.

RÜCKGABEWERT

       Die Funktionen getmntent() und getmntent_r() geben einen Zeiger auf die mntent-Struktur zurück oder  NULL
       bei einem Fehler.

       Die Funktion addmntent() liefert bei Erfolg eine 0 zurück, bei einem Fehler dagegen eine 1.

       Die Funktion endmntent() liefert immer eine 1 zurück.

       Die Funktion hasmntopt() liefert die Adresse der Teilzeichenkette zurück, wenn eine Entsprechung gefunden
       wurde; ansonsten NULL.

DATEIEN

       /etc/fstab
              Dateisystembeschreibungsdatei

       /etc/mtab
              Beschreibungsdatei eingehängter Dateisysteme

ATTRIBUTE

       Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.
       ┌───────────────┬───────────────────────┬─────────────────────────────────┐
       │ SchnittstelleAttributWert                            │
       ├───────────────┼───────────────────────┼─────────────────────────────────┤
       │ setmntent(),  │ Multithread-Fähigkeit │ MT-Safe                         │
       │ endmntent(),  │                       │                                 │
       │ hasmntopt()   │                       │                                 │
       ├───────────────┼───────────────────────┼─────────────────────────────────┤
       │ getmntent()   │ Multithread-Fähigkeit │ MT-Unsafe race:mntentbuf locale │
       ├───────────────┼───────────────────────┼─────────────────────────────────┤
       │ addmntent()   │ Multithread-Fähigkeit │ MT-Safe race:stream locale      │
       ├───────────────┼───────────────────────┼─────────────────────────────────┤
       │ getmntent_r() │ Multithread-Fähigkeit │ MT-Safe locale                  │
       └───────────────┴───────────────────────┴─────────────────────────────────┘

KONFORM ZU

       Die nicht ablaufinvarianten Funktionen stammen aus SunOS 4.1.3. Eine Routine getmntent_r() wurde in HP-UX
       10 eingeführt, aber sie gibt einen int zurück. Den oben erwähnten Prototyp gibt es nur in der Glibc.

ANMERKUNGEN

       Auch  System  V verfügt über eine getmntent()-Funktion, aber die Aufrufreihenfolge und die zurückgegebene
       Struktur sind anders. Unter System V wird /etc/mnttab verwendet. In 4.4BSD und Digital UNIX gibt es  eine
       Routine getmntinfo(), einen Wrapper um den Systemaufruf getfsstat().

SIEHE AUCH

       fopen(3), fstab(5), mount(8)

KOLOPHON

       Diese  Seite  ist  Teil  der  Veröffentlichung  5.10  des Projekts Linux-man-pages. Eine Beschreibung des
       Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden
       sich unter https://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

       Die deutsche Übersetzung dieser Handbuchseite wurde von Martin Eberhard Schauer <Martin.E.Schauer@gmx.de>
       erstellt.

       Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder  neuer
       bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

       Wenn  Sie  Fehler  in  der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die
       Mailingliste der Übersetzer.

                                                  6. März 2019                                      GETMNTENT(3)