Файл монтирования дисков linux

Файл монтирования дисков linux

Помалее о использовании команды mount можно прочитать статью «Команда mount в Linux или все о монтировании разделов, атриторен, образов ISO и SMB ресурсов». После перезагрузки ОС все эти действия необходимо производить заново. Чтобы монтирование выходило в автоматическом режиме, при каждой загрузке операционной системы, нужно отредактировать конфигурационный файл fstab. В данной статье подробно рассмотрен вопрос автоматического монтирования разделов жесткого диска и иных накопителей при старте операционной системы Линукс. В самом начале, при описании установки, я повествовал про механизм монтирования дисков в Linux и объяснял его основы.

Если вы забыли, что подобное монтирование и для чего оно нужно, прочитайте снова статью про организацию файловой системы в Ubuntu. Ниже я отведу заполнить некоторые оставшиеся белые пятна. Если вы с нетерпением ждали шаманств с терминалом и поправки конфигурационных файлов, поздравляю, вы дождались! Вообще мне кажется, что скоро терминалом и конфигами кстати будет пугать маленьких детей — столь отталкивающее мнение об этих инструментах находится у некоторых в принципе далёких от понимания упомянутых терминов людей. На самом деле как обычно всё, конечно, очень просто, элегантно и логично. И у вас сейчас будет возможность в этом удостовериться.

Что такое /etc/fstab и зачем он нужен?

fstab — это текстовый файл, содержащий список механизмов хранения информации и параметры монтирования. Различные накопители, которые необходимо автоматически примкнуть во время загрузки операционной системы, по порядку перечисляются в файле fstab. Также в данном файле содержатся информация об устройствах, которые не присоединяются автоматически, но при выполнении монтирования приборы стандартной командой mount происходит присоединение устройства с заданными параметрами Это необходимо, к образцу, для CD/DVD-приводов, которые не примонтированы постоянно, а монтируются при наличии диска в приводе. fstab состоит из строчек. Каждая строка это устройство.

Символ решетки (#) в начале строки, как и во абсолютно всех Unix системах, обозначает комментарий и поэтому значимой строкой не считается. А теперь фактически к практике. Осталось только рассказать, как же устроен файл /etc/fstab и что в него надо строчить. Начну с того, что этот файл является системным, поэтому для его редактирования нужны преимущества root. Если вы забыли, как редактировать конфигурационные файлы системы, прочитайте снова заметку про права доступа. Каждому разделу винчестера отводится одна строка. Строчки, начинающиеся с знака решётки (#), являются комментариями и системой (множество элементов, находящихся в отношениях и связях друг с другом, которое образует определённую целостность, единство) игнорируются. Формат каждой записи весьма простой:

раздел_винчестера точка_монтирования файловая_система опции_монтирования два_добавочных_числа

Помните, в статье про разметку диска я рассказывал, что разделы винчестера в Linux кликаются как sdaX (или sdbX, sdcX и т.д. если у вас несколько винчестеров). Так вот, в fstab используется несколько иной механизм идентификации винчестеров6). Для этой цели используются так называемые uuid, довольно длинные строчки из произвольных букв латинского алфавита и цифр7). Для того, дабы узнать uuid для нужного вам раздела выполните в терминале команду8)

ls -l /dev/disk/by-uuid

Узнаем идентификаторы подключенных разделов

Получаем что-то примерно такое:

/dev/sda1: UUID="b2098d42-3e3d-470c-8ddb-76f74f0f6d44" TYPE="ext4"
/dev/sda3: LABEL="ntfs" UUID="6798491F3EB8CFC8" TYPE="ntfs"
/dev/sda5: LABEL="FAT32" UUID="1D7D-F985" TYPE="vfat"
/dev/sda6: LABEL="ext3" UUID="a4f6af01-786f-4bdf-9405-d340fded6580" TYPE="ext3"
/dev/sda7: LABEL="ext2" UUID="4b2c5e07-97db-4a65-9147-e6b0dceb1353" TYPE="ext2"
/dev/sda8: LABEL="ext4" UUID="b74143c3-6679-4a3a-9a20-b608ba085170" TYPE="ext4"

Автоматическое монтирование fstab

Каждая строчка в fstab описывает раздел, который нужно примонтировать к некоторой точке монтирования. Мы можем указать файловую систему, опции монтирования, а также необходимо ли проверять файловую систему на ошибки. Сначала давайте рассмотрим синтаксис одной строки fstab:

устройство точка_монтирования файловая_система опции резерв <0,1>испытание

Итак, первое поле записи в fstab для разделов винчестера выглядит так:

Обнаруживаем консоль и пишем:

sudo fdisk -l //смотрим что у нас в системе есть

или сразу можно составить:

Читайте также:  Как настроить качество изображения на телевизоре lg

Открываем файл /etc/fstab и добавляем строчки необходимых для подключения атриторен:

sudo gedit /etc/fstab

Разделение команд Tab (табуляцией), не пробелом! А ещё лучше скопируйте уже нацарапанные строки и замените в них нужную вам информацию.

Автоматическое монтирование в systemd

Система инициализации Systemd разбирает /etc/fstab при загрузке и автоматически генерирует все нужные файлы юнитов на основе описанных там крапинок монтирования, а уже потом их загружает. Вы можете посмотреть все созданные в systemd точки монтирования подобной командой:

systemctl -l —type mount

Но нам ничего не мешает самим создать такой файл крапинки монтирования. Например, для той же домашней папки автоматическое монтирование fstab будет выглядеть вот так, имя непременно должно состоять из точки монтирования (Монтирование файловой системы Каскадно-объединённое монтирование Монтировка Установка), в которой слеши заменены на дефис:

sudo vi /etc/systemd/system/home.mount

Как уже упоминалось реке, в файловой структуре Linux можно монти-ровать разделы, используемые операционной системой MS-DOS. Случится это так же, как при монтировании любой файловой системы Linux. Нужно только указать тип раздела — msdos. Возможно, будет удобнее, если система будет автоматически монтировать разделы MS-DOS при пуске системы Linux.

Для этого нужно ввести в файл /etc/fstab запись для любого монтируемого раздела MS-DOS. Укажите имя устройства для раздела и имя каталога, в котором он должен устанавливаться. Логичный выбор — каталог /mnt/dos (убедитесь, что каталог dos в /mnt уже создан). В качестве типа файловой системы заведите msdos. В следующем примере показана стандартная строка файла /etc/fstab для раздела MS-DOS. Адресуете внимание на то, что эта запись является последней в приведенном выше файле /etc/fstab.

/dev/hda1 /mnt/dos msdos defaults 0 0

Разоблачил, для которого в файле /etc/fstab есть запись, можно монтировать только в каталоге, подтвержденном в этой записи. Имя файла (именованная область данных на носителе информации) устройства вводить не нужно. Программа mount найдет запись, подходящую этому разделу, в файле fstab (по имени каталога) и таким образом определит имя приборы. Например, чтобы демонтировать DOS-раздел /dev/hda1 в предыдущем примере, команде mount нужно показать только каталог, в котором он смонтирован. В данном случае это /mnt/dos.

Если файл /etc/fstab порван — скажем, вы случайно удалили или изменили строку — система загрузится в режиме сопровождения и даст вам доступ к разделам только для чтения. Чтобы получить доступ на чтение и запись и отремонтировать файл fstab, необходимо перемонтировать основной раздел. Эту операцию выполняет следующая бригада:

# mount -n -0 remount,ro /

Приведенный здесь в качестве примера файл /etc/fstab можно утилизировать как руководство по формированию записей. Особенно важны элементы, соответствующие разделам /ргос и swap.

Видео по теме: Автоматическое монтирование дисков в Linux

Содержание

Немного теории

Способ 1: монтирование через универсально уникальный идентификатор (UUID)

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

Узнаем UUID разделов, для этого

Предположим, мы хотим подключить раздел «Shared» (NTFS-раздел, находящийся на основном диске компьютера) и «TRENDNET8GB» (флэшка, отформатированная в FAT32).

Способ 2: монтирование через имена устройств

Считается устаревшим и строго не рекомендуется к постоянному использованию.

Единственным заметным плюсом является небольшая длина имён устройств, что удобно при прямой работе с консолью. Например, во время реанимации умершей системы.

Разделы, оканчивающиеся цифрой — файловые системы. Разделы без цифры на конце — реальные физические устройства. В данном примере участвуют два физических диска (/dev/sda и /dev/sdb) и два рейд-массива (по сути — две файловые системы, не привязанные напрямую к какому-то одному физическому носителю).

Пример вывода команды fdisk (вывод parted отличается очень незначительно):

Попробуем достучаться до массива md0.

Читайте также:  Телефон плохо подключается к wifi

Я не стал загружать основной текст статьи расшифровкой опций монтирования, но несколько слов пояснения сказать необходимо.

Теперь диски стали подключаться автоматически, но так как это делается от имени root, у нас пропала возможность на подключенных дисках давать права на общий доступ, чтобы восстановить эту возможность добавим настройку в Samba:

В статье приведено описание и примеры для операционной системы GNU/Linux.

Содержание

Использование [ править | править код ]

Устройство /dev/cdrom монтируется в каталог /mnt/cdrom, если он существует. Начиная от момента монтирования и пока пользователь не отмонтирует файловую систему (или туда не будет смонтировано что-то иное) в каталоге /mnt/cdrom будет содержаться дерево каталогов устройства /dev/cdrom; те файлы, и подкаталоги, которые раньше находились в /mnt/cdrom, сохранятся, но будут недоступны до размонтирования устройства /dev/cdrom.

Размонтирование командой umount [ править | править код ]

Для размонтирования достаточно указать точку монтирования или имя устройства.

Монтирование USB-дисков [ править | править код ]

Для распространённого случая, когда USB-диск имеет файловую систему FAT32, команда монтирования выглядит так:

mount -t vfat -o codepage=866,iocharset=utf8 /dev/sda1 /mnt

Параметр codepage необходим, чтобы имена созданных файлов корректно отображались в старых ОС (например, DOS). Если дистрибутив использует в качестве кодировки системной локали не UTF-8, то её необходимо указать в параметре iocharset так:

mount -t vfat -o codepage=866,iocharset=koi8-r /dev/sda1 /mnt

Реально используемую кодировку можно определить, выполнив команду locale .

Полезными опциями при монтировании Flash-дисков являются sync и flush . Первая приводит к постоянному сбросу на диск буфера записи, так что данные не теряются при отсоединении flash-диска без размонтирования. Побочный эффект такого монтирования — значительное уменьшение в скорости записи. Вторая опция (доступна только в новых ядрах Linux) ведёт к сбросу буфера на диск после записи последнего файла. Это также способствует сохранению данных в случае удаления диска без размонтирования, но не приводит к падению скорости записи.

Монтирование NTFS дисков/разделов [ править | править код ]

Монтирование образов дисков [ править | править код ]

Если имеется образ диска в виде iso-файла, то для его монтирования нужно указать параметр -o loop и, обычно, тип файловой системы -t iso9660 (необязательно) ( file.iso — это имя файла образа, а /mnt/iso — точка монтирования):

mount -o loop -t iso9660 file.iso /mnt/iso

Монтирование образов в форматах, отличных от iso потребует преобразования в iso-образ или использования эмулятора. Для преобразования можно использовать утилиты командой строки (см. ниже) или утилиту kiso с графическим интерфейсом. Монтирование образов дисков в Linux

Образы bin/cue [ править | править код ]

Для преобразования образа bin/cue в iso-образ можно воспользоваться конвертером bchunk:

bchunk image.bin image.cue image.iso

Монтирование сетевых дисков NFS [ править | править код ]

Монтирование сетевых дисков SMB [ править | править код ]

Пример монтирования сетевых SMB-ресурсов :

mount -t smbfs -o username=user,password=pass //server/dir /mnt/localdir/ mount -t cifs -o username=user,password=pass //server/dir /mnt/localdir/

(Утилита smbfs заменилась в ядре linux на совместимую с ней cifs.) примечания:

  • «-t cifs» можно иногда не указывать, если имя монтируемого устойства вида «//server/dir»

mount //server/dir /mnt/localdir/ -o username=user,password=pass

  • если для авторизации необходимо указать доменное имя пользователя, то в параметрах команды mount оно указывается как «-o username=domain\user», однако при указании монтируемого ресурса в /etc/fstab имя пользователя указывается как «domain/user»:

//server/dir /mnt/localdir/ cifs user=domain/user,password=pass 0 0

Монтирование FTP серверов [ править | править код ]

Монтирование каталога файловой системы с другого компьютера через ssh [ править | править код ]

Модуль ядра Fuse (был принят в официальную ветку ядра начиная с 2.6) позволяет непривилегированным пользователям монтировать различные файловые системы.

Для работы необходимо добавить пользователя в группу fuse, сделать это можно вот так:

usermod -G -a fuse user

adduser user fuse

или вручную отредактировав файл /etc/group. Ещё необходимо, чтобы загружен был модуль ядра fuse:

Читайте также:  Создание диаграммы в excel 2010

После этого, можно смонтировать каталог другого компьютера с помощью sshfs:

Для отмонтирования нужно ввести команду:

Параметры монтирования [ править | править код ]

В случае необходимости при выполнении команды mount можно указать дополнительные параметры монтирования.

-t Тип файловой системы [ править | править код ]

Обычно при монтировании определяется автоматически или берётся из файла конфигурации (см. ниже). Но в отдельных случаях нужно указывать тип файловой системы явно. Например при монтировании DVD диска с файловой системой UDF.

mount /dev/cdrom /mnt/dvd -t udf

Если неправильно указать тип файловой системы, то команда mount выдаст сообщение об ошибке

и посоветует посмотреть в конец файла системных сообщений.

Unable to identify CD-ROM format.

В случае успешного монтирования обычно сообщается, что компакт диск монтируется (по умолчанию) в режиме «только для чтения».

mount: block device /dev/cdrom is write-protected, mounting read-only

-o Атрибуты доступа [ править | править код ]

  • Доступ «только для чтения» (ro) или на «чтение и запись» (rw)
  • Разрешение или запрещение запуска программ (noexec)

Пример 1 (для образца, взято монтирование USB диска):

mount -t vfat -o rw,noexec,iocharset=utf8,codepage=866 /dev/sda1 /mnt/usb

Пример 2 (для образца, взято монтирование ntfs раздела с установленной Windows XP):

mount -t ntfs -o noatime,users,rw,fmask=111,dmask=000,locale=ru_RU.UTF-8 /dev/sda1 /mnt/win_xp

Пример 3 (перемонтировать устройство с доступом на «чтение и запись» (rw))

mount -o remount,rw /dev/sda2

mount —bind [ править | править код ]

Команда mount с ключом —bind или с коротким ключом -B применяется в системах на ядре Linux (начиная с 2.4.0) для создания синонима каталога в дереве файловой системы. К примеру, команда:

mount —bind /mnt/cdrom/Files /var/ftp/cdrom

позволит обращаться к файлам из /mnt/cdrom/Files через путь /var/ftp/cdrom, где /var/ftp/cdrom — некий уже существующий (возможно, пустой) каталог (его настоящее содержимое будет недоступно до момента размонтирования). Можно также вместо отдельной опции —bind написать -o bind , что будет иметь аналогичное действие. Также это позволяет добавить правило в файл /etc/fstab для монтирования при старте системы:

/olddir /newdir none bind

Преимуществом данного способа создания ссылок на каталоги над символьными ссылками является возможность обходить ограничения доступа к файловой системе, возникающие перед процессами, запущенными в среде chroot или серверами, применяющими принцип chroot. Например, FTP-сервер proftpd делает недоступными символьные ссылки, указывающие на файлы и каталоги вне определённого каталога. Действие команды mount —bind напоминает DOS-овский subst.

Список смонтированных файловых систем [ править | править код ]

При запуске команды mount без параметров выводится список смонтированных файловых систем:

В этом примере показывается много смонтированных файловых систем (ФС).

  • в первой строке сообщается, что в качестве корневой ФС выступает RAID-массив, с ФС типа reiserfs и параметрами монтирования: доступ на чтение и запись (rw) и указанием не обновлять атрибут времени последнего доступа (noatime)
  • sysfs, udev, devpts — это стандартные (для систем Linux) виртуальные ФС
  • /dev/sda3 — это раздел SATA диска
  • usbfs — это виртуальная файловая система для работы с USB устройствами
  • //ax2/i — это путь к сетевому диску SMB
  • 172.22.2.1:/files — путь к сетевому диску NFS, находящемся на сервере с IP-адресом 172.22.2.1

Файл конфигурации [ править | править код ]

Чтобы облегчить процедуру монтирования, можно внести в файл конфигурации /etc/fstab соответствующие строки. Примерное содержимое для этого файла:

В дальнейшем можно будет указывать в команде mount только имя устройства или точку монтирования — все дополнительные параметры будут браться из файла конфигурации. Например, применительно к данной конфигурации, команда mount /mnt/cdrom будет эквивалентна выполнению команды

mount /dev/cdrom /mnt/cdrom -t iso9660 -o noauto,ro

Другое назначения файла конфигурации — автоматическое монтирование файловых систем при загрузке системы. Если не требуется монтировать определённые файловые системы, то для них в файле конфигурации нужно указать параметр noauto .

Ссылка на основную публикацию
Удобное компьютерное кресло отзывы
В общем, надоело мне с ноутбуком на кровати валяться, спину портить. Стол есть, 74см высотой. Сейчас сижу на офисном стуле,...
Тест эксель на собеседовании
Если вы хоть раз пытались устроиться на работу или же работаете на должности, в круг обязанностей которой входит принятие людей...
Тестирование cd и dvd дисков
В этой статье я опишу программу тест Nero CD DVD Speed, которая разработана компанией "Nero Softwsre AG". С помощью программы...
Удобный сайт для просмотра фильмов
Некоторые онлайн-кинотеатры радуют лицензионными бесплатными фильмами, однако за лучший контент придётся платить. В подборке Лайфхакера — несколько хороших сервисов с...
Adblock detector