Как я могу проверить, чтобы видеть, смонтирован ли/tmp каталог в моей системе CentOS 5.x на tmpfs?

Именно, потому что Вы находитесь в каталоге, Вы монтируетесь в. Таким образом, Вы все еще ссылаетесь на содержание исходного каталога через исходный каталог.

Вы видите этот точно тот же самый эффект, когда Вы cd в каталог, который затем удален.

$ pwd
/home/saml/dirtodel

$ rmdir ../dirtodel

$ pwd
/home/saml/dirtodel

Как это может быть? Я все еще в каталоге, который был просто удален. Что продолжается?

В оболочке это тихо cd кому: /home/saml/dirtodel, выполните эту команду для обнаружения PID (идентификатор процесса), поскольку это - сессия удара:

$ echo $$
32619

Теперь, если Вы входите в/proc каталог того PID, мы видим то, что продолжается немного:

$ ls -l /proc/32619/ | head -10
total 0
dr-xr-xr-x 2 saml saml 0 May 18 07:40 attr
-r-------- 1 saml saml 0 May 18 07:40 auxv
-r--r--r-- 1 saml saml 0 May 18 07:40 cgroup
--w------- 1 saml saml 0 May 18 07:40 clear_refs
-r--r--r-- 1 saml saml 0 May 18 02:06 cmdline
-rw-r--r-- 1 saml saml 0 May 18 07:40 comm
-rw-r--r-- 1 saml saml 0 May 18 07:40 coredump_filter
-r--r--r-- 1 saml saml 0 May 18 07:40 cpuset
lrwxrwxrwx 1 saml saml 0 May 18 07:31 cwd -> /home/saml/dirtodel (deleted)

При списке первых нескольких файлов мы видим названный тот cwd, который обозначает текущий рабочий каталог. Заметьте, что это указывает на наше старое название и что это было "удалено".

Таким образом, это дает нам немного понимания, что продолжается, но где мы?

Интересно, если мы cd /proc/32619/cwd мы можем изменить каталоги на это волшебное местоположение. Если мы работаем df . команда мы видим, что находимся все еще на /home раздел:

$ pwd
/proc/32619/cwd
[saml@grinchy cwd]$ df -h .
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_grinchy-lv_home
                      245G  125G  108G  54% /home

Таким образом, что продолжается?

Даже при том, что наш каталог был удален, inode, который составляет его, не был. Вы видите это с stat команда. В оболочке это все еще в каталоге, который мы удалили:

$ stat .
  File: `.'
  Size: 0           Blocks: 8          IO Block: 4096   directory
Device: fd02h/64770d    Inode: 10486487    Links: 0
Access: (0775/drwxrwxr-x)  Uid: (  500/    saml)   Gid: (  501/    saml)
Access: 2013-05-18 07:48:52.674081972 -0400
Modify: 2013-05-18 07:48:44.378900038 -0400
Change: 2013-05-18 07:50:54.189747426 -0400

Мы видим, что существует все еще inode, 10486487, используем нами, но заметьте, что он имеет 0 ссылок. Это - то, что происходит, когда что-то добирается, удалил. Все ссылки на него удалены, и таким образом, ОС может затем удалить этот paritcular inode.

4
06.03.2014, 19:47
3 ответа
  • Командой [11685]df[11686] вы можете определить, на какой файловой системе находится каталог или файл, и если вы включите опцию -T, то на выходе будет отображен тип файловой системы.

  • В примере выше каталог /tmp находится на файловой системе ext4, а не tmpfs.

  • .
    15
    27.01.2020, 20:45
  • Команда [11683]mount[11684] показывает, что монтируется в данный момент.

  • 4
    27.01.2020, 20:45
    df --output=target /tmp
    

    Также проверьте справочную страницу df на предмет имен других полей, кроме "target".

    0
    27.01.2020, 20:45

    Теги

    Похожие вопросы