Продукт WINE@Etersoft разработан специально для того, чтобы предоставить возможность организациям и отдельным пользователям полностью перейти на платформу Unix/Linux, сохранив унаследованные Win-приложения.
Особое внимание уделяется поддержке российских коммерческих приложений, которым затруднительно найти аналоги среди свободного ПО для Linux: в первую очередь это приложения, необходимые для ведения дел на предприятии (бухгалтерия, учёт, налоговая отчётность, правовые базы данных и др.).
Etersoft сотрудничает с рядом производителей ПО, что позволяет эффективно диагностировать и устранять проблемы в работе поддерживаемых приложений в среде WINE@Etersoft.
В случае возникновения каких-то проблем мы готовы оказывать техническую поддержку и вносить необходимые изменения в наши продукты. По отзывам и запросам наших клиентов мы готовы дополнять список поддерживаемых приложений и платформ. Пишите нам!
Списки поддерживаемых приложений и систем постоянно расширяется, самую актуальную информацию можно найти на сайте Etersoft. Там же можно найти более подробную информацию о вариантах поставки WINE@Etersoft, новых версиях и обновлениях, а также о дополнительных услугах, предоставляемых компанией Etersoft.
Каждая версия продукта WINE@Etersoft сопровождается списком поддерживаемых приложений. Вошедшие в этот список Win-приложения тестируются на совместимость с WINE@Etersoft и гарантированно устанавливаются, запускаются и стабильно работают. Приложения, не вошедшие в этот список, также могут успешно работать в WINE@Etersoft, однако компания Этерсофт не может этого гарантировать, и не обязуется отвечать на вопросы по их эксплуатации.
Полная информация о совместимости WINE@Etersoft с программами доступна на сайте AppDB
Подробнее см. в документации
Для программ, отмеченных символом *, поддерживается только базовая функциональность.
Для программ, отмеченных символом **, в некоторых конфигурациях возможны проблемы с ключами защиты.
Программы, отмеченные символом ***, только недавно стали поддерживаться
Список поддерживаемых программ актуален для версии WINE@Etersoft 1.0.8 на дату 30.12.2007.
Версия WINE@Etersoft Local ориентирована на индивидуальных пользователей, которым требуется работать с win-приложениями на платформе Linux/Unix. Поддерживается большое количество платформ: разнообразные дистрибутивы Linux, FreeBSD, полный список — на сайте Etersoft.
Особое внимание уделяется поддержке коммерческих приложений, которым затруднительно найти аналоги среди свободного ПО для Linux: в первую очередь это приложения, необходимые для ведения дел на предприятии (бухгалтерия, учёт, налоговая отчётность, правовые базы данных и др.). Полный список официально поддерживаемых приложений доступен на сайте Etersoft.
В версии WINE@Etersoft Local не поддерживается одновременная работа нескольких пользователей с одними и теми же файлами (например, общей базой данных). Соответственно, программы, которые предусматривают режим совместной работы (например, 1С: Предприятие) можно использовать только в монопольном режиме.
Если требуется обеспечить совместную работу — обратитесь к другим версиям WINE@Etersoft.
WINE@Etersoft — это коммерческий продукт, права на использование которого передаются покупателю авторским договором, приложенным к экземпляру продукта. Покупатель версии Local в стандартном случае получает право использовать WINE@Etersoft на одном компьютере.
В стоимость продукта WINE@Etersoft 1.0 Local включён пакет сервисной поддержки в течение 30 дней.
При необходимости просим писать по адресу wine@etersoft.ru.
Зарегистрировать приобретённый Вами экземпляр продукта можно на сайте Etersoft, для этого потребуется ввести регистрационный номер, который указан в Свидетельстве подлинности (либо в авторском договоре).
При регистрации кроме регистрационного номера самого продукта требуется ввести Ваше имя и адрес электронной почты (для юридических лиц — также название организации), чтобы мы могли связаться с Вами при необходимости.
После регистрации будет создана Ваша персональная страница http://sales.etersoft.ru/product/NNNN-NNNN
, подтверждающая, что вы правомерно владеете экземпляром программы WINE@Etersoft.
Введённый Вами адрес электронной почты не будет нигде опубликован, и будет использоваться только для доступа к ресурсам Etersoft и для связи с Вами со стороны Etersoft (рассылки информационных сообщений, если вы дали на это согласие).
Если у Вас возникают какие-либо проблемы с проверяющими органами, незамедлительно обратитесь к нам по адресу sales@etersoft.ru, чтобы мы могли оперативно оказать вам содействие.
Компания Etersoft предоставляет покупателям своих продуктов регулярные обновления, в которых делаются существенные исправления и добавляется поддержка новых возможностей.
Получить обновления можно на сайте компании Etersoft, на Вашей персональной странице. Информацию о выходящих обновлениях мы рассылаем нашим клиентам по электронной почте.
Получив пакеты обновлений, нужно установить их стандартным для Вашей системы способом, удалять при этом предыдущую версию WINE@Etersoft не требуется.
После того как будут установлены новые версии пакетов, каждому пользователю необходимо выполнить команду wine --update
для обновления стандартных данных реестра локального win-окружения, и некоторых других изменений, подготовленных для новой версии.
Дополнительно:
Подробнее:
Рекомендуемые дистрибутивы (в порядке приоритета):
Продукт WINE@Etersoft протестирован на ряде Linux/Unix-систем, полный список которых приведён выше (самая актуальная версия списка публикуется на сайте Etersoft). Двоичные пакеты для каждого из перечисленных в этом списке дистрибутивов можно найти на компакт-диске WINE@Etersoft в подкаталоге WINE/название_дистрибутива/версия
. Исходные тексты WINE (свободная часть) находятся на диске в подкаталоге sources/
.
.wine
в домашнем каталоге каждого пользователя.Если Вы используете дистрибутив, которого нет в списке совместимых с WINE@Etersoft, или другую версию одного из перечисленных дистрибутивов, то мы не можем гарантировать, что WINE@Etersoft можно установить и корректно использовать на данной платформе. В этом случае у Вас есть две возможности: выбрать дистрибутив из списка поддерживаемых или обратиться в Etersoft для обсуждения возможности поддержки WINE@Etersoft на Вашей платформе.
Пакеты, составляющие WINE@Etersoft, устанавливаются обычным образом, Вы можете воспользоваться привычной программой управления пакетами. Потребуется установить все пакеты, имеющиеся в каталоге WINE/название_дистрибутива/версия
. Пакеты из подкаталога extra
, как правило, устанавливать не требуется.
В большинстве ситуаций установку пакетов можно выполнить одной командой (в каталоге со сборкой WINE@Etersoft для Вашего дистрибутива). Для дистрибутивов на основе rpm:
название_дистрибутива/версия# rpm -Uvh *wine*
Для дистрибутивов на основе dpkg:
название_дистрибутива/версия# dpkg -i *wine*
Для FreeBSD:
название_дистрибутива/версия$ pkg_add wine-etersoft-*
Для Slackware:
название_дистрибутива/версия# installpkg *wine*
Для Gentoo: Скопируйте скачанные файлы *.tbz2 в каталог /usr/local/portage/packages/All
. Запустите команду установки emerge -K
для каждого пакета. Например, для версии WINE@Etersoft SQL:
название_дистрибутива/версия# emerge -K wine-etersoft-public
название_дистрибутива/версия# emerge -K wine-etersoft-sql
Вообще, расположение двоичных пакетов должно определяться переменной PKGDIR, но это не всегда работает.
Если программа установки пакетов (rpm или dpkg) сообщит о неудовлетворённых зависимостях, то нужно установить недостающие пакеты из комплекта Вашего дистрибутива обычным образом.
Здесь приведена пошаговая инструкция по установке WINE@Etersoft на примере системы с rpm-пакетами. Порядок выполнения каждого шага строго обязателен. Переходите к выполнению следующего шага, только после проверки, что предыдущий шаг выполнен успешно.
#
” в приглашении означает, что команду нужно выполнить от имени пользователя root. Знак “$
” в приглашении означает, что команду следует выполнять от имени обычного пользователя. Запускайте команды из-под root только там, где это действительно необходимо.
Перед установкой пакетов необходимо убедиться в отсутствии установленного стандартного WINE:
$ rpm -qa | grep wine
если команда вывела на экран хоть один пакет, то его необходимо удалить. Введите следующую команду (требуются привилегии root, будьте внимательны при вводе команды!).
# rpm -e пакеты_wine_установленные_в_системе
ПРОВЕРКА: если команда выполнилась корректно, то вывод следующей команды на экран должен быть пустым:
$ rpm -qa | grep wine
.wine
из домашнего каталога пользователя$ rm -rf ~/.wine
ПРОВЕРКА: если каталог удалён, вывод команды ls ~/.wine
должен быть примерно таким:
ls: .wine: No such file or directory
.wine
следует удалить у всех пользователей, которые будут запускать WINE.Устанавливаем пакеты WINE@Etersoft. Для этого, находясь в каталоге с пакетами, вводим команду (требуются привилегии root):
test:~ # ls -l | grep wine
-rw-rw-r-- 1 ftp ftp 7160360 May 7 16:34 libwine-20070302-eter2suse.i586.rpm
-rw-rw-r-- 1 ftp ftp 1612220 May 7 16:33 wine-20070302-eter2suse.i586.rpm
-rw-rw-r-- 1 ftp ftp 4561108 Jun 8 13:57 wine-etersoft-1.0.network-suse6.i586.rpm
test:~ # rpm -Uvh *wine*
Preparing... ########################################### [100%]
1:libwine ########################################### [ 33%]
2:wine ########################################### [ 67%]
wine 0:off 1:off 2:off 3:on 4:off 5:on 6:off
WINE: Registering binary handler for Windows program: [ DONE ]
3:wine-etersoft ########################################### [100%]
etersafe 0:off 1:off 2:off 3:on 4:off 5:on 6:off
Running etersafed...
ПРОВЕРКА:
test:~ # rpm -qa | grep wine
libwine-20070302-eter2suse
wine-20070302-eter2suse
wine-etersoft-1.0.network-suse6
Он необходим для создания win-окружения для пользователя. Каждый пользователь, который будет запускать WINE, должен предварительно выполнить команду:
$ wine
ВЫВОД (может различаться при разных системах и конфигурациях!):
First running... Using WINEPREFIX=/home/tester/.wine
Creating default file tree...
Copying prepared tree from '/usr/bin/../lib/wine-default' ...
Building local device environment...
Drive 'a:' created as link for '/mnt/floppy' target.
Drive 'a::' created as link for '/dev/fd0' target.
Device 'd:' created as link for '/home/tester/Documents' target.
Device 'e:' created as link for '/mnt/cdrom' target.
Device 'e::' created as link for '/dev/cdrom' target.
Device 'com1' created as link for '/dev/ttyS0' target.
Device 'com2' created as link for '/dev/ttyS1' target.
Device 'com3' created as link for '/dev/ttyS2' target.
Device 'com4' created as link for '/dev/ttyS3' target.
Device 'lpt1' created as link for '/dev/lp0' target.
Device 'lpt2' created as link for '/dev/lp1' target.
Device 'lpt3' created as link for '/dev/lp2' target.
Device 'lpt4' created as link for '/dev/lp3' target.
Device 's:' created as link for '/var/local/sharebase' target.
Communication dlls installing...
MSI installing...
Successfully registered DLL /home/tester/.wine/dosdevices/c:/windows/system32/msxml3.dll
Successfully registered DLL /home/tester/.wine/dosdevices/c:/windows/system32/msxml4.dll
WINE@Etersoft has been configured for the first time.
Use /home/kondratyuk/wine_c as WINE C:\ disk.
Copy your program into and install it.
ПРОВЕРКА:
$ ls ~/.wine^
...
drwxrwxr-x 3 tester tester 97 Июн 14 16:18 .
drwx------ 64 tester tester 8192 Июн 14 16:18 ..
drwxrwxr-x 3 tester tester 149 Июн 14 16:17 dosdevices
-rw-rw-r-- 1 tester tester 235 Июн 14 16:18 .etersoft-release
-rw-rw-r-- 1 tester tester 570446 Июн 14 16:18 system.reg
-rw-rw-r-- 1 tester tester 3887 Июн 14 16:17 userdef.reg
-rw-rw-r-- 1 tester tester 27712 Июн 14 16:18 user.reg
ПРОВЕРКА:
$ wine --version
WINE@Etersoft 1.0 Network (1.0.7), registration number is XXXX-XXXX.
Legality check is available on the page http://sales.etersoft.ru/product/.
Вы установили WINE@Etersoft!
Можете приступать к установке win-приложений, диск С:
— это каталог ~/wine_c
.
Копируйте туда дистрибутив программы и выполняйте команду
$ wine имя_программы.exe
Прежде чем начинать работать с WINE, каждому пользователю, от имени которого будут запускаться win-приложения, необходимо настроить локальное win-окружение (по умолчанию оно расположено в каталоге ~/.wine/
). Настройка окружения выполняется автоматически при первом запуске WINE (достаточно в командной строке ввести команду wine
и дождаться завершения её работы).
При первом запуске WINE создаёт необходимую инфраструктуру в домашнем каталоге данного пользователя, для чего выполняет следующие действия:
C:
) для win-приложений, для удобства этот каталог доступен как wine_c
в домашнем каталоге пользователя.Процедуру начальной настройки win-окружения можно запустить в любой момент и впоследствии командой wine --update
. Эта команда выполнит все те же операции, что и при первом запуске WINE. Выполнение wine --update
не затрагивает данных реестра, изменённых пользователем.
WINE создаёт в локальном win-окружении каждого пользователя логические диски, к которым запущенные в WINE win-приложения могут обращаться стандартным для Windows способом: C:\путь
, D:\путь
и т. д. Все логические диски WINE, кроме диска C:, представляют собой символьные ссылки в каталоге ~/.wine/dosdevices
, которые могут указывать на любые каталоги host-системы.
По умолчанию логические диски WINE будут расположены следующим образом:
C: $HOME/.wine/dosdevices/c:
D: $HOME/Documents
E: /media/cdrom или /mnt/cdrom
Если какого-то из нужных каталогов не окажется, то соответствующие ссылки просто не будут созданы. Как минимум один диск — C:
будет создан в любом случае. Остальные диски необязательны, даже одного C:
будет достаточно для работы в WINE. Правила создания ссылок по умолчанию описаны в файле /etc/wine/map_devices.sh
, при необходимости их можно изменить. Этот файл используется при первом запуске WINE и при выполнении команды wine --update
.
Каждый пользователь может вручную изменить соответствия логических дисков WINE каталогам host-системы или создать любое количество дополнительных дисков. Все логические диски для WINE представлены обыкновенными символьными сылками на каталоги в каталоге $HOME/.wine/dosdevices
. Чтобы создать новый логический диск или изменить имеющийся, достаточно создать новую символьную ссылку с нужным именем.
[tester@test tester]$ ln -s /var/data/1c ~/.wine/dosdevices/f:
[tester@test tester]$ ls -l ~/.wine/dosdevices
total 0
lrwxrwxrwx 1 tester tester 13 Nov 25 14:50 a: -> /mnt/floppy
lrwxrwxrwx 1 tester tester 8 Nov 25 14:50 a:: -> /dev/fd0
drwxrwsr-x 4 tester tester 4096 Июн 14 13:00 c:
lrwxrwxrwx 1 tester tester 10 Июн 14 12:59 com1 -> /dev/ttyS0
lrwxrwxrwx 1 tester tester 10 Июн 14 12:59 com2 -> /dev/ttyS1
lrwxrwxrwx 1 tester tester 10 Июн 14 12:59 com3 -> /dev/ttyS2
lrwxrwxrwx 1 tester tester 10 Июн 14 12:59 com4 -> /dev/ttyS3
lrwxrwxrwx 1 tester tester 19 Июн 14 12:59 d: -> /home/tester/Documents
lrwxrwxrwx 1 tester tester 10 Июн 14 12:59 e: -> /mnt/cdrom
lrwxrwxrwx 1 tester tester 10 Июн 14 12:59 e:: -> /dev/cdrom
lrwxrwxrwx 1 tester tester 8 Июн 14 12:59 lpt1 -> /dev/lp0
lrwxrwxrwx 1 tester tester 8 Июн 14 12:59 lpt2 -> /dev/lp1
lrwxrwxrwx 1 tester tester 8 Июн 14 12:59 lpt3 -> /dev/lp2
lrwxrwxrwx 1 tester tester 8 Июн 14 12:59 lpt4 -> /dev/lp3
lrwxrwxrwx 1 tester tester 12 Nov 25 14:54 f: -> /var/data/1c
С помощью логических дисков WINE можно организовать совместный доступ к данным для win-приложений нескольких пользователей, для этого достаточно в win-окружении каждого пользователя создать логический диск (ссылку), указывающий на общий каталог, доступный пользователям, например, /var/data/1c
.
Для отображения портов в ~/.wine/dosdevices
создаются ссылки на соответствующие устройства в хост-системе (см. в пред. примере про создание логического диска). Обычно это выполняется автоматически при первой настройке Wine. Например, в Linux для COM1 будет создана ссылка на /dev/ttyS0
, для LPT1- ссылка на /dev/lp0
.
ls -l /dev/lp0
и при необходимости внесите пользователя в соответствующую группу.WINE позволяет работать win-приложениям, которые обращаются к ресурсам при помощи сетевого пути (UNC). Сетевые пути в WINE обеспечиваются так же, как и логические диски — при помощи символьных ссылок на каталоги host-системы.
Допустим, программа обращается к файлу \\someserver\share\file.txt
. Чтобы обращение по такому пути работало в WINE, вам потребуется создать в каталоге ~/.wine/dosdevices/unc/
каталог someserver
, содержащий символьную ссылку share
, указывающую на расположение данного ресурса в host-системе.
[tester@test unc]$ pwd
/home/tester/.wine/dosdevices/unc
[tester@test unc]$ mkdir someserver
[tester@test unc]$ ln -s /var/local/share someserver/share
[tester@test unc]$ ls -l someserver/
total 0
lrwxrwxrwx 1 tester tester 16 May 18 06:24 share -> /var/local/share
[tester@test unc]$
В этом примере искомый файл file.txt
располагается в каталоге /var/local/share
.
Общее правило для запуска всех win-приложений в WINE — запускаемые файлы должны находиться в области видимости WINE, то есть на одном из логических дисков WINE или в его подкаталогах. Если программа поставляется на компакт-диске, то не забудьте должным образом смонтировать диск1, прежде чем обращаться к нему из WINE. Обратите внимание, что в этом случае у вас должен быть разрешён запуск приложений с компакт-диска. Если приложение распространяется не на диске — не забудьте сначала скопировать его в область видимости WINE.
Запуск win-приложений производится двойным щелчком мыши на значке в любом файловом менеджере. Для того, чтобы можно было запускать win-приложения как обыкновенные исполняемые файлы host-системы (например, из Midnight Commander), должна быть запущена системная служба (service) wine.
Также приложение может быть запущено с помощью команды в командной строке. Для запуска exe-файлов нужно выполнить команду:
$ wine программа.exe
Программы, поставляемые в виде msi-пакетов, а также файлы. bat и. cmd запускаются с помощью команды:
$ wine start пакет.msi
Для запуска консольных приложений, например, Far, используется команда:
$ wineconsole Far.exe
Для получения командной строки Windows запустите:
$ wineconsole cmd
.
Запуск программ DOS (16-разрядных программ реального режима процессора), особенно сложных, в штатной виртуальной DOS-машине, имеющейся в Wine, обычно не даёт положительного результата. Рекомендуется использовать dosemu
или dosbox
.
Как и в Windows, перед использованием большую часть win-приложений сначала потребуется установить. Установка производится обычным для Windows способом — с помощью поставляемой вместе с win-приложением программы установки. Разница в том, что в случае WINE программа будет установлена в локальном win-окружении пользователя.
Для установки win-приложения следует любым удобным способом запустить программу установки (чаще всего setup.exe
). Дальше можно действовать по инструкции, предлагаемой поставщиком win-приложения.
Многие win-приложения запрашивают перезагрузку для завершения установки. Естественно, перезагружать host-систему при этом не следует. В локальном win-окружении процедуре загрузки Windows соответствует команда wineboot
— её можно вызвать из любой командной строки. Если в этот момент в WINE выполняются другие приложения, то рекомендуется их завершать до перезагрузки.
Для удаления win-приложения, установленного в win-окружении, следует воспользоваться утилитой uninstaller
. Эта утилита выводит список установленных в win-окружении приложений (если они зарегистрированы в реестре). Чтобы удалить приложение, выберите его из списка и нажмите кнопку «Uninstall». Если в списке нет приложения, которое вы хотите удалить, то достаточно просто удалить каталог с приложением (можно воспользоваться для этого программой winefile
, а можно — стандартными средствами host-системы).
Советы по соблюдению должного уровня безопасности в WINE могут быть сведены к двум простым соображениям:
Поэтому следует максимально ограничить область видимости WINE, включив туда только те данные, доступ к которым необходим win-приложениям для работы. Можно сформулировать и несколько более конкретных рекомендаций:
root
! Запущенное от имени root win-приложение получит привилегии этого пользователя. Для работы они ему никогда не потребуются, а во вред могут быть употреблены запросто./
”). Даже целиком включать домашний каталог пользователя в зону видимости WINE почти наверняка не требуется.Системе WINE доступны те же шрифты, что и другим приложениям в host-системе2. Соответственно, к этим шрифтам получают доступ и win-приложения.
Сделать определённые шрифты доступными win-приложению можно несколькими способами:
/usr/share/fonts
);/usr/share/wine/fonts
;~/.fonts
);~/wine_c/windows/fonts
).Рекомендуется помещать шрифты в системные каталоги только в составе соответствующих пакетов, не копировать их из других систем.
Существует базовый набор шрифтов (MS Core Fonts) — многие приложения рассчитывают на наличие в системе шрифтов со стандартными именами из данного набора. Для корректной работы таких приложений, а также для обеспечения точного соответствия документов при печати потребуется установить этот набор шрифтов из пакета fonts-ttf-ms
, прилагающегося к дистрибутиву WINE@Etersoft (каталог fonts на диске). Для систем на основе Debian и Ubuntu можно установить пакет msttcorefonts
из штатного репозитория системы;
Также набор данных шрифтов можно свободно скачать с сайта http://corefonts.sourceforge.net
.
HASP (от англ. Hardware Against Software Piracy)- это мультиплатформенная аппаратно-программная система защиты программ и данных от нелегального использования и несанкционированного распространения.
Драйвера для поддержки ключей защиты в Linux поставляются в пакетах haspd и haspd-modules.
Ключи HASP бывают как локальные (однопользовательские), так и сетевые (многопользовательские). По способу подключения ключи также бывают двух типов: подключаемые к порту LPT (параллельный порт) и к шине USB. Для ОС GNU/Linux имеются драйверы USB- и LPT-ключей защиты для ядра версии 2.4 и 2.6. Рекомендуется использовать USB-ключ защиты, так как это более современный способ подключения, и его подключение и настройка вызывает меньше проблем. Возможно, потребуется обратиться к поставщику программы и попросить о замене ключа.
При эксплуатации программ, защищённых ключом защиты HASP (например, 1С: Предприятие 7.7), необходим драйвер ключа, установленный на компьютере с подключённым ключом. Для сетевого ключа в дополнение к драйверу потребуется также работающий сетевой менеджер лицензий. Сетевой ключ может располагаться на любом узле сети, работающем под управлением Linux или Windows.
Различение ключей:
Все компоненты драйвера HASP, включая сетевой менеджер лицензий, находятся в пакете haspd
. Достаточно обычным способом установить этот пакет (из каталога для вашей версии дистрибутива GNU/Linux) на тот компьютер, к которому подсоединён ключ (вне зависимости от типа ключа).
Проверить, что все компоненты драйвера запущены и работают правильно, можно командой:
[root@test root]# service haspd status
Aladdin HASP 4/HL driver status:
kernel module aksparlnx is loaded
aksusbd is running
winehasp is running
hasplm is running
haspd
Для тех систем, где отсутствует команда service
, следует использовать команду /etc/init.d/haspd status
.
Если в выводе service haspd status
появляется предупреждение о том, что не загружен модуль ядра (kernel module aksparlnx is not loaded
), это свидетельствует о том, что у вас установлено ядро, для которого не удалось автоматически подобрать драйвер.
Проверить, какие порты прослушивает менеджер лицензий HASP, можно командой:
[root@test root]# netstat -ap | grep hasp
udp 0 0 *:475 *:* 1535/hasplm
udp 0 0 localhost.localdom:2790 *:* 1169/winehasp
Мы видим, что на порту 475 по протоколу UDP ожидает подключения с любых адресов менеджер лицензий, а на локальном порту 2790 по протоколу UDP слушает winehasp соединения с этой же машины.
Если приложение использует сетевой ключ, то ему требуется знать информацию о расположении ключа защиты (сетевого менеджера лицензий) и способа обращения к нему. Эти данные указываются в файле NETHASP.INI
в каталоге с исполняемыми файлами защищённого приложения. Этот файл может выглядеть, например, так:
[NH_COMMON]
NH_TCPIP = Enabled ; Используем только IP-протокол
[NH_TCPIP]
NH_SERVER_ADDR = 192.168.0.1 ; IP-адрес (или имя) машины с менеджером лицензий
NH_TCPIP_METHOD = UDP ; UDP для Linux-сервера и TCP для Windows-сервера
NH_USE_BROADCAST = Disabled ; Отключить поиск ключа по всей сети
NETHASP.INI
notepad
.Для упрощения настройки можно воспользоваться командой setnethasp IP-адрес
, которая создаст NETHASP.INI
, настроенный на указанный сервер.
Обращение к сетевому менеджеру лицензий, запущенному под Linux, возможно только по протоколу UDP/IP. Если вы используете менеджер лицензий, запущенный под Windows, то удостоверьтесь что в нём включен протокол TCP/IP.
hinstall.exe
из поставки Win-приложения.Если всё правильно настроено, но приложение не видит ключ, следует для проверки отключить межсетевой экран (firewall) командой service iptables stop
или iptables -F
Далее можно попробовать обратиться к менеджеру лицензий с помощью тестовой программы.
# eterkeytest --hasp
USB:
HASP:
HASP API VERSION: 8.0
HASP Local:
LPT HASP4 M4 (HASP3 is connected, key is HASP4 Net 5)
1C:Accountancy v7.7 (simple and network)
HASP Net (press Ctrl-C to break):
..... -- active logins: 1
-- max logins: 5
-- key type: HASP4 Net 5
-- activations: 65535
1C:Accountancy v7.7 (simple and network)
Для Windows существует программа АКС Монитор, позволяющая увидеть тип ключа и количество лицензий в нём: ftp://ftp.aladdin.com/pub/hasp/new_releases/utility/monitor/Monitor_Setup.zip
Драйвер ключей защиты HASP для GNU/Linux состоит из нескольких взаимодействующих компонент:
aksparlnx
(версия 1.6) — модуль ядра, обеспечивающий низкоуровневый доступ к LPT-ключу;askusbd
(версия 1.8.1) — универсальный драйвер для USB- и LPT-ключей (системная служба);winehasp
(версия 1.00) — часть драйвера, предоставляющая доступ к ключу HASP win-приложениям, исполняющимся в среде WINE (системная служба);hasplm
(версия 8.30) — сетевой менеджер лицензий (системная служба).При отсутствии в пакете модулей для вашего ядра потребуется запустить сборку командой service haspd build
Для сборки потребуется установить заголовочные файлы ядра или исходники ядра (зависит от системы) именно той версии, под которую вы планируете сборку.
kernel-headers-*
.kernel-devel-*
.linux-headers-*
.kernel-source-*
.kernel-source-stripped-*
.Сетевыми ключами Smartkey 3 USB/LPT
защищаются, например, конфигурации 1С: Рарус 7.7. Драйвер для ключей входит в пакет haspd (/usr/sbin/keyd
) и запускается в сервисе haspd. Конфигурационный файл драйвера находится в /etc/skeyd.conf
, там можно настроить адрес и порт, на котором находится ключ. По умолчанию драйвер слушает на адресе 127.0.0.1
порт 13527/tcp
.
В защищаемой программе параметры доступа указываются в файле Server.ini
(должен находиться в каталоге с конфигурацией).
MODE=NET
SERVER=localhost
IP=127.0.0.1
PORT=13527
PING=0
Server.ini
Дополнительно можно посмотреть здесь: http://www.forum.mista.ru/topic.php?id=242981&forum=it&order=answers
Ключи Smartkey 2 требуют использования модуля ядра и не поддерживаются.
Данные ключи используются для защиты таких программ, как Инфо-Бухгалтер, БЭСТ. При использовании сетевых ключей возможен запуск защищённых программ через Wine. Драйвер для ключей входит в пакет haspd и запускается в сервисе haspd. По умолчанию используется протокол TCP/IP и порты 7001 и 7002. На порту 7002 должен работать веб-интерфейс по проверке лицензий.
Пример конфигурационного файла поставляется /usr/share/doc/haspd-2.0/sntlconfig.xml
Сайт Rainbow Technologies Сайт производителя
Данные ключи применяются, например, в составе решения по защите конфигураций 1С. Драйвера ключа существуют только для Windows. Если применяемая схема защиты требует, чтобы ключ был как на сервере, так и на клиенте, приложение запустить в WINE не удастся. Конфигурация АльфаАвто 4.0 от компании Рарус для 1С 8.0, защищённая ключом Катран, проверена и работает под WINE, как в обычном, так и в терминальном режиме.
Дополнительно можно посмотреть здесь:
Сервер Guardant Net может быть запущен на платформах X86 под операционными системами Windows 95/98/Me/NT/2000/XP. Драйверов под Linux для ключей Guardant не существует, поэтому локальные ключи не работают вообще, а программы, защищённые сетевым ключом, могут быть запущены при использовании сервера ключей, запущенного на Windows.
В случае использования других ключей защиты, следует руководствоваться следующими общими правилами:
В случае затруднений обращайтесь с описанием проблемы по адресу mailto:hasp@etersoft.ru
.
Ещё одна сторона совместной работы: одновременное использование большего количества ресурсов, что может приводить к превышению стандартных лимитов, используемых по умолчанию в различных Unix-системах. Лимиты могут определяться как в момент компиляции ядра, так и настраиваться в любой момент в процессе работы.
В контексте использования WINE наиболее актуален лимит на открытые файлы. Если в приложении не открываются большие файловые базы или невозможно работать более чем 3-м пользователям одновременно, это может означать, что превышен лимит на открытые файлы.
Лимит на открытые файлы двухуровневый: с одной стороны, имеется лимит ядра на общее число всех открытых файлов, с другой стороны, для каждой командной оболочки пользователя также может быть выставлен лимит на число открытых файлов.
Узнать текущее значение лимита ядра можно через команду winediag
. Обычно это значение достаточно велико.
Чтобы разово изменить это значение в Linux можно посредством той же proc
, для этого нужно просто записать новое значение в файл file-max (потребуются права суперпользователя):
# echo "104854" > /proc/sys/fs/file-max
# cat /proc/sys/fs/file-max
104854
Чтобы настройка лимитов сохранялась между перезагрузками, необходимо внести нужные значения в файл /etc/sysctl.conf
:
# Maximum number of open files permitted
fs.file-max = 104854
sysctl.conf
Лимит по количеству открытых файлов для командной оболочки пользователя можно контролировать при помощи подсистемы авторизации PAM. Для этого в конфигурационном файле /etc/security/limits.conf
выставляются необходимые значения:
* soft nofile 5000
* hard nofile 5000
/etc/security/limits.conf
В данном случае указанлимит в 5000 файлов. Чтобы лимит применялся при регистрации пользователей в системе, в файле /etc/pam.d/system-auth
должна быть строка:
session required /lib/security/pam_limits.so
После повторного входа в систему выставленное вами значение лимита должно быть отображено в выводе команды ulimit -n
.
Для версий WINE@Etersoft 1.0 Network и SQL имеются ограничения на максимальный размер файлов, с которыми работает программа, блокирующая отдельные участки файла: размер файла не должен превышать 1Гб. Это относится, например, к dbf-файлам, и не относится к видеофайлам. В случае работы с файлом по протоколу CIFS данное ограничение отсутствует.
Обратите внимание на то, что при использовании файла NETHASP.INI, который записан по умолчанию, возможна нестабильная связь с менеджером лицензий и сбои при запуске программы 1С.
У 1С: Предприятия в WINE имеется ряд отличий в работе функций администрирования, которые следует учесть.
При использовании режима административной установки у простых пользователей не будет возможности сохранять базу (через Конфигуратор), если у них отсутствуют права записи на файл 1CV7FILE.LST
. При этом будет выводиться сообщение “Ошибка при открытии списка сохраняемых файлов
”. Обычно данный файл имеется в каталоге BIN, но при необходимости отдельных настроек для каждой базы, он может быть скопирован в каталог базы с соответствующими правами.
При восстановлении конфигурации из архива возможна ошибка о нехватке свободного места. Она связана с несовпадением владельца файлов, и пользователя, выполняющего восстановление.
Если программа молча закрывается сразу после ввода пароля пользователя, это говорит о проблемах с правами на файлы базы. Если программа иногда выдаёт что нет ключа защиты, иногда запускается, а иногда падает когда уже появилось главное окно, то необходимо правильно настроить NETHASP.INI (отключить broadcast и указать IP-адрес машины с ключом). Подробнее см. в разделе про настройку HASP.
Полезные ответы по 1С: http://forum.windowsfaq.ru/showthread.php?t=52051
БЭСТ 4+ представляет собой консольное приложение Win32, написанное в xHarbour. При исполнении в режиме Win98 он использует встроенный терминал, который некорректно работает в Wine (из-за использования своих шрифтов). При исполнении в режиме Win2000 такой проблемы нет, используется штатная консоль Wine. Для запуска БЭСТ 4+ выполните в каталоге с программой команду
$ winexp wineconsole start best.bat
Если у вас неадаптированная версия БЭСТ 4+, то для выгрузки отчётов в OpenOffice.org потребуется заменить util/zip.exe файлом из архива ftp://ftp.info-zip.org/pub/infozip/WIN32/zip232dn.zip
Многие программы имеют дистрибутив в виде пакета msi. Если дистрибутив представляет из себя файл с расширением msi, запустите установку командой
$ wine start программа.msi
В Wine возможно запускать консольные Win32-программы. Например, для запуска программы far:
$ wineconsole Far.exe
Для получения командной строки запустите $ wineconsole cmd
или выберите в меню пункт “Командная строка Wine
”.
Запуск программ DOS (16-разрядных программ реального режима процессора), особенно сложных, в штатной виртуальной DOS-машине, имеющейся в Wine, обычно не даёт положительного результата. Рекомендуется использовать dosemu
или dosbox
.
В WINE@Etersoft предусмотрено открытие документов офисных форматов в OpenOffice.org, установленном в host-системе. При этом вызывается на выполнение команда ooffice
(soffice
) host-системы.
Специальных настроек, как правило, не требуется. Достаточно иметь в системе установленный и настроенный CUPS, и все настроенные принтеры будут доступны в Wine.
В настоящий момент не работает установка виртуальных принтеров, которые нужны для печати на виртуальные устройства типа VentaFax или XPrint/BiPrint.
Если после обновления возникли проблемы с установленными драйверами принтеров, можно удалить записи о них из реестра командой wine --removeprinters
.
Для отображения штрих-кодов в отчётности используется специальный шрифт (EanGnivc), который входит в WINE@Etersoft (файл eang000.ttf).
В конфигурации Торговля и Склад для формирования графического представления штрихового кода используется OCX-компонента ActiveBarcode, созданная компанией Schenk&Horn, подключаемая как элемент управления OLE. Находится она в файле BARCODE.OCX. Перед использованием его нужно зарегистрировать командой $ regsvr32 BARCODE.OCX
в каталоге с конфигурацией, где и находится BARCODE.OCX.
Платформа 1С: Предприятие включает лицензию на использование этой компоненты версий 3.хх, таким образом при использовании ActiveBarcode из 1С: Предприятия она будет работать, как лицензионная копия.
В типовых конфигурациях используется специальная компонента 1С: Печать штрихкодов (выполненная в виде DLL-библиотеки), которая распространяется на диске ИТС (Работаем с программами) в виде установочного файла (1CBarcode.exe). Его нужно установить отдельно перед началом работы с конфигурацией. Обратите внимание, что лицензия на эту компоненту разрешает её использование только с программой 1С: Предприятие.
Для печати штрих-кодов на платёжных поручениях банки предлагают установить программы из серии XPrint или BiPrint, которые устанавливаются как виртуальный принтер, перехватывают вывод программы, распознают в нём текстовую информацию и дополняют изображение документа штрих-кодом, содержащем информацию о платеже.
В настоящий момент виртуальные принтеры в WINE@Etersoft не поддерживаются и работа таких программ невозможна.
Поскольку речь идёт об использовании технологии, предоставляющей прослойку совместимости для запуска программ, разработанных для ОС Windows, на платформе Linux/Unix, возможна путаница в терминологию. Чтобы не путаться в том, какая именно система имеется в виду, мы будем придерживаться строго последовательного употребления терминов.
Надеемся, что теперь читатель никогда не засомневается, о какой среде идёт речь, а если всё-таки это произойдёт, то он ещё раз заглянет в это краткое предисловие.
Благодаря распространённости ОС Windows на сегодняшнем рынке очень многочисленны приложения, разработанные для этой платформы3. Однако зависимость коммерческого приложения от определённой платформы (ОС) может быть не всегда удобной или выгодной. На этот случай существуют средства, позволяющие программам, разработанным для ОС Windows, работать в другой операционной системе. Одним из наиболее развитых среди подобных средств является WINE.
WINE (Wine Is Not Emulator) не является эмулятором операционной системы: то есть он не создаёт изолированной среды для выполнения и не обеспечивает доступ к низкоуровневым системным ресурсам, таким как непосредственный доступ к оборудованию. Задача WINE состоит в том, чтобы, с одной стороны, предоставить win-приложению Win API — стандартный системный интерфейс операционных систем Windows, а с другой стороны, транслировать запросы win-приложения в соответствующие системные вызовы (Unix API). WINE работает на различных Unix-системах, в том числе на GNU/Linux, FreeBSD, Sun Solaris, MacOS. Таким образом, WINE — это своеобразная «прослойка» совместимости между win-приложениями и host-системой.
Хотелось бы отметить, что любые программы WINE выполняются в непривилегированном режиме и не требует никакой модификации ядра операционной системы (в том числе динамически загружаемых модулей). Отсюда следует простой вывод относительно безопасности: любые проблемы, которые могут быть вызваны запуском win-приложений, будут ограничены правами доступа того пользователя, который запустил WINE. В результате win-приложения будут подчиняться политике доступа UNIX-системы и не смогут её нарушать.
У данного ограничения есть и другая практическая сторона: в WINE нет поддержки низкоуровневого обращения к оборудованию (драйверов оборудования, прямой работы с USB-устройствами). Всё периферийное оборудование следует подключать и настраивать в host-системе: для win-приложений эти устройства могут быть доступны стандартным способом через файловую систему или другие стандартные интерфейсы (например, TWAIN для сканеров, который реализован в WINE как обёртка над библиотекой SANE).
Наиболее распространённый способ применения WINE — запуск двоичных win-приложений в Unix-среде. Удобство для пользователей и разработчиков заключается в том, что при этом не требуется никак изменять приложение — один и тот же вариант годится и для Windows, и для WINE.
Другое, на сегодняшний день пользующееся незаслуженно меньшей популярностью применение — с помощью WINE разработчики ПО могут компилировать свои win-приложения из исходных текстов непосредственно в двоичные исполняемые файлы для Unix. Опять-таки, это те же самые исходные тексты, из которых компилируются двоичные файлы для Windows.
WINE состоит из нескольких компонент:
WINE — это свободный проект, который был начат в 1993 году. На тот момент распространённой платформой была Win16 (Windows 3.1), на неё и был ориентирован WINE, на сегодняшний день основным русло разработки — Win32. Исходные тексты WINE выпускаются под лицензией LGPL (Lesser GPL), никаких ограничений по доступу к исходным текстам и их модификации не имеется. WINE снабжён достаточно вразумительной документацией, имеется ряд списков рассылки (англоязычных), как для пользователей, так и для разработчиков, где оперативно решаются любые вопросы.
Процесс разработки WINE во многом похож на метод, применяемый при разработке ядра Linux. Все присылаемые (в специальную рассылку) патчи подвергаются рассмотрению разработчиков, которые могут высказывать свои соображения и добавления. Имеется один человек, Александр Джулиард, который принимает решение о том, включать ли патч в CVS, и при необходимости совершает в нём какие-то улучшающие изменения (например, исправляет ошибки в оформлении кода). Ведётся контроль и учёт всех отправляемых патчей и их авторства. Прежде чем патч будет принят, он проходит автоматическое тестирование — WINE компилируется с новым патчем, и выполняется регресс-тестирование: запускается тестовый код, написанный практически для каждого API, с помощью которого можно удостовериться, что добавление патча не нарушает совместимость.
Успешность и корректность работы win-приложений в WINE естественно определяется тем, насколько среда WINE неотличима от Windows с точки зрения win-приложения. Иначе говоря, вопрос в том, насколько полно Win API и другие стандартные компоненты и процедуры Windows реализованы в WINE. Текущая оценка полноты реализации конкретных функций публикуется на сайте разработчиков WINE. В WINE реализованы функции практически всех динамических библиотек (DLL), входящих в Windows: начиная от 16-разрядных и заканчивая появляющейся поддержкой 64-битного режима. На хорошем уровне находится поддержка OLE, MSI и DirectX.
Если говорить об общей оценке полноты реализации, то на сегодняшний день разработчики называют цифру 90%. Однако относиться к этой цифре нужно не совсем так, как к обычному процентному соотношению. Дело в том, что с точки зрения успешной разработки WINE Win API должно быть таким, каким его хотят видеть программы. Полных и безошибочных спецификаций Win API в публичном доступе нет (и никогда не было), и это во многом определило характер разработки на платформе Win. Большинство разработчиков win-приложений используют только незначительную часть стандартных функций API, а остальные необходимые функции реализуют самостоятельно и поставляют вместе с программой. В последние годы подмножество широко используемых функций API в широкой массе win-приложений уже стабилизировалось и практически не меняется. Для WINE это означает, что цифра 90% означает стабильную работу большинства win-приложений в WINE даже больше, чем в 90% случаев.
По этой же причине не так существенна опасность отставания от изменений, вносимых в Win API в рамках операционной системы Windows. Единственная особенность — развивающаяся поддержка 64bit, при разработке архитектуры WINE принималась в расчёт возможность расширения в этом направлении. Поэтому как только функции Win64 API получат более широкое распространение, добавление их поддержки в WINE не заставит себя долго ждать.
Данный документ распространяется на условиях свободной лицензии FDL (Free Documentation License) версии 1.1 или любой более поздней версии. Данный документ не содержит текста, помещаемого на первой или последней странице обложки. Данный документ не содержит неизменяемого текста.
Мы надеемся что продукт WINE@Etersoft будет соответствовать вашим ожиданиям и будет пригоден для повседневной эксплуатации нужных вам программ.
В любом случае мы ждём ваших отзывов и предложений, направляйте их по адресу wine@etersoft.ru.
Команда разработчиков WINE@Etersoft
«06 августа 2007»
1Нужно делать это вручную, или монтирование выполняется автоматически — зависит от вашего дистрибутива и стиля работы.
2Для получения списка доступных шрифтов WINE использует пакет fontconfig, а для отрисовки символов — библиотеку freetype2.
3Здесь и далее мы будем называть такие приложения win-приложениями.