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

Подключение виртуального жесткого диска в WSL

Вы также можете подключить файлы виртуального жесткого диска (VHD) к WSL с помощью . для этого сначала необходимо подключить виртуальный жесткий диск к Windows с помощью команды в Windows. Не забудьте выполнить эту команду с правами администратора. Ниже приведен пример, в котором мы используем эту команду, а также выводится путь к диску. Обязательно замените фактический путь VHD.

Вы можете использовать приведенные выше выходные данные, чтобы получить путь к диску для этого виртуального жесткого диска и подключить его к WSL, следуя инструкциям из предыдущего раздела.

Эту методику также можно использовать для подключения и взаимодействия с виртуальными жесткими дисками других WSL дистрибутивов, так как каждый WSL 2 дистрибутив хранится с помощью файла виртуального жесткого диска с именем: . По умолчанию виртуальные жесткие диски для WSL 2 дистрибутивов хранятся по этому пути: , будьте внимательны при доступе к этим системным файлам, это рабочий процесс Power User. Прежде чем использовать этот диск, убедитесь, что он не используется.

Файловая система Raiserfs

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

Для работы с ReiserFS нам понадобится набор утилит Reiserfsprogs. Обычно, этот пакет уже установлен в большинстве дистрибутивов, но если у вас его нет, то вы можете его очень просто установить. Для этого наберите:

После этого можно перейти к работе с файловой системой. Бывает, что система говорит, что утилита установлена, но команд для работы с файловой системой нет. Тогда просто удалите ее и установите заново:

1. Создание раздела

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

$ sudo mkreiserfs опции устройство размер

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

  • -b — размер одного блока файловой системы, может быть от 512 до 8192 байт;
  • -h -указать хэш функцию, с помощью которой будут сортироваться файлы и директории r5, rupasov или tea;
  • -u — позволяет задать UUID раздела;
  • -l — метка раздела;
  • -j — файл, в котором будет размещен журнал;
  • -s — размер журнала файловой системы;
  • -B — файл с адресами битых блоков;
  • -d — вывести отладочную информацию.

Но большинство из них вам не понадобится. Вы можете создать раздел и нормально им пользоваться используя опции по умолчанию. Например, создадим файловую систему на разделе /dev/sda20:

После ввода команды вам придется подтвердить форматирование раздела.

2. Монтирование ReiserFS

Монтирование файловой системы аналогично другим популярным ФС, таким как Ext4 или XFS. Для этого используется команда mount:

Все, после этого вы можете пользоваться этим разделом и копировать на него файлы. Некоторыми возможностями файловой системы можно управлять через опции монтирования. Но большинство из них стандартны для всех файловых систем, поэтому мы не будем их рассматривать. Но есть и особенные опции. Как вы помните, файловая система Reiserfs позволяет упаковывать хвосты файлов в один блок, что позволяет экономить пространство. Но это снижает производительность. Чтобы отключить эту возможность используется опция notail:

Также вы можете указать эту опцию во время автоматического монтирования с помощью /etc/fstab:

Эта строчка сообщает системе инициализации, что раздел /dev/sda20 стоит монтировать в папку /mnt с опцией notail.

3. Изменение раздела

Утилита reiserfstune позволяет изменить параметры, которые вы могли задать во время создания файловой системы. Например, можно изменить размер журнала, адрес журнала, UUID, файл битых секторов, а также частоту проверок на ошибки. Синтаксис такой же, как и у mkreiserfs:

$ sudo reiserfstune опции устройство

Опции те же, но только стоит выделить несколько из них:

  • -c — установить интервал в днях между проверками файловой системы на ошибки;
  • -C — установить дату последней проверки;
  • -m — установить максимальное количество монтирований перед проверкой;
  • -M — установить текущее количество монтирований с момента текущей проверки.

Например, скажем, что файловую систему нужно проверять каждый день:

4. Восстановление Reiserfs

Для подтверждения выполнения проверки необходимо набрать Yes, причем не y, не yes, и именно полностью и с большой буквы. Если вы получаете ошибки чтения корневого блока, нужно перестроить дерево файловой системы, на основе существующих ветвей дерева:

Этот процесс включает сканирование всей файловой системы, поэтому займет много времени. Каждая файловая система имеет суперблок, в котором содержится информация про тип файловой системы, ее размер и основные метаданные. Если этот блок был поврежден, его тоже можно восстановить:

После этого восстановление файловой системы будет завершено и вы можете ее монтировать. Если были повреждены файлы, то вы можете найти их в папке losst_found.

Монтирование ISO-образа

Легко смонтировать ISO-образ, чтобы вы могли получить доступ к его содержимому как части файловой системы.

Это будет работать с любым образом ISO. В этом примере мы используем Tiny Core Linux ISO, потому что он удобно небольшой и быстрый для загрузки. (Небольшой дистрибутив Linux с графическим интерфейсом, размером 18 МБ! Вероятно, у вас больше файлов .mp3.)

В той же директории, что и образ ISO, введите эту команду. Подставьте имя файла ISO, который вы монтируете.

  sudo mount -t iso9660 -o loop TinyCore-current.iso / mnt 

Поскольку нам нужно использовать вам нужно будет ввести свой пароль.

Опция (type) сообщает какой тип файловой системы мы монтируем. Это файл ISO, поэтому мы предоставляем типа .

Флаг (опции) используется для передачи дополнительных параметров для . Наш параметр это .

Мы используем для принудительного чтобы использовать файл устройства loop для подключения к нашему ISO-образу. Файл устройства цикла позволяет монтировать файл (например, образ ISO) и обрабатывать его так, как если бы он был устройством хранения.

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

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

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

Конечно, мы должны указать имя ISO-образа и сообщить , где мы хотим файловую систему. Мы выбрали .

ISO-образ смонтирован. Напоминание о том, что ISO-образы всегда монтируются в режиме только для чтения, появляется в окне терминала.

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

Для подключения файловой системы к конкретному местоположению (точке монтирования) команда mount используется в следующей форме:

mount имя_устройства директория

После подключения точка монтирования становится корневой директорией смонтированной ФС. Например, смонтировать жесткий диск /dev/sdb1 в директорию /mnt/media можно следующим образом:

$ sudo mount /dev/sdb1 /mnt/media

Обычно при монтировании устройства с распространенной ФС, например, ext4 или xfs, команда mount автоматически определяет ее тип. Однако, некоторые ФС не распознаются. Их тип нужно указывать в явном виде. Для этого используется опция -t:

mount -t тип имя_устройства директория

Чтобы указать дополнительные опции монтирования, используется флаг -o:

mount -o опции_монтирования имя_устройства директория

Можно указать несколько опций, разделенных запятыми (после запятых не должно быть пробелов). Ниже предоставлены основные опции команды

-V — вывести версию утилиты;-h — вывести справку;-v — подробный режим;-a, —all — примонтировать все устройства, описанные в fstab;-F, —fork — создавать отдельный экземпляр mount для каждого отдельного раздела;-f, —fake — не выполнять никаких действий, а только посмотреть что собирается делать утилита;-n, —no-mtab — не записывать данные о монтировании в /etc/mtab;-l, —show-labels — добавить метку диска к точке монтирования;-c — использовать только абсолютные пути;-r, —read-only — монтировать раздел только для чтения;-w, —rw — монтировать для чтения и записи;-L, —label — монтировать раздел по метке;-U, —uuid — монтировать раздел по UUID;-T, —fstab — использовать альтернативный fstab;-B, —bind — монтировать локальную папку;-R, —rbind — перемонтировать локальную папку.

Полный список опций можно получить, выполнив команду man mount.

Монтирование разделов с помощью mount

Монтирование разделов с помощью mount выполняется очень просто. Фактически в большинстве случаев будет достаточно упрощенной версии команды. Например, смонтируем раздел /dev/sdb6 в папку /mnt:

sudo mount /dev/sdb6 /mnt/

В большинстве случаев вы будете вынуждены выполнять команду mount с правами суперпользователя, если обратное не указано в fstab (опция монтирования users). Вы можете посмотреть информацию о процессе монтирования добавив опцию -v:

sudo mount -v /dev/sdb6 /mnt/

Если нужно, вы можете указать файловую систему с помощью опции -t:

sudo mount -v -t ext4 /dev/sdb6 /mnt

Если необходимо примонтировать файловую систему только для чтения, то вы можете использовать опцию -r или опцию монтирования -o ro, результат будет одинаковым:

sudo mount -t ext4 -r /dev/sdb6 /mnt$ sudo mount -t ext4 -o ro /dev/sdb6 /mnt

Вы можете использовать и другие опции чтобы выполнить монтирование разделов linux, например, указать, что на этом разделе нельзя выполнять программы:

sudo mount -t ext4 -o noexec /dev/sdb6 /mnt

Обратите внимание, что вы не можете использовать опции uid, gid, fmask для файловых систем ext. Они поддерживаются только в FAT, vFAT, exFAT

Вы можете использовать не только имена устройств чтобы выполнить монтирование диска в linux. Для этого можно применять UUID или метки, например, монтирование с помощью UUID:

sudo mount –uuid=”b386d309-05c1-42c8-8364-8d37270b69e0″ /mnt

Посмотреть uuid для ваших разделов можно с помощью команды:

sudu blkid

Точно так же вы можете использовать метки. Команда монтирования диска linux будет выглядеть так:

sudo mount –label=”home” /mnt/

Вы можете примонтировать одну папку в другую, для этого используйте опцию –bind

sudo mount –bind /mnt/ /media/

Возможно, не только монтирование разделов linux, но и монтирование файлов, если они содержат файловую систему, например, образов дисков. Монтирование образа диска linux работает точно так же:

sudo mount ~/file.iso /mnt

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

mount

Ограничения

  • В настоящее время к WSL 2 можно подключить только целые диски. Это означает, что невозможно присоединить только один раздел. В частности, это означает, что невозможно использовать для чтения раздела на загрузочном устройстве, так как это устройство не может быть отсоединено от Windows.

  • Флэш-накопители USB и SD-карты в настоящее время не поддерживаются и не могут быть подключены к WSL 2. Хотя диски USB поддерживаются.

  • Только системные системы, которые изначально поддерживаются в ядре, могут быть подключены . Это означает, что невозможно использовать установленные драйверы FileSystem (например, NTFS-3G), вызвав .

Отключение общего ресурса Windows

Команда отсоединяет (размонтирует) смонтированную файловую систему от дерева каталогов.

Чтобы отсоединить смонтированный общий ресурс Windows, используйте команду за которой следует либо каталог, в котором он был смонтирован, либо удаленный общий ресурс:

Если для CIFS-монтирования есть запись в , удалите ее.

Команда не сможет отсоединить общий ресурс, когда он используется. Чтобы узнать, какие процессы обращаются к общему ресурсу Windows, используйте команду :

Как только вы найдете процессы, вы можете остановить их с помощью команды и отключить общий ресурс.

Если у вас все еще есть проблемы с ресурса, используйте параметр ( ), который позволяет вам отключить занятую файловую систему, как только она больше не будет занята.

Размонтирование файловой системы

Для отключения смонтированной файловой системы используется команда umount, в качестве аргумента которой указывается директория, в которую она была смонтирована (точка монтирования) или имя устройства:

umount директория umount имя_устройства

Если файловая система используется, umount не сможет ее отключить. В таких ситуациях можно воспользоваться командой fuser, чтобы выяснить, какие процессы осуществляют доступ к файловой системе:

fuser -m директория

Определив процессы, можно остановить их и размонтировать файловую систему. Также для отключения занятой файловой системы сразу после завершения ее использования можно воспользоваться опцией -l (—lazy, “ленивое” отключение):

umount -l директория

Для принудительного размонтирования применяется опция -f (—force). Обычно она используется для отключения недостижимой системы NFS.

umount -f директория

Во всех остальных случаях принудительное отключение нежелательно, так как может привести к повреждению данных в файловой системе.

Автоматический монтаж

Когда общий ресурс монтируется вручную с помощью команды , он не сохраняется после перезагрузки.

Файл содержит список записей, определяющих, где, как и какая файловая система будет монтироваться при запуске системы.

Чтобы автоматически монтировать общий ресурс Windows при запуске системы Linux, определите монтирование в . Строка должна включать имя хоста или IP-адрес ПК с Windows, имя общего ресурса и точку монтирования на локальном компьютере.

Откройте файл текстовом редакторе :

Добавьте в файл следующую строку:

/etc/fstab

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

Команда прочитает содержимое и смонтирует общий ресурс.

В следующий раз, когда вы перезагрузите систему, общий ресурс Windows будет подключен автоматически.

Дисковые файловые системы, применяемые в Ubuntu

  • Ext4 — журналируемая файловая система, используемая в ОС на ядре Linux. Основана на файловой системе Ext3, но отличается тем, что в ней представлен механизм записи файлов в непрерывные участки блоков (екстенты), уменьшающий фрагментацию и повышающий производительность. В Ubuntu, начиная с версии 9.10, эта файловая система используется по умолчанию при автоматическом разбиении диска инсталлятором.
  • Ext3 — журналируемая файловая система, используемая в ОС на ядре Linux. Является файловой системой по умолчанию во многих дистрибутивах. Основана на Ext2, но отличается тем, что в ней есть журналирование, то есть в ней предусмотрена запись некоторых данных, позволяющих восстановить файловую систему при сбоях в работе компьютера.
  • Ext2 — файловая система, используемая в операционных системах на ядре Linux. Достаточно быстра для того, чтобы служить эталоном в тестах производительности файловых систем. Она не является журналируемой файловой системой и это её главный недостаток.
  • BTRFS — Достаточно новая универсальная ФС, используемая в операционных системах на ядре Linux. Ее особенностями являются: индексное хранение структур данных (в В-деревьях), возможность создания снепшотов, и многие другие интересные вещи.
  • XFS — высокопроизводительная журналируемая файловая система. Распределение дискового пространства — екстентами, храниение каталогов в B-деревьях. Автоматическая аллокация и высвобождение I-node. Дефрагментируется «на лету». Невозможно уменьшить размер существующей файловой системы. При сбое питания во время записи возможна потеря данных (хотя этот недостаток нельзя относить к одной только XFS, он свойственен любой журналируемой ФС, но, вместе с тем, XFS, по умолчанию, достаточно активно использует буферы в памяти).
  • Fat16 — файловая система, сейчас широко используемая в картах памяти фотоаппаратов и других устройств.
  • Fat32 — файловая система основанная на Fat16. Cоздана, чтобы преодолеть ограничения на размер тома в Fat16.
  • NTFS — файловая система для семейства операционных систем Microsoft Windows. Поддержка в Ubuntu осуществляется специальным драйвером — NTFS-3G.
  • HFS — файловая система, разработанная Apple Inc. для использования на компьютерах, работающих под управлением операционной системы Mac OS.
  • HSF+ — файловая система, разработанная Apple Inc. для замены HFS. Является улучшенной версией HFS, с поддержкой файлов большого размера и использует кодировку Unicode для имён файлов и папок.
  • JFS — журналируемая файловая система. В отличие от Ext3, в которую добавили поддержку журналирования, JFS изначально была журналируемой. На момент выхода в свет JFS была самой производительной из существовавших файловых систем. На текущий момент сохраняет за собой одно из лидирующих мест по этому показателю.
  • SWAP — раздел жёсткого диска, предназначенная для виртуальной памяти (файла/раздела подкачки).
  • ReiserFS — журналируемая файловая система, разработанная специально для Linux. Обычно под словом ReiserFS понимают третью версию (последняя — 3.6.21), а четвёртую называют Reiser4. В настоящий момент разработка Reiser3 прекращена.
  • Reiser4 — журналируемая файловая система ReiserFS (4-я версия), разработанная специально для Linux. Одна из самых быстрых файловых систем для Linux (с включённым плагином-архиватором — самая быстрая).
  • UFS — файловая система, созданная для операционных систем семейства BSD. Linux поддерживает UFS на уровне чтения, но не имеет полной поддержки для записи UFS. Родной Linux ext2 создан по подобию UFS.

О всех существующих файловых системах можно прочитать в этой статье.

Клонирование диска

Первым делом мы создаем полную копию нашего диска. Это единственный этап, который может быть выполнен без нюансов на любой из систем, так как он выполняется с помощью утилиты dd.

Смотрим состояние дисков и разделов на текущий момент:

lsblk

Определяемся, с какого диска на какой мы будем выполнять копию

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

Выполняем команду:

dd if=/dev/sdx1 of=/dev/sdy1 bs=64K conv=noerror,sync

* Команда выполняет блочное копирование и запускается со следующими параметрами:

  • if — источник данных.
  • of — куда копировать данные.
  • bs — объем блока, который будет читаться и копироваться за раз.
  • conv — дополнительные опции. В данном примере noerror — продолжать операцию в случае ошибки чтения данных; sync — копировать все, в том числе и нулевые данные.

* Таким образом, мы клонируем диск или раздел с /dev/sdx1 в /dev/sdy1 (не путаем источник и назначение).

Команда будет выполняться некоторое время. После ее завершения можно снова посмотреть состояние дисков и разделов:

lsblk

При клонировании диска мы должны увидеть, что целевой носитель приобрел такую же разметку.

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

Создание зеркала

С помощью LVM мы может создать зеркальный том — данные, которые мы будем на нем сохранять, будут отправляться на 2 диска. Таким образом, если один из дисков выходит из строя, мы не потеряем свои данные.

Зеркалирование томов выполняется из группы, где есть, минимум, 2 диска.

1. Сначала инициализируем диски:

pvcreate /dev/sd{d,e}

* в данном примере sdd и sde.

2. Создаем группу:

vgcreate vg02 /dev/sd{d,e}

3. Создаем зеркальный том: 

lvcreate -L200 -m1 -n lv-mir vg02

* мы создали том lv-mir на 200 Мб из группы vg02.

В итоге:

lsblk

… мы увидим что-то на подобие:

sdd                       8:16   0    1G  0 disk
  vg02-lv—mir_rmeta_0  253:2    0    4M  0 lvm
    vg02-lv—mir        253:6    0  200M  0 lvm
  vg02-lv—mir_rimage_0 253:3    0  200M  0 lvm
    vg02-lv—mir        253:6    0  200M  0 lvm
sde                       8:32   0    1G  0 disk
  vg02-lv—mir_rmeta_1  253:4    0    4M  0 lvm
    vg02-lv—mir        253:6    0  200M  0 lvm
  vg02-lv—mir_rimage_1 253:5    0  200M  0 lvm
    vg02-lv—mir        253:6    0  200M  0 lvm

* как видим, на двух дисках у нас появились разделы по 200 Мб.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Ваша ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: