Приветствую коллеги. Относительно недавно в фряхе появился менеджер пакетов pkg, когдато я на него перешел, сконвертил базу ну и некоторый софт ставил через него. И вот сейчас снова залез на свой домашний сервак в попытке установить python35, после чего pkg предложил мне установить питон, установить апач (видимо проапдейтить), а так же снести нахрен пол системы и обновить софт который обновлять нельзя ввиду зависимостей от него другого софта (который pkg, кстати просто предложил удалить ).
Думаю многие сталкивались с данной проблемой и возможно решали её (ну либо как я по старинке ставили все из портов ).
Сосбвтенно вопрос: Кто как решал эту проблему?
Установка пакетов через pkg. Зависимости.
Модератор: terminus
Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
- f_andrey
- майор
- Сообщения: 2651
- Зарегистрирован: 2007-12-26 1:22:58
- Откуда: СПб
- Контактная информация:
Установка пакетов через pkg. Зависимости.
Вообще, вопрос для новичков, но пусть уж тема тут будет, так как немного и FreeBSD как таковой касается, вдруг следующий кто найдёт и одумается (да я верю в чудеса).
Всё от того что вы не понимаете что творите.
По решению, если хотите пользоваться всё же пакетами, то надо взять себя в руки и порешать, то что от вас хочет pkg и в дальнейшем пользоваться только им! Это в общем то довольно недурной сейчас вариант. Хотя, в идеале ещё завести свой билд сервер и репозиторий.
Из паршивых и очень паршивых решений, надругаться над логикой и поменять тот пакет, что "горит", для этого есть всякие страшные ключи -f и около того, так же есть механизм но всё это не от хорошей жизни и в дальнейшем скорее всего приведёт к тем ещё граблям. Ну или из портов.
Всё от того что вы не понимаете что творите.
По решению, если хотите пользоваться всё же пакетами, то надо взять себя в руки и порешать, то что от вас хочет pkg и в дальнейшем пользоваться только им! Это в общем то довольно недурной сейчас вариант. Хотя, в идеале ещё завести свой билд сервер и репозиторий.
Из паршивых и очень паршивых решений, надругаться над логикой и поменять тот пакет, что "горит", для этого есть всякие страшные ключи -f и около того, так же есть механизм
Код: Выделить всё
pkg lock
Если ваша тема перенесена, то смотри http://forum.lissyara.su/viewtopic.php?f=1&t=32308
-
- рядовой
- Сообщения: 46
- Зарегистрирован: 2010-02-03 21:07:49
Установка пакетов через pkg. Зависимости.
Я искал темы по поводу pkgвдруг следующий кто найдёт и одумается
Понимаю, но он не оставил мне выбора)))в дальнейшем пользоваться только им!
Я то понимаю, что творю, я не понимаю какого pkg лезет в пакеты, которые не относятся к устанавливаемому мной пакету и на ключик -f не реагирует.Всё от того что вы не понимаете что творите.
Питон я конечно уже проинсталлил из портов, но картина была примерно следующей, до его установки:
Код: Выделить всё
serv:/usr/ports/emulators/virtualbox-ose # pkg install -f python35
Updating FreeBSD repository catalogue...
FreeBSD repository is up-to-date.
All repositories are up-to-date.
pkg: glib has a missing dependency: perl5.14
pkg: drupal7 has a missing dependency: php53-session
pkg: suphp has a missing dependency: php53
pkg: pecl-APC has a missing dependency: php53
pkg: phpMyAdmin-suphp has a missing dependency: php53-session
pkg: p5-Locale-gettext has a missing dependency: perl5.14
pkg: help2man has a missing dependency: perl5.14
pkg: gamin has a missing dependency: perl5.14
pkg: gio-fam-backend has a missing dependency: perl5.14
pkg: mc has a missing dependency: perl5.14
pkg: autoconf has a missing dependency: perl5.14
pkg: automake has a missing dependency: perl5.14
pkg: pecl-pdflib has a missing dependency: php53
pkg: oscommerce has a missing dependency: php53-session
pkg: portupgrade has a missing dependency: ruby19-bdb
The following 50 package(s) will be affected (of 0 checked):
Installed packages to be REMOVED:
ruby20-2.0.0.645,1
owncloud-8.0.2
php5-gd-5.4.39
graphviz-2.38.0_6
texlive-base-20140525_6
ruby20-bdb-0.6.6_4
tex-dvipsk-5.994_1
texlive-texmf-20140525_4
tex-formats-20140525_1
doxygen-1.8.9.1,2
rubygem-nokogiri-1.6.3.1_1
rubygem-savon-0.9.5
rubygem-wasabi-1.0.0
rubygem-winrm-1.1.3
rubygem-gssapi-1.0.2
rubygem-ffi-1.9.3_1
php5-mcrypt-5.4.39_1
New packages to be INSTALLED:
perl5.18: 5.18.4_17
apache22: 2.2.31
mysql55-client: 5.5.44_1
docbook-xml: 5.0_3
docbook-sgml: 4.5_1
compat6x-amd64: 6.4.604000.200810_3
Installed packages to be UPGRADED:
libffi: 3.0.9 -> 3.2.1
libiconv: 1.14_3 -> 1.14_8
libX11: 1.4.4,1 -> 1.6.2_3,1
libxcb: 1.7 -> 1.11_1
libXdmcp: 1.1.0 -> 1.1.2
libXau: 1.0.6 -> 1.0.8_3
libXext: 1.3.0_1,1 -> 1.3.3_1,1
libSM: 1.2.0,1 -> 1.2.2_3,1
libICE: 1.0.7,1 -> 1.0.9_1,1
expat: 2.1.0_1 -> 2.1.0_3
freetype2: 2.4.11 -> 2.6_1
libXt: 1.1.1,1 -> 1.1.4_3,1
libpthread-stubs: 0.3_3 -> 0.3_6
libxml2: 2.7.8_5 -> 2.9.2_3
glib: 2.28.8_5 -> 2.44.1_1
tcl86: 8.6.1 -> 8.6.4
png: 1.5.18 -> 1.6.18
pcre: 8.34_1 -> 8.37_4
curl: 7.37.0 -> 7.44.0
apr: 1.4.6.1.4.1_3 -> 1.5.2.1.5.4
gdbm: 1.9.1 -> 1.11_2
libxslt: 1.1.28 -> 1.1.28_7
libgpg-error: 1.11 -> 1.20
libgcrypt: 1.5.0_1 -> 1.6.3
libwww: 5.4.0_4 -> 5.4.0_5
lzo2: 2.06 -> 2.09
Installed packages to be REINSTALLED:
python35-3.5.0
The operation will free 1 GiB.
49 MiB to be downloaded.
Proceed with this action? [y/N]:
pkg lock это конечно круто, но вот только вспоминать все зависимости с которыми работает owncloud, на данный момент тяжковато, да и как вы верно отметили - это все не от хорошей жизни.
Основной вопрос в следующем, какого он лезет в другие пакеты и как отучить его от этой пагубной привычки?
-
- проходил мимо
Установка пакетов через pkg. Зависимости.
никак, действия пакетного менеджера логичны, обоснованы и справедливы.DuoMorph писал(а):Я искал темы по поводу pkgвдруг следующий кто найдёт и одумаетсяПонимаю, но он не оставил мне выбора)))в дальнейшем пользоваться только им!Я то понимаю, что творю, я не понимаю какого pkg лезет в пакеты, которые не относятся к устанавливаемому мной пакету и на ключик -f не реагирует.Всё от того что вы не понимаете что творите.
Питон я конечно уже проинсталлил из портов, но картина была примерно следующей, до его установки:Из чего видно, что pkg предлагает просто снести owncloudКод: Выделить всё
serv:/usr/ports/emulators/virtualbox-ose # pkg install -f python35 Updating FreeBSD repository catalogue... FreeBSD repository is up-to-date. All repositories are up-to-date. pkg: glib has a missing dependency: perl5.14 pkg: drupal7 has a missing dependency: php53-session pkg: suphp has a missing dependency: php53 pkg: pecl-APC has a missing dependency: php53 pkg: phpMyAdmin-suphp has a missing dependency: php53-session pkg: p5-Locale-gettext has a missing dependency: perl5.14 pkg: help2man has a missing dependency: perl5.14 pkg: gamin has a missing dependency: perl5.14 pkg: gio-fam-backend has a missing dependency: perl5.14 pkg: mc has a missing dependency: perl5.14 pkg: autoconf has a missing dependency: perl5.14 pkg: automake has a missing dependency: perl5.14 pkg: pecl-pdflib has a missing dependency: php53 pkg: oscommerce has a missing dependency: php53-session pkg: portupgrade has a missing dependency: ruby19-bdb The following 50 package(s) will be affected (of 0 checked): Installed packages to be REMOVED: ruby20-2.0.0.645,1 owncloud-8.0.2 php5-gd-5.4.39 graphviz-2.38.0_6 texlive-base-20140525_6 ruby20-bdb-0.6.6_4 tex-dvipsk-5.994_1 texlive-texmf-20140525_4 tex-formats-20140525_1 doxygen-1.8.9.1,2 rubygem-nokogiri-1.6.3.1_1 rubygem-savon-0.9.5 rubygem-wasabi-1.0.0 rubygem-winrm-1.1.3 rubygem-gssapi-1.0.2 rubygem-ffi-1.9.3_1 php5-mcrypt-5.4.39_1 New packages to be INSTALLED: perl5.18: 5.18.4_17 apache22: 2.2.31 mysql55-client: 5.5.44_1 docbook-xml: 5.0_3 docbook-sgml: 4.5_1 compat6x-amd64: 6.4.604000.200810_3 Installed packages to be UPGRADED: libffi: 3.0.9 -> 3.2.1 libiconv: 1.14_3 -> 1.14_8 libX11: 1.4.4,1 -> 1.6.2_3,1 libxcb: 1.7 -> 1.11_1 libXdmcp: 1.1.0 -> 1.1.2 libXau: 1.0.6 -> 1.0.8_3 libXext: 1.3.0_1,1 -> 1.3.3_1,1 libSM: 1.2.0,1 -> 1.2.2_3,1 libICE: 1.0.7,1 -> 1.0.9_1,1 expat: 2.1.0_1 -> 2.1.0_3 freetype2: 2.4.11 -> 2.6_1 libXt: 1.1.1,1 -> 1.1.4_3,1 libpthread-stubs: 0.3_3 -> 0.3_6 libxml2: 2.7.8_5 -> 2.9.2_3 glib: 2.28.8_5 -> 2.44.1_1 tcl86: 8.6.1 -> 8.6.4 png: 1.5.18 -> 1.6.18 pcre: 8.34_1 -> 8.37_4 curl: 7.37.0 -> 7.44.0 apr: 1.4.6.1.4.1_3 -> 1.5.2.1.5.4 gdbm: 1.9.1 -> 1.11_2 libxslt: 1.1.28 -> 1.1.28_7 libgpg-error: 1.11 -> 1.20 libgcrypt: 1.5.0_1 -> 1.6.3 libwww: 5.4.0_4 -> 5.4.0_5 lzo2: 2.06 -> 2.09 Installed packages to be REINSTALLED: python35-3.5.0 The operation will free 1 GiB. 49 MiB to be downloaded. Proceed with this action? [y/N]:
pkg lock это конечно круто, но вот только вспоминать все зависимости с которыми работает owncloud, на данный момент тяжковато, да и как вы верно отметили - это все не от хорошей жизни.
Основной вопрос в следующем, какого он лезет в другие пакеты и как отучить его от этой пагубной привычки?
1) пакетный менеджер работает с репозиторием
2) репозиторий обновляется по кварталам, сейчас, возможно чаще
3) готовые пакеты - собираются из ОБНОВЛЕННОГО дерева портов - регулярно.
соответственно, если порт A-версия10 зависит от B-версия3,C-версия7,D-версия5 ...
то пакет A-версия10 и будет подтягивать ТЕ ЗАИВИСМОСТИ, с котороыми он собран.
Что тут сложного или непонятного?!
Вы используете в работе ПАКЕТЫ, и если Вам потребовалось обновить A-версия5 до A-версия10,
а по run-depends A-версия5 у Вас еще в наличии: B-версия1, С-версия4, D-версия3 - то
что по Вашему должен сделать пакетный менеджер?
Правильно, обновить сперва run-depends:
B-версия1, С-версия4, D-версия3 -- до --> B-версия3,C-версия7,D-версия5
и потом установить A-версия10.
Ну вот что тут сложного и непонятного? Это копейки, потому как мы не рассмотрели
что какой-то другой, установленный у нас пакет X-версия3, в свою очередь зависит от
B и от D, последние зависят от K,L,M...
Можно объяснить иначе:
- соберите нужные пакеты из свежих портов в месяце A (сохраните их в своем репозитории
или в /usr/ports/packages/All -> man pkg + man ports
- обновите порты и снова соберите тот же набор пакетов в месяце A+1 (сохраните в новом
репозиторее...)
теперь попробуйте обновить свои пакеты из своего репозитория или из локального хранилища,
ну и посмотрите физику, если не понимаете логику.
- затем те же шаги через два или три месяца.
Есть три глобальных подхода:
1) используете только пакеты и обновление из пакетов;
2) на чистую систему ставим только те пакеты, которые не требуют НУЖНЫХ НАМ ДОП.ОПЦИЙ СБОРКИ,
после этого ставим из ПОРТОВ то что нам нужно со СВОИМИ ОПЦИЯМИ
Далее, обновляемся только из портов, про пакеты - забыли!
3) создаем свою машину для сборки, со своими опциями и возможно со своими мета-портами
- свой репозиторий для регулярных (раз в месяц или в два или в три) сборок
- Alex Keda
- стреляли...
- Сообщения: 35456
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
Установка пакетов через pkg. Зависимости.
ну, кстати, опции многих портов допинали до приличного состояния, и порты полезные появились ,которые раньше были просто опциями (тот же mod_php)
пару веб-серверов уже перевёл чисто на пакеты, из родного репозитория.
(правда, тока те где устраивает php5.6 mysql5.6 и апач 2.4)
поэтому да, решите, если решитесь - то очень удобно в последствии
пару веб-серверов уже перевёл чисто на пакеты, из родного репозитория.
(правда, тока те где устраивает php5.6 mysql5.6 и апач 2.4)
поэтому да, решите, если решитесь - то очень удобно в последствии
Убей их всех! Бог потом рассортирует...