# emerge -pvuD world: не понял юмора...

## chernousov

Итак, делаю:

```
quartz ~ # emerge -pvuD world

These are the packages that would be merged, in order:

Calculating world dependencies... done!

[ebuild     U ] app-arch/cpio-2.9-r1 [2.9] USE="-nls" 0 kB

[ebuild     U ] dev-libs/glib-2.12.13 [2.8.6] USE="-debug -doc -hardened" 2,870 kB

Total: 2 packages (2 upgrades), Size of downloads: 2,870 kB
```

Ок, всё нормально, пора обновить cpio и glib.

```
quartz ~ # emerge -pv subversion

These are the packages that would be merged, in order:

Calculating dependencies... done!

[ebuild  NS   ] dev-libs/apr-1.2.8  USE="-debug -ipv6 -urandom" 1,082 kB

[ebuild  NS   ] dev-libs/apr-util-1.2.8  USE="-berkdb -gdbm -ldap -postgres -sqlite -sqlite3" 632 kB

[ebuild     U ] dev-util/subversion-1.3.2-r4 [1.2.3-r2] USE="nowebdav* zlib -apache2 -bash-completion -berkdb* -emacs -java -nls* -perl -python -ruby% (-minimal%)" 6,675 kB

Total: 3 packages (1 upgrade, 2 in new slots), Size of downloads: 8,387 kB
```

Упс... оказывается subversion тоже пора обновлять.

Внимание, вопрос. Уважаемые знатоки, объясните, почему в первом случае subversion выпал из списка?

----------

## chernousov

А, ну я уже догадываюсь:

```
quartz ~ # etcat versions dev-util/subversion

[ Results for search key           : dev-util/subversion ]

[ Candidate applications found : 7 ]

 Only printing found installed programs.

*  dev-util/subversion :

        [M  ] 1.1.3 (0)

        [M I] 1.2.3-r2 (0) OVERLAY

        [M~ ] 1.2.3-r3 (0)

        [   ] 1.3.2-r3 (0)

        [   ] 1.3.2-r4 (0)

        [M~ ] 1.4.4-r3 (0)

        [M~ ] 1.4.4-r4 (0)
```

emerge утверждает, что текущая заинсталленная версия 1.2.3-r2 отсутствует в главном дереве портежей, и якобы находится в overlay. На самом деле никакого overlay не существует, и, получается, что emerge -pvuD world при поиске вообще проскакивает "несуществующий" пакет. Отменяя свой первый вопрос, в догонку задам следующий - а как это лечится? Сколько ещё в моей системе таких пакетов?...

----------

## chernousov

Во блин...

```
quartz ~ # emerge -pv gamin

These are the packages that would be merged, in order:

Calculating dependencies... done!

[ebuild     U ] app-admin/gamin-0.1.9 [0.1.7] USE="-debug (-doc%)" 631 kB

Total: 1 package (1 upgrade), Size of downloads: 631 kB
```

gamin тоже выпал из emerge -pvuD world, значит версии 0.1.7 нет в портежах?

```
quartz ~ # etcat versions gamin

[ Results for search key           : gamin ]

[ Candidate applications found : 3 ]

 Only printing found installed programs.

*  app-admin/gamin :

        [  I] 0.1.7 (0)

        [   ] 0.1.8 (0)

        [   ] 0.1.9 (0)
```

Гммммм.......

```
quartz ~ # ls -1 /usr/portage/app-admin/gamin/

ChangeLog

Manifest

files

gamin-0.1.7.ebuild

gamin-0.1.8.ebuild

gamin-0.1.9.ebuild

metadata.xml
```

Занавес.

----------

## chernousov

Забавные исследования: *Quote:*   

> quartz ~ # emerge -pve world | grep "U ]"
> 
> [ebuild     U ] app-arch/cpio-2.9-r1 [2.9] USE="-nls" 0 kB
> 
> [ebuild     U ] dev-libs/libpcre-7.3-r1 [6.6] USE="unicode%* -doc" 747 kB
> ...

 

С флагом "e" появился ещё и libpcre.

```
quartz ~ # emerge -e world -pv | grep subversion

[ebuild   R   ] dev-util/subversion-1.3.2-r4  USE="nowebdav zlib -apache2 -bash-completion -berkdb -emacs -java -nls -perl -python -ruby" 0 kB

quartz ~ # emerge -e world -pv | grep gamin

quartz ~ #

```

Я в лёгком ах*е: subversion есть, а gamin будто вообще не существует.

----------

## ArtSh

А Вы emerge --depclean -pv делали? Попробуйте на досуге, то что кажется Вам нужным, рекомендуется заэмержить заново, чтобы запись в /var/lib/portage/world появилась...

----------

## chernousov

Конечно делал. Из упомянутых выше пакетов эта сволочь пытается удалить только gamin. По поводу subversion я ещё могу понять, но что касается libpcre, никакого объяснения в голову не приходит.

----------

## chernousov

Кстати, вот мой depclean:

```
>>> These are the packages that would be unmerged:

 sys-devel/automake

    selected: 1.4_p6 1.5 1.6.3 1.7.9-r1 1.8.5-r3 1.9.6-r2

   protected: none

     omitted: 1.10

 app-crypt/hashalot

    selected: 0.3-r1

   protected: none

     omitted: none

 dev-lang/swig

    selected: 1.3.21

   protected: none

     omitted: none

 sys-libs/gpm

    selected: 1.20.1-r4

   protected: none

     omitted: none

 dev-util/dialog

    selected: 1.0.20050206

   protected: none

     omitted: none

 sys-devel/bc

    selected: 1.06-r6

   protected: none

     omitted: none

 net-nds/portmap

    selected: 5b-r9

   protected: none

     omitted: none

 sys-libs/db

    selected: 4.2.52_p2-r1

   protected: none

     omitted: none

 sys-libs/libcap

    selected: 1.10-r5

   protected: none

     omitted: none

 sys-libs/gdbm

    selected: 1.8.3-r2

   protected: none

     omitted: none

 sys-kernel/gentoo-sources

    selected: 2.6.20-r8

   protected: none

     omitted: 2.6.22-r8

 sys-libs/libstdc++-v3

    selected: 3.3.4

   protected: none

     omitted: none

 dev-libs/apr

    selected: 0.9.7

   protected: none

     omitted: 1.2.8

 sys-apps/ed

    selected: 0.2-r6

   protected: none

     omitted: none

 net-misc/neon

    selected: 0.24.7

   protected: none

     omitted: none

 net-ftp/ftpbase

    selected: 0.01

   protected: none

     omitted: none

 dev-libs/apr-util

    selected: 0.9.7

   protected: none

     omitted: 1.2.8

 sys-devel/autoconf

    selected: 2.13

   protected: none

     omitted: 2.61-r1

 app-admin/gamin

    selected: 0.1.7

   protected: none

     omitted: none

 sys-devel/gcc

    selected: 3.4.6-r2

   protected: none

     omitted: 4.1.2
```

Эксперимента ради я сделал emerge -pv всех пакетов, от которых ничего не остаётся (нет omitted):

```
quartz ~ # emerge -pv app-crypt/hashalot dev-lang/swig sys-libs/gpm dev-util/dialog sys-devel/bc net-nds/portmap sys-libs/db sys-libs/libcap sys-libs/gdbm sys-libs/libstdc++-v3 sys-apps/ed net-misc/neon net-ftp/ftpbase app-admin/gamin

These are the packages that would be merged, in order:

Calculating dependencies... done!

[ebuild     U ] app-crypt/hashalot-0.3-r2 [0.3-r1] 79 kB

[ebuild     U ] dev-lang/swig-1.3.31 [1.3.21] USE="-doc -guile -java -lua% -mono% -ocaml% -perl -php -pike% -python -ruby -tcl% -tk% (-X%) (-tcltk%)" 4,080 kB

[ebuild     U ] sys-libs/gpm-1.20.1-r5 [1.20.1-r4] USE="(-selinux) (-emacs%)" 560 kB

[ebuild     U ] dev-util/dialog-1.1.20070704 [1.0.20050206] USE="unicode* -examples%" 359 kB

[ebuild   R   ] sys-devel/bc-1.06-r6  USE="readline -static" 273 kB

[ebuild     U ] net-nds/portmap-6.0 [5b-r9] USE="(-selinux) -tcpd*" 22 kB

[ebuild  NS   ] sys-libs/db-4.5.20_p2  USE="-bootstrap -doc -java -nocxx -tcl -test" 9,068 kB

[ebuild     U ] sys-libs/libcap-1.10-r9 [1.10-r5] USE="-python* (-nocxx%) (-static%)" 0 kB

[ebuild     U ] sys-libs/gdbm-1.8.3-r3 [1.8.3-r2] USE="-berkdb*" 224 kB

[ebuild     U ] sys-libs/libstdc++-v3-3.3.6 [3.3.4] USE="nptl -build (-multilib) -nls*" 23,411 kB

[ebuild     U ] sys-apps/ed-0.8 [0.2-r6] 67 kB

[ebuild     U ] net-misc/neon-0.26.3 [0.24.7] USE="zlib -expat* -nls% -socks5% -ssl" 771 kB

[ebuild   R   ] net-ftp/ftpbase-0.01  USE="-pam" 0 kB

[ebuild     U ] app-admin/gamin-0.1.9 [0.1.7] USE="-debug (-doc%)" 631 kB

Total: 14 packages (11 upgrades, 1 in new slot, 2 reinstalls), Size of downloads: 39,540 kB
```

Я не понимаю, почему эта толпа пакетов вошла в depclean, но не попала в -pvuD world. Похоже, у портежа крышу снесло окончательно, и дело пахнет керосином.

----------

## Galchonok

Самое забавное - что тоже с этим сталкнулся ...

так и не понял причину

----------

## ArtSh

Это нормальное поведение emerge, чтобы понять что означает --depclean, почему не обновляются некоторые пакеты, и т.п. надо почитать справку.

P.S. в краце: то, чего нет в world и не тянется по зависимостям, не будет обнавляться, а --depclean удаляет подобные ненужные пакеты.

----------

## chernousov

Позвольте не согласиться.

Если, например, swig или ftpbase действительно идут как зависимости, то такие вещи как subversion и gamin я устанавливал вручную.

```
quartz ~ # cat /var/lib/portage/world

app-admin/gamin

app-admin/syslog-ng

app-arch/gzip

app-editors/nano

app-editors/vim

app-misc/ca-certificates

app-misc/mc

app-misc/screen

app-portage/esearch

app-portage/gentoolkit

app-portage/portage-utils

app-portage/ufed

app-text/rcs

dev-lang/php

dev-libs/geoip

dev-libs/libol

dev-libs/openssl

dev-libs/popt

dev-perl/Locale-gettext

dev-perl/String-ShellQuote

dev-php5/xcache

dev-util/ccache

dev-util/pkgconfig

dev-util/subversion

mail-mta/ssmtp

media-gfx/imagemagick

net-analyzer/mrtg

net-analyzer/net-snmp

net-firewall/iptables

net-mail/mailbase

net-misc/curl

net-misc/ntp

net-misc/openssh

net-misc/telnet-bsd

perl-core/Test-Simple

sys-apps/baselayout

sys-apps/help2man

sys-apps/hotplug-base

sys-apps/less

sys-apps/module-init-tools

sys-apps/sysvinit

sys-apps/tcp-wrappers

sys-boot/grub

sys-devel/automake:1.9

sys-devel/gcc-config

sys-fs/reiserfsprogs

sys-fs/udev

sys-libs/com_err

sys-libs/pam

sys-libs/ss

sys-libs/timezone-data

sys-process/cronbase

sys-process/vixie-cron

virtual/perl-Test-Simple
```

----------

## ArtSh

Пожалуйста, приведите вывод команды emerge --info.

----------

## chernousov

```
quartz ~ # emerge --info

Portage 2.1.3.16 (default-linux/x86/2007.0, gcc-4.1.2, glibc-2.6.1-r0, 2.6.16-beyond3 i686)

=================================================================

System uname: 2.6.16-beyond3 i686 Intel(R) Pentium(R) 4 CPU 2.80GHz

Timestamp of tree: Tue, 30 Oct 2007 10:30:01 +0000

ccache version 2.4 [disabled]

app-shells/bash:     3.2_p17

dev-lang/python:     2.4.4-r6

dev-python/pycrypto: 2.0.1-r6

dev-util/ccache:     2.4-r7

sys-apps/baselayout: 1.12.9-r2

sys-apps/sandbox:    1.2.18.1-r2

sys-devel/autoconf:  2.61-r1

sys-devel/automake:  1.9.6-r2, 1.10

sys-devel/binutils:  2.18-r1

sys-devel/gcc-config: 1.3.16

sys-devel/libtool:   1.5.24

virtual/os-headers:  2.6.22-r2

ACCEPT_KEYWORDS="x86"

CBUILD="i686-pc-linux-gnu"

CFLAGS="-O3 -march=pentium4 -pipe -funroll-loops -mfpmath=sse -mmmx -msse -msse2 -fomit-frame-pointer"

CHOST="i686-pc-linux-gnu"

CONFIG_PROTECT="/etc"

CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d"

CXXFLAGS="-O3 -march=pentium4 -pipe -funroll-loops -mfpmath=sse -mmmx -msse -msse2 -fomit-frame-pointer"

DISTDIR="/usr/portage/distfiles"

FEATURES="digest distlocks metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans userfetch"

GENTOO_MIRRORS="http://gentoo.mirrors.tds.net/gentoo http://distro.ibiblio.org/pub/linux/distributions/gentoo/"

MAKEOPTS="-j2"

PKGDIR="/usr/portage/packages"

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

PORTDIR_OVERLAY="/usr/local/portage"

SYNC="rsync://rsync.gentoo.org/gentoo-portage"

USE="aac authfile bitmap-fonts cgi cli cracklib dri fastcgi gd-external gif iconv maildir midi mmx mmxext mudflap nptl nptlonly openmp pcre perl readline session sse sse2 symlink syslog sysvipc threads truetype-fonts type1-fonts unicode userlocales x86 xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="apm ark chips cirrus cyrix dummy fbdev glint i128 i740 i810 imstt mach64 mga neomagic nsc nv r128 radeon rendition s3 s3virge savage siliconmotion sis sisusb tdfx tga trident tseng v4l vesa vga via vmware voodoo"

Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

```

----------

## ArtSh

Я бы Вам посоветовал выбрать менее агрессивную оптимизацию и пересобрать пакеты (emerge -e world), а пока выполнить следующие действия:

```

emerge -uDN --with-bdeps y world

revdep-rebuild 

emerge --depclean # те пакеты которые Вы не хотите удалять заэмержите заново (emerge пакет)

revdep-rebuild

```

P.S. а зачем сидите на стаорм ядре?

----------

## chernousov

 *ArtSh wrote:*   

> Я бы Вам посоветовал выбрать менее агрессивную оптимизацию

 

У меня порядка 40 серверов не первый год работают с такими настройками, и мифы типа "-O3 это ужас" скорее смахивают на детские страшилки.

 *ArtSh wrote:*   

> 
> 
> ```
> 
> emerge --depclean # те пакеты которые Вы не хотите удалять заэмержите заново (emerge пакет)
> ...

 

Да я в общем-то понимаю, что переставив всю систему, проблему я свою решу. Но меня больше интересует природа появления этой проблемы.

 *ArtSh wrote:*   

> P.S. а зачем сидите на стаорм ядре?

 

А я как раз и пришёл на этот сервер, чтобы всё там обновить :) И наткнулся на фокусы с emerge.

----------

## Laitr Keiows

emerge -pvuDN world что дает?

----------

## chernousov

Поздно, я уже обновил всё ручками. Топик можно закрывать с пометкой "not solved" до следующего инцидента :(

----------

