# 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, для которой необходимо указать дополнительную информацию. Смотрите storage-iscsi.

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

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

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

`--comment=`текст``

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

`--setuuid=`uuid``

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

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

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

`--setparentuuid=`uuid``

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

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

`--passthrough=on | off`

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

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

`--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=`имя``

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

`--forceunmount`

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

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

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

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

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

`--target=`цель``

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

`--tport=`порт``

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

`--lun=`LUN``

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

`--encodedlun=`LUN``

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

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

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

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

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

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

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

`--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, использующую внутреннюю сеть. Эта настройка требует дальнейшую настройку. Смотрите iscsi-intnet.

## Примеры

Следующая команда подключает образ диска `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

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

vboxmanage-list, vboxmanage-showvminfo, vboxmanage-storagectl