Програма automount найперший автомонтіровщік - розбираємося в роботі unix-систем

Програма automount підтримує три види конфігураційних файлів (званих таблицями призначень): таблиці прямих призначень, таблиці непрямих призначень і головні таблиці. Таблиці перших двох типів містять інформацію про файлових системах, що підлягають автоматичному монтування. Головна таблиця - це список таблиць прямих і непрямих призначень, на які програма automount повинна звертати увагу. У певний момент часу активною може бути лише одна головна таблиця. Стандартна її версія зберігається в файлі / etc / auto_master.

При запуску програма automount читає конфігураційні файли, створює необхідні точки монтування в файлової системі autofs. після чого завершує свою роботу. Посилання на змонтовані файлові системи в дійсності обробляються (через драйвер autofs) окремим демоном automountd. Він виконує свою роботу, не вимагаючи додаткової настройки.

Після редагування головної таблиці або однієї з таблиць прямих призначень, на яку вона посилається, потрібно повторно запустити програму automount. При наявності прапора -v ця програма повідомить про зміни, що вносяться в конфігурацію.

Отримавши прапор -t. програма automount повідомляє, як довго (в секундах) файлова система може залишатися невикористовуваної, перш ніж буде демонтована. Стандартна установка - 5 хвилин. Бажано видаляти невикористовувані точки монтування, оскільки в разі краху сервера програми, які звертаються до NFS, зависнуть. Через це не рекомендується встановлювати період тайм-ауту занадто великим.

Таблиці непрямих призначень

Таблиці непрямих призначень використовуються для автоматичного монтування декількох файлових систем в загальному каталозі. Шляхове ім'я каталогу задається в головній таблиці. Наприклад, таблиця непрямих призначень для файлових систем, що монтуються в каталозі / chimchim. матиме такий вигляд:

devel -soft, proto = udp chimchim: / chimchim / devel

info -ro chimchim: / chimchim / info

У першій колонці дається ім'я підкаталогу, в якому буде інстальована файлова система. У наступних колонках перераховані опції монтування і вихідне колійне ім'я файлової системи. У цьому прикладі (він, ймовірно, зберігається в файлі /etc/auto.chim) програмі automount повідомляється про те, що вона може монтувати каталоги / chimchim / users, / chimchim / devel та / chimchim / info з комп'ютера chimchim. причому каталог info дозволяється монтувати тільки для читання, а каталог devel - тільки по протоколу UDP (приклад узятий з Solaris, де за замовчуванням обраний протокол TCP).

У розглянутій конфігурації підкаталоги на комп'ютері chimchim і на локальному комп'ютері будуть ідентичними, але це зовсім не обов'язково.

Таблиці прямих призначень

У таблиці прямих призначень перераховуються файлові системи, у яких немає загального префікса, наприклад / usr / src і / cs / tools. Таблиця (скажімо, /etc/auto.direct), яка описує ці файлові системи для програми automount. може виглядати так:

/ Cs / tools -ro anchor: / cs / tools

Не маючи загального батьківського каталогу, обидві файлові системи повинні підключатися через окремі точки монтування до файлової системи autofs. Накладні витрати при цьому зростають, але з'являється додаткова перевага: точка монтування і реальна структура каталогу завжди доступні для таких команд, як, наприклад, ls. Використання команди ls в каталозі з побічно змонтованими файловими системами часто важко для користувачів, тому що програма automount не відображує підкаталоги до звернення до їх вмісту (команда ls не заглядає всередину каталогів, тому і не викликає їх монтування).

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

Головна таблиця, яка використовує вищезгадані таблиці прямих і непрямих призначень, має такий вигляд:

/ Chimchim /etc/auto.chim -proto = tcp

Перша колонка - ім'я локального каталогу (для таблиці непрямих призначень) або спеціальна лексема / - (для таблиці прямих призначень). Друга колонка - ім'я файлу, в якому зберігається відповідна таблиця. При необхідності може бути створено по кілька таблиць кожного типу. Параметри монтування, які вказуються в кінці рядка, задаються для всіх точок монтування в даній таблиці.

У більшості систем параметри, які вказуються в головній таблиці, не змішуються з параметрами, що задаються у відповідній таблиці прямих або непрямих призначень. Якщо запис підпорядкованої таблиці має свій список опцій, стандартні параметри повністю ігноруються. У Red Hat все відбувається по-іншому. Обидва набори об'єднуються в один, а в разі перетину перевага віддається локальному параметру.

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

Дана методика дуже зручна і дозволяє компенсувати численні недоліки досить дивною системи конфігурації програми automount. По суті, вона дає можливість створити єдиний для всієї організації конфігураційний файл довільного формату. Можна написати нескладний сценарій на Perl, декодуючий глобальні конфігураційні параметри на кожному комп'ютері.

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

Програма automount і дублюються файлові системи

У деяких випадках доступні тільки для читання файлові системи (наприклад, / usr / man) можуть бути ідентичними на декількох серверах.

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

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

У Solaris програма automount в разі виникнення проблеми може вільно перемикатися від одного сервера дублюється файлової системи до іншого. Це має на увазі монтування файлової системи тільки для читання, але, за чутками, файлові системи з можливістю запису обробляються правильніше, ніж про це говорить документація. Правда, при перемиканні серверів все одно відбувається зависання програм, які посилаються на файли, відкриті для запису. Це ще одна з причин, по якій дублюються файлові системи, доступні в режимі читання-запису, практично не приносять користі.

Як вже було сказано, програма automount вибирає сервери на підставі власних критеріїв ефективності та доступності, але можна призначити їм явні пріоритети. Чим вище номер, тим нижче пріоритет. За замовчуванням встановлено пріоритет 0, що означає легкодоступний сервер.

Файл auto.direct. який визначає каталоги / usr / man і / cs / tools як дублюються файлові системи, буде виглядати так:

/ Usr / man -ro chimchim: / usr / share / man band (l): / usr / man

/ Cs / tools -ro anchor, band: / cs / tools

Зверніть увагу на те, що імена серверів можна вказувати разом, якщо шлях до шуканої файлової системи в них однаковий. Вираз (1) після імені сервера band в першому рядку задає пріоритет цього сервера по відношенню до файлової системи / usr / man.

Автоматичне виконання програми automount

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

Є кілька способів відповідним чином настроїти програму automount. Найпростіший з них - скористатися опцією монтування -hosts. Якщо вказати цю опцію в якості імені таблиці у файлі головною таблиці призначень, програма automount закріпить експортовані файлові системи віддаленого комп'ютера за зазначеним каталогом:

/ Net -hosts -nosuid, soft

Наприклад, якщо машина chimchim експортує каталог / usr / share / mar. він буде доступний через посилання / net / chimchim / ur / share / man.

Аналогічний ефект досягається, якщо вказати метасимволу * і в таблиці непрямих призначень. Крім того, існує ряд макроконстант, замінюють ім'я поточного вузла, тип архітектури і т.д. Подробиці можна дізнатися на man-сторінці automount (lM).

Особливості Red Hat Linux

В системі Red Hat є власна незалежна реалізація програми automount. яка дещо відрізняється від версії компанії Sun. В основному зміни зачіпають імена команд і файлів.

У Red Hat програма automount - це демон, дійсно монтується і демонтується віддалені файлові системи. Він займає ту ж нішу, що і демон automountd в інших системах, і зазвичай не вимагає запуску вручну.

Програма, яка виконується для закріплення змін в головній таблиці призначень, в Red Hat називається /etc/rc.d/init.d/autofs (в інших системах це сама automount). Вона приймає аргументи stop, start, reload і status; потрібний нам аргумент - природно, reload.

Стандартна головна таблиця призначень зберігається в файлі /etc/auto.master. Її формат, а також формат таблиці непрямих призначень, були описані вище. У документації цих таблиць присвячені man-сторінки auto.master (5) і autofs (5). У другому випадку будьте уважні: на man-сторінці autofs (8) описаний формат команди autofs.

Таблиці прямих призначень в Red Hat не підтримуються.

Представлений GTK + 3.92.1, експериментальний випуск GTK + 4

Сформовано черговий тестовий випуск майбутнього стабільного релізу GTK + 4. Гілка GTK + 4 розвивається в рамках нового процесу розробки, який намагається надати розробникам додатків.

Linux Foundation представив ліцензійну угоду на розповсюдження даних

Організація Linux Foundation анонсувала ліцензійну угоду Community Data License Agreement (CDLA), покликане заповнити нішу в ліцензуванні загальнодоступних наборів даних. Угоду.

Доступно десктоп-окруженіe LXQt 0.12

Після року розробки сформований реліз призначеного для користувача оточення LXQt 0.12 (Qt Lightweight Desktop Environment), що розвивається об'єднаною командою розробників проектів LXDE і Razor-qt.