• 18.1. Что такое "виртуальный компьютер"
  • 18.2. Инсталляция системы виртуальных машин
  • 18.3. Установка лицензии на использование VMware
  • 18.4. Создание виртуальной машины
  • 18.5. Первый сеанс работы на виртуальном компьютере
  • 18.6. О некоторых особенностях работы с виртуальным компьютером
  • 18.6.1 Копирование и вставка
  • 18.6.2 Приостановка и мгновенное восстановление состояния ВМ
  • 18.6.3 Выключение ВМ
  • 18.6.4 Использование прямого доступа к памяти
  • 18.6.5 Выделение оперативной памяти для VMware
  • 18.7. Подключение физических дисков к виртуальному компьютеру
  • 18.7.1 Необходимые меры предосторожности.
  • 18.7.2 Подключение физического диска к виртуальному компьютеру
  • 18.7.3 Загрузка ОС с физического диска
  • 18.8. Выход в локальную сеть
  • 18.8.1 Четыре варианта организации сетевых служб в системе VMware
  • 18.8.2 Средства поддержки сетевых возможностей в VMware
  • 18.8.3 Назначение MAC-адресов для виртуальных компьютеров
  • 18.8.5 Несколько примеров настройки выхода в сеть
  • 18.8.6 Доступ к дискам виртуального компьютера из ОС базового
  • 18.9. Несколько дополнительных замечаний
  • 18.9.1 Снова о предосторожностях
  • 18.9.2 Список пользователей, которым разрешен доступ к серверу Samba
  • 18.9.3 Как устранить "утечку" пакетов из виртуальной сети в реальную.
  • 18.9.4 О применении системы VMware
  • 18.9.5 Немного о быстродействии
  • 18.9.6 О первоисточниках
  • Глава 18. Виртуальный компьютер (система VMware)

    Операционная система Linux приобретает все большее число сторонников и уже начинает наступление на рабочие станции и ПК [П20.1]. Существует, однако, одно большое препятствие на пути дальнейшего распространения этой ОС - привычка большинства пользователей ПК работать с Microsoft Office. Пакет этот, несмотря на то, что его часто ругают, пользуется популярностью и, надо признать, заслуженно. Поэтому, даже работая постоянно с ОС Linux, поневоле приходится сталкиваться с файлами, созданными с помощью программ из MS Office, и сохраненными в собственных форматах: DOC, XLS, MDB. Как же быть приверженцам ОС Linux? Как организовать общение с миром приверженцев ОС Windows?

    Отвечая на этот вопрос можно сказать, что некоторые офисные пакеты для Linux, например, KOffice, или текстовый процессор AbiWord, умеют работать с файлами MS. Однако, пока что добиться 100%-ной совместимости в этом вопросе не удалось[27]. Можно, конечно, установить две операционные системы в разные разделы диска и перезагружаться в Windows, когда возникнет необходимость поработать с файлами от Microsoft Office [П20.2]. Но это весьма неудобно. Так же неудобны и различные программы-перекодировщики, преобразующие doc-файлы в html или другой открытый формат, доступный для программ под Linux. (С появлением пакета OpenOffice.org ситуация начинает изменяться, см. гл. 12).

    Короче говоря, сообщество приверженцев Linux поставлено перед проблемой. И оно, естественно, эту проблему решает и даже несколькими способами. Их основная идея проста - создать эмулятор Windows, работающий под Linux и позволяющий запускать программы этой ОС. Но пути решения этой задачи каждый выбирает разные. Насколько мне известно, наибольших успехов в реализации идеи создания эмулятора на сегодня добились две фирмы: VMware, создавшая систему виртуальных машин VMware, и Netraverse с продуктом Win4Lin [П20.3]. Оба эти продукта фактически позволяют запускать на компьютере вторую операционную систему, одновременно с уже работающей базовой ОС Linux, под управлением которой продолжает работать физический компьютер. В этой главе мы рассмотрим систему виртуальных машин от VMware.

    18.1. Что такое "виртуальный компьютер"

    Виртуальный компьютер - специальная программа, запускаемая в ОС Linux и моделирующая физический компьютер на основе процессора Intel x86. Монитором виртуального компьютера является окно графической оболочки X Window, в которое производится вывод информации. На рис. 18.1 видно, как выглядит Windows NT 4.0, работающая на виртуальном компьютере, запущенном из ОС Linux.

    Примечание

    Надо сразу сказать, что отдельная версия системы виртуальных машин разработана фирмой VMware и для того случая, когда базовой ОС является Windows NT/2000, так что можно и Linux запускать в окне графической оболочки Windows. Однако этот вариант здесь не рассматривается.

    Рис. 18.1. Windows NT 4.0, запущенная на виртуальном компьютере с базовой ОС Linux

    Виртуальный компьютер "строится" из следующего набора виртуальных устройств:

    • виртуальные IDE и SCSI жесткие диски;

    • виртуальный CD-ROM;

    • стандартный дисковод гибких дисков;

    • контроллер жестких IDE-дисков Intel 82371 PCI Bus Master, поддерживающий два первичных (primary) и два вторичных (secondary) IDE-диска;

    • адаптер SCSI-дисков, совместимый с BusLogic BT-958;

    • стандартный PCI графический адаптер, стандартная 101/102-клавишная клавиатура, PS/2-совместимая мышь;

    • сетевая карта AMD PCNET Family Ethernet adapter (PCI-ISA);

    • последовательные порты COM1-COM4, параллельные порты LPT1-LPT2;

    • звуковая карта, совместимая с Sound Blaster 16.

    Этот набор виртуальных устройств отличается от набора устройств реального компьютера, на котором запускается виртуальная машина (за исключением некоторых устройств, например, процессора и клавиатуры), и не зависит от последнего. Если операционная система устанавливается непосредственно внутри виртуального компьютера, то в процессе установки все эти устройства определяются корректно. При "включении питания" виртуального компьютера (что делается с помощью специальной кнопки Power On/Off в меню программы-эмулятора), видно, как BIOS осуществляет тестирование "аппаратной части" и даже, как и на физическом компьютере, можно войти в программу Setup, чтобы задать или изменить настройки BIOS. На виртуальный компьютер можно установить любую операционную систему и работать с ней обычным образом.

    Естественно, что две ОС, одновременно работающие на одном физическом компьютере, так или иначе борются за реальные ресурсы базового компьютера, а поэтому требования к нему достаточно высоки. Фирма-разработчик формулирует эти требования следующим образом:

    • Pentium II 266MHz или выше, с ОЗУ как минимум 64 Mбайт;

    • видео-адаптер, поддерживаемый сервером XFree86 (для получения всех преимуществ полноэкранного режима);

    • в качестве базовой операционной системы может использоваться ОС Linux с ядром 2.0.32 или выше, библиотекой glibc версии от glibc2 до glibc6 (с glibc1 не работает), для SMP-систем ядро должно быть версии 2.2.0 или выше;

    • для VMware необходим X-сервер, причем рекомендуется XFree86-3.3.4 или выше.

    18.2. Инсталляция системы виртуальных машин

    Для установки необходимо сначала скачать ПО с сайта компании VMware, а также получить лицензию на его использование. Можно, конечно, купить лицензию (стоимость ее около 300 долларов), однако можно пользоваться и временной (30-дневной) лицензией, тем более, что компания пока что позволяет без ограничений обновлять ее. Неудобство, конечно, но терпимое[28]. После регистрации вы получаете сообщение, что лицензия отправлена по почте, и в ожидании запускаете перекачку файла vmware-x.y.z-nnn.i386.rpm (где x.y.z - номер версии, а nnn - номер релиза). После этого надо выполнить следующие действия:

    1. Для инсталляции системы виртуальных машин надо иметь права пользователя root, поэтому запускаем терминальное окно и выполняем команду su.

    2. Производим установку rpm-пакета

     rpm -Uhv vmware-x.y.z-nnn.i386.rpm

    (где vmware-x.y.z-nnn.i386.rpm - имя файла, который вы скачали).

    3. Запускаем конфигурационный скрипт /usr/bin/vmware-config.pl.

    Замечание.

    Этот скрипт можно будет использовать для того, чтобы заново сконфигурировать VMware каждый раз, когда происходит замена или обновление ядра. Переустанавливать VMware при этом нет необходимости. При выполнении скрипта на экране появляется ряд вопросов, некоторые ответы на которые можно найти в [П20.4, П20.5]. Отмечу только два момента. Первый момент касается используемого ядра. Я натолкнулся на это затруднение, когда ставил VMware на систему с ядром 2.2.16. К сожалению, в этой версии ядра имеется какая-то особенность, препятствующая нормальной работе системы виртуальных машин, поэтому пришлось поменять ядро на более позднюю версию. Однако если вы установите новое ядро не из исходных текстов, а из rpm-пакета (при инсталляции Linux из дистрибутива Red Hat и его клонов тоже происходит установка ядра из такого пакета), то в системе может не оказаться файлов заголовков ядра. А один из вопросов, задаваемых скриптом /usr/bin/vmware-config.pl, касается местонахождения файлов заголовков, соответствующих запущенной версии ядра. Необходимые файлы можно установить (переключившись во второй терминал) из пакета kernel-headers-x.y.z.i386.rpm (соответствующей установленному у вас ядру) и указать правильный путь к ним (этот путь можно узнать, просмотрев вывод команды rpm -qpl kernel-headers-x.y.z.i386.rpm).

    4. После завершения работы скрипта можно покинуть shell, запущенный от имени root.

    Инсталляция собственно системы виртуальных машин завершена, однако надо еще установить лицензию, создать собственно виртуальный компьютер, установить на нем ОС и пакет VMware Tools.

    18.3. Установка лицензии на использование VMware

    Лицензия высылается в виде текстового файла, присоединенного к сообщению. Для ее установки необходимо перейти в домашний каталог, создать в нем подкаталог с именем ".vmware" (mkdir.vmware), и скопировать полученный файл лицензии в этот подкаталог. Убедитесь, что имя файла начинается с подстроки "license". Теперь можно уже запустить систему виртуальных машин командой vmware (исполняемый файл vmware находится в каталоге /usr/bin, так что должен запускаться без указания полного пути) и создать в ней собственно виртуальный компьютер (или несколько таких компьютеров).

    18.4. Создание виртуальной машины

    Для создания виртуальной машины (для краткости будем иногда писать ВМ) проще воспользоваться мастером конфигурации, но гораздо нагляднее этот процесс происходит при использовании "редактора конфигурации" (рис. 18.2), который запускается посредством выбора команды Configuration Editor в меню Settings системы VMware. Первым делом подключим жесткий IDE-диск, щелкнув по значку "+" рядом с надписью "IDE Devices". После того, как появятся 4 дополнительных строки, соответствующих четырем каналам контроллера жестких дисков, щелкните по строке с надписью "P-M. Not installed". Эта строка обозначает жесткий диск на первом канале (Primery Master) и утверждает, что таковой не установлен.

    Рис. 18.2. Окно редактора конфигурации

    Надо иметь в виду, что нельзя устанавливать второй диск (Slave), если не установлен первый диск (Master) на соответствующем канале контроллера (P-S не устанавливают до P-M, а S-S, соответственно, до S-M). Если не соблюсти это правило, то виртуальная машина не сможет загружаться с заданного таким образом диска. Обычно используют первую позицию, P-M (primary master), для подключения жесткого диска и третью позицию, S-M (secondary master), для диска CD-ROM. Возле надписи "Device Type" находится список выбора типа диска: виртуальный диск, плоский диск (plain disk), реальный диск (raw disk) и CD-ROM. Виртуальный диск (Virtual disk) - это файл в файловой системе базового компьютера, который для ОС виртуальной машины выглядит как реальный физический диск. Этот файл может располагаться как на диске базового компьютера, так и на удаленной файловой системе. Если создается виртуальная машина с виртуальным жестким диском, то можно установить на нее новую ОС без переразбиения физического диска и даже без перезагрузки базового компьютера. Плоский диск (plain disk) подобен виртуальному, но может иметь размеры более 2Гбайт. Он компонуется из нескольких файлов - экстентов (extents), размером не более 2 Гбайт. В отличие от виртуальных дисков при создании плоского диска все отводимое под такой диск пространство сразу занимается и заполняется нулями. Реальный диск (Raw disk) - это жесткий диск или раздел жесткого диска базового компьютера, к которому получает прямой доступ виртуальная машина. При подключении такого диска становится возможным загрузить в виртуальной машине операционную систему, ранее установленную в один из разделов базового компьютера (при условии, что этот раздел находится на локальном IDE или SCSI диске).

    После выбора типа диска надо выбрать один из трех возможных режимов его работы: persistent, nonpersisten, undouble.

    В режиме "с записью" ("Persistent") все операции записи немедленно производятся на реальный диск (или в файл, моделирующий реальный диск).

    В режиме "без записи" ("Nonpersistent") записи на диск, осуществляемые виртуальным компьютером, выглядят как операции записи на реальный диск, но фактически запись данных на физический диск не производится, и данные теряются по завершении сессии работы на виртуальном компьютере (когда "выключается питание" виртуального компьютера или производится перезагрузка ОС). В этом режиме VMware только читает с реального диска, а операции записи в течение сессии производятся во временный файл (redo log file), который уничтожается при завершении сессии. Все блоки данных, которые были модифицированы и записаны в файл.redo, при повторном обращении к ним считываются уже из этого файла, а не с реального диска. По завершению сессии файл уничтожается. Файл.redo располагается в том же каталоге, где по умолчанию располагаются файлы виртуальных дисков, однако его местоположение можно изменить, воспользовавшись командой Misc в меню редактора конфигурации. Режим "без записи" удобен, когда требуется запускать виртуальный компьютер из одного и того же состояния, например при тестировании разрабатываемого или для демонстраций нового ПО. В этом режиме могут работать все типы дисков.

    Режим "с отложенной записью" ("Undoable") очень похож на режим "без записи" в том смысле, что все операции записи на диск, осуществляемые виртуальным компьютером, фактически производятся во временный файл (.redo) на реальном диске. Но при отключении питания виртуального компьютера, пользователю предлагается на выбор три возможности: записать все изменения на реальный диск; отказаться от изменений, возвращая диск к его исходному состоянию; запомнить изменения, чтобы в следующей сессии начать работу с того состояния, в котором закончена работа в предыдущем сеансе (сохранить redo-файл). Режим полезен, когда надо поэкспериментировать с установкой нового ПО или выполнением некоторых административных функций, что может вызвать проблемы в работе компьютера. Если сохранить файл redo, то при следующем запуске ВМ будет предложено либо восстановить все изменения, сделанные в ходе предыдущей сессии, либо отказаться от них, либо отключить ВМ.

    Если вы только начинаете осваивать систему VMware, то оптимальным вариантом из числа рассмотренных является, на мой взгляд, подключение виртуального диска в режиме "Persistent".

    После установки типа диска и режима записи, введите в поле "Name" имя файла, которое будет использоваться для данного виртуального диска и укажите размер виртуального диска (если это просто виртуальный диск, то его объем не может быть больше 2 Гбайт). Первоначально файл виртуального диска имеет объем не более 1 Мбайт, и его размер возрастает только по мере установки программного обеспечения на виртуальную машину. После задания всех параметров виртуального диска щелкните по экранной клавише "Install".

    SCSI-диски устанавливаются вполне аналогично IDE-дискам.

    Установка CD-ROM еще проще, чем жесткого диска. Тут надо задать только один параметр - имя устройства. Можно еще определить, подключать ли CD-ROM автоматически при запуске виртуальной машины. Для подключения дисковода гибких дисков надо выбрать тип: устройство (Device) или файл (File), и задать или выбрать имя устройства (например, /dev/fd0 или /dev/fd1), определив, будет ли дисковод подключаться автоматически. Необходимо иметь в виду, что физический floppy-дисковод не может использоваться одновременно операционными системами двух (и более) виртуальных машин или виртуальным и базовым компьютером. В процессе работы с виртуальной машиной можно в любой момент отключить дисковод, воспользовавшись командой "Devices" главного меню. И, наоборот, можно подключить дисковод через ту же команду меню, освободив его предварительно в других ВМ и в базовом компьютере. На базовом компьютере для этого надо размонтировать диск (в Linux) или переключиться на какие-то каталоги других дисков во всех запущенных программах (если на базовом компьютере запущена Windows).

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

    Остается только выбрать операционную систему и задать значения некоторых дополнительных параметров (команда Misc). Для первого раза проще всего согласиться с тем вариантом, который задается по умолчанию. Единственный из этих дополнительных параметров, значение которого нужно ввести, это путь к файлу .redo, и то только в том случае, когда необходим режим работы "с отложенной записью".

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

    Поскольку на созданный таким образом виртуальный компьютер еще не установлена ОС, переходим к ее установке. Процедура установки ОС - обычная (разве что потребуется войти в BIOS виртуального компьютера и установить возможность загрузки с CD-ROM): вставляется загрузочный CD-ROM в дисковод и запускается виртуальный компьютер.

    Сразу же после первого запуска ОС на виртуальной машине просто необходимо установить дополнительные компоненты для ОС, которые называются VMware Tools и включают в себя некоторые дополнительные драйверы, в частности драйвер SVGA. Хотя система VMware способна работать и без него, однако из графических режимов на виртуальной машине будет доступен только режим VGA (640 х 480, 16 цветов). Если же установить драйвер SVGA из VMware Tools, то будут поддерживаться высокие разрешения дисплея и глубина цвета до 32 бит, причем повысится и быстродействие графической подсистемы.

    Для установки VMware Tools после запуска ОС на виртуальном компьютере передайте управление базовой ОС (комбинацией клавиш ‹Ctrl›+‹Alt›+‹Esc›) и выберите команду меню Settings | VMware Tools Install программы VMware. Вы увидите сообщение о том, что конфигурация виртуальной машины временно изменена для установки VMware Tools. Изменение конфигурации виртуальной машины заключается в том, что вместо диска A: подключается образ дискеты, содержащий необходимые для установки VMware Tools файлы. Запустите с этой виртуальной дискеты программу VMwareTools.exe (из подкаталога, соответствующего установленной Вами ОС). В процессе инсталляции программа установки предупреждает, что будет запущена утилита изменения установок видеоадаптера, с чем нужно согласиться, после чего остается только нажать кнопку Finish. Инструкции по конфигурации видео-драйвера даются в открывающемся автоматически окне программы Notepad. После того, как откроется окно свойств экрана, доберитесь до вкладки Адаптер, щелкните по кнопке Изменить и выберите вариант "Установить с диска" (остальное понятно из рис. 18.3).

    Рис. 18.3. Установка драйвера SVGA

    18.5. Первый сеанс работы на виртуальном компьютере

    Запускать систему VMware можно двумя способами. Первый заключается в том, что открывается окно терминала, и вводится команда vmware. Второй способ (в KDE) - в главном меню KDE выбирается команда Запустить программу… (горячие клавиши - ‹Alt›+‹F2›) и в появившемся окне вводится команда vmware. Независимо от способа запуска вы увидите диалоговое окно выбора конфигурации виртуального компьютера, представленное на рис. 18.4.

    Рис. 18.4. Окно выбора конфигурации

    Поскольку у вас пока создан только один виртуальный компьютер, то достаточно подсветить строку с именем единственного конфигурационного файла, а затем надо "включить питание" кнопкой Power On главного окна программы VMware.

    Дальше все будет происходить так, как и при загрузке выбранной ОС на обычном компьютере. В частности, если есть желание посмотреть или изменить установки BIOS виртуального компьютера, то надо успеть вовремя нажать клавишу ‹F2›, чтобы попасть в меню BIOS.

    Первое, о чем надо помнить при работе с виртуальной машиной - это способ выхода из окна виртуальной машины комбинацией клавиш ‹Ctrl›+‹Alt›+‹Esc›, что особенно полезно при работе в полноэкранном режиме ВМ. В этот режим можно переключиться с помощью кнопки Full Screen на панели VMware. В этом случае будет полная иллюзия того, что физический компьютер работает под управлением Windows и только "волшебная" комбинация клавиш ‹Ctrl›+‹Alt›+‹Esc› может вернуть вас к действительности.

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

    Запустите виртуальную машину. На всякий случай проверьте, что виртуальная машина имеет доступ к дисководу CD-ROM или дисководу гибких дисков (в зависимости от того, какой из них потребуется в процессе инсталляции). Для этого можно воспользоваться командой Devices главного меню системы VMware.

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

    После инсталляции ОС я установил на своем виртуальном компьютере MS Office и еще ряд программ, с которыми привык работать в старой системе. Сделайте то же самое и начинайте работать!

    18.6. О некоторых особенностях работы с виртуальным компьютером

    18.6.1 Копирование и вставка

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

    18.6.2 Приостановка и мгновенное восстановление состояния ВМ

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

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

    Для сохранения состояния ВМ требуется:

    1. Вернутся в режим работы в окне (комбинация клавиш ‹Ctrl›+‹Alt›+‹Esc›).

    5. Щелкнуть по клавише Suspend на панели VMware.

    После этого можно безопасно выйти из системы VMware через команду меню File | Exit.

    Рис. 18.5. Виртуальная машина приостановлена

    Для возврата в состояние до приостановки:

    1. Запустить VMware и выбрать ту виртуальную машину, работу которой приостановили.

    6. Щелкнуть по кнопке Resume на панели VMware.

    Все приложения, с которыми вы работали в момент приостановки ВМ, снова запустятся, причем окажутся в том самом состоянии, какое было в момент остановки.

    18.6.3 Выключение ВМ

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

    18.6.4 Использование прямого доступа к памяти

    Windows 95 OSR2 и более поздние версии обладают возможностью использования прямого доступа к памяти (Direct Memory Access - DMA) при обращении к IDE-дискам. Однако эта опция не часто используется по умолчанию, хотя ее применение в виртуальном компьютере может дать существенный прирост производительности. Для того чтобы задействовать режим DMA в Windows 95/98 на виртуальном компьютере, запустите Панель управления и выберите меню Система; в появившемся окне Свойства: Система выберите вкладку Устройства, найдите пункт Дисковые накопители и раскройте список, щелкнув по значку "+". Затем последовательно для каждого подключенного IDE-диска поставьте отметку (галочку) рядом с надписью "DMA", после чего перезапустите ОС. Не забудьте задействовать режим DMA в базовой ОС Linux. О том, как это делается, было подробно рассказано в разд. 9.5.

    В результате этих усилий VMware и все запускаемые в виртуальном компьютере приложения будут работать быстрее.

    18.6.5 Выделение оперативной памяти для VMware

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

    Первый конфигурационный параметр, значение которого может устанавливаться пользователем, - это общее количество памяти, которое резервируется для всех запущенных виртуальных машин. Этот параметр может быть задан перемещением движка в окне, вызываемом через команду Host Reserved Memory в меню Settings.

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

    Память, используемая системой VMware, включает память, отдаваемую операционной системе виртуального компьютера, а также некоторое количество избыточной памяти, необходимой для функционирования самого виртуального компьютера. Объем этой избыточной памяти зависит от нескольких факторов, но обычно не превышает 10 мегабайт. Кроме того, для нормального функционирования ОС виртуальной машины, надо зарезервировать достаточное для этой ОС количество памяти.

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

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

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

    Впрочем, система VMware сама ограничивает количество ВМ, которые могут быть одновременно запущены, исходя из количества зарезервированной для нее ОП. Если вы пытаетесь включить питание виртуальной машины, а количества зарезервированной ОП для ее работы недостаточно, включения ВМ не произойдет.

    Второй конфигурационный параметр, который могут изменять пользователи системы VMware, - это объем физической оперативной памяти, выделяемый данной виртуальной машине. Значение этого параметра задается в Редакторе конфигурации (Settings › Configuration Editor › Memory). Минимальное значение этого параметра определяется требованиями ОС. Мастер конфигурации вообще не запрашивает у пользователя значение этого параметра, выбирая его исходя из того, какую ОС выбрал пользователь.

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

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

    • Будут ли другие виртуальные машины, запущенные наряду с данной ВМ, конкурировать с ней за разделение оперативной памяти.

    • Какие приложения будут запускаться на базовом компьютере одновременно с данной виртуальной машиной.

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

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

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

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

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

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

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

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

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

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

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

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

    Жесткие диски, к которым вы хотите получить доступ из виртуального компьютера (и, в частности, диски, с которых происходит запуск операционных систем, как это будет описано в разд. 18.7.3), должны быть доступны как по чтению, так и по записи для пользователей, запускающих систему 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 - виртуальный компьютер будет иметь возможность только читать из данного раздела. Выбирайте это вариант для всех остальных разделов на диске.

    7. Щелкните по кнопке Save. В некоторых случаях после этого может появиться окно, сообщающее, что два раздела на диске пересекаются (имеют общие сектора) и, следовательно, для них должны быть заданы одинаковые права доступа. Такого вообще-то быть не должно (и эту ситуацию необходимо как-то исправлять), но если все же такое окно появится, вы можете задать одинаковые права для обоих разделов и снова щелкнуть по кнопке Save. Файл описания физического диска будет записан в каталог, где хранятся остальные файлы Вашей виртуальной машины (что-то вроде /home/user1/vmware/nt4/).

    8. Щелкните по кнопке Install для того, чтобы присоединить выбранный физический диск к виртуальному компьютеру. Как и в случае виртуального диска, вы можете задать для физического диска один из трех возможных режимов работы: "с записью" ("Persistent"), "без записи" ("Nonpersistent") или "с отложенной записью" ("Undoable").

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

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

    18.7.3 Загрузка ОС с физического диска

    Раз имеется возможность подключать физические диски к виртуальному компьютеру, то, естественно, возникает вопрос: "А нельзя ли загружать операционную систему виртуального компьютера с физического диска?" Такой вопрос особенно актуален в том случае, когда до установки системы VMware на Вашем компьютере уже были установлены в разные разделы как одна из операционных систем Windows, так и ОС Linux (в которой вы запускаете виртуальный компьютер). И ответ на этот вопрос положителен. Система VMware может даже использовать загрузчики, установленные ранее на компьютере. Загрузчик будет работать внутри VMware и даст возможность пользователю выбрать операционную систему, запускаемую на виртуальном компьютере. Можно и заново установить, например, Windows 98 на физический диск, а потом запускать ее в виртуальной машине.

    VMware пока что (в версии 2) поддерживает загрузку с реальных дисков только для IDE устройств (в то время как файл, моделирующий виртуальный диск, может быть расположен как на IDE, так и на SCSI диске)[29]. Однако использование ОС, установленной на физическом диске, сопряжено с некоторыми особенностями, которые надо учитывать при настройке обеих ОС (даже кроме тех опасностей, о которых мы уже говорили в разд. 18.7.1). Первой из таких особенностей является необходимость создания отдельного профиля оборудования для Windows.

    Операционные системы фирмы Microsoft (включая Windows 95, Windows 98, Windows NT 4.0) используют понятие "профиля оборудования". Каждый профиль определяет некоторый набор известных системе устройств. Если заданы два или более профиля, пользователю в процессе загрузки предлагается выбрать один из них.

    ОС Windows 95, Windows 98 и Windows 2000 благодаря механизму Plug and Play в процессе загрузки проверяют соответствие реальных устройств указанному профилю оборудования. Несоответствие приводит к тому, что снова запускается механизм определения устройств и установки драйверов. Хотя в большинстве случаев этот процесс завершается успешно, это существенно замедляет загрузку.

    Windows NT не поддерживает Plug and Play и использует профиль оборудования для инициализации устройств. Несоответствие реального набора тому, что указано в профиле, вызывает выдачу сообщения об ошибке и отключение (точнее неподключение) устройства.

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

    1. Вначале проинсталлируйте операционную систему, которую вы хотите запускать на виртуальном компьютере, на физический IDE-диск реального компьютера (естественно, это делать не нужно, если ОС уже была установлена ранее).

    2. До запуска системы VMware загрузите эту ОС (имеется в виду одна из ОС семейства Windows) на реальном компьютере и создайте два профиля оборудования. Для этого откройте Панель управления, войдите в меню Система и переключитесь на вкладку Профиль оборудования. Там уже имеется как минимум один профиль, который называется "Текущий (Original configuration)". Щелкните по кнопке Копировать и назовите новый профиль, например, "Виртуальная машина".

    3. Только для Windows NT/2000: Отключите некоторые устройства во вновь созданном профиле. Для этого откройте окно Устройства в Панели управления, выберите отключаемое устройство и нажмите экранную клавишу Остановить. Отключить необходимо аудиоплату, MIDI, джойстик, плату Ethernet и другие сетевые, а также USB устройства (отключать их надо только во вновь созданном профиле, не промахнитесь). Если вы установили и предполагаете запускать в виртуальном компьютере Windows 95 или Windows 98, то отключать устройства не требуется. Они будут отключены автоматически на стадии загрузки ОС.

    4. Перезагрузите компьютер и запустите Linux.

    5. Убедитесь, что раздел физического диска, который отведен для использования операционной системой виртуального компьютера, не смонтирован в Linux. Удалите или закомментируйте соответствующую строку в файле /etc/fstab, а в данном сеансе размонтируйте этот раздел из командной строки.

    6. Установите права доступа к разделам жесткого диска. О том, как это сделать, было сказано в разд. 18.7.2. Самый простой и вполне приемлемый способ заключается в том, чтобы включить пользователей системы VMware в группу disk, дав тем самым доступ ко всем физическим устройствам /dev/hd[abcd], которые содержат операционные системы или загрузчик, а в вопросах разграничении доступа положиться на конфигурационные файлы VMware. Таким образом обеспечивается доступ для загрузчика к файлам, необходимым для запуска операционных систем (например, LILO требуется доступ по чтению к каталогу /boot в разделе Linux для запуска операционных систем, отличных от Linux, которые могут быть расположены на других разделах или других дисках).

    7. Сконфигурируйте виртуальную машину под вновь установленную операционную систему (используя Мастер конфигурации или Редактор конфигурации). При выполнении процедуры конфигурации для реальных дисков учтите следующие моменты:

     • При выборе типа виртуального диска выберите вариант "Existing Partition".

     • Для раздела диска, в котором находится соответствующая операционная система, установите опцию "read/write" (для этого надо щелкнуть мышкой по экранной кнопке Partitions… в окне Редактора конфигурации, соответствующем нужному жесткому диску). Для основной загрузочной записи (Master boot record - MBR) и для других разделов диска(ов) рекомендуется дать право только на чтение (read only), поскольку, например, загрузчик LILO для загрузки операционной системы должен иметь возможность прочитать файл из каталога /boot в Linux-разделе.

    Примечание

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

    8. Запустите VMware и проверьте созданную конфигурацию. Для этого можно дать команду vmware ‹config-file›, где ‹config-file› - это полный путь к конфигурационному файлу, созданному Мастером конфигурации (имена таких файлов оканчиваются на .cfg). Можно также дать просто команду vmware и открыть файл конфигурации через меню File | Open. После этого откройте меню Settings | Configuration Editor и убедитесь в том, что в конфигурации IDE- дисков указан хотя бы один физический диск ("Raw Disk") и для него введено имя файла описания диска (raw disk description file). Имена этих файлов обычно имеют вид ‹configuration-name›.hda.dsk, ‹configuration-name›.hdb.dsk, и т. д. Можно проверить и другие опции конфигурации, особенно такие, для которых вы приняли значения по умолчанию, например, вы можете изменить значение объема памяти, выделяемой виртуальной машине.

    9. Включите питание виртуальной машины (кнопка Power On). Система VMware запускает Phoenix BIOS, после чего считывается главная загрузочная запись загрузочного диска (master boot record - MBR). Если вы сконфигурировали систему с использованием нескольких IDE дисков, VMware BIOS будет пытаться произвести загрузку ОС с этих дисков в следующей последовательности:

     • Primary Master

     • Primary Slave

     • Secondary Master

     • Secondary Slave

    Если у вас несколько SCSI-дисков, VMware BIOS производит загрузку в порядке номеров SCSI устройств.

    Если в Вашей системе сконфигурированы как SCSI, так и IDE диски, VMware BIOS сначала пытается загрузить ОС со SCSI-устройств, затем - с IDE-дисков. Опрос устройств производится в той же последовательности, как было сказано выше.

    Порядок обращения к дискам в процессе загрузки можно изменить через меню Boot в Phoenix BIOS виртуальной машины. Для этого после включения питания VMware нажмите клавишу ‹F2›, чтобы попасть в меню BIOS.

    10. Если у вас установлено несколько операционных систем (многовариантная загрузка), то выберите нужную ОС тем же способом, как вы делали это до установки системы VMware (из меню, предлагаемого при загрузке).

    11. В процессе загрузки ОС должно появиться меню выбора конфигурации (если, конечно, вы создали отдельный профиль оборудования для виртуального компьютера):

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

    Рис. 18.6. Выбор профиля оборудования для виртуального компьютера

    12. Только для Windows 2000: После того, как вы запустите Windows 2000 (в качестве ОС на виртуальном компьютере) вы увидите диалоговое окно Найдено новое оборудование (Found New Hardware), в котором предлагается установить новый драйвер для видео-контроллера. Этого делать не нужно. Щелкните по кнопке Отмена (Cancel) для того, чтобы закрыть диалоговое окно и откажитесь от предлагаемой перезагрузки компьютера. Windows 2000 автоматически обнаружит и установит драйвер для сетевой карты AMD PCnet PCI Ethernet. После этого вы должны установить пакет VMware Tools для Windows (на виртуальном компьютере). После того, как будет установлен SVGA-драйвер от фирмы VMware, Inc. (входящий в состав пакета VMware Tools для Windows), перезагрузите ОС Windows 2000 на виртуальной машине. После перезагрузки вы можете поменять разрешение экрана у виртуальной машины (Свойства экрана | Параметры).

    Если вы хотите использовать звуковую карту, работая с ОС Windows 2000 на виртуальном компьютере, прочитайте руководство по ее подключению на сайте фирмы VMware.

    Только для Windows 95/98: вы увидите диалоговое окно Обнаружено новое оборудование. Windows предложит вам произвести поиск драйверов для него. Для большинства устройств драйверы уже установлены при инсталляции системы, однако, в некоторых случаях может понадобиться установочный CD ROM диск. Windows попросит вас несколько раз перезагрузиться при установке новых драйверов.

    В некоторых случаях Windows может не распознать CD-ROM диск, когда выдается запрос на поиск драйверов. В таком случае рекомендуется попытаться указать в качестве пути к драйверу каталог C:\windows\system\ или отказаться от установки драйвера данного конкретного устройства. Подключение таких устройств может быть выполнено позже.

    Когда Windows установит виртуальные устройства и драйверы для них, надо удалить из системы неработающие устройства, соответствующие реальному оборудованию. Для этого используйте вкладку Система | Устройства в Панели управления. Выберите неработающее устройство и щелкните по кнопке Удалить. Только учтите, что нужно предварительно выбрать профиль оборудования, соответствующий виртуальному компьютеру, чтобы не удалить устройства, работающие при запуске ОС с физического диска.

    Только для Windows NT: После завершения загрузки ОС просмотрите протокол загрузки, чтобы определить те устройства, которые не подключились. Вы можете отключить их в профиле "Виртуальный компьютер", используя менеджер устройств (Панель управления | Устройства).

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

    Только для Windows 95/98: Если какое-то виртуальное устройство отсутствует, воспользуйтесь опцией Панель управления | Добавить новое оборудование.

    14. Установите VMware Tools (если вы еще не сделали этого). Пакет VMware tools будет запускаться в обеих конфигурациях оборудования, но окажет какое-то влияние на работу только в конфигурации "Виртуальный компьютер".

    Примечания.

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

    2. Если вы при задании конфигурации виртуального компьютера установили для реального диска режим "с отложенной записью" (undoable), то при перезагрузке ОС вы должны будете либо согласиться с тем, чтобы все операции с диском, проделанные внутри виртуальной машины были сохранены на диске, либо отказаться от сохранения изменений. Подробнее о режимах работы дисков см. в разд. 18.4.

    18.8. Выход в локальную сеть

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

    18.8.1 Четыре варианта организации сетевых служб в системе VMware

    Каждая виртуальная машина, которую вы создаете, может иметь свою независимую конфигурацию сетевых служб. Существует 4 возможных варианта конфигурации:

    • Без подключения к сети (No networking).

    • Host-only networking.

    • Bridged networking.

    • Custom networking.

    Конфигурация "No networking" просто означает, что виртуальная машина работает сама по себе, не имея возможности взаимодействовать с операционной системой базового компьютера или другими компьютерами (включая виртуальные компьютеры, работающие на том же базовом). Этот вариант стоит рассматривать только в том случае, когда виртуальная машина будет использоваться, например, в целях тестирования ПО или для обеспечения безопасности хранимой на ней информации. Такая конфигурация задается очень просто - достаточно при конфигурировании виртуальной машины не подключать сетевой адаптер (либо отключить его впоследствии).

    Вариант "Host-only networking" означает, что виртуальный компьютер сможет взаимодействовать с операционной системой базового компьютера и любым виртуальным компьютером, запущенным на базовом компьютере, и тоже имеющим сетевые возможности. Но виртуальный компьютер в такой конфигурации не сможет взаимодействовать с системами, находящимися вне базового компьютера (если только не используется proxy-сервер, запущенный на базовом компьютере). Создается как бы частная виртуальная сеть, которая состоит из базового компьютера и всех запущенных на нем виртуальных (в частности, одного виртуального). Обычно все хосты такой сети используют стек протоколов TCP/IP, хотя жесткого требования использовать именно его нет. Но какие бы протоколы ни использовались, каждый компьютер в такой сети должен иметь свой адрес. Адреса могут назначаться "статически" или "динамически". В последнем случае используются такие протоколы, как DHCP (Dynamic Host Configuration Protocol).

    Если вариант "Host-only networking" задействуется при инсталляции системы VMware, на базовом компьютере по умолчанию запускается DHCP-сервер. Этот сервер используется для поддержки протокола DHCP только для виртуальных компьютеров, подключаемых к виртуальной сети через интерфейс vmnet1. Операционные системы виртуальных компьютеров, в которых задана опция использования DHCP, при загрузке получают IP-адрес автоматически, без какой-либо дополнительной настройки. Операционные системы Windows по умолчанию обычно подключают использование динамически назначаемых адресов.

    Если в настройках операционной системы не задано использование протокола DHCP, то в системе необходимо явно прописать "статический IP-адрес". Этот вариант адресации имеет смысл применять в том случае, когда вы хотите, чтобы виртуальные машины могли обращаться друг к другу по именам, а не по IP-адресам. Но в таком случае вы должны поддерживать базу данных соответствий имен и IP-адресов на каждом компьютере или запустить на базовом компьютере сервер имен (DNS). В документации фирмы VMware рекомендуется применять статическую IP-адресацию (или сконфигурировать DHCP-сервер так, чтобы виртуальной машине всегда назначался один и тот же IP-адрес) в том случае, если вы намереваетесь использовать виртуальный компьютер в течение длительного периода времени. Если же вы устанавливаете его не надолго, используйте DHCP и предоставьте ему возможность распределять IP-адреса.

    Отметим, что обычно (в соответствии с принятыми в Интернете соглашениями) IP-адреса для виртуальных сетей распределяются следующим образом:

    Таблица 18.2. Распределение IP-адресов

    Диапазон Используется для Пример
    ‹net›.1* Базовый компьютер 192.168.0.1
    ‹net›.2 - ‹net›.127 Статические адреса 192.168.0.1 - 192.168.0.127
    ‹net›.128 - ‹net›.254 Распределяемые через DHCP 192.168.0.128 - 192.169.0.254
    ‹net›.255 Широковещательный запрос 192.168.0.255

    *здесь ‹net› - это сетевая часть адреса, выбранная для виртуальной сети).

    Вариант "Host-only networking" можно использовать, когда сам базовый компьютер не подключен ни к какой сети, или когда вы хотите изолировать виртуальный компьютер от внешних (по отношению к базовому) систем. Такая конфигурация аналогична случаю, когда некая фирма или корпорация соединяет свою внутреннюю сеть с Интернетом через файерволл или прокси-сервер. Чтобы сконфигурировать виртуальную машину для работы в данном варианте, надо подключить к виртуальному компьютеру сетевой адаптер (виртуальный) и выбрать для него тип подключения "Host-only networking". О некоторых необходимых действиях по настройке конфигурации для этого варианта мы поговорим чуть позже.

    Вариант "Bridged networking" означает, что виртуальная машина будет подключаться к локальной сети, используя реальную Ethernet-плату Вашего основного компьютера, которая выполняет функции "моста" между виртуальной машиной и реальной физической сетью. Это позволяет виртуальному компьютеру выглядеть со стороны реальной сети как полнофункциональный хост. Назначение сетевых адресов в этом случае осуществляется в соответствии с правилами, принятыми в реальной локальной сети. Вы можете подключаться по протоколу DHCP, либо получить у администратора сети статический IP-адрес.

    Виртуальная машина, подключенная по этому варианту, может использовать любые сетевые сервисы, предоставляемые в локальной сети, к которой она подключена: принтеры, файл-серверы маршрутизаторы и т. д. Точно так же и она может предоставить в сеть какие-то из своих ресурсов. Это наиболее часто используемая конфигурация сетевых служб виртуального компьютера. Для того, чтобы настроить данный вариант сетевой конфигурации, вам необходимо установить сетевой адаптер и выбрать для него тип подключения "bridged". В операционной системе виртуального компьютера надо будет произвести настройку сетевых служб.

    Вариант "Custom networking" означает, что ваш виртуальный компьютер будет иметь возможность использовать как реально существующее Ethernet-соединение вашего основного компьютера, так и виртуальную сеть (т. е. этот вариант можно было бы обозначить как "Bridged and Host-only Networking"). Этот вариант предоставляет широкие возможности по построению сети из виртуальных компьютеров. Например, можно организовать виртуальную частную сеть из виртуальных компьютеров, размещающихся на нескольких физических хостах реальной сети. Однако, как указывается в фирменной документации, настройка таких сетей требует хорошего понимания принципов построения локальных сетей и умения применять эти принципы на практике, так что может быть рекомендована только для опытных пользователей. Более того, процедуры настройки этого варианта в фирменной документации практически не описаны. Поэтому далее будут рассматриваться только два варианта: "Host-only" и "Bridged networking".

    18.8.2 Средства поддержки сетевых возможностей в VMware

    Поддержка сетевых возможностей VMware на базовом компьютере осуществляется с помощью специальных драйверов, которые организуют четыре виртуальных сетевых интерфейса: vmnet0, vmnet1, vmnet2 и vmnet3. Каждый интерфейс ассоциируется с виртуальным Ethernet-хабом, через который к базовому хосту может быть подключено любое число виртуальных компьютеров. Обычно vmnet0 используется в варианте "bridged networking", vmnet1 используется в варианте "host-only networking", а оставшиеся два интерфейса служат для организации варианта "bridged networking and host-only networking". В дополнение к этим интерфейсам имеются два приложения: vmnet-bridge и vmnet-dhcpd (соответствующие файлы находятся в каталоге /usr/bin). Программа vmnet-bridge используется в варианте "bridged networking" для поддержки прозрачного взаимодействия между vmnet0 и реальным сетевым интерфейсом, обычно eth0. Программа vmnet-dhcpd запускается как отдельный процесс в варианте "host-only networking". Этот процесс обеспечивает поддержку протокола DHCP для виртуальных машин, запущенных через vmnet1.

    Начиная с версии 2.0 VMware Workstation для Linux одновременно с инсталляцией системы VMware на базовом компьютере может быть установлен сервер Samba, который необходим для предоставления ресурсов базового компьютера через сеть. Правда, сервер этот слегка модифицирован по сравнению с обычным Samba-сервером с той целью, чтобы обеспечить поддержку виртуальных Ethernet-адаптеров (в своей документации фирма VMware выражает надежду, что эти изменения войдут в следующие выпуски стандартного Samba-сервера). Если в ОС Linux, запущенной на базовом компьютере, уже запущен Samba-сервер, или вы хотите по каким-то причинам использовать стандартный вариант этого сервера, вы не должны устанавливать Samba-сервер при инсталляции системы VMware.

    Вообще говоря, можно запустить на базовом компьютере одновременно как стандартный сервер Samba, так и тот вариант этого сервера, который поставляется вместе с системой VMware Workstation. Однако при этом надо учитывать, что версия стандартного Samba-сервера должна быть не ниже 2.0.6 и он должен быть корректно сконфигурирован. Определить версию стандартного Samba-сервера можно командой smbd -V, а для корректной настройки его фирма VMware предлагает воспользоваться примером конфигурационного файла smb.conf, размещенным на сайте фирмы.

    Поддержка сетевых возможностей в операционной системе виртуального компьютера осуществляется с помощью виртуального Ethernet-адаптера(ов). К одному виртуальному компьютеру можно подключить до 3 таких адаптеров и они "представляются" операционной системе как адаптеры типа AMD PCNET PCI. Большинство операционных систем умеют распознавать такие адаптеры и автоматически подключают соответствующий драйвер. Поэтому для завершения конфигурирования сети в ОС виртуального компьютера остается только корректно задать необходимые параметры сетевого подключения (сетевой адрес компьютера, маску подсети, IP-адрес сервера имен и т. д.).

    18.8.3 Назначение MAC-адресов для виртуальных компьютеров

    Когда "включается питание" виртуального компьютера, система VMware автоматически назначает ему MAC-адрес (уникальный адрес физического устройства, используемый на канальном уровне для управления доступом к устройствам). Система гарантирует, что виртуальным машинам будут присвоены уникальные MAC-адреса в рамках одного базового компьютера. Но не гарантируется, что при каждом запуске виртуального компьютера ему будет назначаться один и тот же MAC-адрес. Точно так же система не может обеспечить (хотя и пытается это сделать) назначение уникальных адресов для виртуальных компьютеров, запускаемых на нескольких базовых компьютерах в одной физической сети.

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

    ethernet0.address = 00:50:56:XX:YY:ZZ

    где 'XX' - шестнадцатеричное значение из интервала 00h-3Fh, 'YY' и 'ZZ' - шестнадцатеричные значения из интервала 00h - FFh (система VMware не позволяет использовать произвольные адреса, так что надо поддерживаться именно такого формата).

    Заметим, что если вы, придерживаясь указанного формата, присвоите фиксированный адрес только некоторым виртуальным компьютерам в сети (а другие будут получать адреса динамически), конфликтов между адресами, назначенными "вручную", и адресами, назначенными автоматически, возникнуть не должно. 18.8.4 Установка средств сетевой поддержки

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

    Но прежде, чем заниматься таким подключением, вы должны определить для себя, какой из вариантов подключения вы будете использовать: "Host-only" или "Bridged networking" (как было сказано выше вариант "Custom" мы не рассматриваем). Эти два варианта ниже будут рассмотрены отдельно.

    Хотя в разделе об инсталляции системы VMware было сказано, при задании конфигурации виртуального компьютера можно отказаться от конфигурирования сетевой поддержки, однако для того, чтобы такую поддержку задействовать, вам придется переустановить систему VMware. К счастью, сделать это очень просто, причем при такой переинсталляции не нарушается конфигурация созданных в системе виртуальных компьютеров (в частности, сохраняется вся информация, записанная на виртуальных дисках). Дело в том, что и конфигурация виртуальных машин и все относящиеся к ним файлы хранятся в двух подкаталогах домашнего каталога пользователя, создавшего виртуальный компьютер: ~/vmware и ~/.vmware. Эти каталоги не изменяются при переустановке ПО VMware, и, после такой переустановки, ранее созданные виртуальные машины будут снова запускаться без проблем (по крайней мере, в том случае, если вы не меняете версии ПО).

    Для того, чтобы переустановить систему VMware надо сначала удалить ее, а потом установить заново. Если она устанавливалась из rpm-пакета, то переустановка выполняется командами

    [root]# rpm -qa | grep VMware

    (позволяет узнать точное имя установленного пакета, которое нужно в следующей команде)

    [root]# rpm -e VMware-2.0.3-799

    [root]# rpm -Uhv VMware-2.0.3-799.i386.rpm

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

    Если вы устанавливали систему из tar-архива, то для ее удаления надо запустить скрипт vmware-uninstall.pl.

    После того, как вы переустановили ПО, необходимо (как и при первой инсталляции) запустить скрипт vmware-config.pl, и теперь уже не пропускать этап задания конфигурации сети. Ниже приводится образец диалога, который происходит на этом этапе:

    -------------------------------------------------------------------------

    Do you want this script to automatically configure your system to allow your Virtual Machines to access the host filesystem? (yes/no/help)


    The version of Samba used in this version of VMware is licensed as described in the "/usr/share/doc/vmware/SAMBA-LICENSE" file.

    Hit enter to continue.


    Enabling networking (this is required to share the host filesystem).

    Trying to find a suitable vmnet module for your running kernel.


    None of VMware's pre-built vmnet modules is suitable for your running kernel. Do you want this script to try to build the vmnet module for your system (you need to have a C compiler installed on your system)? [yes]


    Extracting the sources of the vmnet module. Building the vmnet module.

    The module loads perfectly in the running kernel.


    Enabling host-only networking (this is required to share the host filesystem).

    Do you want this script to probe for an unused private subnet? (yes/no/help) [yes]


    What will be the IP address of your host on the private network? 192.168.36.20

    What will be the netmask of your private network? 255.255.255.0

    -------------------------------------------------------------------------

    Ответ на первый из приведенных в этом примере вопросов определяет, будет ли на базовом компьютере установлен Samba-сервер фирмы VMware. Если вы отвечаете утвердительно ("yes"), то на базовом компьютере устанавливается Samba-сервер vmware-smbd (это специально доработанная фирмой версия сервера Samba, см. выше). После этого Ваше решение требуется еще только для того, чтобы решить, задать ли IP-адреса самому или предоставить их выбор скрипту. Это решение вы принимаете, когда отвечаете на вопрос

    "Do you want this script to probe for an unused private subnet? (yes/no/help)".

    Если вы решили использовать только вариант "Bridged networking", то лучше ответить "n", и указать в ответе на следующий вопрос реальный адрес, полученный от администратора сети. Если же вы решите создать виртуальную сеть ("Host-only networking"), то лучше предоставить выбор адресов скрипту. Впрочем, и в последнем случае можно задавать адреса самому, придерживаясь соглашений, о которых было кратко рассказано выше.

    Если же на первый вопрос в приведенном примере вы отвечаете отрицательно (т. е. отказываетесь от установки Samba-сервера от фирмы VMware), то следующим вопросом будет:

    "Do you want to be able to use the network in your Virtual Machines? [yes]".

    Как видите, этот вопрос предполагает только один вариант ответа (если вы отвечаете "нет", то оказываетесь от поддержки сети вообще). В случае же утвердительного ответа скрипт еще раз интересуется, не желаете ли вы сконфигурировать и "host-only networking":

    Do you want to be able to use host-only networking in your Virtual Machines? [yes]

    Если вы ответите "нет", то сможете использовать только вариант "Bridged networking", о чем свидетельствует появление следующего сообщения:

    Starting VMware services:

    Virtual machine monitor [OK]

    Virtual ethernet [OK]

    Bridged networking on /dev/vmnet0 [OK]

    Если же вы задействовали и вариант "Host-only networking", то это сообщение примет вид:

    Starting VMware services:

    Virtual machine monitor [OK]

    Virtual ethernet [OK]

    Bridged networking on /dev/vmnet0 [OK]

    Host-only networking on /dev/vmnet1 (background) [OK]

    В заключение скрипт еще попросит вас ввести имя и пароль пользователя, которому будет дан доступ к серверу Samba, и завершит работу.

    Как следует из изложенного, интерфейс vmnet0 (используемый для "Bridged networking") задействуется в любом случае, даже если вы пытаетесь настроить сетевые службы системы VMware только на использование варианта "Host-only".

    После завершения работы конфигурационного скрипта запустите систему VMware, выберите (если их несколько) нужный вам конфигурационный файл виртуального компьютера (через меню File | Open) и, не запуская виртуальный компьютер, проделайте следующее:

    1. Запустите Редактор конфигурации (меню Settings | Configuration Editor).

    2. Щелкните по значку "+" слева от надписи "Ethernet Adapters". Появятся три дополнительные строки, соответствующие трем возможным виртуальным сетевым адаптерам. Переместите подсветку (курсор) на первую из этих строк. В правой части окна (которое до этого было пустым) появится картинка, подобная той, что изображена на рис. 18.7.

    Рис. 18.7. Окно настройки сетевого адаптера.

    3. Щелкните по треугольнику возле выпадающего меню выбора типа подключения (Connection Type) и выберите один из трех возможных вариантов (Bridged, HostOnly или Custom), в соответствии с принятым Вами ранее решением. Как было сказано выше, вариант Custom выбирать не стоит, пока вы не освоите систему VMware значительно лучше автора этой книги.

    4. После этого надо щелкнуть по кнопке Install и сохранить конфигурацию щелчком по кнопке Safe.

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

    Рис. 18.8. Настройка сетевых средств в ОС виртуального компьютера

    При этом в качестве сетевой платы надо выбрать плату AMD PCNET Family Ethernet adapter (PCI-ISA), а затем либо задать фиксированный сетевой адрес, либо задействовать динамическое получение адреса по протоколу DHCP. Более подробно о том, как это можно сделать, смотрите в руководствах по ОС, запускаемой на виртуальном компьютере. Стоит только отметить, что если вы установите на виртуальном компьютере несколько ОС и будете выбирать одну из них при загрузке, то надо будет настроить сетевые службы в каждой из этих ОС. Поскольку чаще всего в каждый момент времени может быть запущена только одна из этих ОС, можно использовать один и тот же IP-адрес во всех этих системах. Скорее всего, вам придется перезапустить ОС виртуального компьютера, чтобы сделанные изменения вступили в силу.

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

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

    18.8.5 Несколько примеров настройки выхода в сеть

    Пример 1. Подключение к существующей локальной сети в варианте "Bridged networking"

    Рассмотрим сначала простейший случай, когда базовый компьютер, работающий под Linux, уже подключен к реальной физической сети. Кроме того, на базовом компьютере работает Samba-сервер, предоставляющий какие-то каталоги в распоряжение других рабочих станций сети, и создание виртуальной сети из виртуальных компьютеров не планируется.

    В таком случае нужно сконфигурировать сетевые службы системы VMware в варианте "Bridged networking", получить у администратора сети реальный IP-адрес, маску сети, адреса серверов DNS и WINS, и настроить сетевые службы ОС на виртуальном компьютере с использованием этих адресов. Пример такой настройки приведен на рис. 18.8, а на рис. 18.9 показано, как выглядит "Сетевое окружение" в случае реализации этого варианта для небольшой сети, состоящей из двух физических компьютеров (Kos3 и Linux). На компьютере Linux запущена система VMware и виртуальный компьютер Vmware, подключенный к физической сети по рассматриваемому варианту. Из рисунка видно, что компьютер Vmware показывается как полноправный участник сети и получает доступ к дискам базового компьютера (поскольку снимок сделан в окне экрана виртуального компьютера).

    Рис. 18.9. Доступ к диску базового компьютера через "Сетевое окружение"

    Необходимо отметить одну особенность настройки сетевых средств на виртуальном компьютере, проявляющуюся тогда, когда ОС виртуального компьютера загружается с физического диска. Особенность состоит в том, что в этом случае обязательно надо создать отдельный профиль оборудования для загрузки ОС Windows в виртуальном компьютере, в которой отключить реальную сетевую карту Ethernet, как это было сказано в разд. 18.7. В противном случае у вас могут возникнуть трудности с подключением адаптера AMD PCNET PCI для Ethernet, который должен работать в виртуальном компьютере. Впрочем, то же самое верно и для других вариантов, так что не забывайте создавать отдельный профиль оборудования для запуска на виртуальном компьютере.

    Пример 2. Создание сети на изолированном компьютере

    В качестве следующего примера рассмотрим создание виртуальной сети на изолированном (скажем, домашнем) компьютере. При конфигурировании системы VMware в этом случае надо выбрать вариант "Host-only networking", для чего на вопрос конфигурационного скрипта vmware-config.pl "Do you want this script to automatically configure your system to allow your virtual machines to access the host file system?" надо ответить "Yes". При этом будет установлен Samba-сервер vmware-smbd (а также необходимый для его работы демон vmware-nmbd) и будет организован их запуск при загрузке ОС Linux. Конфигурационный файл для такого сервера располагается не в каталоге /etc/samba, как для стандартного сервера Samba, а в каталоге /etc/vmware/vmnet1/smb, хотя и называется по-прежнему smb.conf. О том, как его настроить, вы можете узнать в документации по Samba или из man-страницы (man 5 smb.conf), поскольку он строится точно так же, как файл smb.conf для стандартного сервера Samba.

    Естественно, что необходимо настроить сетевые службы в ОС Linux базового компьютера и на виртуальном компьютере. IP-адреса можно задать произвольным образом. Поскольку в такой сети будет работать только несколько компьютеров (в простейшем случае - всего два), то сервер DHCP запускать не имеет смысла, проще прописать все компьютеры и их адреса в файле /etc/hosts.

    Рис. 18.10 иллюстрирует именно такой вариант работы виртуального компьютера. На рисунке показано, что весь диск базового компьютера подключен как сетевой диск G: к виртуальному компьютеру, причем в окне проводника Windows отображается вся структура каталогов Linux.

    Рис. 18.10. Диск базового компьютера смонтирован как диск G: в ОС виртуального компьютера

    Конечно, давать полный доступ к Linux-разделу диска в реальной жизни не стоит, если вы задумываетесь и об обеспечении безопасности в вашей сети, так как все системные файлы Linux становятся доступны для редактирования из виртуального компьютера. Надо корректно настроить сервер Samba, предоставив доступ только к специально выделенному каталогу.

    Пример 3. Соединение виртуальной и физической сети

    Теперь предположим, что вы решили создать несколько виртуальных компьютеров на одном базовом, объединить их в виртуальную сеть, и соединить ее с реальной сетью. При этом сетевая часть IP-адреса виртуальной сети отличается от сетевой части адреса реальной сети. В этом случае система VMware снова конфигурируется по варианту "Host-only networking". Только теперь необходимо указать Samba-серверу, что он должен обслуживать как интерфейс с реальной сетью (или даже несколько таких интерфейсов), так и виртуальный интерфейс vmnet1, на который работает виртуальная сеть. Делается такое указание путем корректировки строки "interfaces" в файле /etc/smb.conf. Она должна принять следующий вид:

    interfaces = ‹физические сети› ‹виртуальная сеть›.1/24

    где ‹физические сети› - это список обслуживаемых физических сетей, а ‹виртуальная сеть› - это сетевая часть адреса, назначенного для виртуальной сети. Предположим для примера, что базовый компьютер имеет в реальной сети адрес 209.220.166.34, а виртуальной сети в варианте "host-only" ему присвоен адрес 192.168.0.1. Тогда указанная строка принимает вид:

    interfaces = 209.220.166.34/24 192.168.0.1/24

    или, задавая маску сети явным образом, так:

    interfaces = 209.220.166.34/255.255.255.0 92.168.0.1/255.255.255.0

    Подробнее об этом см. man-страницу 5 smb.conf.

    Если вы не помните, какой IP-адрес присвоен виртуальному интерфейсу, дайте команду /sbin/ifconfig vmnet1.

    18.8.6 Доступ к дискам виртуального компьютера из ОС базового

    Во всех трех рассмотренных примерах мы говорили только о том, как получить доступ к дискам базового компьютера из виртуального. Однако можно поставить вопрос и наоборот: как получить доступ к дискам виртуального компьютера из ОС базового? Очевидно, что за счет использования сетевых средств такая задача тоже легко решается.

    Если на базовом компьютере установлен пакет Samba, то отдельные каталоги на дисках виртуального компьютера vmware, работающего под Windows, можно монтировать в файловой системе Linux на базовом компьютере примерно такой командой

    [user]$ /usr/sbin/smbmount //vmware/public /mnt/vm1 -U user1

    (Подробнее см. документацию по Samba или страницу man smbmount).

    Рис. 18.11 иллюстрирует эту возможность. На нем показан каталог на диске виртуального компьютера, смонтированный в файловую систему Linux. При этом в виртуальном компьютере запущен MS Word, о чем свидетельствует наличие временных файлов, создаваемых этой программой. А сам каталог в данном случае просматривается из Linux при помощи браузера Konqueror.

    Рис. 18.11. Ресурс виртуального компьютера смонтирован в каталог /mnt/vm в ОС базового компьютера (просмотр через Konqueror)

    18.9. Несколько дополнительных замечаний

    18.9.1 Снова о предосторожностях

    В начале этой главы было уже сказано, что одновременное обращение к диску двух разных операционных систем может привести к неприятностям. Но об этом придется напомнить еще раз в связи с только что рассмотренной возможностью получения доступа к дискам с помощью сетевых средств. Не стоит с помощью таких средств организовывать "кольцо", смонтировав диск Windows в один из каталогов Linux овой файловой структуры, затем подключить Linux-диск как сетевой диск в проводнике Windows, а потом пытаться получить доступ к этому диску из Windows. У операционной системы может "закружиться голова".

    Еще одна неприятность, с которой можно столкнуться, связана с тем, что в Linux не все изменения сразу запоминаются на диске. Например, попытки сохранить файл, созданный одной из Linux-программ, в каталоге, который находится на примонтированном Windows-диске виртуального компьютера, могут в некоторых ситуациях (в частности, при выключении виртуального компьютера) привести к неприятным последствиям, вплоть до разрушения файловой системы.

    18.9.2 Список пользователей, которым разрешен доступ к серверу Samba

    Одним из последних вопросов, задаваемых конфигурационным скриптом vmware config.pl в том случае, когда вы установили версию Samba-сервера фирмы VMware, является предложение ввести имена и пароли пользователей, которым будет разрешен доступ в Samba-серверу. Если вы отказались от выполнения этой процедуры на этапе конфигурирования или хотите добавить новых пользователей в этот список, вы должны проделать следующее.

    1. Получить права суперпользователя

    [user]$ su

    2. Выполнить команду

    [root]# /usr/bin/vmware-smbpasswd vmnet1 -a ‹username›

    где ‹username› - это имя пользователя, которого вы добавляете в список.

    3. Выполнить то, что будет сказано в инструкциях, появляющихся на экране (программа vmware-smbpasswd является вариантом стандартной программы smbpasswd. Если вы знакомы с последней, вы можете использовать любые ее опции).

    4. Покинуть бюджет пользователя root:

    [root]# exit

    Если вы получите сообщение "Unknown virtual interface "vmnet1", значит либо у вас не используется сервер Samba от VMware, либо не задействован вариант "Host Only" (который обслуживается этим интерфейсом).

    18.9.3 Как устранить "утечку" пакетов из виртуальной сети в реальную.

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

    В ОС Linux запрет форвардинга осуществляется путем записи "0" в специальный файл /proc/sys/net/ipv4/ip_forward; это можно сделать, например, командой

    [root] # echo 0 ›/proc/sys/net/ipv4/ip_forward

    18.9.4 О применении системы VMware

    В рамках данной книги не нашли отражения ответы на многие вопросы, связанные с установкой, конфигурированием и работой системы виртуальных машин, в частности процедуры подключения к виртуальному компьютеру периферийных устройств (принтеры, модемы, ZIP-дисководы и т. д.). Однако, на мой взгляд, эти вопросы не являются актуальными для тех, кто ориентируется на переход от работы под Windows к преимущественному использованию Linux. Действительно, различные периферийные устройства, наверное, легче и проще подключить к физическому компьютеру, чем к виртуальному. После этого доступ к таким устройствам, как принтер или дисковод Zip от Iomega, можно получить через сеть, как это было показано в разд. 18.8. А что касается выхода в Интернет через модем, то все средства для этого (программы доступа к сети по телефонным каналам, браузеры и системы просмотра электронной почты) имеются и в Linux, так что нет никакой необходимости организовывать такой доступ через виртуальный компьютер.

    Единственная серьезная причина, по которой для пользователя Linux становится необходимым применение ОС от Microsoft и, соответственно, системы виртуальных машин, - это необходимость обмениваться файлами с приверженцами Windows, которые пока что составляют большинство пользователей компьютеров вообще. Именно для обработки файлов в форматах, разработанных фирмой Microsoft, приходится запускать VMware. Но именно эта система позволяет осуществить постепенный переход на использование Linux, так как позволяет, с одной стороны, продолжать использовать весь набор привычного ПО, освоенного пользователем Windows, и, с другой стороны, постепенно осваивать свободные аналоги этого ПО, разработанные для Linux.

    18.9.5 Немного о быстродействии

    Поскольку система VMware является эмулятором, естественно возникает мысль о том, что прикладные программы будут на ней работать медленнее, чем на физическом компьютере, однако опыт показывает, что если дополнительное замедление и есть, оно так невелико, что практически незаметно. Более того, я провел серию тестов с помощью программы Sandra SiSoft, результаты которых меня просто поразили. Некоторые тесты показывают, что быстродействие виртуального компьютера с NT 4.0 по некоторым параметрам выше, чем быстродействие базового компьютера, работающего под той же ОС непосредственно. Конечно, быстродействие существенно зависит от ресурсов базового компьютера. Я начинал осваивать систему VMware на компьютере с ОЗУ 64 Мбайт и процессором 233 МГц, где все в общем-то работало, но замедление работы ОС на виртуальной машине было очень заметно. Сейчас я использую базовый компьютер с процессором Pentium III 733 MHz и 128 Мбайт ОЗУ. Память я поделил между двумя ОС поровну и замедление в быстродействии уже незаметно. Именно объем оперативной памяти является самым критичным параметром для использования системы виртуальных машин. Судя по моему опыту, 64 Мбайт физического ОЗУ все же мало, а при 128 уже можно работать достаточно комфортно.

    18.9.6 О первоисточниках

    Единственным источником информации при написании этой главы (а также статей [П20.7, П20.8]) были материалы с сайта фирмы VMware (http://www.vmware.com). Русскоязычных публикаций о системе VMware пока практически нет кроме двух статей автора [П20.7] и [П20.8] (содержание которых практически совпадает с содержанием настоящей главы) и статьи [П20.5]. Дополнительную информацию на русском языке можно найти на сайтах [П20.4, П20.5]. Если вас заинтересовала система виртуальных машин, - установите ее и экспериментируйте, она стоит того, чтобы потратить на нее время.


    Примечания:



    2

    С тех пор адрес моего сайта изменился на http://rus-linux.net.



    27

    С тех пор как были написаны эти строки, ситуация существенно изменилась. Офисный пакет OpenOffice.org теперь вполне сносно работает с файлами в форматах MS Office, может как открывать такие файлы, так и сохранять данные в этих форматах.



    28

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



    29

    Один из моих корреспондентов (к сожалению, не могу сейчас разыскать это письмо, чтобы назвать автора) сообщил мне, что никаких проблем с загрузкой со SCSI-дисков не возникает. Тем более такой проблемы не возникает с современными версиями программы VMware.







     


    Главная | В избранное | Наш E-MAIL | Добавить материал | Нашёл ошибку | Наверх