mount(2) mount(2)
NAME
mount - Dateisystem einhängen
SYNTAX
#include <sys/types.h>
#include <sys/mount.h>
int mount(const char *spec, const char *dir, int mflag,
.../* int fstyp, const char *dataptr, sizet datalen */);
BESCHREIBUNG
mount() hängt ein aushängbares Dateisystem, das sich in der durch spec
gekennzeichneten blockorientierten Gerätedatei befindet, in das Datei-
verzeichnis dir ein. spec und dir sind Zeiger auf Pfadnamen. Das Argu-
ment fstyp wird von mount() ausgewertet, wenn entweder MSFSS oder
MSDATA in mflag gesetzt ist. fstyp ist die Nummer des Dateisystemtyps
oder ein Zeiger auf eine Zeichenkette, die den Dateisystemtyp enthält.
Der Systemaufruf sysfs(2) kann zur Bestimmung der Nummer des Dateisy-
stemtyps verwendet werden. Ist weder MSFSS noch MSDATA in mflag
gestzt, so verwendet mount() standardmäßig den Dateisystemtyp des
Root-Dateisystems.
Wenn MSDATA in mflag gesetzt ist, erwartet das System die Argumente
dataptr und datalen. Diese beschreiben zusammen einen Block dateisy-
stemspezifischer Daten ab Adresse dataptr und mit der Länge datalen.
Diese Daten werden von dateisystemspezifischem Code im Betriebssystem
interpretiert; ihr Format hängt von Dateisystemtyp ab. Ein Dateisy-
stemtyp benötigt diese Daten möglicherweise nicht; in diesem Fall
sollten sowohl dataptr als auch datalen auf 0 gesetzt werden. Soll das
Dateisystem als nur lesbar eingehängt werden, so muß MSRDONLY in
mflag gesetzt sein.
Nach erfolgreicher Beendigung von mount() verweist der Name in dir auf
das Root-Dateiverzeichnis des neu eingehängten Dateisystems.
mount() kann nur vom Systemverwalter verwendet werden. Die Schnitt-
stelle ist nur für das Dienstprogramm mount(1M) vorgesehen.
mount() ist erfolglos, wenn einer oder mehrere der nachstehenden
Punkte zutreffen:
EBUSY dir ist zum gegebenen Zeitpunkt bereits eingehängt; eine
andere Person hat dir als aktuelles Dateiverzeichnis,
oder dir ist auf andere Weise belegt.
EBUSY Die zu spec gehörende Gerätedatei ist gegenwärtig einge-
hängt.
EBUSY Es stehen keine weiteren Einträge in der Einhängetabelle
zur Verfügung.
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
mount(2) mount(2)
EFAULT spec, dir oder datalen weisen über den zugewiesenen
Adreßraum des Prozesses hinaus.
EINVAL Der Superblock hat eine ungültige Magic Number, oder
fstyp ist ungültig.
ELOOP Während der Übersetzung von dir wurden zu viele symboli-
sche Verweise angetroffen.
ENAMETOOLONG Die Länge des Arguments dir ist größer als PATHMAX oder
NAMEMAX, während POSIXNOTRUNC aktiv ist.
ENOENT Eine der angegebenen Dateien ist nicht vorhanden.
ENOTDIR Eine Komponente des Pfades ist kein Dateiverzeichnis.
EPERM Die effektive Benutzernummer ist nicht diejenige des
Systemverwalters.
EREMOTE spec ist nicht lokal und kann nicht eingehängt werden.
ENOLINK dir weist auf einen fernen Rechner, und die Verbindung
zu diesem Rechner ist nicht mehr aktiv.
EMULTIHOP Die Komponenten von dir erfordern den Sprung auf mehrere
ferne Rechner.
ENOTBLK spec ist keine blockorientierte Gerätedatei.
ENXIO Die zu spec gehörende Gerätedatei ist nicht vorhanden.
ENOTDIR dir ist kein Dateiverzeichnis.
EROFS spec ist schreibgeschützt, und mflag fordert die Schrei-
berlaubnis an.
ENOSPC Der Dateisystemstatus im Superblock ist nicht FsOKAY,
und mflag fordert die Schreiberlaubnis an.
ERGEBNIS
Nach erfolgreicher Beendigung wird 0 zurückgegeben. Andernfalls wird
-1 zurückgegeben, und errno wird zur Anzeige des Fehlers gesetzt.
SIEHE AUCH
mount(1M), sysfs(2), umount(2), fs(4).
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98