Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

Ошибка базы данных: Table 'a111530_forumnew.rlf1_users' doesn't exist

Приемы работы в Ubuntu.
Глава 9: Виртуализация и эмуляция

Оригинал: "Ubuntu Hacks: Chapter 9 - Virtualization and Emulation"
Авторы: Кайл Ранкин, Джонатан Оксер, Билл Чайлдерс (Kyle Rankin, Jonathan Oxer, Bill Childers)
Дата публикации: June 2006
Перевод: Н.Ромоданов
Дата перевода: октябрь 2010 г.

Почему современные компьютеры, несмотря на всю имеющуюся у них мощность, поддерживают работу на них только одной операционной системы? Благодаря современным достижениям в технологии виртуализации можно на одном компьютере запускать несколько операционных систем, причем со скоростью, близкой к их родной скорости. Для виртуализации в Linux можно выбрать несколько вариантов. Если брать проприетарные решения, то у вас есть такие приложения, как VMware, а если рассматривать решения с открытым исходным кодом, у вас имеется Xen, coLinux и QEMU (чтобы получить дополнительную информацию, отсутствующую в данной главе, смотрите http://fabrice.bellard.free.fr/qemu/).

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

Совет # 87: Запускаем Windows-приложения

Если так случится, что приложения Windows, которые вам нужно запустить, поддерживаются Wine, то вам на компьютере не потребуется ни двойная загрузка, ни запуск эмулятора. Просто запустите их инсталляторы, а затем запускайте их, как если бы это были любые другие приложения Linux.

Компания Novell, которая стоит за дистрибутивом SUSE, недавно проводила опрос, спрашивая людей, какие из приложений Windows, следовало бы, по их мнению, прежде всего портировать на Linux. Очень высокий ранг имели Adobe Photoshop (первый номер), Dreamweaver (третий номер) и Flash (пятый номер). Вы можете посмотреть полные результаты опроса на http://www.novell.com/coolsolutions/feature/16917.html. Перенесет ли в ближайшее время компания Adobe эти столь желанные приложения в Linux в ответ на результаты опроса? Наверное, нет. Но это не значит, что вы не можете запускать их на Linux.

Благодаря пакету Wine, имеющему открытый исходный код и реализующий слой совместимости с Windows, вы можете запустить все эти три приложения, а также многие другие. Wine - не эмулятор (согласно названию "Wine Is Not an Emulator", используемому рекурсию в истинном стиле GNU), но в нем предлагается 100% реализация библиотек DLL не от компании Microsoft, которыми могут пользоваться программы Windows. Wine может также использовать и реально существующие в Windows библиотеки DLL. Программа находится в разработке уже более 12 лет и только осенью 2005 года достигла статуса бета-версии. Но пакет Wine уже широко использовался в течение довольно продолжительного времени, и он включен в большинство дистрибутивов, в том числе и в Ubuntu (в репозитариии universe [Совет # 60]).

Устанавливаем Wine

Версия программы Wine, которая входит в Ubuntu часто не менее чем на одну версию отстает от текущей версии, поэтому для запуска последней версии вам следует отредактировать файл /etc/apt/sources.list и добавить собственный репозитарий apt для Wine. Вы можете сделать это вручную, либо с помощью менеджера пакетов Synaptic.

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

$ sudo nano /etc/apt/sources.list

После того, как вы введете свой пароль, редактор nano откроет файл sources.list. Добавьте к концу файла следующую строку:

deb http://wine.sourceforge.net/apt binary/

Сохраните файл (нажмите Ctrl-O), затем снова откройте терминал и выполните команду:

$ sudo apt-get update

Эта команда выполнит обновление кэша пакетов. Теперь вы можете установить пакет Wine с помощью следующей команды:

$ sudo apt-get install wine

Если вы хотите добавить репозитарий Wine и установить Wine с помощью менеджера пакетов Synaptic [Совет # 55], выберите System → Administration → Synaptic Package Manager (Система → Администрирование → Менеджер пакетов Synaptic), а затем выберите Settings → Repositories (Настройки → Репозитории). Затем нажмите кнопку Add (Добавить), выберите пункт Custom (Вводится пользователем), и введите строку deb http://wine.sourceforge.net/apt binary/ в поле APT так, как это показано на рис.9-1.

Ubuntu Hacks. Добавление репозитария Wine

Рис.9-1. Добавление репозитария Wine с помощью менеджера Synaptic

Затем нажмите кнопку Add Repository (Добавить репозитарий), а затем нажмите кнопку Reload (Обновить), чтобы обновить кэш пакетов. Затем найдите wine, выделите его, щелкните правой кнопкой по выделенной записи и выберите Mark for Installation (Отметить для установки). Затем нажмите кнопку Apply (Применить), просмотрите предлагаемые изменения и снова нажмите кнопку Apply (Применить). Пакет Wine будет подготовлен для загрузки и будет установлена последняя версия (0.9.10 на момент написания статьи).

Над пакетом Wine ведется очень большая работа и в каждой новой версии есть существенные улучшения, даже если из-за этого иногда временно нарушается совместимость с программами Windows, которые ранее уже работали. Новый пакет Wine всегда лучше, чем старый, в отличие от его марочного тезки (анг. Wine = вино). Как правило, каждая новая версия более стабильна и позволяет запускать больше программ Windows, чем предшествующая версия, так что определенно стоит устанавливать последнюю версию.

Конфигурируем Wine

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

$ winecfg

В результате запуска этой команды будет создан конфигурационный директорий Wine с именем /home/username/.wine. Также будет открыто конфигурационное окно Wine с несколькими вкладками, показанное на рис.9-2, которое позволит вам настроить различные параметры вашего инсталлятора Wine и, в том числе, указать ту версию Windows, в роли которой вы хотите использовать Wine. Лучше всего оставить параметры, указываемые по умолчанию, но вы, возможно захотите добавить новое устройство Windows (с помощью складки Drives - Устройства), которое явно будет указывать на устройство чтения компакт дисков. Для этого нажмите кнопку Add (Добавить), чтобы создать новое устройство Windows, а затем нажмите кнопку Browse (Обзор), чтобы выбрать путь к CD-ROM (например, /media/cdrom0/). Наконец, нажмите кнопку Apply (Применить) чтобы завершить добавление.

Ubuntu Hacks. Конфигурационное окно пакета Wine

Рис.9-2. Конфигурационное окно пакета Wine

Есть еще, что вы должны выполнить прежде, чем приступите к установке приложений Windows, и это — установка шрифтов Microsoft TrueType [Совет # 53] (для того, чтобы приложения, работающие в Wine, могли корректно отображать текст) и установка пакета cabextract, полезного инструментального средства, позволяющего извлекать содержимое из архивов .cab фирмы Microsoft. Вы можете установить оба пакета с помощью apt, набрав в терминале следующую команду:

$ sudo apt-get install msttcorefonts cabextract

Вы также можете выбирать установку с помощью менеджера пакетов Synaptic, указав в функции поиска поиск пакета msttcorefonts, а затем установить его. Synaptic вместе с пакетом msttcorefonts установит и пакет cabextract.

Устанавливаем приложение Windows

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

Предостережение

Пакет Wine не всегда будет работать с последней версией приложения Windows; часто чего-нибудь будет просто не хватать. Так, например, последняя версия Photoshop вряд ли будет работать с последней версией Wine (хотя, в определенные моменты их циклов разработки это возможно). Как правило, вы будете запускать приложение Windows, которое на одну или две версии будет отставать. Это то, что я обнаружил с Photoshop. Поскольку я, как правило, запускаю это приложение в основном на OS X, моя Windows-версия (Photoshop 6.0) более старая. Photoshop 6 не вносит ограничений в плане функциональности, хотя, вы можете использовать настоящие инструкции для установки более свежей версии. Как повсеместно сообщалось, также хорошо работает Photoshop 7, и возможно, вы сможете также получить работающий вариант для Photoshop CS.

Вставьте установочный компакт-диск вашего приложения Windows в ваше устройство. Откройте терминал и наберите команду wine, за которой укажите путь к инсталлятору. Например:

$ wine "/media/cdrom0/Adobe Photoshop 6/Setup.exe"

Вот и все. Если вы используете приложение, которое работает с Wine, то программа установки будет запущена и установит приложение в вашем директории .wine, эмулирующем файловую систему Windows, так как показано на рис.9-3.

Ubuntu Hacks. Установка Photoshop под Ubuntu

Рис.9-3. Установка Photoshop под Ubuntu

Запускаем приложения Windows

Теперь, когда вы установили программу, вы можете запустить ее, но вы должны сначала ее найти. Например, мой установленный Photoshop находится в директории /home/username/.wine/drive_c/Program Files/Adobe/Photoshop 6.0/. Чтобы запустить Photoshop, я просто в терминале набираю следующую команду:

$ wine "c:\\Program Files\\Adobe\\Photoshop 6.0\\Photoshp.exe"

Photoshop будет запущен почти мгновенно (смотрите рис. 9-4). И эта старая версия работает быстро, вероятно, быстрее, чем это происходит на Windows. Кроме того, он работает очень хорошо; я до сих пор не сталкивался с какими-либо сбоями.

Подсказка

Если у вас есть вопросы относительно того, будет ли конкретное приложение Windows работать с Wine, вам следует проконсультироваться в базе данных приложений Wine по ссылке http://appdb.winehq.org/. Еще один хороший ресурс для проверки, будет ли ваше приложение работать, это уголок Франка (http://www.frankscorner.org/).

Ubuntu Hacks. Запускаем Photoshop под Ubuntu

Рис.9-4. Запускаем Photoshop под Ubuntu

Работа с пакетом Wine

Когда пакет Wine работает действительно хорошо, то нет более лучшего способа запускать приложения Windows в среде Linux. Многие, конечно, используют двойную загрузку, но это действительно громоздкое решение, если все, что хотят сделать, это использовать конкретное приложение. Другие запускают сам Windows с помощью программного эмулятора, но это менее интегрированное решение, более ресурсоемкое и, в целом, работает не так быстро. Пакет Wine позволяет запускать приложения Windows практически с их родной скоростью (не меньше) и обеспечивает совместимость с Ubuntu. Photoshop (наряду с другими приложениями Windows) может открывать и сохранять файлы в любом месте на вашем компьютере, причем никаких затрат для этого не требуется (например, не требуется осуществлять обмен между Ubuntu и средой Windows с использованием Samba). В добавок к эмулируемому диску C, который устанавливается с помощью Wine, также есть диск Z, на который отображена ваша файловая система Linux.

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

wine control - Некоторые программы (такие, как QuickTime) устанавливают связанные с ними апплеты панели управления, wine control позволит вам получить к ним доступ.

winefile - Запуск команды winefile откроет графический интерфейс, показанный на рис.9-5, который позволяет просматривать диск и искать на нем файлы. Вы также можете запускать программы прямо из этой графической среды; просто дважды щелкните по файлу .exe точно также, как и в Windows.

Ubuntu Hacks. Wine File

Рис.9-5. Wine File — графическая среда, похожая на Explorer

uninstaller - Программа uninstaller, изображаемая на рис. 9-6, аналогична апплету панели управления "Add/Remove Programs" ("Добавить/Удалить программы"), имеющемуся в Windows. Просто выделите программу, которую вы хотите удалить, и нажмите кнопку "Uninstall" ("Удалить"). Это очень просто.

Ubuntu Hacks. Деинсталлятор Wine

Рис.9-6. Деинсталлятор позволит вам легко удалять программы

Вы можете получить доступ к полному комплекту документации по Wine на сайте Wine HQ: http://www.winehq.org/site/docs/wineusr-guide/index.

Запускаем другие компоненты Windows

Кроме установки различных приложений Windows, вы можете также заинтересоваться запуском различных компонентов Windows, и, в частности, браузера Internet Explorer, имеющего плохую репутацию из-за несоблюдения стандартов, но которым, тем не менее, пользуются более 80 процентов всех веб-серферов. Есть несколько способов, с помощью которых вы можете установить IE.

Самый простым способом, безусловно, будет использование одной из тех утилит, которые для этого возникли вокруг Wine. Среди них есть следующие три утилиты: WineTools (http://www.von-thadden.de/Joachim/WineTools), Sidenet (http://sidenet.ddo.jp/winetips/config.html) и утилита со странным именем IEs 4 Linux (названная так потому, что она позволит вам установить сразу все браузеры IE 6, IE 5.5 и IE 5, если вы этого захотите). Из этих трех утилит я рекомендую воспользоваться утилитой IEs 4 Linux (http://www.tatanka.com.br/ies4linux). Это единственная утилита, которая не изменит радикально файловую систему вашего пакета Wine, и, кажется, гладко работает с последней версией Wine.

Для того, чтобы установить утилиту IEs 4 Linux, сначала скачайте ее по следующей ссылке: http://www.tatanka.com.br/ies4linux/en/instructions/. Затем откройте файл tar.gz и запустите программу ies4linux, которая находится внутри. Вам будет предоставлен выбор, какую версию (версии) IE устанавливать, я выбрал только IE 6. После этого IEs 4 Linux приступит к загрузке версии (версий), которые вы выбрали; только для одного IE 6 загружается 80 МБ данных. Браузер (браузеры) Microsoft будет установлен в отдельном директории .ies4linux, расположенном в вашем домашнем директории; в ваш директорий .wine изменения вноситься не будут.

Замечательно, если бы не один довольно странный штрих: значок Internet Explorer (к которому добавлен значок Wine так, как это показано на рис.9.7) находится на рабочем столе Ubuntu. Вы можете просто дважды щелкнуть по нему и запустить этот небезопасный браузер, в котором для безопасности в качестве домашней странице по умолчанию выбирается пустая страница about:blank.

Ubuntu Hacks. Internet Explorer на рабочем столе Ubuntu

Рис.9-7. Internet Explorer на рабочем столе Ubuntu

Возможно, вы не хотите, чтобы значок IE был на рабочем столе, я, разумеется, не хочу. Так что я удаляю его и использую редактор меню приложений, имеющийся в Ubuntu, для того, чтобы добавить Internet Explorer и некоторые другие приложения Windows в меню приложений Ubuntu. Результат показан на рис.9-8 (вы найдете значок Wine в /usr/share/icons).

Ubuntu Hacks. Добавляем программы Windows в меню Applications

Рис.9-8. Добавляем программы Windows в меню Applications (приложения)

Обратите внимание на коммерческие эквиваленты пакета Wine: пакет CrossOver Office фирмы CodeWeavers [Совет # 31] (http://www.codeweavers.com/) и пакет Cedega фирмы TransGaming [Совет # 88] (http://www.transgaming.com/), которые самостоятельно добавляют приложения в меню.


Назад Оглавление Вперед



Средняя оценка 2.5 при 2 голосовавших

Комментарии