Алексей Стахнов

Linux


Скачать книгу

для файлов. Если установлены права доступа SUID и файл исполняемый, то файл при запуске на выполнение получает не права пользователя, запустившего его, а права владельца файла. Такие фокусы используются для того, чтобы пользователь мог работать с некоторыми системными файлами, владельцем которых является некий привилегированный пользователь. К примеру, для того, чтобы пользователь мог самостоятельно изменить свой пароль при помощи утилиты passwd, у этой утилиты (владельцем которой является пользователь root) должен быть установлен бит SUID, поскольку она работает с файлами (/etc/passwd), модификацию которых имеет право производить только пользователь root.

      • SGID для файлов. Если установлены права доступа SGID, то это аналогично установке бита SUID, только вместо владельца файла используется группа владельца.

      SGID для каталогов. В случае установки SGID для каталога файлы, содержащиеся в этом каталоге, будут иметь установки группы такие же, как у каталога.

      Узнать о том, какие дополнительные права доступа к файлам и каталогам установлены, можно, используя команду is. Ниже приведен результат выполнения Is -l

      -r-s–х–х 1 root root 13536 Июл 12 2000 passwd

      Как видно из прав доступа, у этого файла установлен SUID-бит (буква s в списке прав доступа).

      Файловые системы

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

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

      Основными понятиями в файловой структуре Linux (и в большинстве операционных систем UNIX-семейства) являются:

      • суперблок;

      • индексный дескриптор (inode);

      • блок данных;

      • блок каталога;

      • косвенный блок;

      • файл.

      Подробную информацию см. в разд. «Физическая структура Ext2».

      Типы файловых систем

      Linux поддерживает большое количество типов файловых систем. Наиболее важные из них приведены ниже.

      • Minix – старейшая файловая система, ограниченная в своих возможностях (у файлов отсутствуют некоторые временные параметры, длина имени файла ограничена 30-ю символами) и доступных объемах (максимум 64 Мбайт на одну файловую систему).

      • Xia – модифицированная версия системы minix, в которой увеличена максимальная длина имени файла и размер файловой системы.

      • Ext – предыдущая версия системы Ext2. В настоящее время практически не используется.

      • Ext2 – наиболее богатая функциональными возможностями файловая система Linux. На данный момент является самой популярной системой. Разработана с учетом совместимости с последующими версиями.

      • Ext3 – модернизация файловой системы Ext2. Помимо некоторых функциональных расширений является журналируемой. Пока широкого распространения не получила. Конкурирующая журналируемая