[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"question-linux-kakie-tipy-faylov-sushchestvuyut-v-linux":3},{"id":4,"slug":5,"topicId":6,"topicSlug":7,"topicName":8,"topicEmoji":9,"question":10,"answer":11,"codeLang":12,"codeSrc":12,"important":12,"commonMistakes":12,"modernUsage":12,"difficulty":13,"tags":14,"related":15,"progress":16,"seo":17},729,"kakie-tipy-faylov-sushchestvuyut-v-linux",18,"linux","Linux","🐧","Какие типы файлов существуют в Linux?","В Linux существует 7 типов файлов. Тип файла определяется командой `ls -l` по первому символу в строке прав доступа.\n\n| Символ | Тип файла | Описание |\n|---|---|---|\n| `-` | Обычный файл (regular file) | Текстовые файлы, бинарные файлы, изображения, архивы, JAR-файлы |\n| `d` | Каталог (directory) | Специальный файл, содержащий список имён и ссылок на другие файлы |\n| `l` | Символическая ссылка (symbolic link) | Указатель на другой файл или каталог (аналог ярлыка). Создаётся командой `ln -s` |\n| `b` | Блочное устройство (block device) | Устройство с блочным доступом (жёсткие диски, SSD): `\u002Fdev\u002Fsda`, `\u002Fdev\u002Fnvme0n1` |\n| `c` | Символьное устройство (character device) | Устройство с посимвольным доступом: `\u002Fdev\u002Ftty`, `\u002Fdev\u002Fnull`, `\u002Fdev\u002Frandom` |\n| `s` | Сокет (socket) | Файл для межпроцессного взаимодействия (IPC). Например, `\u002Fvar\u002Frun\u002Fdocker.sock` |\n| `p` | Именованный канал (named pipe \u002F FIFO) | Файл для передачи данных между процессами в одном направлении. Создаётся командой `mkfifo` |\n\n### Примеры просмотра\n\n\u003Cdetails>\n\u003Csummary>Примеры ls -l для каждого типа файла\u003C\u002Fsummary>\n\n```bash\n# Обычный файл\n$ ls -l \u002Fetc\u002Fhosts\n-rw-r--r-- 1 root root 221 Apr  1 12:00 \u002Fetc\u002Fhosts\n\n# Каталог\n$ ls -ld \u002Fhome\ndrwxr-xr-x 3 root root 4096 Apr  1 12:00 \u002Fhome\n\n# Символическая ссылка\n$ ls -l \u002Fusr\u002Fbin\u002Fjava\nlrwxrwxrwx 1 root root 22 Apr  1 12:00 \u002Fusr\u002Fbin\u002Fjava -> \u002Fetc\u002Falternatives\u002Fjava\n\n# Блочное устройство\n$ ls -l \u002Fdev\u002Fsda\nbrw-rw---- 1 root disk 8, 0 Apr  1 12:00 \u002Fdev\u002Fsda\n\n# Символьное устройство\n$ ls -l \u002Fdev\u002Fnull\ncrw-rw-rw- 1 root root 1, 3 Apr  1 12:00 \u002Fdev\u002Fnull\n\n# Сокет\n$ ls -l \u002Fvar\u002Frun\u002Fdocker.sock\nsrw-rw---- 1 root docker 0 Apr  1 12:00 \u002Fvar\u002Frun\u002Fdocker.sock\n```\n\n\u003C\u002Fdetails>\n\nДля определения типа содержимого файла (MIME-тип) используется команда `file`:\n\n```bash\n$ file application.jar\napplication.jar: Java archive data (JAR)\n\n$ file \u002Fbin\u002Fbash\n\u002Fbin\u002Fbash: ELF 64-bit LSB pie executable, x86-64\n```\n\n> **На собеседовании:** ключевое — знать, что в Linux «всё является файлом», включая устройства и сокеты. Частая ошибка — забыть про сокеты и каналы. Упомяните `\u002Fvar\u002Frun\u002Fdocker.sock` как практический пример сокета, который Java-разработчик встречает при работе с Docker.","","junior",[7],[],null,{"title":18,"description":19,"ogTitle":18,"ogDescription":19,"keywords":20,"schemaAnswer":19,"featuredSnippetReady":21},"Какие типы файлов существуют в Linux? — Gymterview","В Linux существует 7 типов файлов. Тип файла определяется командой `ls -l` по первому символу в строке прав доступа.",[7,13],true]