$ 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
Je voulais vérifier si mon installation Debian par défaut se place /tmp
dans la RAM ou sur le disque, mais je suis maintenant complètement confus. Pourquoi un périphérique inexistant serait-il signalé comme type de système de fichiers? Que signifie "monté sur /"?
Voici la sortie de 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
la source
la source
mount
commande?/tmp
est un point de montage. La question que vous voulez poser est "Quelle partition / périphérique est monté sur / tmp?"/dev/root
est le périphérique monté à la racine du système de fichiers (/
)Réponses:
Si la sortie est comme ci-dessus, c'est sur le disque dur. Vous pouvez obtenir
/dev/root
en regardant la ligne de commande du noyau:/dev/root
Est donc équivalent à la partition avec l'UUID imprimé ci-dessus; le vôtre sera différent. Pour rechercher cet UUID, utilisezComme vous pouvez le voir, la partition correspondante est
/dev/sda1
. Vous êtes donc/tmp
sur le disque dur. Un autre cadeau dans la sortie dedf
est le point de montage/
. Si vous montiez/tmp
dans la RAM, vous obtiendriez plutôtla source
La sortie de
df /tmp
donne la réponse: la colonne «Monté sur» répertorie/
, fait donc/tmp
partie du système de fichiers qui est monté/
, c'est-à-dire le système de fichiers racine. Ce n'est pas un système de fichiers distinct.Pour être plus précis, vous devez exécuter
df /tmp/
: if/tmp
est un lien symbolique, puisdf /tmp
répertorie les informations sur l'emplacement du lien symbolique, tandis quedf /tmp/
répertorie les informations sur le répertoire cible.La mention de
/dev/root
dans la colonne de l'appareil est due à sa liste dans/etc/mtab
. Vous pouvez trouver le vrai appareil en regardant/proc/mounts
avec</proc/mounts awk '$2 == "/" {print $1}'
oufindmnt /
.la source
df /tmp
etfindmnt /
.df /path/to/target
indique quel système de fichiers contient la cible du dossier, le nombre total d'octets, les octets utilisés, le pourcentage disponible et le point de montage.Dans l'exemple documenté dans cette question, le dossier
/tmp/
se trouve dans le système de fichiers étiquetéroot
, qui se trouve sur le périphérique de bloc/dev/sda1
.mount | grep target
affichera tous les systèmes de fichiers contenant le nom cible comme indiqué dans/etc/mtab
. Si le dossier cible n'est pas un système de fichiers distinct, le montage ne vous donnera pas directement des informations précises.Cependant, pour savoir quel périphérique contient
/tmp/
, utilisezdf
pour obtenir le nom du système de fichiers, (/dev/root
) et le point de montage, (/
), puis recherchez la sortie demount
pour trouver le périphérique ou le point de montage et déterminer quel périphérique de bloc contient ce système de fichiers.Il est important de faire la distinction entre le périphérique et le système de fichiers car il n'y a pas toujours une corrélation 1: 1. Le périphérique de bloc peut être partitionné et chaque partition aura un système de fichiers. Chaque partition peut avoir un type de système de fichiers différent. Chaque partition a son propre nom unique et son UUID et peut avoir des alias.
la source
Pour vérifier cela,
mount
est plus approprié. Vous pouvez l'essayer et grep sa sortie sur 'tmp'Ex :
Ici, il est dit que ma partition
/dev/shm
est montée avec tmpfs (stockage de fichiers temporaires, c'est-à-dire en RAM). Si votre partition n'est pas montée avec tmpfs, elle n'est pas dans la mémoire volatile.la source
tmpfs on /tmp
.df
donne les informations directement, alorsmount | grep
qu'il ne donne pas les informations de manière fiable (il manquerait les cas où/tmp
est un lien symbolique, et cela ne fonctionnerait pas pour quelque chose comme/var/tmp
puisque l'un/var
ou l' autre ou/var/tmp
pourrait être un point de montage).mount
affiche essentiellement le contenu du fichier mtab (/etc/mtab
). Cela montre uniquement les systèmes de fichiers montés. Si le dossier cible n'est pas un système de fichiers distinct, vous ne le trouverez pas en utilisant mount. Cependant, si vous utilisezdf /path/to/target
, il vous indiquera positivement quel périphérique de bloc contient le dossier cible et où ce périphérique est monté. Vous pouvez ensuite utilisermount
ou d'autres outils pour déterminer de quel type de système de fichiers il s'agit et d'autres informations. Dans l'exemple d'OP, votre suggestion ne montrera pas où le dossier / tmp / est monté, car son / tmp / n'est pas un système de fichiers séparé, mais une partie de/
.