Архив рубрики: Статьи о Linux

Как хранятся данные на компьютере?

Как хранятся данные на компьютере?

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

Полный путь для поиска документа будет: дом номер А -> квартира номер Б -> спальная комната -> между полками с книгами -> паспорт. Что-то похожее можно встретить в компьютере, но здесь местом хранения документов является каталог, а сам документ называется файлом. Между всеми этими элементами находятся разделители.

В противоположность операционным системам Microsoft, разделителем в Linux служит не обратный слэш (косая черта), а прямой слэш, как во всех UNIX-подобных системах.

Структура Linux-каталогов

Структура Linux-каталогов

Рассмотрим структуру Linux-каталогов. В ее начале лежит корневой каталог, обозначающийся просто /, в котором расположено несколько папок, существующих во всех системах, основанных на UNIX. Вот их список.

/bin – это каталог, в котором находятся все базовые программы. Эти компоненты являются критическими для Linux, так как используются везде, поэтому их установку нельзя отменить (удалив их вручную, вы получите неработоспособную систему). Здесь можно найти все – от программы для получения доступа к дискам до простого текстового редактора и архиватора.

/boot – папка, которая содержит файлы для загрузки Linux. Здесь чаще всего находится и само ядро операционной системы

/dev – здесь находятся файлы блочных и символьных устройств. Эти файлы являются путем, через который программное обеспечение может обращаться к драйверу устройства. Например, файл /dev/hda относится к первому жесткому диску, который присоединен к интерфейсу IDE (Integrated Drive Electronics — встроенный интерфейс накопителей), a /dev/fdO — к первому устройству чтения/записи гибких дисков. Пользователь не может прочитать данные из таких файлов и записать информацию в файл с помощью обычных редакторов, что, впрочем, не имеет смысла. Работать с такими файлами пользователь может с помощью специальных программ, которые полезны в определенных случаях. Иногда некоторым файлам из каталога /dev присваивают ссылки, названия которых дают больше информации об устройстве.

/etc — в этой папке находятся файлы настройки системы и программ.

/home – каталог в котором расположены домашние каталоги пользователей Linux. Обычно все пользователи могут читать информацию, которая находится в вашем персональном каталоге, но только вы и администратор можете изменять ее.

/lib – папка, в которой хранятся компоненты ядра и программ, а также библиотеки.

/media – здесь находятся доступные (смонтированные) съемные носители информации   дискеты, CD, flash-накопители и т. д.

/mnt – в этом каталоге расположены смонтированные несъемные носители информации. Это преимущественно относится к разделам на жестком диске. Об удобстве такой организации будет рассказано далее.

/ргос – здесь содержатся образы всех выполняющихся процессов. Информация о каждом процессе находится в отдельном каталоге, название которого носит номер процесса. Файлы, предоставляющие информацию о процессе, необычные. Если вы попытаетесь посмотреть их размер, он неизменно будет равняться 0 байт. Если вы просмотрите файл, в нем будет определенная информация о процессе, в зависимости от файла. Скопировав его, на выходе вы получите обычный файл с информацией о процессе, которая находилась в нем в момент копирования.

/root – домашний каталог суперпользователя.

/sbin – в этой панке находятся приложения, необходимые для полноценной работы Они не являются программами первой важности, как приложения из каталога /bin, однако без них работа будет неудобной.

/tmp – здесь содержатся временные файлы, создаваемые программами. В зависимости от настроек системы при каждой перезагрузке файлы из этого каталога могут удаляться.

/usr – это папка, в которой находится большинство полезных для пользователя программ и команд, библиотеки к ним, ресурсы и исходные коды приложений.

/var – содержит различные файлы данных, включая файлы протоколов.

Что такое монтирование носителей информации?

Что такое монтирование носителей информации?

В операционной системе Linux, как и во всех UNIX-подобных системах существует понятие монтирования носителей информации. Например, если вы хотите получить доступ к информации на разделе, отличном от того, на котором находится операционная система, сначала вы должны смонтировать его в какой-либо каталог. Как правило, все разделы монтируются в папку /mnt, в том числе CD-ROM и дискеты.

Понятие монтирования есть и в Windows, но там все происходит автоматически и без участия пользователя, поэтому оно не настолько известно, как в Linux. Некоторые дистрибутивы Linux (например, Маndriva) при установке записывают информацию обо всех имеющихся разделах на жестком диске и затем автоматически монтируют все разделы при загрузке.

Возможности монтирования в Linux

Возможности монтирования в Linux

Несколько слов о возможностях, которые дает монтирование.

Принцип монтирования может помочь выполнить действия, невозможные в других операционных системах. Например, если у вас установлено несколько UNIX-систем, можно смонтировать раздел в каталог /home на всех операционных системах, что позволит иметь под рукой не только все свои документы, но и одинаковые файлы конфигурации в разных экземплярах операционных систем.То же можно сделать для каталога с программным обеспечением.

Одна из самых интересных возможностей состоит в том, что монтировать можно не только устройства и разделы, но даже файлы. Например, если у вас есть образ диска с установочным пакетом какой-либо программы, вы можете смонтировать его как обычный CD, и все приложения смогут работать с ним как с действительно существующим (физическим) CD.

Какие типы файлов бывают в Linux?

Какие типы файлов бывают в Linux?

Для удобства в Linux существует несколько различных типов файлов:

  • обычные файлы;
  • каталоги;
  • жесткие и символические ссылки;
  • файлы блочных устройств;
  • файлы символьных устройств;
  • файлы loop-устройств;
  • локальные сокеты;
  • именованные каналы.

Обычные файлы представляют собой набор байтов, содержащих какую-либо информацию и хранящихся на каком-то носителе. Если вы ранее работали на компьютере, то наверняка уже сталкивались с ними в виде текстовых, графических и других файлов.

Каталоги хранят в себе ссылки на другие файлы и каталоги. У папок существует две специальные ссылки, которые обозначаются как . и … Они указывают на саму папку и родительский каталог. Корневой каталог не имеет родительского, однако, если вы попытаетесь перейти по ссылке .. из корневого каталога, система не выдаст ошибку.

Жесткие и символические ссылки позволяют создавать несколько видимостей одного файла при том, что реально будет существовать только одна копия, на которую все остальные будут только ссылаться. Отличие между жесткими и символическими ссылками состоит в том, что символическая ссылка привязана только к пути, а жесткая – непосредственно к файлу, что реализовано средствами файловой системы, и будет оставаться действительной даже при перемещении файла. Это напоминает ситуацию с телефоном: от человека можно получить информацию, позвонив ему на домашний телефон (символическая ссылка); если человека часто не бывает дома, то для достижения того же результата ему можно позвонить на мобильный (жесткая ссылка).

Файлы блочных и символьных устройств играют роль посредников между программами пользователя и аппаратным обеспечением. Эти файлы управляются драйверами устройств, на которые создают ссылки эти драйверы. Ядро операционной системы получает запрос на ввод или вывод по отношению к файлу блочного или символьного устройства и передает информацию соответствующему драйверу, который, в свою очередь, взаимодействует с аппаратным обеспечением.

Loop-устройства представляют особый интерес, так как позволяют выдавать фактически не существующий носитель данных за существующий. Классическим примером является монтирование образа диска как реального устройства. Обычно loop-устройства находятся в каталоге /dev под названиями loop0, loop1 и т. д. В некоторых источниках loop-устройства также называют кольцевыми и петлевыми.

Локальные сокеты являются средством взаимодействия процессов. В противоположность сетевым, локальные сокеты доступны только локальным, то есть запущенным на одной машине, процессам. Именованные каналы имеют то же назначение.