Монтування в Linux-системах, що це таке і навіщо потрібно





Здрастуйте, шановні читачі сайту «Нотаток Сіс.Адміна«. Сьогодні ми продовжимо долучати вас до прекрасного внутрішнього світу Linux-систем і познайомимо (як Ви вже напевно зрозуміли з назви статті) з монтуванням в операційних системах «під управлінням» Linux.

Монтування в Linux-системах, що це таке і навіщо потрібно

І, само собою, постараємося піднести інформацію в полегшеному варіанті, тобто мало будемо згадувати командний рядок і більше уваги приділяти роботі в графічному режимі. Ну, а там вже як вийде. Ну що ж, нічого тягнути, поїхали.

Давайте на секундочку уявимо таку ситуацію. Ви зважилися на установку Linux другий операційною системою разом з Windows. Встановили, — запустили її, — а потім захотіли подивитися на розділи Windows очима линуксоидов :). І, — Опа !, — тут вас може чекати невелике розчарування, бо Ви цього диска (розділу) не бачите (розглядається простий випадок, коли у вас встановлений драйвер ntfs-config для роботи з ntfs-розділами, і система бачить Ваші розділи, але НЕ примонтировать їх з яких-небудь причин).

Далі, щоб почати його використовувати, нам буде потрібно підключити або, по-іншому, змонтувати цю невидимку. Для початку згадаємо одну з попередніх статей, — «Коренева файлова система Linux, основні каталоги кореневої файлової системи, основні команди для роботи з файлами і каталогами», де ми трохи завуальовано говорили, що файлова система (ФС) Linux дуже тісно пов’язана з монтуванням, а конкретніше — згадувалося, що ФС це одне велике дерево з кореневою директорією / (слеш). І монтування кореневої ФС є частиною процесу ініціалізації ядра. У процесі завантаження операційної системи відбувається послідовне (а не аби яке) приєднання всіх видимих ​​(та й невидимих ​​теж Монтування в Linux-системах, що це таке і навіщо потрібно ) Системою пристроїв.

У сучасних дистрибутивах Ви не побачите самого процесу завантаження ядра, бо все це відбувається за гарним фоном. Але іноді ця інформація буває дуже корисна, тому що крім даних про примонтировать пристроях виводяться різні корисні повідомлення ядра — про наявному обладнанні; про протоколи і технологіях, які підтримуються; а найголовніше і цінне — про помилки, якщо такі є. Щоб побачити всі повідомлення загружаемой системи, наберіть команду:

dmesg | less

Завантаження ядра — окрема розмова, зараз ми не будемо зупинятися на цьому, просто введіть вищевказану команду і уважно вивчіть все, що виведеться на екран монітора. Запевняю, ви знайдете там багато чого «смачненького».

Давайте розбиратися далі. Ось ядро ​​Linux Упізнано всі ваші пристрої, на яких знаходяться дані. І що ж потім? А потім воно просто зобов’язане надати нам з Вами якесь зовнішнє сполучна ланка для подальшої роботи з цими пристроями. І як парадоксально, але в ролі таких ланок виступатимуть файли-пристроїв, які створюються в каталозі / dev. Тільки так ми з вами зможемо отримати доступ до файлів і каталогів, які розташовуються на нашому, прихованому від погляду, диску або дисках — це у кого як. У багатьох може виникнути резонне питання — а навіщо так заморочуватися і робити це руками, якщо сучасні системи Linux справляються з цим автоматично? Повірте, іноді це потрібно, зустрічаються окремі випадки, коли система Linux не може автоматично під’єднати диск в силу якихось причин, пов’язаних зі збоєм диска, вірусами, якими заражені NTFS / FAT-розділи або через чогось ще протиприродного. І тоді справжні системні адміністратори (або дуже розумні користувачі;)) роблять це руками за допомогою команди:

mount

Що дає приблизно такий результат:

Монтування в Linux-системах, що це таке і навіщо потрібно

Давайте трохи внесемо ясності в те, що бачимо на малюнку. Ми спостерігаємо справжнісінький процес монтування на початковій стадії завантаження системи. Першою приєдналася псевдофайловая система (нагадаємо, що вона використовується для надання інформації про процеси), потім долучилася віртуальна файлова система / sysfs, яка експортує в простір користувача інформацію ядра Linux про пристрої та драйвери, присутніх в системі. Далі в каталог / dev монтується tmpfs. Це тимчасове файлове сховище, призначене для монтування ФС, з тією лише різницею, що розміщується вона в ОЗУ замість фізичного диска, тобто, по-іншому, це RAM-диск. Тут створюються файли тих пристроїв, які присутні в системі і які могли б створюватися «на льоту» — до таких можна віднести підключення по USB (або коли подгружается динамічний модуль з драйвером пристрою).

І так далі, і тому подібне, т.е все приєднується послідовно, по порядку. Щоб не лякати вас заумної термінологією, давайте спустимося з небес на землю і продовжимо нашу розмову про монтування. Останнім замикаючим ланкою виступають: диск (/ dev / sdа) і змінне USB-пристрій (флешка / dev / sdb). Я думаю, не треба підказувати Вам, що якщо на диску (або якому-небудь іншому змінному пристрої) не один розділ, а кілька, то причепляться всі наявні розділи і відмінність буде лише в імені файлу-пристроїв. Наприклад, якщо на диску 5 розділів, то файли-пристроїв будуть називатися / dev / sda1, / dev / sda2, / dev / sda3, / dev / sda4, / dev / sda5.

Висновок:

Скільки розділів на знімному диску, стільки й буде підключено файлів-пристроїв.

Цей же висновок команди можна отримати, якщо відкриємо вміст файлу / etc / mtab (в деяких системах Linux файл називається / etc / mnt / tab)

# Cat / etc / mtab

Давайте перейдемо до практики. Подивіться, які з пристроїв підключені в даний момент до комп’ютера, за допомогою команди:

# Sudo fdisk -l

У Вас висновок може виявитися зовсім іншою, ніж у наведеному нижче малюнку:

Монтування в Linux-системах, що це таке і навіщо потрібно

Просимо не забувати, що процес монтування / размонтирования виконується з привілеями root, про що говорить значок # і sudo

Далі. З малюнка видно, що в наявності є тільки один жорсткий диск, де є три точки монтування — це файл підкачки swap, каталоги root і home (при установці системи мені було зручніше розбити диск саме так).

З імовірністю на 90 відсотків упевнений, що на Вашому комп’ютері є не тільки один диск, а їх може бути декілька і вони можуть бути поділені на розділи. Щоб отримати доступ до цих розділів, нам потрібно подмонтіровать їх до кореневої файлової системи і тільки після цього ми можемо звертатися до вмісту цих розділів через точку монтування.

А тепер перейдемо безпосередньо до тренувань. Припустимо, що під рукою є тільки CD / DVD-ROM. Давайте ось на ньому і спробуємо.

1. Вставте диск в привід.

2. Він у вас автоматично визначиться системою, тобто прімонтіруется (см.картінку нижче):

Монтування в Linux-системах, що це таке і навіщо потрібно

3. Отмонтіруйте його командою:

sudo umount / dev / cdrom

Погляньте на картинку — CD / DVD-ROM размонтировать (про що свідчить відсутність трикутника поруч), але ..

Монтування в Linux-системах, що це таке і навіщо потрібно

..він видно в системі (т.е визначений системою, але не примонтовано), а тому, щоб переконатися в достовірності цього, наберіть команду:

mount | column -t

Як бачите, команда показала що CD / DVD-ROM відсутня.

Монтування в Linux-системах, що це таке і навіщо потрібно

А тепер найцікавіше, а саме, ми починаємо шаманити з приєднанням нашого, так би мовити, сидюка назад. Для цього знадобиться шаманський бубон і прямі руки Монтування в Linux-системах, що це таке і навіщо потрібно

Поїхали:

1. Щоб особливо не мучитися з правами суперкористувача, ми прімонтіруем його назад в ту ж директорію, звідки його і витягли, а саме в / run / media / имя_пользователя. Чому саме сюди? Все просто. Каталог / run був задуманий як тимчасове сховище з метою «безпеки», і ця папка (/ run / media / имя_пользователя) спеціально залишається порожньою після завантаження системи, так що нічого крім змонтованих дисків (або інших змінних пристроїв) Ви там не знайдете (при умови, звичайно, що самі що-небудь не накоїте). Але взагалі, перш ніж його туди прикріпити, ми повинні

2. Створити директорію — / CDROM

sudo mkdir / run / media / имя_пользователя / CDROM

3. примонтировать командою

sudo mount -t iso9660 / dev / sr0 / run / media / имя_пользователя / CDROM

-t iso9660 — параметр монтування, який зазвичай визначається автоматично, але в деяких особливих випадках цей параметр потрібно вказати, щоб система не говорила: «Ой .. Адже ось яка халепа, що Ви не визначили тип файлової системи». У нашому випадку тип файлової системи — iso9660 — цим типом визначаються всі CD-, DVD-диски;

/ Dev / sr0 — це наш сидюк, звідки взялася ця назва, легко визначити з команди, та хоча б mount | column -t (або використовуйте дискові утиліти, які є в будь linux-системі);

/ Run / media / имя_пользователя / CDROM — обов’язково вказується параметр, а то система не зрозуміє, куди Ви хочете все це приєднати.

Монтування в Linux-системах, що це таке і навіщо потрібно

У командному рядку всі вклалося в три рядки Монтування в Linux-системах, що це таке і навіщо потрібно

Аналогічним чином давайте прімонтіруем флешку:

1. Вставляємо флешку в USB

Монтування в Linux-системах, що це таке і навіщо потрібно

Наша флешка визначилася як файл-пристрій / dev / sdb1 з ім’ям 3C9B-F329 і з файловою системою FAT32.

2. Далі від’єднуємо її командою:

sudo umount / dev / sdb1

І бачимо приблизно наступне:

Монтування в Linux-системах, що це таке і навіщо потрібно

3. Тепер створюємо папку в каталозі / run / media / имя_пользователя /

sudo mkdir / run / media / имя_пользователя / 3C9B-F329

4. Монтуємо

sudo mount / dev / sdb1 / run / media / имя_пользователя / 3C9B-F329

Отримуємо на виході приблизно наступне:

Монтування в Linux-системах, що це таке і навіщо потрібно

Так от. Протягом всієї статті Вас підводили до найважливішим висновку: монтуванням розділів ми «м’яко» пояснюємо системі, як можна дістатися до даних і зробити їх доступними для використання в наших цілях. Головне тут, щоб директорія або піддиректорія існувала, інакше, якщо її не буде, то весь наш процес завершиться помилкою монтування.

Звертаю увагу:

У процесі монтування фактично монтується ФС якого-небудь пристрою (або іншого ресурсу). Прийнято говорити про «монтуванні пристрої», хоча насправді мається на увазі, що мова йде саме про «монтуванні файлової системи пристрою».

Втім, вистачить терміналу, переходимо до більш простим способам з використанням графічних інструментів.

Існує безліч утиліт і програм для роботи з дисками, розділами (найпростіша утиліта, — це автоматичне монтування, яке виконує сама система), але є одне «але» .. У кожній Linux-системі ці утиліти свої. Тому всі ми їх просто фізично не охопимо. Наприклад, в Ubuntu є вбудована утиліта для роботи з дисками «Інструмент конфігурації записи на NTFS«, а також можна встановити утиліту «Mount Manager«. У «Fedora» ж — «palimpsest«, що входить до складу «gnome-disk-utility«.

Монтування в Linux-системах, що це таке і навіщо потрібно

До всього іншого .. Є загальна програма для роботи з розділами і дисками в будь Linux-системі — це GParted. Ця програма повністю безкоштовна і вміє не тільки монтувати, але ще і дуже, дуже багато чого, але ми не будемо розглядати все на що вона здатна, а розберемо тільки дві операції. Давайте тільки коротко, у вигляді навчально інструкції:

Як размонтировать розділ за допомогою Gparted:

Запустити саму програму (з правами root)

Вибрати змонтований розділ (справа вгорі є вибір розділів — виділений червоним прямокутником).

Далі вибрати в меню «Розділ — Розмонтувати». Ну або скористатися клацанням правою кнопкою миші по виділеному розділу та пунктом «Розмонтувати». Після цього програма від’єднає розділ (в даному випадку флешку)

Якщо операція від’єднання не виконав, то швидше за все розділ в даний момент використовується іншими процесами і тому не може бути размонтировать. У цьому випадку необхідно скористатися Live CD Gparted:

Монтування в Linux-системах, що це таке і навіщо потрібно

Тепер до другої операції.

Як змонтувати розділ в GParted:

Запустити програму (з правами root)

Вибрати ще не змонтований розділ (головне, щоб він у вас був визначений системою).

Далі перейти в «Розділ — Монтувати» і вибрати точку монтування зі списку. Або натиснути правою кнопкою миші по виділеному розділу — «Монтувати», після чого Gparted змонтує розділ до зазначеної точці монтування.

Якщо пункт меню «Розділ — Монтувати« не видний (тобто не активний), значить GParted не знає, до якої точки монтувати розділ. У цьому випадку необхідно скористатися Live CD Gparted.

Але найбільше мені, в общем-то, подобатися утиліта в openSUSE (німецький дистрибутив) та / або її чудовий «Центр управління» («Параметри системи«) YaST, за допомогою якого можна без особливих проблем змонтувати / демонтувати все, що тільки побажаєте .

Процес такий:

Запустіть YaST (можна скористатися командним рядком з правами root — / usr / bin / xdg-su -c / sbin / yast2 або через графічний інтерфейс — «Системні параметри — YaST«).

Зайдіть в «Система — Розділи«

Швидше за все, Вас попередять про те, що ця операція не така вже безневинна, і Ви розумієте ступінь шкоди, яку можна нанести системі, якщо щось зробите не зовсім коректно. Але Ви все одно погоджуйтеся і натискайте «Да«.

Монтування в Linux-системах, що це таке і навіщо потрібно

Тепер відкриється вікно редактора розділу дисків, де виберіть розділ (ліворуч) — «Жорсткі диски», а праворуч буде виведений список всіх дисків, які підключені в даний момент до Вашого комп’ютера. Шукайте той, який Ви хочете приєднати (в нашому випадку ми виберемо саму останню сходинку — це флешка).

Нагадування — не забудьте від’єднати той диск, з яким будете експериментувати.

Зробіть це штатними засобами, а саме просто натисніть на значок трикутника в провіднику:

Монтування в Linux-системах, що це таке і навіщо потрібно

Зверніть увагу, що один диск займає, як мінімум, дві строчки. Перша — це фізична його найменування та маркування, а друга — логічний диск (розділи) з файловою системою.

Подивіться на виділену рядок — там зазначений тип файлової системи. У нас це FAT32.

Виділіть свій диск і натисніть на кнопку «Редагувати», яка розташовується внизу вікна.

Відкриється вікно налаштувань. Перевірте, щоб стояла галка біля пункту «Не форматувати».

Монтування в Linux-системах, що це таке і навіщо потрібно

Зазвичай всі диски в Linux монтують в папку / run / media / имя_пользователя, про що ми і згадували вище.

Тому в рядку «Точка монтування« впишіть такий шлях для монтування Вашого диска: / run / media / имя_пользователя / ім’я вашого диска (у нашому випадку це буде виглядати так: / run / media / имя_пользователя / 3C9B-F329).

Як тільки Ви впишіть цю строчку, то відразу стане доступна кнопка «Опції Fstab«. Натисніть на неї, а у вікні, відзначте точкою пункт «ID пристрою« і поставте галочку на «Монтуємий користувачем«. Це потрібно для того, щоб Ви могли користуватися диском в режимі звичайного користувача, а не тільки адміністратора.

Монтування в Linux-системах, що це таке і навіщо потрібно

Тепер подивіться на пункт «Значення довільних опцій«. Там знайдіть текст umask = 0002, і замініть 0002 на 0000 (це права доступу до розділу) і погодьтеся з усіма змінами, натиснувши два рази ОК і Вас поверне назад до списку дисків. І, останнє, власне, — в цьому вікні натисніть ОК. Програма знову видасть вам попередження, що всі зміни зараз запишуться у файл. Якщо ви впевнені в тому що робите, підтвердіть зміни, натиснувши кнопку «Застосувати«.

У результаті, якщо все було зроблено коректно, то зайшовши в папку / run / media / имя_пользователя (до речі подивитися можна і через файловий менеджер, а саме, можете увійти в термінал і набрати команду mс) Ви побачите:

Монтування в Linux-системах, що це таке і навіщо потрібно

Ура, а ось і наша примонтировать флешка. Можна зрадіти. Бідна флешка .. Що вона тільки не пережила на момент написання цієї статті.

Післямова.

Гаразд. На цьому закінчуємо нашу розповідь. Залишайтеся з проектом, тут Вам раді.

Традиційно кажу, що всі питання, а так само доповнення, думки, відгуки, критику, подяки та інше, Ви можете залишати в коментарях до цієї самої статті.

P.S. За існування даної статті спасибі члену команди Pantera