Файл в Linux — набор информации, который сберегается на устройстве хранения данных. Например, на жестком диске, твердотельном накопителе или съемном носителе. В основе файловой системы Linux лежит концепция «все есть файл» (от англ. Everything is a File), которая означает, что почти все ресурсы ОС представлены в виде файлов, за счет чего Linux представляет собой модульную расширяемую систему.
В этой статье мы расскажем о том, какие типы файлов существуют в ОС Linux.
Содержание:
- Утилита ls в Linux
- Обычный файл
- Блочный файл
- Файл символьного устройства
- Символическая ссылка
- Именованный конвейер
- Файл сокета
- Каталог / папка / директория
- Выводы
Утилита ls в Linux
В ОС Linux утилита ls
позволяет просматривать список файлов, их типы и права доступа, которые записываются в символьной нотации. -rw-r--r--
— это пример прав доступа к файлу, где первый символ обозначает тип файла:
-
— обычный файл;d
— каталог / папка / директория;l
— символьная ссылка;c
— файл символьного устройства;b
— файл блочного устройства;p
— именованный конвейер;s
— сокет.
Обычный файл
Обычный файл (от англ. regular file) содержит пользовательскую информацию, такую как текст, двоичные данные, программный код, изображения и многое другое. Этот тип файлов является наиболее распространенным в Linux. У обычных файлов часто есть свои расширения, например, текстовые файлы могут иметь расширение *.txt
, а изображения в формате JPEG — *.jpg
и так далее.
Чтобы вывести на экран список всех обычных файлов в какой-либо папке, воспользуйтесь инструментами ls
и grep
:
Читайте также: 15 примеров команды ls в Linux.
Давайте детальнее разберем принцип работы использованной команды:
ls -l <directory>
формирует подробный список всех файлов и каталогов в указанном каталоге.- Вывод
ls -l
передается по конвейеру (|
) вgrep "^-"
. grep "^-"
фильтрует вывод так, чтобы показать только строки, начинающиеся с дефиса (-
), который обозначает обычные файлы.
Блочный файл
Блочные файлы (или блочные устройства) предоставляют интерфейс для работы с устройствами хранения данных, такими как жесткие диски, SSD и другие разновидности накопителей. Эти файлы находятся в каталоге /dev
. Чтобы вывести на экран список блочных файлов, выполните в терминале:
Файл символьного устройства
Файлы символьных устройств (или символьные файлы) обеспечивают прямой доступ без буферизации к аппаратным устройствам, которые обрабатывают данные в потоке по одному символу за раз (например, терминалы, порты, некоторые типы принтеров). Эти файлы также находятся в каталоге /dev
. Чтобы посмотреть список символьных файлов, примените следующую команду:
Символическая ссылка
Символическая ссылка (симлинк или мягкая ссылка) — это специальный тип файла, который служит указателем или ярлыком на другой файл или каталог. В отличие от жестких ссылок, символические имеют собственный inode и блок данных, и указывают на путь к целевому файлу. Любые изменения, внесенные в оригинальный файл или каталог, будут отражены при обращении к символической ссылке.
Для вывода в терминал списка символических ссылок в каталоге выполните в командной строке:
Именованный конвейер
Именованный конвейер или канал (от англ. named pipe) — специальный тип файла в Linux, который использует механизм межпроцессного взаимодействия (IPC). Именованные каналы функционируют аналогично традиционным конвейерам (|
в командах оболочки), но имеют дополнительное преимущество — они доступны как обычные файлы.
Чтобы отобразить в окне терминала список именованных конвейеров в папке, воспользуйтесь следующим набором команд:
Читайте также: Как использовать перенаправление ввода / вывода в Linux.
Файл сокета
Файл сокета (также известный как просто сокет) используется для межпроцессного взаимодействия (IPC) в Linux. Сокеты обеспечивают двунаправленный канал связи между процессами, позволяя обмениваться данными между разными хостами или внутри одного узла.
Чтобы посмотреть список файлов сокетов в директории, выполните следующую команду:
Каталог / папка / директория
В Linux каталог (или директория, или папка) — особый тип файла, который служит контейнером для других файлов и других каталогов в том числе. Их используют для организации иерархии файловой системы, чтобы структурировать способ хранения и доступ к объектам.
Для примера выведем в терминал список папок из каталога /dev
:
Выводы
Теперь Вы знаете, что в ОС Linux есть несколько различных типов файлов. Каждый из них играет ключевую роль в межпроцессном взаимодействии, управлении устройствами и информацией в операционной системе.
Спасибо за время, уделенное прочтению статьи!
Если возникли вопросы — задавайте их в комментариях.
Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!
Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco, курсы по кибербезопасности, полный курс по кибербезопасности, курсы DevNet / DevOps (программируемые системы) от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).
Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!
- Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
- Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
- Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
- Проведем вечерние онлайн-лекции на нашей платформе.
- Согласуем с вами удобное время для практик.
- Если хотите индивидуальный график — обсудим и реализуем.
- Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
- Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
- отредактировать или создать с нуля резюме;
- подготовиться к техническим интервью;
- подготовиться к конкурсу на понравившуюся вакансию;
- устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.