Файлова система ОС Linux
Одним з найбільш важливих компонентів в ОС Linux є файлова система. В даному розділі будуть розглянуті поняття файлової системи і її призначення; ієрархія файлової системи ОС Linux; типи файлів ОС Linux. Решта питань, що стосуються адміністрування файлової системи, більш детально будуть розглянуті в модулі 3.
Призначення файлової системи
В ОС Linux, як і в будь-який інший ОС сімейства UNIX, будь-який об'єкт є файлом, що зберігається на файлову систему. Файлова система являє собою деякий пристрій (наприклад, жорсткий диск), відформатований для зберігання файлів. Файлові системи можуть перебувати на жорстких дисках, дискетах, CD-ROM або інших носіях, які дозволяють здійснювати довільний або послідовний доступ до даних.
Умовно файлову систему ОС Linux можна розділити на наступні компоненти.
Простір імен - методи іменування об'єктів файлової системи і їх ієрархічна організація.
Програмний інтерфейс програми (API) - набір системних викликів і бібліотек, призначених для управління об'єктами файлової системи.
Модель безпеки - містить в собі загальну схему захисту, поділу прав доступу до об'єктів і спільного використання об'єктів.
Технічна реалізація - програмний код, що зв'язує логічні моделі файлової системи з апаратним забезпеченням.
Основними завданнями файлової системи є:
упорядкування збережених даних;
простий і швидкий доступ до збережених даних;
забезпечення цілісності даних, що зберігаються.
Точний формат і способи зберігання файлів в ОС Linux не мають значення, так як система забезпечує загальний інтерфейс для всіх було розпізнати нею типів файлових систем. В ОС Linux файлової системою, яка встановлюється за умовчанням, є ext3fs. При доступі до будь-якої файлової системи з ОС Linux дані представляються у вигляді ієрархії каталогів з розташованими в них файлами разом з ідентифікаторами власників і груп, битами прав доступу та іншими атрибутами.
Ієрархія файлової системи
Ієрархія каталогів файлової системи ОС Linux відповідає загальноприйнятим у світі UNIX стандарту Filesystem Hierarchy System (FHS). Основна перевага даного стандарту полягає в тому, що певні типи файлів розташовані у відповідних каталогах.
Наприклад, більшість конфігураційних файлів розташовується в каталозі / etc, а файли журналів різних сервісів розташовуються в каталозі / var / log.
Опис каталогів файлової системи ОСLinux
Каталоги / bin, / usr / bin, / usr / locl / bin, / sbin, / usr / sbin і / usr / local / sbin містять встановлені в системі команди. При роботі в системі під звичайним користувачем, вам будуть доступні тільки команди каталогів / bin, / usr / bin і / usr / locl / bin, так як в стандарті FHS визначено, що в каталогах sbin повинні міститися тільки адміністративні команди.
Малюнок 1.2.Структура каталогів ОС Linux
Основним каталогом файлової системи ОС Linux є кореневий каталог /. Нижче кореневого каталогу розташовуються всі інші каталоги, створені на локальній дискової підсистеми або подмонтіровать з зовнішніх пристроїв. Процедура монтування файлової системи означає зв'язування каталогу існуючої файлової системи, званого точкою монтування, з кореневим каталогом нової файлової системи.
Монтування файлової системи до точки монтування здійснюється за допомогою команди mount. У наступному лістингу приведений приклад монтування DVD приводу, що містить дистрибутив ОС Red Hat Enterprise Linux 5.
] # Mount / dev / hdc / mnt /
mount: block device / dev / hdc is write-protected, mounting read-only
В результаті виконання команди mount система вивела інформацію про те, що блоковий пристрій (в даному випадку DVD привід) було змонтовано в режимі читання.
Список змонтованих файлових систем зберігається в файлі / etc / fstab. Завдяки цьому можливі автоматична перевірка цілісності файлової системи за допомогою команди fsck і монтування файлових систем на етапі початкового завантаження, а також виконання скорочених команд на зразок mount / var / spool. Інформація, що міститься в цьому файлі, відображає розташування файлових систем на диску. Детальніше файл / etc / fstab буде розглянуто в модулі 3.
Розмонтування файлових систем здійснюється командою umount. «Заблоковану» файлову систему демонтувати неможливо. У ній не повинно бути ні відкритих файлів, ні поточних каталогів виконуються процесів. Якщо размонтіруемая файлова система містить виконувані програми, вони не повинні бути запущені. У наступному лістингу наводиться приклад размонтирования раніше подмонтіровать файлової системи в каталозі / mnt.
] # Umount / mnt [root @ rhel5
] # Is -1 / mnt total 0
Для того, щоб дізнатися які пристрої подмонтіровать до системи в даний момент необхідно виконати команду mount без параметрів. У наступному лістингу наведено приклад визначення подмонтіровать пристроїв.
] # Mount / dev / sda2 on / type ext3 (rw)
proc on / ргос type proc (rw)
sunrpc on / var / lib / nfs / rpc_pipefs type rpc_pipefs (rw) / dev / hdc on / mnt type iso9660 (ro)
Як бачимо, у висновку команди mount послідовно відображається подмонтіровать пристрій, точка монтування, тип файлової системи і додаткові опції монтування.
При роботі з ОС Linux важливо розуміти, що будь-який об'єкт ОС є файлом. Це ключова особливість ОС Linux в порівнянні з операційними системами сімейства Windows.
Файли розрізняються як за своєю структурою, так і за своїм призначенням. В ОС Linux визначені сім типів файлів:
регулярні файли (звичайні файли);
файли блокових пристроїв;
файли символьних пристроїв.
Визначити тип файлу можна за допомогою команди Is -Id. Перший символ в рядку виведення позначає тип файлу. У наступному лістингу видається інформація про фото
brw-rw ------ 1 root disk 22, 0 Dec 22 13:30 / dev / hdc
До регулярних файлів відносяться бінарні файли, бібліотеки, текстові файли і файли різних додатків. ОС Linux не накладає ніяких обмежень на структуру даних файлів. До їх вмісту можливий як послідовний, так і прямий доступ.
Файли даного типу зберігають іменовані посилання на інші файли. Файл, що знаходиться в каталозі, в дійсності зберігається в батьківському каталозі, а не в самому файлі.
В ОС Linux є так звані спеціальні каталоги. Спеціальні каталоги, такі як «.» І «..», позначають, відповідно, поточний робочий каталог і його батьківський каталог.
В ОС Linux прийнято розрізняти символічні і жорсткі посилання, кожна з яких має особливе значення.
Символічні посилання можуть містити довільне ім'я, тобто в них дозволяється вказувати на файли, що зберігаються в інших файлових системах і навіть на неіснуючі файли. Жорсткі посилання не можуть вказувати на файл, що знаходиться в іншій файлової системи.
Сокет - це спеціальний тип файлу, який використовується процесами для взаємодії один з одним. Встановлені за допомогою сокетів з'єднання дозволяють процесам взаємодіяти, не наражаючись впливу інших процесів. В ОС Linux виділяється кілька видів сокетів, використання яких передбачає наявність мережевої інфраструктури. Локальні сокети доступні тільки на локальному комп'ютері, звернення до них здійснюється через спеціальні об'єкти файлової системи, а не через мережеві порти. Такі сокети прийнято називати сокетами домену UNIX (UNIX domain socket). Крім локальних сокетов існують мережеві сокети, що дозволяють процесам обмінюватися даними по мережі.
Незважаючи на те, що інші процеси розпізнають файли сокетов як елементи каталогу, тільки процеси, між якими встановлено відповідне з'єднання, можуть здійснювати читання і запис файлів сокета. З локальними сокетами працюють різні сервіси ОС Linux - CUPS, X Window і Syslog.
Файли даного типу подібні сокетів, оскільки теж використовуються для взаємодії між процесами, проте на відміну від сокетов в іменованих каналах дані передаються тільки в одному напрямку.
Файли блокових і символьних пристроїв
Файли блокових і символьних пристроїв дозволяють додаткам отримувати доступ до апаратних засобів і периферійного устаткування системи. На етапі конфігурації до ядру ОС Linux динамічно завантажуються необхідні модулі, призначені для управління апаратними засобами системи. За керування конкретним пристроєм відповідає спеціальний модуль, званий драйвером пристрою.
Драйвери пристроїв утворюють стандартний інтерфейс взаємодії, який сприймається користувачем як встановлено декілька файлів. Отримавши запит до файлу символьного або блочного пристрою, ядро передає даний запит відповідному драйверу. Файли блокових і символьних пристроїв самі по собі не є драйверами. Їх можна розглядати як шлюзи, через які драйвер приймає запити на виконання передбачених операцій.
Файли символьних пристроїв не використовують буферизацію в процесі операцій введення-виведення. Всі операції введення-виведення здійснюються негайно у міру надходження. До символьним пристроїв відносяться віртуальні термінали, модеми та інші пристрої, які не підтримують довільний доступ до даних.
Файли блокових пристроїв обробляються драйверами, які здійснюють введення-виведення даних цільними блоками. В даному випадку, на рівні ядра виконується буферизація даних вводу-виводу. До блоковим пристроїв відносяться такі пристрої як жорсткі диски, DVD приводи, модулі пам'яті, а так само всі інші пристрої, що підтримують довільний доступ до даних.
Файли блокових і символьних пристроїв характеризуються двома номерами: старшим (major) і молодшим (minor). Старший номер пристрою дозволяє ядру визначити, до якого драйверу відноситься файл, а молодший номер ідентифікує конкретну фізичну пристрій.
brw-г -------- 1 root disk 8, 0 Dec 22 13:30 sda
brw-r -------- 1 root disk 8, 2 Dec 22 13:30 sda2
brw-rw ------- 1 root disk 22, 0 Dec 22 13:30 hdc
crw-rw --------- 1 root root 4, 0 Dec 22 16:29 ttyO
crw - w --------- 1 root tty 4, 1 Dec 23 00:05 ttyl
crw -------------- 1 root root 5, 1 Dec 22 16:43 console
З даного лістингу видно, що блокового пристрою sda2 відповідає старший номер 8 (номер драйвера) і молодший номер 2 (номер пристрою). Номер драйвера 8 в ОС Linux відповідає драйверу SCSI дисків sd. Молодший номер пристрою 2 є порядковим номером даного пристрою, тобто, по суті, файл / dev / sda2 представляє другий розділ, створений на жорсткому диску SCSI sda.
Інформацію про старших і молодших номерах, використовуваних конкретним драйвером пристрою, можна знайти в четвертому розділі довідкового керівництва man для даного драйвера.
Основні команди управління файлами
В ОС Linux імена файлів можуть бути представлені як в нижньому, так і в верхньому регістрі, причому регістр символів має значення. Два однакових імені файлу, записаних в різних регістрах, будуть фізично різними файлами. В імені файлу допускається використовувати символи «.», «-», «_», «
», А також ряд інших символів, однак їх використання може мати спеціальне значення для ОС Linux.
До спеціальних належать символам «*», «?», «/», «\», «" »,«
». За допомогою символів «*» і «?» Можна вказувати шаблони "підстановки імен, які можуть мати досить складну структуру. Символ« / »неприпустимо використовувати в якості імені файлу, оскільки він призначений для поділу каталогів при вказівці шляху до файлу. Символ« \ »в основному використовується для перенесення введення тексту на наступний рядок. Використання даного символу в імені файлу, як правило, полягає в екранування прогалин між окремими словами імені файлу. у ОС Linux імена файли можуть містити пробіли, проте їх необхідно екр нировать за допомогою символу «\» або записувати ім'я файлу в лапки. Одиничний символ «
Довжина імені файлу в ОС Linux залежить від типу файлової системи, на якій розташовується даний файл. На файлової системи ext3, використовуваної в ОС Linux за замовчуванням, максимальна довжина імені файлу не може перевищувати 255 символів.
Наступні команди є базовими для проведення повсякденних операцій адміністрування ОС. До таких командам відносяться команди, що дозволяють переглядати, копіювати, переміщати, перейменовувати і видаляти файли.
Схожі роботи:
Файловиесістеми (4)
спеціальне поле записи, зване ключем. У файловихсістемахОС UNIX і MS-DOS файл має. велика кількість файлів. 3.5 ФайловиесістемиLinux Сучасна, потужна і безкоштовна операційна сістемаLinux надає широку територію.
Структура файловойсістемиLinux і UNIX
зустрічаються в файловойсістеме. корисно згадати, що Linux. подібно до інших Unix-систем. є багато користувачів ОС. а. зустрічаються в файловойсістеме. корисно згадати, що Linux. подібно до інших Unix-систем. є багато користувачів ОС. а.
Автоматизована інформаційна система засобами Ubuntu Linux
32-розрядних ОС. особливості системи "X Window", розглянуті принципи роботи в мережі, досліджена файловаясістемаОСLinux. Під. ОС. але які не використовуються для установки Linux. Як кореневої файловойсістеми застосовуються такі файловиесістеми.
Робота з файловоюсістемою NetWare
Лабораторна робота >> Інформатика, програмування
и командіровку роботи з каталогами и файлами. ФайловасістемаОС Novell Netware 4.x має ієрархічну. дуже корисна використовуват для обслуговування файловий ї системи. Ее часто зручніше. Normal. Notify if extended attributes (long names) are lost. Встановлюється.
Файловиесістеми. Файли. Каталоги
Контрольна робота >> Інформатика, програмування
-DOS) до 255 (Windows, LINUX) символів. ОС можуть розрізняти великі та малі символи. - системні файли, що забезпечують підтримку структури файловойсістеми. Використовуються в Windows і UNIX. Символьні - для.