$ df /tmp
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/root 480589544 42607368 413546516 10% /
$ ls /dev/root
ls: cannot access /dev/root: No such file or directory
Ich wollte überprüfen, ob sich meine Standard-Debian-Installation /tmp
im RAM oder auf der Festplatte befindet, bin aber jetzt völlig verwirrt. Warum wird ein nicht vorhandenes Gerät als Dateisystemtyp gemeldet? Was bedeutet "montiert auf /"?
Hier ist die Ausgabe von mount
:
/dev/sda1 on / type ext4 (rw,relatime,errors=remount-ro,data=ordered)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /run type tmpfs (rw,nosuid,noexec,relatime,size=811520k,mode=755)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
devtmpfs on /dev type devtmpfs (rw,relatime,size=10240k,nr_inodes=1013960,mode=755)
tmpfs on /run/shm type tmpfs (rw,nosuid,nodev,noexec,relatime,size=1623020k)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
none_debugfs on /sys/kernel/debug type debugfs (rw,relatime)
cgroup on /sys/fs/cgroup type tmpfs (rw,relatime,size=12k)
cgmfs on /run/cgmanager/fs type tmpfs (rw,relatime,size=100k,mode=755)
systemd on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,release_agent=/run/cgmanager/agents/cgm-release-agent.systemd,name=systemd)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=811520k,mode=700,uid=1000,gid=1000)
mount
partition
block-device
Vorac
quelle
quelle
mount
Befehls posten ?/tmp
ist ein Einhängepunkt. Die Frage, die Sie stellen möchten, lautet: "Welche Partition / welches Gerät ist auf / tmp gemountet?"/dev/root
ist das Gerät im Stammverzeichnis des Dateisystems (/
) gemountetAntworten:
Wenn die Ausgabe wie oben ist, befindet sie sich auf der Festplatte. Sie können sich
/dev/root
die Kernel-Befehlszeile ansehen:So
/dev/root
entsprechen die Partition mit dem UUID gedruckt oben; Ihr Wille unterscheidet sich. Verwenden Sie zum Nachschlagen dieser UUIDWie Sie sehen können, ist die passende Partition
/dev/sda1
. Sie befinden sich/tmp
also auf der Festplatte. Ein weiteres Werbegeschenk in der Ausgabe vondf
ist der Mountpoint/
. Wenn Sie/tmp
im RAM gemountet haben , erhalten Sie stattdessenquelle
Der Ausgang der
df /tmp
gibt die Antwort: die Spalte Listen „auf Mounted“/
, so/tmp
Teil des Dateisystems ist , dass die montiert/
, dh das Root - Dateisystem. Es ist kein separates Dateisystem.Um genauer zu sein, sollten Sie Folgendes ausführen
df /tmp/
: Wenn/tmp
es sich um einen symbolischen Link handelt, werdendf /tmp
Informationen zum Speicherort des symbolischen Linksdf /tmp/
aufgelistet , während Informationen zum Zielverzeichnis aufgelistet werden.Die Erwähnung
/dev/root
in der Gerätespalte ist darauf zurückzuführen, dass sie in aufgeführt ist/etc/mtab
. Sie können das reale Gerät finden, indem Sie/proc/mounts
mit</proc/mounts awk '$2 == "/" {print $1}'
oder nachsehenfindmnt /
.quelle
df /tmp
undfindmnt /
.df /path/to/target
Zeigt an, welches Dateisystem das Ordnerziel, die Gesamtzahl der Bytes, die verwendeten Bytes, den verfügbaren Prozentsatz und den Einhängepunkt enthält.In dem in dieser Frage dokumentierten Beispiel
/tmp/
befindet sich der Ordner im beschrifteten Dateisystemroot
auf dem Blockgerät/dev/sda1
.mount | grep target
zeigt alle Dateisysteme an, die das Namensziel enthalten, wie in aufgeführt/etc/mtab
. Wenn der Zielordner kein separates Dateisystem ist, erhalten Sie von mount nicht direkt genaue Informationen.Um jedoch zu wissen, was das Gerät enthält
/tmp/
,df
rufen Sie den Dateisystemnamen (/dev/root
) und den Einhängepunkt (/
) ab und durchsuchen Sie die Ausgabe vonmount
, um das Gerät oder den Einhängepunkt zu finden und festzustellen, welches Blockgerät dieses Dateisystem enthält.Es ist wichtig, zwischen Gerät und Dateisystem zu unterscheiden, da nicht immer eine 1: 1-Korrelation besteht. Das Blockgerät kann partitioniert werden und jede Partition verfügt über ein Dateisystem. Jede Partition kann einen anderen Dateisystemtyp haben. Jede Partition hat ihren eigenen eindeutigen Namen und ihre eigene UUID und kann Aliase haben.
quelle
Um dies zu überprüfen,
mount
ist besser geeignet. Sie können es versuchen und die Ausgabe auf 'tmp' überprüfen.Bsp .:
Hier heißt es, dass meine Partition
/dev/shm
mit tmpfs (temporärer Dateispeicher, dh im RAM) gemountet ist . Wenn Ihre Partition nicht mit tmpfs gemountet ist, befindet sie sich nicht im flüchtigen Speicher.quelle
tmpfs on /tmp
.df
gibt die Informationen direkt an, währendmount | grep
sie die Informationen nicht zuverlässig wiedergeben (es würden Fälle übersehen, in denen/tmp
es sich um eine symbolische Verknüpfung handelt, und es würde für so etwas wie/var/tmp
entweder nicht funktionieren/var
oder/var/tmp
könnte ein Einhängepunkt sein).mount
druckt im Grunde den Inhalt der mtab-Datei (/etc/mtab
). Dies zeigt nur gemountete Dateisysteme. Wenn der Zielordner kein separates Dateisystem ist, können Sie ihn nicht mit mount finden. Wenn Sie jedoch verwendendf /path/to/target
, wird Ihnen positiv mitgeteilt, welches Blockgerät den Zielordner enthält und wo dieses Gerät bereitgestellt ist. Sie können dannmount
oder andere Tools verwenden, um festzustellen, um welche Art von Dateisystem es sich handelt, und um andere Informationen. Im Beispiel von OP zeigt Ihr Vorschlag nicht an, wo der Ordner / tmp / bereitgestellt ist, da sein / tmp / kein separates Dateisystem ist, sondern Teil von/
.