Автоматическое монтирование при запуске linux

Как включить автомонтирование для дисков в Linux Ubuntu

Подобно Windows, Linux автоматически распознает подключенные к компьютеру жесткие диски, однако, если вы зайдете в раздел «На этом компьютере», то обнаружите, что подключенные носители не смонтированы. На это указывает отсутствие значка монтирования напротив диска, исключение составляют лишь те случаи, когда накопитель подключается в работающей системе. Если накопитель был подключен до загрузки Linux, чтобы произвести монтирование, вам нужно будет в него зайти.

На этом компьютере

Естественно, на диске должна быть файловая система, иначе увидеть его можно будет либо из интерфейса утилиты «Диски», либо из терминала, выполнив в нём команду sudo fdisk -l . Монтирование дисков в Linux выполняется автоматически при обращении к нему пользователя, но существует немало сценариев, в которых автомонтирование является обязательным условием. Иначе говоря, нужно, чтобы при включении компьютера устройства уже были смонтированы в системе. В Linux Ubuntu это можно сделать, отредактировав файл fstab , но сначала давайте познакомимся с самим понятием монтирования.

Fdisk

Что такое монтирование в Linux

В отличие от Windows, в которой каждый диск имеет свою букву и свой корень, в Linux имеется только одна корневая файловая система, обозначаемая знаком / или иначе root. В момент загрузки операционной системы к ней в буквальном смысле подключаются все имеющиеся на диске виртуальные разделы со своими файловыми системами и древом каталогов. Такое подключение и называется монтированием. Но откуда система знает, что и куда нужно монтировать? Эту информацию она берет из специальных конфигурационных файлов юнитов либо из конфигурационного файла fstab , расположенного в папке /etc .

Но если содержащая системные файлы файловая система монтируется при загрузке, то прочие файловые системы подключаются в полуавтоматическом режиме, причем точкой монтирования может служить почти что любая папка. В итоге мы получаем как бы дерево, растущее из одной ветки основного древа, причем смонтированное устройство может иметь собственную файловую систему, в том числе NTFS , для которой в Linux поддерживается как чтение, так и запись файлов. В Ubuntu дисковые устройства по умолчанию монтируются в папку /media/username/ID , где username — имя пользователя, а ID — идентификатор, но сейчас нас интересует другое — как сделать, чтобы эти самые дисковые устройства монтировались при включении компьютера.

Читайте также:  Windows xp macintosh osx and linux are

Дерево файловой системы

Не путайте точки монтирования с путями

Внимательные пользователи Windows наверняка заметили, что на прилагаемом скриншоте файловая система NTFS примонтирована в папку /mnt , отсюда может возникнуть предположение, что полный путь к диску с NTFS будет выглядеть как /mnt/dev/sdb . Ничего подобного. В Linux все сущности являются файлами, даже физические устройства, которые хранятся в виде файлов в каталоге /dev . Так, обращаясь к физическому диску с установленной системой, мы обращаемся к файлу диска (блочному устройству) sda в папке /dev ; обращаясь ко второму накопителю, работаем уже с файлом sdb. Если же вы видите файл sdb1 или sdb2, то такой файл является уже файлом раздела диска sdb.

Файлы блочных устройств

Папка же монтирования служит точкой, через которую мы получаем доступ к содержимому устройства. Поэтому в строгом смысле слова в Linux нет понятия дисков и томов, по крайней мере в том смысле, в котором они употребляются в Windows. Вы где-нибудь видели в Windows файл диска С или D? Но что такое файл sda в Linux, может быть это контейнер, содержащий системные файлы? Нет, это просто символьное обозначение диска, некий аналог буквы, как С или D в Windows, только представленное отдельным файлом.

Примечание: начало имени диска sd говорит о том, что мы имеем дело с твердотельным диском, если бы диск был обычным, то вместо sda было бы hdaHard Drive. Имена файлов дисководов в Linux начинаются с sr (CD-RROM), а новых твердотельных накопителей NVM Express — с nvme.

Включаем автомонтирование, редактируем файл fstab

Прежде чем приступать к редактированию указанного файла, нужно определить точку монтирования раздела. Естественно, для этого раздел или диск сначала нужно будет открыть. Для определения точки монтирования, к примеру, разделов sdc, в терминале выполняем команду mount | grep /dev/sdc и записываем пути сразу после «on».

Mount

Вместо этого можно открыть том в приложении «Диски» и посмотреть, куда он примонтирован.

Диски

После этого отмонтируйте диски тут же в приложении «Диски» или кликом по иконке монтирования в разделе «Другие места». Впрочем, можно обойтись и без размонтирования.

Другие места

Теперь в терминале открываем командой sudo nano /etc/fstab конфигурационный файл fstab .

Sudo nano

В примере мы использовали команду sudo su —, позволяющую работать с правами суперпользователя без подтверждения выполнения операций. В открывшемся окне текстового редактора nano уже имеются данные монтирования загрузочного тома и свопа, а также комментарии. Сейчас они нас особо не интересуют, обратите лучше внимание на взятые в кавычки строки, нумерованный список которых приведен ниже.

Читайте также:  Copy dvd on linux

Fstab

В этот файл нам нужно добавить наши блочные устройства — разделы разного типа, которых для примера мы взяли три: дополнительно созданный на диске sdc своп (sdc1) , том Ext4 (sdc2) и том NTFS (sdc5) .

Каждый том представлен новой строкой, в которой один за другим следуют:

  1. Блочное устройство .
  2. Точка монтирования .
  3. Тип файловой системы .
  4. Параметры монтирования, которых может быть несколько .
  5. Резервное копирование .
  6. Проверка файловой системы на ошибки .

Начнем с раздела свопа. Вот так выглядит его строка:

/dev/sdc1 none swap sw 0 0

Своп

Первая часть строки — это блочное устройство — своп, а так как доступ к свопу не нужен, во второй части прописывается none. Далее указывается тип файловой системы — swap и параметр монтирования (для свопа это sw) . Создавать его резервные копии не нужно, в проверке тоже нет необходимости, поэтому в качестве значений dump и pass выставляем 0. Для отделения параметров можно использовать как пробел, так и табуляцию.

Второй раздел отформатирован в Ext4 , его строка выглядит так:

/dev/sdc2 /media/kompik/98a36276-c8d2-47ed-9d70-62e45bbdd71d auto noatine 0 2

Ext4

Вот здесь уже мы указываем точку монтирования, представленную в данном примере этим длинным путем. По идее, следующим пунктом нужно было указать ext4, но мы предпочли auto, поскольку Ubuntu умеет автоматически распознавать тип файловой системы. Что касается параметров options, их много, из которых мы выбрали noatime, тем более, что он лучше всего подходит для SSD -дисков. Резервная копия раздела нам не нужна, поэтому для значения dump выставляем 0, а вот проверить Ext4 на ошибки следует. Для параметра pass выставляем значение 2, означающее, что раздел будет проверен вторым после корневого, для которого всегда указывается значение 1, за исключением файловой системы BTRFS . Для BTRFS всегда выставляется 0.

Примечание: значение проверки 2 выставляется для всех прочих устройств, независимо от того, какими по счету они являются.

Наконец, строка раздела с файловой системой NTFS выглядит следующим образом:

/dev/sdc5 /media/kompik/23B7C6C119D80309 auto default 0 0

NTFS

Здесь почти всё то же самое, кроме опции default (по умолчанию) и 0 для параметра pass. Pass выполняет проверку файловой системы линуксовой утилитой fsck, использование которой в NTFS не имеет смысла. Поэтому проверку тоже отключаем. Итого получаем следующую картину:

Fstab разметка

Чтобы сохранить отредактированный файл, жмем Ctrl + X , подтверждаем действие вводом Y и нажатием Enter .

Save modified buffer

Etc fstab

Осталось только проверить, работает ли монтирование.

Возьмем к примеру, раздел sdc5. Для этого тут же в терминале выполняем команду mount /dev/sdc5 без указания точки монтирования.

Mount dev sdc5

Хотя мы и не указали точку монтирования, команда была выполнена без ошибки, взяв нужные данные из отредактированного файла fstab . Если бы точка монтирования для устройства /dev/sdc5 была не указана, мы бы получили такую ошибку.

Читайте также:  Linux history command date

Ошибка mount

Да, описанный здесь способ автомонтирования не единственный, для этих же целей можно использовать и файлы юнитов, но работа с fstab кажется нам более понятной и удобной.

Источник

Как настроить автоматическое монтирование дисков в Linux

Обновлено

Обновлено: 09.02.2022 Опубликовано: 16.08.2016

Монтирование по имени диска

  • /dev/sda1 — диск, который мы монтируем
  • /db — каталог, в который монтируем диск
  • xfs — файловая система
  • defaults — стандартные опции. Полный их перечень можно посмотреть на Википеции.
  • 0 0 — первый отключает создание резервных копий при помощи утилиты dump, второй отключает проверку диска.

Теперь создаем каталог, в который монтируем диск (в данном примере, /db):

И монтируем вручную диск, чтобы проверить правильность настроек fstab:

Должен появиться новый диск. Это можно проверить следующей командой

Монтирование по идентификатору

Данный способ не сильно отличается от монтирования по имени диска — вместо имени мы указываем идентификатор. Такой подход считается более надежным, так как при переподключении дисков к другим портам материнской платы может поменяться приоритет и, как следствие, имя устройства — это может привести к проблемам монтирования. UUID диска не меняется и поэтому, данная проблема при таком монтировании не страшна.

И так, смотрим идентификатор диска командой:

Мы получим ответ на подобие:

/dev/sdb: UUID=»3e53fc7e-a417-4fa5-b034-b227bea2474c» BLOCK_SIZE=»4096″ TYPE=»ext4″
/dev/sda1: UUID=»358f032e-3efb-42ab-b3ba-05ddc82fedfd» BLOCK_SIZE=»512″ TYPE=»xfs» PARTUUID=»0beca126-01″

* допустим, диск который мы хотим примонтировать — sda1. Его идентификатор 358f032e-3efb-42ab-b3ba-05ddc82fedfd.

Открываем на редактирование следующий файл:

и добавляем в него следующую строчку:

UUID=358f032e-3efb-42ab-b3ba-05ddc82fedfd /db xfs defaults 0 0

Монтирование можно проверить командой:

Пример монтирования сетевого диска

//192.168.0.1/network /mnt cifs user,rw,noauto,credentials=/root/.smbclient 0 0

* в данном примере выполняется монтировние общей папки network на сервере с IP-адресом 192.168.0.1 в каталог /mnt. В качестве сетевой файловой системы используется cifs (протокол SMB: сервер samba или общая папка Windows). Параметры для подключения — user: позволяет выполнить монтирование любому пользователю, rw: с правом на чтение и запись, noauto: не монтировать автоматически при старте системы, credentials: файл, в котором написаны логин и пароль для подключения к общей папке.

Теперь создадим файл аутентификации (credentials):

и приведем его к следующему виду:

* username: имя пользоватля, password: пароль. Само собой, в вашем случае указываются свои данные.

Теперь вводим следующую команду:

Должна примонтироваться сетевая папка //192.168.0.1/network. Это можно проверить следующей командой:

Источник

Оцените статью
Adblock
detector