Опубликован: 24.07.2006 | Доступ: свободный | Студентов: 8864 / 1199 | Оценка: 3.95 / 3.75 | Длительность: 41:47:00
ISBN: 978-5-94157-183-3
Лекция 19:

Виртуальный компьютер (система VMware)

< Лекция 18 || Лекция 19: 12345678910

Подключение физических дисков к виртуальному компьютеру

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

Необходимые меры предосторожности

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

"Поддержка работы с физическими дисками является продвинутой особенностью (an advanced feature) системы VMware и может использоваться только пользователями, которые уже знакомы с продуктом. А чтобы познакомиться с продуктом, вы должны, как минимум, создать и сконфигурировать виртуальную машину с виртуальным диском и установить на нее операционную систему. Что касается загрузки ранее установленной на физический диск операционной системы в виртуальный компьютер, то она может не работать для некоторых конфигураций аппаратного обеспечения и операционной системы".

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

Основная опасность, связанная с использованием реальных дисков, состоит в одновременном доступе к одному разделу жесткого диска из нескольких операционных систем. Все ОС создавались в расчете на полный контроль над компьютером. Поскольку каждая ОС представления не имеет о другой, то когда две ОС пытаются производить операции записи или чтения в одном и том же разделе реального диска, может произойти потеря или даже разрушение данных. Дело в том, что система VMware (пока еще) не регулирует дисковые операции базовой операционной системы. Поэтому раздел реального диска не должен одновременно использоваться (быть смонтирован) в ОС на базовом компьютере и в виртуальной машине.

Следовательно, вы должны удостовериться, что базовая ОС "не видит" раздел, с которым работает ОС виртуального компьютера. Безопасность работы с реальными дисками определяется выполнением этого требования. Поэтому, прежде чем подключить раздел реального диска к виртуальной машине, размонтируйте его в базовой ОС.

Если вам необходимо осуществить обмен данными между базовым и виртуальным компьютерами, можно подключать один и тот же диск к этим компьютерам поочередно. Для этого придется вначале смонтировать раздел в базовой ОС Linux, перенести на него необходимые данные, размонтировать диск, запустить VMware и виртуальный компьютер, скопировать данные на виртуальный диск, выключить VMware и снова отдать диск базовой ОС. Альтернативой такому очевидно неудобному способу переноса данных является использование сетевых возможностей ОС, таких как протоколы Samba или NFS, для переноса данных из одного компьютера в другой. Эти возможности будут рассмотрены в следующем разделе, а пока давайте научимся подключать физический диск (или раздел на таком диске) к уже созданному виртуальному компьютеру в качестве второго жесткого диска.

Подключение физического диска к виртуальному компьютеру

Итак, мы имеем виртуальный компьютер, на котором работает ОС Windows (в одном из ее вариантов), запускаемая с виртуального диска C:. И, предположим, у нас имеется раздел жесткого диска (пусть, для определенности, это будет раздел /dev/hda2 ), который был отформатирован в той же ОС от Microsoft (в FAT, FAT32 или NTFS, в зависимости от варианта ОС). Естественно, возникает желание получить доступ к этому разделу из виртуального компьютера. Попытаемся подключить этот раздел в качестве диска D: виртуального компьютера. Но прежде, чем описывать конкретные процедуры подключения, дадим некоторые предварительные сведения.

Права доступа к дискам

Жесткие диски, к которым вы хотите получить доступ из виртуального компьютера (и, в частности, диски, с которых происходит запуск операционных систем, как это будет описано в далее), должны быть доступны как по чтению, так и по записи для пользователей, запускающих систему VMware. В большинстве дистрибутивов Linux физические диски (такие как /dev/hda, /dev/hdb ) принадлежат группе disk. Если это так, то можно просто добавить пользователей системы VMware в эту группу. Можно также просто поменять владельца устройства. Пожалуйста, тщательно продумайте вопросы безопасности при выборе способа предоставления доступа к дискам. Самый простой и вполне приемлемый на персональном компьютере способ заключается в том, чтобы дать пользователям системы VMware доступ ко всем физическим устройствам /dev/hd[abcd], к которым надо обращаться из виртуальных машин, а в вопросах разграничении доступа положиться на конфигурационные файлы VMware.

Файл описания физического диска

Чтобы система VMware могла получить доступ к физическим дискам, для каждого из таких дисков должен быть создан небольшой файл, содержащий некоторые данные, необходимые виртуальной машине для получения доступа к разделам данного диска. В документации на VMware такой файл называют "Safe Raw Disk", мы будем называть его файлом описания физического диска. Вот типичный пример такого файла для компьютера, на котором установлены ОС Windows NT и Linux:

DEVICE /dev/hda
# Partition type: MBR
RDONLY 0 62
# Partition type: HPFS/NTFS
ACCESS 63 8193149
# Partition type: Linux swap
NO_ACCESS 8193150 8466254

Как видите, этот файл содержит информацию о разделах диска, типе файловой системы в каждом разделе (правда, только в строке комментария) и правах доступа к разделу. Эту информацию можно представить в виде табл. 18.1.

Таблица 18.1. Информация из файла описания диска
Тип раздела Размещение (сектора) Access Rights
Загрузочная запись С 0 по 62 включительно Read-Only
NTFS или FAT С 63 по 8193149 включительно Read-Write
Linux swap С 8193150 по 8466254 включительно Нет доступа

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

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

  1. Добавьте пользователя, от имени которого будете запускать систему VMware, в группу disk (это делается путем редактирования файла /etc/group суперпользователем).
  2. Убедитесь в том, что подключаемый физический диск не смонтирован в файловой системе базового компьютера.
  3. Чтобы создать файл описания физического диска, запустите систему VMware, выберите нужную конфигурацию (но не включайте питание виртуального компьютера) и откройте меню Settings| Configuration Editor, после чего щелкните по значку "+" слева от указания на IDE- или SCSI-диски.
  4. Найдите строку, в которой указано, что соответствующий диск не установлен ("Not installed"), и установите на нее подсветку (курсор). Предположим, например, что вы выбрали строку "P-S Not Installed" среди IDE-дисков. Значит виртуальная машина будет считать, что данный физический диск подключен как второй диск (slave) к первому контроллеру (primary IDE controller). Соответственно, если в группе SCSI-дисков найдется строка "SCSI 0:1 Not Installed", то для виртуального компьютера такой диск будет иметь номер 1 на SCSI-контроллере. Если строки "Not Installed" не найдется, то к Вашему виртуальному компьютеру подключено уже 4 IDE-диска (или, соответственно, 7 SCSI-дисков), т. е. достигнут предел. В таком случае удаляйте какой-нибудь диск, пользуясь кнопкой Remove.
  5. В поле Device Type установите (выберите) значение Raw Disk.
  6. В поле Name введите имя для файла описания физического устройства (например, raw_hda.dsk ).
  7. Щелкните по кнопке Create Raw Disk.
  8. В появившейся строке ввода укажите имя физического диска (не раздела, а именно диска, например, /dev/hda для IDE-диска или /dev/sda для SCSI).
  9. Появится новое окно, в котором выведен список разделов, имеющихся на данном физическом диске. Для каждого раздела укажите права доступа, которые будет иметь в данном разделе виртуальная машина. Для каждого раздела нужно выбрать один из следующих вариантов задания прав:
    • No Access - виртуальный компьютер не будет иметь возможности ни читать, ни писать в данный раздел. Этот вариант выбирают только в том случае, если необходимо проконтролировать попытки (несанкционированного) обращения к данному разделу.
    • Read/Write - виртуальный компьютер будет иметь возможность и читать, и производить запись в данный раздел. Эту опцию выбирают только для тех разделов, которые содержат файловые системы, "родные" для операционной системы виртуального компьютера.
    • Read-Only - виртуальный компьютер будет иметь возможность только читать из данного раздела. Выбирайте это вариант для всех остальных разделов на диске.
  10. Щелкните по кнопке Save. В некоторых случаях после этого может появиться окно, сообщающее, что два раздела на диске пересекаются (имеют общие сектора) и, следовательно, для них должны быть заданы одинаковые права доступа. Такого вообще-то быть не должно (и эту ситуацию необходимо как-то исправлять), но если все же такое окно появится, вы можете задать одинаковые права для обоих разделов и снова щелкнуть по кнопке Save. Файл описания физического диска будет записан в каталог, где хранятся остальные файлы Вашей виртуальной машины (что-то вроде /home/user1/vmware/nt4/ ).
  11. Щелкните по кнопке Install для того, чтобы присоединить выбранный физический диск к виртуальному компьютеру. Как и в случае виртуального диска, вы можете задать для физического диска один из трех возможных режимов работы: "с записью" ("Persistent"), "без записи" ("Nonpersistent") или "с отложенной записью" ("Undoable").

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

Если в последующем вам почему-либо потребуется отключить физический диск от виртуального компьютера (например, для того, чтобы смонтировать его в файловой системе базового компьютера), откройте Редактор конфигурации ( Settings | Configuration Editor ) и щелкните по экранной кнопке Remove на вкладке, соответствующей данному диску. На этой же вкладке имеется кнопка Edit Raw Disk..., с помощью которой можно откорректировать права доступа к разделам диска, определяемые файлом физического диска. Обратиться к этой опции вам придется в тех случаях, когда вы, скажем, заменили физический диск в компьютере или модифицировали разбиение его на разделы.

< Лекция 18 || Лекция 19: 12345678910
Владислав Гермак
Владислав Гермак

Приглашения оболочки

Одна из очень важных переменных имеет имя PS1. Эта переменная задает вид приглашения, которое bash выводит, когда ожидает ввода очередной команды пользователем. По умолчанию этой переменной присвоено значение "\s-\v\$ ".

"\s-\v\$ ". -значиние /v замените /u