Подключить виртуальный диск linux
Обновлено: 05.07.2024
Как добавить дополнительное дисковое хранилище в гостевую ОС на виртуальную машину KVM с командой virsh в операционной системе Linux?
Вы можете легко добавить дополнительные жесткие диски в KVM домене/виртуальной машине, чтобы получить увеличенное пространство для хранения данных гостя. В этом учебном пособии показано, как добавить дополнительное дисковое хранилище в виртуальную машину KVM, используя опцию командной строки virsh в Linux.
Ниже приведены шаги по добавлению файлового хранилища (образа диска) в виртуальную машину с помощью команды virsh в Linux:
Шаг 1 – Создайте новый образ диска
Введите следующую команду на хосте KVM для создания нового образа диска под названием ubuntu-box1-vm-disk1-5G с размером 5G:
Или вы можете использовать команду dd для создания предварительно выделенного файла, для этого выполните:
Вы только что создали команду qemu-img или dd для создания нового необработанного образа диска размером 5 ГБ. Образ диска называется ubuntu-box1-vm-disk1-5G :
Примеры возможных выводов данных:
Некоторые замечания относительно формата qcow2
Шаг 2 – Прикрепите диск к виртуальной машине
Прежде чем присоединить диск к вашей виртуальной машине, узнайте имя текущего диска. Войдите в вашу виртуальную машину и введите следующую команду:
Примеры возможных выводов данных:
Таким образом, моя виртуальная машина имеет /dev/vda с размером 40 ГБ. Чтобы подключить вновь созданный образ ubuntu-box1-vm-disk1-5G , вы должны использовать /dev/vdb . Если у вас уже есть диск /dev/vdb , вам нужно изменить vdb на свободное устройство, например /dev vdc , и так далее. Чтобы прикрепить диск к виртуальной машине, под названием ubuntu-box1 используйте следующий синтаксис.
Примеры возможных выводов данных:
Будьте Осторожны : С помощью всего нескольких нажатий клавиш fdisk может уничтожить часть или весь ваш жесткий диск или рабочий раздел. Убедитесь, что вы используете правильные имена устройств с помощью команды fdisk.
Шаг 3 – Разбиение диска на виртуальной машине
Теперь у гостя с именем «ubuntu-box1» есть устройство на жестком диске, называемое /dev/vdb . Зайдите в вашу виртуальную машину и введите следующую команду для проверки того же самого:
Примеры возможных выводов данных:
Затем запустите fdisk для нового устройства:
Введите n для нового раздела. Введите p для основного раздела. Выберите номер доступного раздела 1. Введите первый цилиндр по умолчанию, нажав Enter. Выбрать весь диск можно, нажав Enter. Наконец, введите p для проверки нового раздела. Введите w, чтобы записать изменения и выйти. Пример сеанса из команды fdisk.
Рисунок 01: Разделение диска с помощью команды fdisk на виртуальной машине.
Чтобы отформатировать новый раздел с файловой системой ext4, введите:
Примеры возможных выводов данных:
Рисунок 02: Форматирование /dev/vdb1 как ext4
Наконец, вам нужно создать монтируемую директорию:
И смонтируйте диск для гостя:
Отредактируйте файл /etc/fstab
И обновите его следующим образом, чтобы /dev/vdb1 постоянно монтировались после перезагрузки:
Сохраните и закройте файл. Теперь у вас есть гостевая виртуальная машина, которая имеет дополнительное виртуализированное файловое хранилище в системе на базе KVM Linux.
Разделы дисков в Linux подключаются к системе совсем не так, как в Windows. Здесь есть корневая файловая система, куда подключаются все другие разделы и устройства, которые вы будете использовать. Системные разделы монтируются автоматически при старте системы. Но если вам нужно подключить дополнительные разделы, в некоторых случаях, может понадобиться это делать вручную.
В этой статье мы рассмотрим как выполняется монтирование диска в Linux, поговорим о том, как правильно использовать утилиту mount, umount и посмотреть какие разделы куда примонтированы.
Что такое монтирование?
Как я уже сказал Linux имеет единую корневую файловую систему, куда подключаются все запоминающие устройства и другие ресурсы. На самом деле, в Windows происходит что-то подобное, только все это скрыто от пользователя.
Фактически смонтированный раздел становится частью корневой файловой системы и система старается сделать работу со всеми разделами, независимо от их файловых систем, прозрачной. Это значит, что если вы примонтируете участок оперативной памяти или удаленную сетевую папку, то сможете работать с ней в файловом менеджере точно так же, как и с локальным диском.
Например, вы хотите примонтировать флешку. Вы даете системе команду подключить ее в папку /run/media/имя_пользователя/UUID_флешки/. Система определяет файловую систему устройства, а затем, используя драйвера ядра подключает ее к указанной папке. Дальше вам остается работать с той папкой, как с любой другой. Больше ни о чем думать не нужно. Когда надумаете извлечь флешку, ее нужно отмонтировать.
Монтирование дисков в Linux
Обычно, монтированием занимаются специальные сервисы оболочки, но не всегда они доступны. А иногда нужно сделать все вручную, чтобы задать дополнительные опции монтирования или другие параметры. Для монтирования в Linux используется команда mount. Рассмотрим ее параметры:
$ mount файл_устройства папка_назначения
Или расширенный вариант:
$ mount опции -t файловая_система -o опции_монтирования файл_устройства папка_назначения
Опции задают различные дополнительные особенности работы утилиты. Опция -t необязательна, но она позволяет задать файловую систему, которая будет использована и иногда это очень полезно. С помощью опции -o вы можете задать различные параметры монтирования, например, монтировать только для чтения и т д. Последних два параметра - это файл устройства, например, /dev/sda1 и папка назначения, например, /mnt.
Перед тем как перейти к рассмотрению примеров работы утилитой, давайте рассмотрим ее основные опции:
- -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 - перемонтировать локальную папку.
Это не все, но основные опции, которые вам понадобятся во время работы с утилитой. Также, возможно, вы захотите знать список опций монтирования, которые могут быть полезными. Они все перечислены в статье автоматическое монтирование в fstab и писать их еще и здесь нет смысла. А теперь перейдем к примерам и рассмотрим как монтировать диск в linux.
Монтирование разделов с помощью 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:
Посмотреть uuid для ваших разделов можно с помощью команды:
Точно так же вы можете использовать метки. Команда монтирования диска linux будет выглядеть так:
sudo mount --label="home" /mnt/
Вы можете примонтировать одну папку в другую, для этого используйте опцию --bind
sudo mount --bind /mnt/ /media/
Возможно, не только монтирование разделов linux, но и монтирование файлов, если они содержат файловую систему, например, образов дисков. Монтирование образа диска linux работает точно так же:
Посмотреть список всех примонтированных устройств можно просто выполнив mount без параметров:
Размонтирование устройств в Linux
Когда вы хотите завершить работу с устройством, особенно с флешкой, его нужно размонтировать. Для этого существует утилита umount. В качестве параметров она принимает точку монтирования или устройство. Например:
sudo umount /mnt
Теперь ваше устройство не смонтировано. Но иногда может возникнуть ошибка размонтирования. Система сообщит, что устройство занято: umount: /mnt: target is busy.
Проблему можно решить закрыв все программы, которые могут использовать любой файл в этой папке. Какие именно это программы вы можете узнать с помощью команды lsof:
lsof -w /mnt
$ lsof -w /dev/sdb6
Здесь вы видите всю необходимую информацию, чтобы понять что происходит и что с этим делать. Утилита вывела название программы, ее PID, и даже файл, с которым она работает. Вы можете завершить все программы, а потом снова повторить попытку или используйте опцию -l, файловая система будет отключена немедленно, несмотря на то, что она занята:
sudo umount -l /mnt
Выводы
В этой статье мы рассмотрели как выполняется монтирование жестких дисков linux, а также разделов и даже образов. Вы знаете как правильно использовать опции mount и umount. Если у вас остались вопросы, спрашивайте в комментариях!
Как подключить дополнительный диск в Linux (создание таблицы разделов, разметка, форматирование и монтирование)
Рассмотрим пример добавления дополнительного диска в Linux при условии, что нужно создать на новом диске таблицу разделов, затем создать раздел диска, отформатировать этот диск и настроить автоматическое монтирование нового раздела при загрузке системы. Для операций с диском будем использовать утилиту parted.
В нашем примере к виртуальной машине (на базе гипервизора Microsoft Hyper-V) с ОС Ubuntu Linux 14.04 LTS подключается дополнительный диск. Для виртуальной машины Hyper-V второго поколения (Gen2) это можно сделать «на горячую», то есть не останавливая гостевую ОС и не выключая виртуальную машину.
Разметка и форматирование диска
После того, как диск добавлен запросим список всех доступных системе дисков командой:
Как видно, система обнаружила новый диск /dev/sdd, и этот диск не имеет разметки.
Войдём в режим работы с утилитой parted:
Приглашение командной строки сменит вид на «(parted)». Сменим текущий диск (по умолчанию текущим диском устанавливается первый найденный в системе, например /dev/sda) на тот, с которым мы собираемся выполнять операции разметки:
После каждой команды изменяющей конфигурацию диска будем выполнять команду print для наглядности происходящих с диском изменений.
На текущем выбранном диске создадим новую пустую таблицу разделов с типом gpt.
Создадим первичный раздел, который будет занимать весь объем диска:
Как видим, создан раздел без файловой системы. Теперь нам нужно отформатировать этот раздел с нужной нам файловой системой, например ext4. Как я понял, утилита parted не умеет форматировать разделы в ext4, поэтому завершим работу с утилитой и выполним форматирование другими средствами.
Посмотрим текущее положение вещей, и увидим что имеется раздел /dev/sdd1 без файловой системы:
Форматирование только что созданного раздела в интересующую нас файловую систему ext4 мы можем выполнить с помощью утилиты mkfs.ext4 командой:
Проверим результат, например так:
Монтирование разделов диска
Теперь нам нужно настроить автоматическое монтирование ранее созданных разделов диска при загрузке системы. В нашем случае раздел всего один в перспективе он будет использоваться для хранения резервных копий некоторых данных.
Создаём каталог, в который будем монтировать новый раздел и сразу монтируем его:
Пробуем создать новый пустой файл в смонтированном в каталог разделе, проверяя тем самым возможность записи в этот каталог. Затем пробуем удалить созданный файл.
Выясним идентификатор раздела (UUID), чтобы использовать его для настройки автоматического монтирования:
Чтобы монтирование диска происходило автоматически при каждой загрузке системы внесём изменения в системный конфигурационный файл fstab.
Добавим в конец файла строку монтирования нашего раздела:
После сохранения конфигурационного файла проверяем, что команда обработки файла fstab утилитой mount выполняется без ошибок
Перезагружаем систему и убеждаемся в том, что раздел диска автоматически смонтирован во время загрузки и нет проблем с записью файлов в каталог монтирования.
Как и физический жесткий диск, виртуальный жесткий диск может содержать файловую систему, и вы можете использовать ее для хранения и запуска операционной системы, приложений, а также для хранения данных. Одно из типичных применений виртуальных жестких дисков в VirtualBox для хранения операционных систем, приложений и данных.
В этой статье мы продемонстрируем, как создать том виртуального жесткого диска, используя файл в Linux. В этом руководстве мы создадим том VHD размером 1 ГБ и отформатируем его в файловой системе EXT4.
Создайте новый образ для хранения тома виртуального диска
- if=/dev/zero: входной файл для предоставления символьного потока для инициализации хранилища данных
- of=VHD.img: файл образа, который будет создан как том хранения
- bs=1M: чтение и запись до 1M одновременно
- count=1200: копировать только 1200 МБ (1 ГБ) входных блоков
Далее нам нужно файл образа VHD отформатировать в тип файловой системы EXT4 с помощью утилиты mkfs. Когда будет предложено, что /media/VHD.img не является специальным блочным устройством, ответьте y, как показано на скриншоте.
Чтобы получить доступ к тому VHD, нам нужно подключиться к каталогу (точке монтирования). Для создания точки монтирования и чтобы смонтировать том VHD, выполните следующие команды. Для задания параметров для монтажа используйте -o. Опция loop здесь указывает привязку к /dev/ директории.
Примечание. Файловая система VHD будет оставаться подключенной только до следующей перезагрузки. Чтобы подключать ее при загрузке системы, добавьте эту запись в файл /etc/fstab.
Теперь можно проверить вновь созданную файловую систему VHD с точкой монтирования, используя команду df.
Удаление тома виртуального диска
Если вам больше не нужен том VHD, выполните следующие команды для размонтирования файловой системы VHD, а затем удалите файл образа:
Вот и все! В этом руководстве мы продемонстрировали, как создать том виртуального жесткого диска, используя файл в Linux. Если у вас есть какие-либо мысли или вопросы, свяжитесь с нами через форму комментариев ниже.
Читайте также:
- На что влияет жесткий диск на ноутбуке
- Как установить файл iso на windows 10 без диска и флешки на компьютер
- Как сделать из ноутбука системный блок
- Как настроить видеокарты на ноутбуке asus tuf 705 в
- Из каких конструктивных узлов состоит пк в каком из них находится процессор оперативная память ответ