Статьи :Операционные системы :Железо :
OS FAQ :
Кодинг :
Сейчас на сайте :0 пользователей, 16 гостей : |
Статьи » Операционные системы » UNIX » Основы операционной системы UNIX - 06. Управление файловой системой
Основными задачами администрирования файловых систем являются создание, монтирование и демонтирование физических файловых систем, а также проверка их целостности. В следующих подразделах мы рассмотрим соответствующие команды и обобщенно опишем выполняемые
Автор: Разместил: Amro Дата: 2006-04-04 10:05 Комментарии: ![]() ![]()
Средняя оценка участников (от 1 до 10): Пока не оценено
Проголосовавших: 0 Основы операционной системы UNIX - 06. Управление файловой системойОсновными задачами администрирования файловых систем являются создание, монтирование и демонтирование физических файловых систем, а также проверка их целостности. В следующих подразделах мы рассмотрим соответствующие команды и обобщенно опишем выполняемые ими действия. Создание физической файловой системыКоманда mkfs создает файловую систему путем записи на указанное устройство (необходимо указать специальное символьное устройство). Файловая система создается на основе указанных в командной строке типа файловой системы (ТипФС), специфических_опций и операндов. Команда имеет следующий синтаксис:
Специфические опции и операнды зависят от конкретного типа создаваемой файловой системы. Их можно посмотреть на соответствующей странице справочного руководства (например, man mkfs_ufs для файловой системы ufs). Основные опции и параметры команды mkfs представлены в табл. 14. Таблица 14. Основные опции и параметры команды mkfs
Проверка и восстановление целостности файловых системПрограмма fsck ищет и, автоматически или в интерактивном режиме, исправляет противоречия в файловых системах. Если файловая система находится в несогласованном состоянии, которое нельзя однозначно исправить, у пользователя спрашивают подтверждения перед попыткой выполнить каждое исправление. Следует иметь в виду, что некоторые исправления приводят к определенным потерям данных. Объем и серьезность потери данных можно определить по диагностическому сообщению. Стандартным действием при каждом исправлении является ожидание от пользователя утвердительного (yes) или отрицательного (no) ответа. При использовании fsck файловая система должна быть неактивной (размонтирована или смонтирована только для чтения). Если это невозможно, необходимо обеспечить, чтобы машина находилась в состоянии покоя (без работающих пользователей) и чтобы сразу после завершения команды она была перезагружена, если исправляется критическая файловая система, например, корневая. Команда fsck имеет следующий синтаксис:
Основные опции и параметры команды fsck представлены в табл. 15. Таблица 15. Основные опции команды fsck
Для работы команде fsck необходимо указывать специальное символьное устройство. Корневая файловая система обычно проверяется при запуске автоматически. Система при запуске может автоматически проверять и другие физические файловые системы, для которых в таблице стандартных файловых систем указана необходимость такой проверки. Эта проверка может вестись параллельно, путем запуска отдельного процесса fsck для каждой проверяемой файловой системы с одним и тем же порядковым номером проверки. Параллельно имеет смысл проверять файловые системы, расположенные на разных физических дисках. Монтирование и демонтирование физических файловых системФизические файловые системы, кроме корневой (/), считаются съемными (removable) в том смысле, что они могут быть как доступны для пользователей, так и не доступны. Команда mount уведомляет систему, что блочное устройство или удаленный ресурс доступны для пользователей в точке_монтирования, которая уже должна существовать; точка монтирования становится именем корня вновь смонтированного устройства или ресурса. Говорят, что эта команда монтирует или подключает физическую файловую систему или ресурс к общей логической файловой системе. Команда mount имеет следующий синтаксис:
Команда mount, при вызове с аргументами, проверяет все аргументы, за исключением устройства, и вызывает специфический модуль монтирования для указанного типа файловой системы. При вызове без аргументов mount выдает список всех смонтированных файловых систем из соответствующей таблицы. При вызове с неполным списком аргументов (например, только с указанием устройства или точки_монтирования, или когда указаны оба эти аргумента, но не задан тип файловой системы), mount будет просматривать таблицу стандартных файловых систем в поисках недостающих аргументов. Затем она вызывает специфический модуль монтирования для соответствующего типа файловой системы. Специфические опции монтирования зависят от типа физической файловой системы. Все физические файловые системы можно монтировать только для чтения (-o ro). Обратная процедура по отношению к монтированию называется демонтированием и выполняется командой umount со следующим синтаксисом:
Для большинства типов файловых систем нет специфического модуля демонтирования. Если такой модуль существует, он выполняется; иначе файловая система демонтируется стандартным модулем. Команды mount и umount воспринимают следующие основные опции:
Любой пользователь может вызывать команду mount для получения списка смонтированных файловых систем и ресурсов. Например: [kravchuk@arturo 13:05:48 /]$ mount -p /dev/dsk/c1t0d0s0 - / ufs - no rw,intr,largefiles,logging,onerror=panic,suid,dev=740040 /dev/dsk/c1t0d0s3 - /usr ufs - no rw,intr,largefiles,logging,onerror=panic,suid,dev=740043 /dev/dsk/c1t0d0p0:boot - /boot pcfs - no rw,nohidden,nofoldcase,dev=763050 /proc - /proc proc - no dev=2c00000 fd - /dev/fd fd - no rw,suid,dev=2cc0000 mnttab - /etc/mnttab mntfs - no dev=2dc0000 /dev/dsk/c1t0d0s1 - /var ufs - no rw,intr,largefiles,logging,onerror=panic,suid,dev=740041 swap - /var/run tmpfs - no dev=1 swap - /tmp tmpfs - no dev=2 /dev/dsk/c1t0d0s4 - /home ufs - no rw,intr,largefiles,logging,onerror=panic,suid,dev=740044 /dev/dsk/c2t0d0s1 - /fs ufs - no rw,intr,largefiles,logging,onerror=panic,suid,dev=740401 Только пользователь root может монтировать или демонтировать файловые системы. Таблица смонтированных файловых системКоманда mount по умолчанию добавляет запись в таблицу смонтированных файловых систем (файл /etc/mnttab в SVR4); umount удаляет запись из этой таблицы. Поля в таблице смонтированных устройств разделены пробелами и представляют блочное специальное устройство, точку монтирования, тип смонтированной файловой системы, опции монтирования и время, когда файловая система была смонтирована. Таблица стандартных файловых системТаблица стандартных файловых систем (в файле /etc/vfstab или /etc/fstab, в зависимости от разновидности UNIX) описывает стандартные параметры для физических файловых систем. Поля в таблице (их 7) разделены пробелами и символами табуляции, и представляют, соответственно:
Если в поле нет значения, используется дефис (-). Рассмотрим пример записей из таблицы стандартных файловых систем из ОС Solaris 8: #device device mount FS fsck mount mount #to mount to fsck point type pass at boot options /dev/dsk/c1t0d0s0 /dev/rdsk/c1t0d0s0 / ufs 1 no logging /dev/dsk/c1t0d0s3 /dev/rdsk/c1t0d0s3 /usr ufs 1 no logging /dev/dsk/c1t0d0s1 /dev/rdsk/c1t0d0s1 /var ufs 1 no - /dev/dsk/c1t0d0s4 /dev/rdsk/c1t0d0s4 /home ufs 2 yes logging ... Получение информации о файловых системахДля получения информации о смонтированных физических файловых системах используется команда df со следующим синтаксисом:
Опции и параметры определяют формат выдаваемой информации и файловые системы, о которых информирует команда. Чаще всего, команда df вызывается без опций или с опцией -k. Опция -k выдает информацию об объемах в килобайтах. Для каждой физической файловой системы выдается отдельная строка, включающая (при использовании опции -k) специальный файл или имя смонтированного ресурса, общий объем, использованный объем, доступный объем для использования обычными пользователями, процент свободного места в файловой системе и точку монтирования. Рассмотрим примеры выполнения команды df в ОС Solaris: [kravchuk@arturo 12:11:00 /]$ df -k Filesystem kbytes used avail capacity Mounted on /dev/dsk/c1t0d0s0 245983 20713 200672 10% / /dev/dsk/c1t0d0s3 3096090 1782106 1252063 59% /usr /dev/dsk/c1t0d0p0:boot 10797 1622 9175 16% /boot /proc 0 0 0 0% /proc fd 0 0 0 0% /dev/fd mnttab 0 0 0 0% /etc/mnttab /dev/dsk/c1t0d0s1 491983 204863 237922 47% /var swap 324832 16 324816 1% /var/run swap 337828 13012 324816 4% /tmp /dev/dsk/c1t0d0s4 2305873 1021225 1238531 46% /home /dev/dsk/c2t0d0s1 6192197 5633827 496449 92% /fs [kravchuk@arturo 12:45:58 /]$ df / (/dev/dsk/c1t0d0s0 ): 450540 blocks 120616 files /usr (/dev/dsk/c1t0d0s3 ): 2627968 blocks 338652 files /boot (/dev/dsk/c1t0d0p0:boot): 18350 blocks -1 files /proc (/proc ): 0 blocks 3615 files /dev/fd (fd ): 0 blocks 0 files /etc/mnttab (mnttab ): 0 blocks 0 files /var (/dev/dsk/c1t0d0s1 ): 574236 blocks 240784 files /var/run (swap ): 647568 blocks 43108 files /tmp (swap ): 647568 blocks 43108 files /home (/dev/dsk/c1t0d0s4 ): 2569298 blocks 379999 files /fs (/dev/dsk/c2t0d0s1 ): 1116738 blocks 688872 files |