Расширенное управление программным обеспечением FreeBSD.Часть1
Опубликованно 03.05.2016 автором admin . Рубрика: FreeBSD. Добавить в закладки: постоянная ссылка.
FreeBSD поддерживает работу множества различных программных продуктов. Большая их часть доступна в виде исходного кода, поэтому их можно собрать как «родное» программное обеспечение FreeBSD. И благодаря продуманной организации FreeBSD в ней также можно запускать программы из многих других операционных систем. Посмотрим, как это можно реализовать. Внимание будет сосредоточено на популярном пакете совместимости с Linux, который позволяет запускать во FreeBSD программы Linux без их модификации.
Кроме того, для запуска программ во время начальной загрузки и их останове при выключении системы необходимо редактировать и создавать заново сценарии запуска и останова. Здесь будет рассмотрено, как реализовать такие системы и управлять ими во FreeBSD.
Также, здесь будет рассмотрена работа систем с несколькими процессорами и их взаимодействие с программным обеспечением. Хотя несколько процессоров могут значительно усилить мощь системы, они не принесут пользы, если программы не сконфигурированы должным образом.
FreeBSD | Обзор, мнение, пригодность для десктопа
Сценарии запуска и останова.
Основные программы FreeBSD запускаются посредством /
но дополнительные программы запускаются отдельными сценариями, которые устанавливаются системой «портов» и пакетов. Однако при установке собственной программы необходимо создать сценарий, который управляет ее запуском и остановом. Для изменения процесса запуска существующего пакета необходимо понимать, как работают сценарии запуска и останова.
управляют процессом запуска основной системы. В ходе начальной загрузки сценарии запуска FreeBSD проверяют несколько каталогов и запускают найденные в них дополнительные командные сценарии.
Чаще всего сценарии запуска и останова находятся в каталоге /usr/local/etc/rc.d, но могут располагаться по умолчанию и в /usr/XllR6/etc/rc.d.
Эти каталоги задаются в /etc/defaults/rc.conf и могут быть подменены в /etc/rc.conf.
Дополнительные каталоги сценариев можно добавить с помощью переменной local_startup в rc.conf.
процессе поиска командных сценариев система проверит эти каталоги на наличие файлов, имена которых заканчиваются на «.sh».
Если система находит такой файл, он расценивается как командный сценарий и выполняется с аргументом start. При останове система FreeBSD запускает те же сценарии с аргументом stop. Предполагается, что сценарии принимают эти аргументы и выполняют соответствующие действия.
Типичный сценарий запуска
Рассмотрим типичный сценарий запуска, snmpd.sh. Он является частью пакета net-snmp, который будет рассмотрен чуть позже. Сейчас достаточно знать, что этот сценарий запускает сервер SNMP при начальной загрузке и останавливает этот демон при выключении системы. Вот этот сценарий:
в if ! PREFIX=$(expr $0 : «(Л -)/etc/rc.d/$(basename $0)$»); then echo «SO: Cannot determine the PREFIX» > PREFIX>/sbin/snmpd ] $ < PREFIX>/sbin/snmpd echo -n ‘ snmpd’
Установка FreeBSD
killall snmpd echo -n ‘ snmpd’
echo «Usage: basename $0′ < start|stop>» >https://freebsd-ru.ru/freebsd/116-soft/» target=»_blank»]freebsd-ru.ru[/mask_link]
Как запустить программу freebsd
Но на каждую тетку с резьбою
Обнаружится дядька с винтом.
Тимур Шаов
Существует устоявшееся мнение о том, что применение FreeBSD в качестве настольной системы затрудняется недостаточным (по сравнению, скажем, с Linux) количеством приложений общего назначения. При этом забывают часто, что база пользовательских программ этих систем практически одинакова. И почти все приложения, доступные в исходных текстах на условиях любых свободных лицензий, можно найти если не в коллекции пакетов FreeBSD, то уж в системе ее портов — точно. Ведь число портированных под нее программ превысило десять тысяч — не каждый дистрибутив Linux может похвастаться таким числом прекомпилированных специально для него пакетов. Если же некая позарез необходимая программа случайно не попала в этот неслабый, согласитесь, список, — ее, как правило, можно скомпилировать для работы во FreeBSD руками.
Разумеется, проделать такую процедуру можно только в том случае, если исходные тексты нужной программы доступны. И тут выступает оборотная сторона медали популярности Linux, привлекшей к ней внимание производителей проприетарного софта. Каковые распространяют свои достижения, пусть подчас и бесплатно (при некоторых ограничениях), но — только в прекомпилированном специально под Linux виде (а иногда и под конкретный его дистрибутив, чаще всего — под RedHat и его клоны).
Однако на самое хитрое ухо всегда найдется палец с левой резьбой. И в данном случае таким леворельбовым» инструментом оказывается режим бинарной совместимости с Linux, реализованный во FreeBSD, который позволяет запустить минимум 90% всех Linux-приложений. Он основывается, насколько нам известно, на подмене системных вызовов ядра Linux соответствующими вызовами ядра FreeBSD.
И, в отличие от большинства эмуляторов (и, тем более, виртуальных машин типа VMWare), практически не приводит к снижению производительности. Высказывается даже мнение, что Linux-программы в режиме совместимости во FreeBSD выполняются быстрее, чем в родной среде. Впрочем, количественные данные на этот предмет нам не известны.
Доступ к режиму совместимости требует двух действий — установки пакета linux-base и внесения изменений в конфигурационный файл /etc/rc.conf . Самый простой путь к этому — программа sysinstall . Запустив оную, следует отправиться в меню Configure, перейти в пункт Packages и в списке доступных (на CD, ftp- или http-сервере) пакетов выбрать в разделе emulators тот, который называется linux_base .
После установки пакета нужно будет подняться до пункта Startup в том же меню Configure и отметить опцию Linux (расшифровывающуюся как This host wants to be able to run Linux binaries). Все, теперь после перезапуска машины режим Linux-совместимости будет доступным.
Можно поступить еще проще — сразу отправиться в пункт Configure -> Startup и отметить опцию Linux. По выходе из него будет автоматически предложено установить пакет linux_base , с чем, естественно, следует согласиться.
Другой путь — установить linux_base посредством системы портов, для чего нужно перейти в каталог /usr/ports/emulators/linux_base и дать команду
% make install clean
А затем в любом текстовом редакторе вручную добавить в файл /etc/rc.conf строку
linux_enable=»YES»
и перезагрузить машину.
Результат в любом случае будет одинаков — появление в каталоге /usr/compat подкаталога linux (и символической ссылки на него в корневом каталоге — /compat/linux . Он представляет собой обычное дерево файловой системы Linux, с подкаталогами bin , etc , libs и так далее, который может быть сделан корневым с помощью столь же обычной команды chroot . Впрочем, в режиме Linux-совместимости исполнимые файлы автоматически ищутся в соответствующих ветвях каталога /usr/compat/linux , и необходимости в смене корня в большинстве случаев не возникает.
Устанавливая linux_base по умолчанию, мы получаем своего рода теневую Linux-систему, соответствующую (в текущей ветке FreeBSD) примерно RedHat 7.X. Дополнительный к чему бонус — получение возможности работы с rpm-пакетами вообще (хотя сам rpm можно установить и независимо). Однако из портов можно при необходимости установить совместимость с более старым RedHat (версий 6.X) или даже Debian (порты для них находятся в каталогах /usr/ports/emulators/linux_base-6 и /usr/ports/emulators/linux_base-debian , соответственно.
Получив доступ к режиму Linux-совместимости, дело остается за малым установить сами Linux-программы. Делается это различными, иногда не совсем тривиальными, способами, некоторые из которых описаны во FreeBSD Handbook. Однако для некоторых Linux-программ установка во FreeBSD проста, как грабли. Примером чему — RealPlayer.
Конечно, формат Real и для аудио, и для видео, — далеко не верх совершенства, особенно учитывая его закрытый характер. Однако ничего не поделаешь — лучшая на Руси (и не только) подборка авторской песни существует только в этом формате, и до доведения до ума свободных альтернатив (тип Hylix) приходится слушать ее посредством проприетарного RealPlayer’а. Да и не крутит Hylix старые Real’ы — почему, остается загадкой.
Благо, для установки его Linux версии во FreeBSD достаточно скачать оную (например, можно взять rp8_linux20_libc6_i386_cs2.bin с диска OpenOffice.org сборки Altlinux), проверить, имеет ли этот файл бит исполнения (при скачивании, например, из под Windows он теряется), а затем просто запустить его (из-под root’а) в терминальном окне X-сессии (не в консоли):
% ./rp8_linux20_libc6_i386_cs2.bin
Далее отвечаем на ряд обычных занудных вопросов (типа адреса электронной почты, страны, почтового кода — зачем бы он?, — скорости соединения, после чего обнаруживаем в каталоге /usr/local подкаталог RealPlayer8 . Из которого его можно запускать на исполнение (от имени уже обычного пользователя) с указанием полного пути
$ /usr/local/RealPlayer8/realplay
или создать символическую ссылку в любом охваченном переменной PATH каталоге.
Как мы уже говорили, устанавливая linux_base по умолчанию, мы одновременно получаем возможность прямой установки прекомпилированных для Linux rpm-пакетов. Делается это точно так же, как в RedHat, ASP- или Altlinux — командой rpm -i ( hv при необходимости). Однако она потребует некоторых дополнительных опций — указания нового корня (очевидно, что им должен быть /usr/compat/linux ), пути к базе данных rpm-пакетов и игнорирования ОС:
% rpm -i —ignoreos —root /usr/compat/linux —dbpath /var/lib/rpm package_name.rpm
Установленные таким образом пакеты должны запускаться с указанием полного пути — /usr/compat/linux/usr/bin , например.
Многие из нас люблят периодически смотреть флэшки. Да-да, как это ни странно. Поэтому одним из первых портов, которые ставят такие любители (в из числе и один из авторов этой заметки), будет linuxplaginwrapper, включающий в себя flash-player для различных браузеров. Установка его проста, как кусок хозяйственного мыла. И столь же обманчива.
Собственно, в самом процессе нет ничего сложного. Сложное начинается потом. Итак:
% cd /usr/ports/www/linuxpluginwrapper % make install clean % less /var/db/pkg/linuxpluginwrapper-20050320/+DISPLAY
И вот из этого-то less , или из вывода команды
$ pkg_info -Dx linuxpluginwrapper
Запуск windows-приложений под FreeBSD
Эта статья является переводом текста Dru Lavigne.
Одним из многих достоинств FreeBSD, которое отчетливо становится видным, если на вашем компьютере установлена не одна операционная система, является то, что для доступа к данным находящимся в разделе другой операционной системы нет никакой надобности покидать FreeBSD. Другими словами вы можете просто смонтировать раздел в файловую систему FreeBSD и читать, писать или удалять файлы находящиеся в этом разделе. (Разумеется, поклонники Linux лишь хмыкнут – подобные возможности не уникальны и давно присутствуют в любимой ими операционной системе. Но что скажут поклонники Windows? – прим. переводчика.) Однако у вас может возникнуть вопрос: «А как обстоят дела с запуском исполняемых файлов?» Если ваша «другая» операционная система сделана корпорацией Майкрософт, и, кроме того, вы воспользуетесь эмулятором Windows (Wine), то на вашей FreeBSD вполне можно будет выполнять довольно большое количество Windows-приложений. (Кроме Windows-приложений, FreeBSD позволяет выполнять программы скомпилированные для операционной системы Linux. Поддержка Linux-приложений реализована гораздо полнее и лучше, чем поддержка Windows-программ. Достаточно сказать, например, что под FreeBSD прекрасно себя чувствует Linux-версия сервера баз данных Oracle версии 8 – прим. переводчика.)
В сегодняшней статье я хочу продемонстрировать процесс установки и использования эмулятора Wine. Если все пойдет нормально, то я рискну испытать судьбу, попробовав запустить какое-нибудь Windows-приложение на компьютере, на винчестере которого, кроме FreeBSD вообще ничего нет – ни одного раздела с софтом от Майкрософта.
Я поставлю Wine на двух машинах моей сети. На первой машине установлены Windows 98 и FreeBSD 4.3-RELEASE, выбор рабочей системы осуществляется в процессе загрузки. Вторая машина полностью управляется FreeBSD 4.3-RELEASE. Воспользовавшись аккаунтом суперпользователя я откомпилирую и установлю Wine на обеих машинах:
su — Password: cd /usr/ports/emulators/wine make install clean
После того как Wine установлен, на обеих машинах необходимо проверить конфигурационные файлы ядра на наличие в них необходимых для работы Wine опций. Оставаясь под суперпользователем пишем:
cd /usr/src/sys/i386/conf cp GENERIC WINE
Затем, используя мой любимый текстовый редактор, я открыл файл WINE для того, что бы убедиться в том, что в нем содержатся следующие строки:
options USER_LDT options SYSVSHM options SYSVSEM options SYSVMSG
На моей FreeBSD 4.3-RELEASE, три опции SYS* уже были включены, так что мне пришлось добавить лишь параметр USER_LDT. Если вам тоже пришлось что-нибудь добавить, сохраните внесенные изменения и перекомпилируйте ядро:
/usr/sbin/config WINE cd ../../compile/WINE make depend make make install reboot
В последней строке на самом деле я вызываю сразу четыре отдельных команды, символы «» означают, что следующая команда из списка будет выполнена только при условии успешного выполнения предыдущей команды. Если вы решитесь включить в список команду «reboot», убедитесь, что другие пользователи в это время ничего не делают на этой системе, поскольку система будет перезагружена немедленно после окончания этапа установки скомпилированного ядра.
После установки Wine, прилагающуюся к нему документацию можно будет прочитать при помощи команды man 1 wine, а так же посмотреть ее в каталоге /usr/local/share/doc/wine. Кроме того, я нашел очень полезное HOW-TO (см. http://www.la-sorciere.de/Wine-HOWTO/book1.html), которое может очень пригодиться при первой установке Wine.
- Найти и где-нибудь смонтировать раздел Windows.
- Тщательно проверить и поправить конфигурационный файл Wine.
- Протестировать получившуюся систему запуском какого-нибудь Windows-приложения.
Поскольку установка операционной системы на этот компьютер была произведена довольно давно, я воспользуюсь утилитой sysinstall для того что бы восстановить в памяти карту распределения дискового пространства на винчестере. Под суперпользователем:
/stand/sysinstall Configure Fdisk пробел ad0
И вот я вижу нечто подобное:
Offset Size(ST) End Name PType Desc 0 63 62 — 6 unused 63 4176837 4176899 ad0s1 2 fat 4176900 4016250 8193149 ad0s2 3 freebsd
Для выхода из fdisk’а я нажал клавишу q, а затем покинул sysinstall несколько раз выбрав пункт «Cancel». Видно, что раздел Windows во FreeBSD имеет название ad0s1. Для того, что бы смонтировать этот раздел, сначала я создам для него точку монтирования под названием «dos»:
mkdir /dos
На всякий случай я проверю права доступа к новому каталогу:
ls -l / | grep dos drwxr-xr-x 2 root wheel 512 Aug 31 13:07 dos
Все нормально, все пользователи могут «читать» и «выполнять», и лишь один root может «писать» файлы.
Перед тем, как смонтировать раздел Windows на постоянной основе при помощи файла /etc/fstab, я должен убедиться, что он может правильно монтироваться вручную:
mount -t msdos /dev/ad0s1 /dos
Заметьте, что в качестве типа файловой системы используется «msdos», название устройства «/dev/ad0s1», а точкой монтирования выступает каталог «/dos». Поскольку в результате выполнения команды я просто получил обратно приглашение к работе, система смонтирована корректно. Это можно проверить при помощи команды df:
df -h Filesystem Size Used Avail Capacity Mounted on /dev/ad0s2a 97M 36M 53M 40% / /dev/ad0s2f 1.7G 567M 1.0G 35% /usr /dev/ad0s2e 19M 2.0M 16M 11% /var procfs 4.0K 4.0K 0B 100% /proc /dev/ad0s1 2.0G 783M 1.2G 38% /dos
Кроме того, я могу проверить содержимое смонтированного раздела при помощи команды ls. Я воспользуюсь ключом «-F» для того что бы названия каталогов отличались от названий файлов символом «/»:
ls -F /dos AUTOEXEC.BAT* COMMAND.COM* MSDOS.SYS* SCANDISK.LOG* BOOT.INI* CONFIG.SYS* My Documents/ SETUPLOG.TXT* BOOTLOG.PRV* DETLOG.TXT* NETLOG.TXT* WINDOWS/ bootsect.bsd* IO.SYS* Program Files/ RECYCLED/ ntdetect.com* ntldr*
Если вы никогда прежде не монтировали файловые системы, то вероятно вам понадобится несколько минут что бы поиграться с командами «cd» и «ls». Имейте в виду, что многие файлы имеют названия в верхнем регистре, так что когда вы будете к ним обращаться, пишите их с учетом регистра, поскольку FreeBSD чувствительна к регистру. Мало того, некоторые файлы содержат в названии символы пробела. Для доступа к таким файлам вы можете попробовать напечатать первоначальные несколько букв такого файла и нажав клавишу «Tab» воспользоваться функцией автодополнения имени файла, или поставить перед пробелом в имени файла символ обратного слеша «»:
cd Program Files
Если вы хотите монтировать раздел Windows непосредственно во время загрузки, аккуратно добавьте следующую строку в файл /etc/fstab:
/dev/ad0s1 /dos msdos rw 0 0
Удостоверьтесь, что вы используете правильное название Windows-раздела, поскольку у вас оно может отличаться. Перед сохранением убедитесь, что вы не внесли в файл какой-нибудь ошибки. Я всегда стараюсь убедиться что мои изменения в файле fstab работоспособны следующим способом:
shutdown now press enter when receive prompt back, then type exit
Как только вы вернетесь обратно, при помощи команды df -h, вы сможете убедиться что разделы смонтированы верно.
Теперь давайте отредактируем конфигурационный файл эмулятора Wine. В своем любимом текстовом редакторе откройте файл /usr/local/etc/wine.conf. Поскольку конфигурация Wine обычно не требует никаких изменений для работы, я сделаю в ней большие пропуски и покажу лишь участки куда вам придется внести некоторые изменения в соответствии с положением дел в вашей системе:
more /usr/local/etc/wine.conf WINE REGISTRY Version 2 ;; All keys relative to \Machine\Software\Wine\Wine\Config [Drive A] «Path» = «/mnt/fd0» «Type» = «floppy» «Label» = «Floppy» «Serial» = «87654321» «Device» = «/dev/fd0» [Drive C] «Path» = «/c» «Type» = «hd» «Label» = «MS-DOS» «Filesystem» = «win95»
Вот тут следует остановиться, поскольку в этом месте необходимо внести изменения. Замените значение переменной Path с «/c» на название вашей точки монтирования. Поскольку у меня точка монтирования называется «/dos», я изменил эту строку следующим образом:
«Path» = «/dos»
Сохраните изменения. Я обнаружил, что для корректной работы Wine этот файл должен быть скопирован в домашний каталог пользователя. Под суперпользователем я произведу некоторые изменения в домашнем каталоге пользователя genisis:
mkdir ~genisis/.wine chown genisis ~genisis/.wine cp /usr/local/etc/wine.conf ~genisis/.wine/config
Обратите внимание, что при копировании в каталог .wine я переименовал конфигурационный файл в «config». На данном этапе я покину аккаунт суперпользователя, поскольку конфигурация окончена. Под пользователем genisis, я запущу сессию XWindow:
startx
Находясь в XWindow, в окне xterm’а, выберем для запуска какое-нибудь приложение:
cd /dos/WINDOWS ls | more
Среди прочего я обнаружил файл PROGMAN.EXE. Интрига заключается в том, что это Диспетчер Программ Windows. Я решил посмотреть, смогу ли я запустить его в FreeBSD под эмуляцией Wine:
wine -winver win98 -managed PROGMAN.EXE
После нескольких секунд ожидания, я был поприветствован Диспетчером Программ. Щелкнув по меню «Файл», я выбрал пункт «Выполнить» и нажал на кнопку «Обзор». В результате этого я увидел обширный список файлов находящихся на моем Windows-разделе.
- Wine Development HQ (см. http://www.winehq.com/Apps)
- CodeWeavers Wine Application Database (см. http://appdb.codeweavers.com/)
В базе первого сайта на момент написания статьи содержится 2704 приложения которые протестированы на совместимость с Wine. Второй сайт имеет более удобный дизайн, но находится в стадии разработки.
Теперь давайте сделаем что-нибудь поинтереснее. Я вошел под суперпользователем и решил проверить, могу ли я установить и запустить какое-нибудь Windows-приложение под эмуляцией Wine. Для поиска программ, я пошел на http://www.download.com.
Я щелкнул по ссылке «самые популярные» игры и увидел Solsuite 2001. Реклама обещала 282 различных пасьянса. Я выкачал инсталлятор, который назвался solsuite.exe и сохранил его в каталоге /dos.
Вернувшись в xterm’е я напечатал:
cd /dos wine -winver win98 -managed solsuite.exe
И тут же получил сообщение об ошибке, гласящее об отсутствии каталога .wine. Давайте создадим в домашнем каталоге суперпользователя этот подкаталог и скопируем туда конфигурационный файл Wine:
mkdir ~/.wine cp /usr/local/etc/wine.conf ~/.wine/config
Теперь, когда я повторил запуск wine, запустился мастер инсталляции программы. Я проследовал через все этапы установки и проследил за процессом копирования файлов. В самом конце инсталлятор завис, однако он сообщал, что до конца процесса установки осталось 0 минут, 0 секунд, поэтому я решил попытать счастья и для завершения установки воспользовался комбинацией «^c». Затем я набрал:
cd Program Files/SolSuite wine -winver win98 -managed Solsuite.exe
Наступило время обзванивать соседей и хвастаться. Я успешно установил и запустил Windows-программу из FreeBSD и, кроме того, у меня возобновился свой интерес к карточным играм.
В качестве последнего теста, я перезагрузил компьютер в Windows 98. Там я нажал на кнопку «Пуск», и в меню «Программы» увидел новый пункт «Solsuite-Solitaire Card Games», внутри правда было пусто. Не испугавшись, я запустил проводник и дважды щелкнул по папке «Program Files», а затем вошел в каталог «Solsuite», где и обнаружил выполняемые файлы. Это хороший знак, подумал я. Я открыл в проводнике папку Windows, затем «Программы», а затем «Solsuite-Solitaire Card Games», и перетащив туда правой кнопкой мыши файл solsuite.exe, выбрал в появившемся контекстном меню пункт «Создать ярлык».
Теперь нажав «Пуск», «Программы», «Solsuite-Solitaire Card Games» и выбрав «Ярлык на SolSuite», я опять могу выбирать интересующий меня пасьянс. Я впечатлен.
Настало время для самого серьезного испытания. Я перехожу к компьютеру, на котором установлена только FreeBSD. Его жесткий диск полностью отформатирован в файловой системе UFS и, разумеется не содержит ни одного компонента Windows. (На самом деле уважаемый автор зря так пугает потенциальных пользователей Wine – он изначально разрабатывался для выполнения Windows-приложений без какого-либо использования кода Windows – прим. переводчика).
Я вошел в систему под суперпользователем и создам там несколько каталогов и пустых файлов, наличие которых предполагается Windows-программами:
su — Password: mkdir -p /usr/local/lib/win/windows cd /usr/local/lib/win/windows mkdir system touch win.ini cd system touch shell.dll shell32.dll winsock.dll wsock32.dll
Помните как нам пришлось отредактировать одну строчку в файле /usr/local/etc/wine.conf, что бы она указывала на точку монтирования раздела Windows? Сейчас нам придется сделать это снова, правда указывать она будет на «поддельную» структуру Windows-каталогов:
[Drive C] «Path» = «/usr/local/lib/win»
Затем я создам необходимые каталоги и скопирую конфигурационный файл суперпользователю и пользователю genisis:
mkdir ~/.wine cp /usr/local/etc/wine.conf ~/.wine/config mkdir ~genisis/.wine chown genisis ~genisis/.wine cp /usr/local/etc/wine.conf ~genisis/.wine/config
Оставаясь суперпользователем, я вернусь на http://www.download.com и загружу инсталлятор Solsuite 2001. Теперь я сохраню его в /usr/local/lib/win. Теперь запущу сессию XWindow, xterm и напечатаю:
cd /usr/local/lib/win wine -winver win95 -managed solsuite.exe
Опять начнет выполняться инсталляционная программа. Я получил сообщение об ошибке, в котором говорилось о невозможности обнаружить файл «explorer.exe», но я успешно его проигнорировал. Когда все закончилось, я напечатал:
cd Program Files/SolSuite wine -winver win95 -managed SolSuite.exe
И хотя это было немного медленнее (но это и более старый компьютер), и, кроме того, мне пришлось подстроить конфигурацию дисплея, но я все-таки смог поиграть в карточную игру написанную для Windows, на компьютере, который полностью выделен под FreeBSD. Человек с исследовательским складом натуры получит массу удовольствия от Wine.
Все вышесказанное говорит о том, что эмулятор Wine это программа из коллекции портов FreeBSD, с которой можно неплохо поразвлечься. Если в результате ваших экспериментов с Wine вам удастся запустить под ним программу, которая не включена в базу данных выполняемых под Wine программ, добавьте вашу запись в эту базу на любом из двух сайтов о которых я упомянул выше.
Источник: old.computerra.ru