Найти в Дзене
Сисадмин

Является ли директория в Linux файлом?

Да, в Linux (и вообще в UNIX-подобных системах) директория является файлом! Всё в Linux — файлы, и директории не исключение. Но есть нюанс: Короче, директория — это файл, который хранит список других файлов. 1️⃣ Команда ls -l показывает, что директория имеет права, как файл: ls -ld / Пример вывода: drwxr-xr-x 18 root root 4096 Feb 26 10:00 / 2️⃣ Используем stat для проверки типа: stat /home Выдаст что-то вроде: File: /home Size: 4096 Blocks: 8 IO Block: 4096 directory Тут прямо написано directory, но это всё равно файл в файловой системе. 3️⃣ Проверим через file: file /home Выдаст: /home: directory Можно заглянуть внутрь директории как в обычный файл (но делать так без необходимости не стоит 😅): ls -lia / | head или cat /home # ОШИБКА! Это не обычный текстовый файл На низком уровне это просто список имён файлов и их inode-номеров. ✔ В Linux директория — это файл, но специального типа.
✔ Она хранит список файлов, а не обычные данные.
✔ Операционная система просто знает
Оглавление
Является ли директория в Linux  файлом?
Является ли директория в Linux файлом?

Да, в Linux (и вообще в UNIX-подобных системах) директория является файлом!

Почему директория — это файл?

Всё в Linux — файлы, и директории не исключение. Но есть нюанс:

  • Обычные файлы содержат данные.
  • Директории — это специальные файлы, которые содержат список файлов и поддиректорий внутри себя.

Короче, директория — это файл, который хранит список других файлов.

Как это проверить?

1️⃣ Команда ls -l показывает, что директория имеет права, как файл:

ls -ld /

Пример вывода:

drwxr-xr-x 18 root root 4096 Feb 26 10:00 /
  • Видишь d в начале? Это значит directory (папка).
  • Если бы это был обычный файл, первая буква была бы -.

2️⃣ Используем stat для проверки типа:

stat /home

Выдаст что-то вроде:

File: /home Size: 4096 Blocks: 8 IO Block: 4096 directory

Тут прямо написано directory, но это всё равно файл в файловой системе.

3️⃣ Проверим через file:

file /home

Выдаст:

/home: directory

Что внутри директории?

Можно заглянуть внутрь директории как в обычный файл (но делать так без необходимости не стоит 😅):

ls -lia / | head

или

cat /home # ОШИБКА! Это не обычный текстовый файл

На низком уровне это просто список имён файлов и их inode-номеров.

✔ В Linux директория — это файл, но специального типа.
✔ Она хранит
список файлов, а не обычные данные.
✔ Операционная система просто знает, что с ней делать.

Так что, да, папка — это файл, но с сюрпризами!