$Date: 2025-08-11 19:18:47 +0200 (Mon, 11 Aug 2025) $

VBoxManage storageattach

VBoxManage-storageattach 1
VBoxManage-storageattach подключение, удаление и изменение носителей, используемых виртуальной машиной &product-name;
`VBoxManage storageattach` uuid имя-ВМ --storagectl=имя --bandwidthgroup= name none --comment=текст --device=номер --discard= on off --encodedlun=lun --forceunmount --hotpluggable= on off --initiator=инициатор --intnet --lun=lun --medium= none emptydrive additions uuid имя-файла host:диск iscsi --mtype= normal writethrough immutable shareable readonly multiattach --nonrotational= on off --passthrough= on off --passwordfile=файл --password=пароль --port=номер --server= имя ip --setparentuuid=uuid --setuuid=uuid --target=цель --tempeject= on off --tport=порт --type= dvddrive fdd hdd --username=имя-пользователя

## Описание

Команда `VBoxManage storageattach` позволяет управлять носителями, подключенными к контроллеру через команду `VBoxManage storagectl`.

uuid | имя-ВМ

  Задает Универсальный Уникальный Идентификатор (UUID) или имя виртуальной машины (ВМ).

`--storagectl=имя`

  Задает имя контроллера. Используйте команду `VBoxManage showvminfo` для просмотра подключенных к ВМ контроллеров.

`--port=номер`

  Задает номер порта изменяемого контроллера. Необходимо использовать эту опцию если у контроллера несколько портов.

`--device=номер`

  Задает номер устройства изменяемого порта. Необходимо использовать эту опцию если у контроллера несколько устройств на порт.

`--type=dvddrive | fdd | hdd`

  Указывает тип диска, с которым связан носитель. Опустить данный параметр можно только если тип носителя может быть определен через опцию `--medium` или через информацию, переданную более ранней командой подключения носителя.

`--medium=none | emptydrive | additions | uuid | имя-файла | host:диск | iscsi`

  Задает одно из следующих значений:

  `none`

    Удаляет любой существующее устройство из указанного слота.

  `emptydrive`

    Только для виртуальных DVD или флоппи дисков.

    Заставляет слот устройства вести себя как съемный диск, в который не вставлен носитель.

  `additions`

    Только для виртуальных DVD дисков.

    Подключает образ Дополнений Гостевой ОС VirtualBox в указанный слот устройств.

  uuid

    Задает UUID носителя для подключения в указанный слот устройства. Носитель должен быть уже известен &product-name;, например носитель, подключенный к другой ВМ. Используйте команду `VBoxManage list` для просмотра носителей.

  имя-файла

    Задает полный путь к существующему образу диска для подключения к указанному слоту устройства. Образ диска может быть ISO, RAW, VDI, VMDK или другого формата.

  `host:диск`

    Только для виртуальных DVD или флоппи дисков.

    Соединяет указанный слот устройства к указанному DVD или флоппи диску хост-компьютера.

  `iscsi`

    Только для виртуальных жестких дисков.

    Задает цель iSCSI, для которой необходимо указать дополнительную информацию. Смотрите .

  Для съемных дисков, таких как флоппи и DVD, можно менять настройки во время выполнения ВМ. Изменения устройств или слотов устройств жестких дисков требуют, чтобы ВМ была выключена.

`--mtype=normal | writethrough | immutable | shareable | readonly | multiattach`

  Указывает, как носитель ведет себя по отношению к снимкам и операциям записи. Смотрите .

`--comment=текст`

  Задает необязательное описание, сохраняемое с носителем.

`--setuuid=uuid`

  Изменяет UUID носителя перед подключением к ВМ.

  Это экспертная опция. Неподходящие значения могут привести к невозможности использовать носитель или к поломке настроек ВМ если другая ВМ уже ссылается на такой же носитель.

  Опция `--setuuid=""` назначает новый случайный UUID образу, что может убрать ошибку дублированного UUID, если была использована утилита файлового копирования для дублирования образа.

`--setparentuuid=uuid`

  Изменяет родительский UUID носителя перед подключением к ВМ.

  Это экспертная опция. Неподходящие значения могут привести к невозможности использовать носитель или к поломке настроек ВМ если другая ВМ уже ссылается на такой же носитель.

`--passthrough=on | off`

  Только для виртуальных DVD дисков.

  Включает запись на DVD. Эта функция экспериментальная. Смотрите .

`--tempeject=on | off`

  Только для виртуальных DVD дисков.

  Указывает, разрешать ли операцию временного извлечения носителя по запросу гостевой системы. Если установлено в `on`, носитель может быть извлечен. Возможность операции извлечения по запросу гостевой системы, не сохраняется, если ВМ выключена и перезапущена. Таким образом, когда опция установлена в `on` и ВМ перезапущена, первоначально настроенный носитель все еще в дисководе.

`--nonrotational=on | off`

  Позволяет указать, что виртуальный жесткий диск не вращается. Некоторые гостевые ОС, например Windows 7 и более поздние, считают такие диски твердотельными (SSD) и не производят фрагментацию диска на них.

`--discard=on | off`

  Указывает, включать ли функцию автоудаления для виртуального жесткого диска. Когда установлена в `on`, образ VDI уменьшается в ответ на команду `trim` гостевой ОС.

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

  - Формат диска должен быть VDI.

  - Размер очищаемой области диска должен быть не менее 1 МБ.

  - Убедитесь, что обрезаемое пространство представляет собой непрерывный блок размером не менее 1 МБ на границе 1 МБ.

  Рассмотрите запуск команд дефрагментации в фоновом режиме через cron для сохранения пространства. В Windows запускайте команду `defrag.exe /D`. В Linux запускайте команду `btrfs filesystem defrag`.

  При настройке гостевой ОС для выдачи команды `trim`, гостевая ОС обычно рассматривает диск как SSD.

  Ext4 поддерживает опцию монтирования `-o discard`. В Mac OS X может потребоваться дополнительная настройка. Windows 7, 8 и 10 автоматически определяет и поддерживает SSD. Драйвер Linux `exFAT` от Samsung поддерживает команду `trim`.

  Реализация exFAT от Microsoft может не поддерживать эту функцию.

  Можно использовать другие способы для выдачи команд trim. Команда Linux `fstrim` является частью пакета `util-linux`. Ранние решения требовали обнулить неиспользуемые области через команду `zerofree` или подобную, затем уплотнить диск. Можно производит данные шаги только при выключенной ВМ.

`--bandwidthgroup=имя`

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

`--forceunmount`

  Только для виртуальных DVD или флоппи дисков.

  Принудительно размонтирует DVD, CD, или флоппи или монтирует новый DVD, CD, или флоппи даже если предыдущий съемный носитель заблокирован гостем на чтение. Смотрите .

Следующие опции применимы когда указана опция `--medium=iscsi`:

`--server=имя-хоста | IP-адрес`

  Задает имя хоста или IP адрес цели iSCSI.

`--target=цель`

  Задает строку имени цели, определяемую целью iSCSI и используется для идентификации ресурса хранилища.

`--tport=порт`

  Задает номер порта TCP/IP службы iSCSI цели.

`--lun=LUN`

  Задает номер логической единицы ресурса цели. Для единственного дисковода значение равно нулю.

`--encodedlun=LUN`

  Задает LUN ресурса цели в виде закодированную в шестнадцатеричном виде. Для единственного дисковода значение равно нулю.

`--username=имя-пользователя`

  Задает имя пользователя для аутентификации цели.

  Если не установлен пароль на настройки, имя пользователя сохраняется в виде простого текста в XML файле настроек машины.

`--password=пароль`

  Задает пароль для аутентификации цели.

  Если не установлен пароль на настройки, этот пароль сохраняется в виде простого текста в XML файле конфигурации машины. Когда пароль на настройки установлен, пароль аутентификации цели сохраняется в шифрованном виде.

  Этот дизайн не соответствует рекомендациям по безопасности Oracle. У Вас не должно быть возможности указать пароль в командной строке, так как пароль может быть увиден в списке процессов.
`--passwordfile=файл-с-паролем`

  Задает файл, содержащий пароль аутентификации цели в виде простого текста.

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

`--initiator=инициатор`

  Задает инициатор iSCSI.

  iSCSI инициатор от Microsoft - это система, например сервер, которая подключается к IP сети и инициирует запросы и получает ответы от iSCSI целей. SAN компоненты в инициаторе iSCSI во многом аналогичны SAN компонентам Fibre Channel и включают следующие:

  - Драйвер iSCSI. Траспортирует блоки команд iSCSI через сеть IP. Этот драйвер iSCSI устанавливается в хост iSCSI и входит в состав инициатор iSCSI от Microsoft.

  - Адаптер Gigabit Ethernet. Подключается к цели iSCSI. Используйте адаптер Ethernet, который может передавать 1000 мегабит в секунду (Мб/с). Как и стандартные 10/100 адаптеры, большинство гигабитных адаптеров используют существующие кабели категории 5 или 6Е. Каждый порт адаптера идентифицируется уникальным IP адресом.

  - Цель iSCSI. Это любое устройство, которое получает команды iSCSI. Устройством может быть как конечный узел, например устройство хранения, так и промежуточное устройство, например сетевой мост между устройствами IP и Fibre Channel. Каждый порт контроллера массива хранилищ или сетевого моста идентифицируется одним или несколькими IP адресами.

`--intnet`

  Указывает, подключаться ли к цели iSCSI, использующую внутреннюю сеть. Эта настройка требует дальнейшую настройку. Смотрите .

## Примеры

Следующая команда подключает образ диска `o7.vdi` к указанному контроллеру SATA в ВМ `ol7`.

    $ storageattach ol7 --storagectl "SATA Controller" --port 0 --device 0 \
    --type hdd --medium /VirtualBox/ol7/ol7.vdi

Следующая команда подключает образ DVD `o7-r6-dvd.iso` к указанному контроллеру IDE в ВМ `ol7`.

    $ VBoxManage storageattach ol7 --storagectl "IDE Controller" --port 0 --device 0 \
    --type dvddrive --medium ol7-r6-dvd.iso

## Смотрите также

, ,