- Подписка на печатную версию:
- Подписка на электронную версию:
- Подшивки старых номеров журнала (печатные версии)
LXF86:Wine
Материал из Linuxformat.
Содержание |
Wine: Windows
Программное обеспечение не станет свободным за одну ночь, и пока что приходится запускать Windows-приложения в Linux – Энди Ченнел покажет, как это сделать.
Свобода – это здорово, но иногда нужно срочно сделать работу, а угрызения совести оставить на потом. Ради Photoshop, PowerPoint или Grand Theft Auto многие законопослушные линуксоиды тайком обращаются к своим Windows-разделам, не найдя в Linux достойного аналога. Но зачем использовать Windows-приложения непременно под Windows? Одна из альтернатив – установка Wine, свободной системы совместимости. Она дублирует многие функции Windows API и способна запустить немало родных приложений Windows. Не нужно дополнительно обзаводиться Windows или запускать полноценную гостевую ОС, чтобы просто поработать с небольшой программой. К сожалению, Wine иногда не справляется с запуском конкретного приложения – хотя по мере взросления проекта это встречается все реже и реже (вы также можете взглянуть на список альтернативных вариантов на стр. 48). На данном уроке мы установим Wine и посмотрим, как здесь воссоздается файловая система Windows для запуска Windows-приложений. Опробуем также одну из наиболее популярных реализаций Wine – CrossOver, позволяющую работать с пакетом MS Office.
Часть 1 Установка Wine
Наш эксперт Энди Ченнел Энди делает свои первые шаги в Linux уже шесть лет, а технологиями интересуется еще со времен Dragon 32.
Для данного урока я использовал простую, но обновленную установку Ubuntu, хотя если Wine уже получен и установлен, то процедура инсталляции и запуска приложений будет одинакова в Fedora Core, Linspire или любой другом дистрибутиве. Как и для других программ Linux, имеется несколько способов установки Wine. В порядке убывания сложности, это сборка из исходных текстов, загрузка и установка пакета с http://www.Winehq.com и использование менеджера пакетов вашего дистрибутива. Мы собираемся воспользоваться последним способом, но не потому, что я такой глупый – просто тогда приложение включается в систему обновления дистрибутива, и вам всегда будет доступна новая версия. Выбрав способ установки, можно двигаться дальше. В Ubuntu это означает запуск Synaptic (Система > Администрирование > Менеджер пакетов Synaptic) и использование инструмента Поиска для обнаружения Wine, который должен быть доступен в виде отдельного пакета. Пометьте его для установки и нажмите Применить для загрузки и установки. Теперь откройте терминал и наберите wine для автоматической настройки. Если вы желаете убедиться, что Wine установлен, откройте ваш домашний каталог, выполните Вид > Показывать скрытые файлы и продвиньтесь вниз до .wine (напомним, что Linux скрывает файлы и каталоги, начинающиеся с точки). Заглянув в этот каталог, вы обнаружите пару директорий с именами Program Files и Windows; это аналоги их тезок в реальной системе Windows. Я всегда добавляю каталог Downloads (стандартно: правый щелчок и затем Создать > Каталог) как репозитарий для загружаемых установочных файлов. На то есть две причины: во-первых, я аккуратист, а во-вторых, это облегчает поиск приложений, которые необходимо переустановить – они всегда в одном месте. Хочу предостеречь вас: вы могли подумать, что Wine – эмулятор Windows... а вот и нет. Это API-совместимая прослойка, и назвав ее эмулятором в присутствии разработчиков Wine, вы станете белой вороной.
Часть 2 Запуск Windows-программ
Теперь переберемся в терминал. Я сам патологически боюсь работать с компьютером без графических инструментов, но в конце концов это себя оправдывает – и мы не засядем там надолго, обещаю! Откройте терминал – Konsole, Gnome Terminal, вообще любой – и наберите winecfg для запуска утилиты настройки приложения. А не сработает, попробуйте скомандовать
/usr/local/bin/winecfg
Запустится простенькая утилитка, которую можно использовать для указания версии Windows, которую вы хотите, кхе, эмулировать, и различных настроек: звука, видео и прочего. Скорее всего, вам ничего не придется менять здесь, но правка файла настройки приложения может пригодиться, если, например, окажется, что оно разработано для Windows 95 или отказывается работать в режиме более чем 8-битного цвета. Что для нас важнее, в этой утилите также указывается расположение различных «вместилищ файлов», которыми пользуется Windows, например, Мои документы и Мои рисунки. По умолчанию, они попадают во всегдашнюю папку /home/имя_пользователя, но ее легко заменить (используя соглашения об именах файлов в Linux) любой другой, чтобы приложения Windows правильно интегрировались в рабочий стол Linux. Для изменения этих настроек, выберите запись Мое нечто, нажмите кнопку Выбрать и задайте местоположение по вашему выбору. Итак, Wine установлен и настроен, пришло время скогтить какое-нибудь приложение. В моем случае это небольшой, бесплатный (как пиво) персональный финансовый менеджер под названием AceMoney Lite (http://www.mechcad.net/products/acemoney/index_lite.shtml). Это не только отличный финансовый пакет, но и Windows-приложение, дружественное к Wine. После загрузки приложения переместите его в корень файловой системы лже-Windows. Linux видит его как директорию:
/home/andy/.wine/drive_c/ Windows
(а значит, и Wine), однако, считают, что это
c:\\
Это различие становится важным, когда мы начинаем устанавливать Windows-приложения. Как и большинство других Linux приложений, Wine можно запустить, открыв терминал, набрав имя приложения и нажав клавишу Enter. Разница в том, что мы должны предоставить Wine топливо для работы, а именно, путь к запускаемому приложению. Выполните
wine c:\\AceMoneyLiteSetup.exe
Вторую часть этой команды замените на имя приложения, которое выбрали вы. Приложение должно запуститься (если Wine умеет с ним работать), а остальная процедура установки аналогична таковой в Windows. Производите настройку так, чтобы приложения попали в должные места Linux.
Ярлыки на рабочем столе
После успешной установки приложения, вы можете запустить его, вновь открыв терминал и набрав
wine c:\\path\\to\ the\\application.exe
Обратите внимание на важные особенности записи этого пути. В Windows для указания подкаталога используется один обратный слэш (\), но оболочка Linux трактует его как признак спецсимвола, поэтому используется двойной обратный слэш (\\). Необходимо также «экранировать» слэшами пробелы, так что путь Windows вроде
C:\Program Files\ MyApp\MyApp.exe
превращается в
c:\\Program\ Files\\MyApp\\MyApp.exe
Как сказано выше, я ужас как не люблю пользоваться командной строкой, когда можно обойтись щелчком мыши – поэтому добавлю к нашей команде симпатичную иконку и помещу ее на рабочий стол. Щелкните правой кнопкой мыши в любом месте рабочего стола и выберите Создать > Ссылка на приложение. Введите имя приложения (если хотите, снабдите его описанием), затем – команду запуска приложения. Теперь нажмите кнопку со стандартной иконкой, выберите из приведенных иконок то, что вам понравится, и нажмите OK. Дважды щелкните на новом ярлыке, и voila! Процесс Windows-программы пошел. Чтоб жизнь малиной не казалась, метод добавления Wine-записей в меню приложений Gnome слегка отличается от добавления ярлыка на рабочий стол. В Ubuntu структура меню редактируется в редакторе Alacarte, доступном через Applications > Accessories. Я собираюсь создать отдельный раздел меню с именем «Приложения Windows»; выполните Файл > Новое меню, дайте ему имя и нажмите OK. Стрелками у правого края окна Alacarte можно пользоваться для перемещения вновь созданного раздела меню вверх и вниз по списку.
Учебник Первые шаги
Выбрав в главной панели пункт Приложения Windows (Windows Applications), следует нажать Файл > Новый и затем ввести детали в диалоговом окне. Вот и большое отличие: вместо предыдущего метода ввода пути следует использовать метод Linux, а именно указать команду (wine) и полный путь (/.wine/drive_c/Program Files/AceMoney/ AceMoney.exe), заключенный в одиночные кавычки. Выглядит это так:
wine '/.wine/drive_c/Program Files/AceMoney/AceMoney.exe'
Сделав это, добавьте подходящую иконку, убедитесь, что небольшая кнопка слева от записи Приложения Windows нажата (чтоб сделать меню видимым в главном меню), и нажмите Файл > Выход или кнопку Закрыть. Теперь вы можете запустить программу, нажав Приложения > Приложения Windows > AceMoney. Все работает, и это хорошо, но упрощение действий – еще лучше; и мы в состоянии сделать работу в Linux прямо-таки магией. Поэтому настроим рабочий стол на установку исполняемых EXE-файлов Windows просто по двойному щелчку на иконке. К счастью, это просто, как дважды два, и лишь слегка отличается от стандартного метода создания «файловой привязки». Сначала найдите установочный EXE-файл, потом щелкните на нем правой кнопкой. После этого выберите пункт меню Открыть в другом приложении... Wine легко назначить стандартным приложением для EXE-файлов. Wine обычно работает в фоновом режиме, поэтому не имеет собственного пункта меню, и не по чему щелкнуть для его выбора в качестве соответствующей программы. Вместо этого надо щелкнуть на маленькой иконке внизу окна с именем Использовать Другую Команду; появится поле ввода текста. Наберите в нем wine, затем нажмите Открыть. Выбранный EXE файл запустится через Wine, и начнется установка. А поскольку для данного типа файлов других привязок-ассоциаций нет, то эта станет стандартной. Ну вот и все. Список поддерживаемых приложений и другая информация находится на http://appdb.winehq.org. Wine и все его производные – это полумера, полезная, пока большая часть Windows-разработчиков не прозреет и не портирует свои приложения в Linux. Однако эти полумеры работают, и неплохо, и по здравом размышлении вы сможете навсегда проститься со своим разделом Windows.
Различные варианты Wine
- Wine – проект популярный, и к нему имеется немало дополнительных инструментов, улучшающих качество установки и управления приложениями Windows в Linux.
- WineTools. Это приложение хорошо уживается с Internet Explorer 6, Photoshop 7.0, Illustrator 9.0 и многими другими, но устанавливает свою версию Wine, вместо той, что уже имеется. Программа доступна на сайте http://www.von-thadden.de/Joachim/wineTools/index.html в виде RPM или статически скомпонованного двоичного файла.
- CrossOver Linux. Стандартный Wine справляется с тоннами приложений, но для установки некоторых больших программ, типа MS Office или подключаемых модулей для браузеров вроде QuickTime и Shockwave, рекомендую приобрести копию CrossOver Linux (бывший CrossOver Office) от CodeWeavers ($39.95, на сайте http://www.codeweavers.com). Это не только упростит управление приложениями Windows, но и поддержит разработчиков, делающих популярные программы доступными в вашей любимой системе. CrossOver предоставляет более устойчивое окружение для приложений, чем Wine, и упрощает их интеграцию с хост-окружением. Например, создание привязок для файлов (скажем, открытие OFX-файлов при помощи AceMoney) при помощи Wine может быть трудным, а CrossOver имеет для этого специальный раздел.
- Wine@Etersoft. Отечественная разработка, позволяющая запускать в Linux популярные российские программы: 1С: Предприятие 7.7, 1С:Бухгалтерия 6.0, Консультант Плюс, Инфо-Бухгалтер, Кодекс, Референт, ДубльГИС, программы подготовки обязательной отчётности, а также MS Office 97 и некоторые другие. специалисты компании Etersoft тесно сотрудничают с основным проектом Wine и обмениваются наиболее критичными патчами, но сам продукт Wine@Etersoft – коммерческий, его распространением на территории РФ занимается http://LinuxCenter.Ru.
- WineDoors. Пользователи Gnome, страдающие по родному графическому клиенту для управления Wine-установками, должны дождаться выпуска этого приложения, хотя и ранние версии выглядят вполне достойно. WineDoors создается в Eclipse, и текущая версия доступна только через SVN. Вероятно, лучше не устанавливать его сейчас, а подождать появления пакетов.
- WineXS. Это еще один проект, начатый Фрэнком Хендриксоном [Frank Hendrikson], отцом WineTools. Интерфейс пользователя очень прост и предоставляет доступ к реестру Wine, инструменту настройки Winecfg и набору других сервисов «в одно нажатие». Есть также приличный инструмент установки, и благодаря использованию текущей системной инсталляции Wine вы избавлены от необходимости помнить, где какое приложение находится – это проблема WineTools. Ни одно из этих приложений не свободно от ошибок. Некоторые программы работают в Wine, но не работают в CrossOver, и наоборот. К счастью, о конфликтах беспокоиться не нужно. Каждая реализация Wine создает личные каталоги лже-Windows. Например, что-то из CrossOver вы можете найти в /home в подкаталоге .cxoffice; а Wine хранит всё своё в подкаталоге .wine.
- Cedega. Этот коммерческий продукт от TransGaming Technologies (цена от $15 за трехмесячную подписку на http://www.transgaming. com) позаботился об игроках. Как CrossOver Linux оптимизирован под конкретное промышленное ПО, так Cedega оптимизирован под игры. Число поддерживаемых игр растет с каждым обновлением, среди них World of Warcraft, Battlefield 2, Civilization IV и Half Life 2: Episode 1.
Шаг за шагом: неподдерживаемые приложения в CrossOver
-
Поддерживаемые программы. Они могут быть загружены непосредственно из меню. В главном окне выберите Install (Установить), затем выберите приложение из списка. Оно будет установлено и добавлено в меню, как и следует. -
Неподдерживаемые случаи. Выберите Install Unsupported Software (Установить неподдерживаемую программу). Откроется новое окно для выбора файла. Нажмите Other *.exe Location (Расположение другого *.exe). Такой выбор объясняется использованием загруженного приложения. -
Ищем EXE-файл. Выбор третьей опции запустит менеджер файлов CrossOver, весьма похожий на окно выбора файла в Windows. Перейдите к месту расположения вашего EXE-файла. -
Убедимся, что видим приложение. Установщик сам заполняет меню Windows Applications, а вручную это делается на вкладке Меню: выберите нужное приложение и нажмите кнопку Добавить Пункт Меню (Add Menu Entry). -
Берем Flash Player 9 для Windows. При установленном Wine добавьте Microsoft Core Fonts (Базовые шрифты Microsoft) командой sudo apt-get install msttcorefonts. Загрузите последнюю Windows-версию Firefox с http://www.mozilla.org и сохраните ее, как и раньше, на c_drive. -
Теперь установим программу. Дважды щелкните на нем в каталоге и введите wine .wine/drive_c/ Program\ Files/Mozilla\ Firefox/firefox.exe. На http://www.adobe.com щелкните по Get Adobe Flash Player и установите EXE-файл. LXF
Скорая помощь
Установите ли вы Wine или CrossOver Linux, все равно программы будут припрятаны в скрытых каталогах (обозначенных именем, начинающимся с точки) и станут видны, только если вы сами сделаете их видимыми, выбрав Показывать скрытые файлы в вашем файловом менеджере.
Поскольку не все установки проходят гладко, я рекомендую иметь в вашей системе и Wine, и CrossOver. При этом, если CrossOver проваливает установку (как это произошло с AceMoney Lite), то, скажем, вы можете воспользоваться Wine, и наоборот.
Будьте осторожны: некоторые EXE-файлы на самом деле являются самораспаковывающимися архивами и могут заполонить ваши каталоги DLL- и CAB-файлами, а также файлами readme. Кроме того, известно, что Wine весьма эффективно запускает вирусы Windows.