Intereting Posts
Файловая система Suse работает только для чтения Apache2 Не удалось запустить после установки php5 alonside php7 на Ubuntu 16.04 Разделение большого дерева каталогов по типу файла Загрузка операционной системы с загрузочного дополнительного жесткого диска через VirtualBox Настройка мыши для правой + левой кнопки, имитирующей средний щелчок (для копирования / вставки) Удалить папки, чье имя имеет 4-значное число два раза Как сделать многострочный поиск и заменить текст (удалить) рекурсивно Как показать изменения для пакетов перед обновлением через apper или apt-get upgrade? сумма всех пакетов в файлах pcap Храните два файла истории bash, один с ignoredups, один со всем Извлечь строки из текстового файла на основе параметра в одну строку Лучше ли устанавливать -j REJECT или -j DROP в iptables? Как добавить ключ без фразы в ssh-агент? Как запустить сценарий, запускаемый с помощью ввода джойстика? Файловая система только для чтения – соображения и потеря функциональности

Все ли виртуальные файлы находятся в файлах устройств Linux?

Следующие два файла являются виртуальными файлами:

/dev/sda1 /proc/cpuinfo 

Я знаю, что /dev/sda1 – это файл устройства (который указывает на драйвер устройства), поэтому, когда я обращаюсь к этому файлу, я фактически получаю доступ к драйверу устройства.

Но как насчет /proc/cpuinfo , этот файл также является файлом устройства? Если это так, все ли другие виртуальные файлы находятся в файлах устройств Linux?

Все файлы в /proc предоставлены файловой системой proc , которая описана таким образом на ее man-странице :

Файловая система proc – это псевдофайловая система, которая предоставляет интерфейс для структур данных ядра.

Это специальная файловая система, предоставляемая kernelм для обеспечения доступа к хранимым данным, например, о процессоре ( cpuinfo ), о процессах (в числовых каталогах в /proc , соответствующих каждому идентификатору процесса) … Файлы внутри это не файлы устройств, они фактически являются конечными точками для вызовов функций в ядре для извлечения информации из него.

Другие специальные файловые системы include devtmpfs и sysfs .

Так что нет, все «виртуальные» файлы не являются файлами устройств. Возможно, файлы устройств вообще не являются виртуальными, поскольку узлы устройств существуют как реальные файлы; их поведение отличается от того, что большинство людей воспринимают как файлы, но, тем не менее, они являются файлами.

Эти вопросы могут помочь вам лучше понять все это:

  • Что происходит, когда я запускаю команду cat / proc / cpuinfo?
  • В чем разница между procfs и sysfs?
  • Почему proc называется файловой системой?

Нет. /proc в Linux – это псевдофайловая система, которая предоставляет интерфейс для структур данных ядра. В нем нет символьных или блочных специальных файлов в том же смысле, что и файлы в /dev (вы не можете использовать файлы /proc для монтирования файловой системы или для общения с модемом или стримером и т. Д.).

Эта файловая система полностью описана в руководстве proc(5) для вашей системы ( man 5 proc ).