Меню Рубрики

Установка rpm пакета freebsd

Установка rpm пакета 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 и дать команду

А затем в любом текстовом редакторе вручную добавить в файл /etc/rc.conf строку

Результат в любом случае будет одинаков — появление в каталоге /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-сессии (не в консоли):

Далее отвечаем на ряд обычных занудных вопросов (типа адреса электронной почты, страны, почтового кода — зачем бы он?, — скорости соединения, после чего обнаруживаем в каталоге /usr/local подкаталог RealPlayer8 . Из которого его можно запускать на исполнение (от имени уже обычного пользователя) с указанием полного пути

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

Как мы уже говорили, устанавливая linux_base по умолчанию, мы одновременно получаем возможность прямой установки прекомпилированных для Linux rpm-пакетов. Делается это точно так же, как в RedHat, ASP- или Altlinux — командой rpm -i ( hv при необходимости). Однако она потребует некоторых дополнительных опций — указания нового корня (очевидно, что им должен быть /usr/compat/linux ), пути к базе данных rpm-пакетов и игнорирования ОС:

Установленные таким образом пакеты должны запускаться с указанием полного пути — /usr/compat/linux/usr/bin , например.

Многие из нас люблят периодически смотреть флэшки. Да-да, как это ни странно. Поэтому одним из первых портов, которые ставят такие любители (в из числе и один из авторов этой заметки), будет linuxplaginwrapper, включающий в себя flash-player для различных браузеров. Установка его проста, как кусок хозяйственного мыла. И столь же обманчива. Собственно, в самом процессе нет ничего сложного. Сложное начинается потом. Итак:

И вот из этого-то less , или из вывода команды

мы и узнаем, что надо скопировать приведённый там текст в /etc/libmap.conf . Затем правим этот файл ручками (ничего сложного, всё хорошо документировано). На этом всё сложное и заканчивается.

Вуаля, флэшки проигрываются в браузере.

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

В результате, оптимальным выходом оказался самый простой — запускать windows-версию flash-player’а из под wine. Результат оказался вполне удовлетворительным. Файл проигрывается, скорость нормальная, звук есть. Однако это — совсем другая история. Заметим лишь, что использовался flashpl70.exe, а в качестве тестового — вот этот ролик (3,4 Mb).

источник

Как установить RPM пакеты на Ubuntu

Есть два способа установки пакета RPM: либо путь преобразования файла .rpm в файл .deb, или путем непосредственно установки файла .rpm. Оба метода довольно просты, но установка RPM пакетов в системе Debian может привести к некоторым проблемам, в зависимости от устанавливаемого программного обеспечения (более подробно об этом внизу).

1. Добавьте репозитория Universe

Для первого способа вам понадобится пакет программного обеспечения под названием «Alien», который является программным обеспечением, предназначенным для преобразования файлов .rpm в файлы .deb. Для того, чтобы установить Alien, вам нужно будет добавить репозиторий программного обеспечения под названием «Universe». Откройте терминал и введите:

2. Обновление apt-get

Введите пароль учетной записи пользователя, когда терминал предложит вам сделать это. Теперь вам необходимо обновить apt-get для того, чтобы хранилищем можно было воспользоваться.

3. Установите пакет Alien

Теперь, когда мы добавили в хранилище Universe, установили Alien, выполните следующую команду:

4. Преобразование .rpm в .deb

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

5. Установите преобразованного пакета

Это может занять некоторое время файл для преобразования. Как только это будет сделано, установите файл, обычно с помощью DPKG:

Он должен установиться как обычный файл .deb. Теперь вы можете использовать только что установленное программное.

6. Установка пакета RPM непосредственно на систему

Для другого метода, Alien также программное обеспечение, используемое для установки RPM пакетов непосредственно на систему. Просто запустите следующую команду, в той же папке, что и пакет RPM, который вы хотите установить.

Дайте ему минуту, и он должен быть установлен на вашей системе без каких-либо проблем.

Возможные проблемы

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

Читайте также:  Установка боковых стекол на мерседес спринтер

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

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

источник

Установка rpm пакета freebsd


Пока нахожусь в раздумьях по поводу дальнейшей судьбы перевода Bible OpenSolaris, немного разбавки для профилактики.

Одна из интересных возможностей ОС семейства BSD — их способность запускать бинарники предназначенные для других UNIX-подобных операционных систем. Недавно, мне потребовалось использовать для одного проекта комерческий продукт PGP Command Line (http://www.pgp.com/products/commandline). Вместо того, чтобы отдельно инсталировать Linux исключительно для этого ПО, я решил инсталировать его на одну из моих действующих систем FreeBSD. Запуск комерческого ПО Linux на FreeBSD не всегда тривиален, как вам может показаться, но эту процедуру можно выполнить с минимальной суетой, достаточно иметь некоторые дополнительные навыки.

Те из вас, кто знаком с OpenPGP вероятно задаются вопросом, почему я не использовал GnuPG? Хотя GnuPG прекрасно справляется с основными функциями OpenPGP, PGP Command Line имеет определённые возможнысти которых недостаёт GnuPG. Например, некоторые государственные стандарты требуют, чтобы компания могла расшифровать данные, даже если владелец закрытого ключа не предоставляет закрытый ключ. Для поддержки данной возможности, PGP использует дополнительный ключ дешифрования (Additional Decryption Key — ADK). PGP ComandLine также имеет весьма полезную возможность создавать самоизвлекающиеся файлы архивов PGP Zip. PGP ComandLine предоставляется zip файлом, содержащим бинарники для всех поддерживаемых платформ и некоторые инструкции в формате PDF. Вы получаете коды лицензии соответствующие вашему имени, организации и почтовым адресам.
Для выполнения программ Linux на FreeBSD, вам необходимо сконфигурировать свою FreeBSD систему, используя инструменты управления RPM пакетами для установки их в среду Linux и настроить установленной ПО в соответсвии с требованиями подсистемы Linux. Первая часть задач хорошо документирована, а вторая мало известна администраторам BSD.

Установка режима совместимости Linux
Начнём с того, что вам необходимо сконфигурировать свою FreeBSD для получения возможности выполнения бинарников Linux. Ваше ядро должно загружать модуль режима совместимости с Linux. Самый простой способ проверить, использовать команду kldstat (8):

# kldstat | grep linux
7 1 0xc1c7b000 18000 linux.ko
#

Если ничего подобного вы не увидели, добавьте запись в /etc/rc.conf для запуска режима совместимости с Linux:

Кроме того, вам понадобится стандартное пространство пользователя Linux созданное в каталоге /usr/compat/linux. Для этой статьи я использовал пространство пользователя Red Hat 9, которое можно найти в /usr/ports/emulators/linux/linux_base-rh-9. Если вы используете двойную загрузку систем FreeBSD/Linux, вполне вероятно, что вы захотите смонтировать собственное пространство пользователя Linux в /usr/compat. Хотя вы можете столкнуться с различными проблемами, при использовании различных релизов, общая суть процесса описанного здесь, будет одинакова.
Множество программ Linux требуют использовать Linux-стиль procfs. ОС FreeBSD отказалась от использования procfs в пользу sysctl (8), но множество Linux программ однозначно требуют обратного. Если вы устанавливаете программу из портов, порт может самостоятельно сконфигурировать Linux procfs. В противном случае необходимо добавить в /etc/fstab следующую запись:

linproc /compat/linux/proc linprocfs rw 0 0

Вы не сможете установить эту файловую систему пока не установите пространство пользователя Linux.
Как только ядро сконфигурировано, пространство пользователя Linux установлено и в /etc/fstab записан Linux procfs, вам необходимо перезагрузить компьютер. Перед продолжением, убедитесь, что всё работает используя kldstat(8) и df(1).

Инсталляция Linux RPMs на FreeBSD
Если система портов BSD окончательно испортила вас, RPM может показаться тупым и непонятным. На самом деле, RPM не хуже pkg_add — просто головная боль расположена в других точках. Вы должны использовать некоторые дополнительные возможности RPM чтобы инсталлировать пакеты Linux на FreeBSD. Во-первых, флаг —ignoreos сообщает rpm(8) не волноваться о том, что пакет устанавливается не на Linux. Опция —root задаёт корень файловой системы, в которую вы производите установку, в данном случае /usr/compat/linux. Это позволит предотвратить перезапись родных бинарников FreeBSD!

# sudo rpm -i —ignoreos —dbpath /var/lib/rpm —root \
/compat/linux PGPCommandLine902_Linux.rpm

error: failed dependencies:
libxml2.so.2 is needed by pgpcmdln-9.0.2.560-1
#

PGP CommandLine требует libxml2.so.2, недоступный в системе. Я уже упоминал, что RPM существуют свои проблемы? Зависимости — одна из них. Система портов BSD, по большей части, устраняет проблемы с зависимостями, таким образом возврат к таким проблемам вызывает некоторые возмущения. Пользователи Linux имеют собственные способы решения проблем с зависимостями, но в данном случае мы используем свой способ. Во-первых, убедитесь, что данная библиотека действительно отсутствует в вашей системе:

Читайте также:  Установка лестницы на мансардный этаж

# locate xml | grep compat/linux
/usr/compat/linux/share/xml
/usr/compat/linux/usr/bin/xmlwf
/usr/compat/linux/usr/share/man/man1/xml wf.1.gz
#

Ладно, её действительно нет. Идём на сайт RPM search и находим соответствующий RPM. Я обнаружил, что rpmfind.net даёт наилучшие результаты, но вы можете иметь собственное мнение. Выбираем только RPM собраный для того пространства пользователя Linux которое мы имеем в своей системе. Вы же не будете заниматься установкой пакетов FreeBSD 7 на свою FreeBSD 4, и Linux тоже не нравится такой ход вещей. Как только вы загрузили и установили RPM, попытайтесь снова установить PGP CommandLine.

# sudo rpm -i —ignoreos —dbpath /var/lib/rpm —root /compat/linux \
libxml2-2.5.4-3.rh9.i386.rpm
# sudo rpm -i —ignoreos —dbpath /var/lib/rpm —root /compat/linux \
PGPCommandLine902_Linux.rpm

#

Если rpm(8) не возвращает сообщений об ошибках, значит установка завершилась успешно.

Проверка RPMs
Я всегда стараюсь убедится, что откомпилированный пакет устанавливается в систему, но в случае выполнения программ в режиме Linux это не просто любопытство. FreeBSD устанавливает наименьшее возможное подмножество Linux, но большинство программ ожидают найти более полное пространство пользователя Linux, и эти зависимости не всегда записываются в файл RPM. Вы должны убедится, что программа имеет всё что ей требуется и что ваша Linux-среда сконфигурирована должным образом, обеспечивая поддержку требуемого ПО.
rpm(8) поддерживает небольшую базу данных установленых пакетов и может сообщить вам точно, что он устанавливал, какие файлы зарегистрированы и какие зависимости требуют пакеты. Сначала запросим у БД RPM список всех установленных пакетов. Список упорядочен по дате установки, следовательно, нас интересуют только последние записи.

# rpm —root /compat/linux —query -a
glibc-2.3.2-27.9.7
glibc-common-2.3.2-27.9.7
.
libxml2-2.5.4-3.rh9
pgpcmdln-9.0.2.560-1
#

RPM знает PGP ComandLine как о pgpcmdln-9.0.2.560-1. Теперь запросим содержимое этого пакета используя опцию rpm —query. Вы можете зафиксировать вывод этой команды, поскольку он вам потребуется для завершения конфигурирования программы.

# rpm —root /compat/linux —query pgpcmdln -l
/usr/bin/pgp
/usr/bin/pgp-agent
/usr/lib
/usr/lib/debug
.

Продолжение следует.

источник

Freebsd проблема с установкой rpm

Все новые темы

На страницу 1, 2 След.
Автор
Chin_chin
Новичок

Зарегистрирован: 16.11.2007
Пользователь #: 63,716
Сообщения: 59

Добавлено: Пн 02 Ноя, 2009 11:59 Заголовок сообщения: Freebsd проблема с установкой rpm
Вернуться к началу
Зарегистрируйтесь и реклама исчезнет!

лапласианин
подпись на выбор, в личку sklifу

Зарегистрирован: 06.10.2004
Пользователь #: 21,305
Сообщения: 35423


Голоса: 504

Добавлено: Пн 02 Ноя, 2009 12:17 Заголовок сообщения:
_________________
Я боюсь пустоты.
Этой звенящей, режущей, сводящей с ума пустоты на том месте, где должна быть запятая.
Вернуться к началу
Chin_chin
Новичок

Зарегистрирован: 16.11.2007
Пользователь #: 63,716
Сообщения: 59

Добавлено: Пн 02 Ноя, 2009 12:33 Заголовок сообщения:
Вернуться к началу
lavr
Unix guru
Unix guru » title=» Unix guru » border=»0″/>

Зарегистрирован: 13.05.2003
Пользователь #: 5,821
Сообщения: 8669


Голоса: 78

Добавлено: Пн 02 Ноя, 2009 15:02 Заголовок сообщения:
_________________
Good luck,

lavr
Вернуться к началу
Chin_chin
Новичок

Зарегистрирован: 16.11.2007
Пользователь #: 63,716
Сообщения: 59

Добавлено: Пн 02 Ноя, 2009 16:02 Заголовок сообщения:
Вернуться к началу
Chin_chin
Новичок

Зарегистрирован: 16.11.2007
Пользователь #: 63,716
Сообщения: 59

Добавлено: Пн 02 Ноя, 2009 18:15 Заголовок сообщения:
Вернуться к началу
lavr
Unix guru
Unix guru » title=» Unix guru » border=»0″/>

Зарегистрирован: 13.05.2003
Пользователь #: 5,821
Сообщения: 8669


Голоса: 78

Добавлено: Пн 02 Ноя, 2009 20:34 Заголовок сообщения:
_________________
Good luck,

lavr
Вернуться к началу
Chin_chin
Новичок

Зарегистрирован: 16.11.2007
Пользователь #: 63,716
Сообщения: 59

Добавлено: Вт 03 Ноя, 2009 11:11 Заголовок сообщения:
Вернуться к началу
lavr
Unix guru
Unix guru » title=» Unix guru » border=»0″/>

Зарегистрирован: 13.05.2003
Пользователь #: 5,821
Сообщения: 8669


Голоса: 78

Добавлено: Вт 03 Ноя, 2009 15:13 Заголовок сообщения:
_________________
Good luck,

lavr
Вернуться к началу
Chin_chin
Новичок

Зарегистрирован: 16.11.2007
Пользователь #: 63,716
Сообщения: 59

источник

Добавить комментарий