# emerge traceback

## vaddi

Es tritt bei mir am ende vom mergen auf. 

Nicht immer, es sind wohl irgendwie nur Programme betroffen, die python nutzen, 

kann mich auch dunkel entsinnen, das es nach dem installieren von python damit losging. 

Habe schon einiges versucht, portage neu machen, googlen 

(nach wochen fand ich mal diesen eintrag), python neumachen 

(dabei fehlt mir der python-update(er), habe ja auch keine alte py version verwendet)...

Nur lösen kann ich dieses Problem nicht. 

Beispiel:

```

# emerge gkrellm

Calculating dependencies... done!

>>> Recording app-admin/gkrellm in "world" favorites file...

Traceback (most recent call last):

  File "/usr/bin/emerge", line 6518, in ?

    retval = emerge_main()

  File "/usr/bin/emerge", line 6512, in emerge_main

    myopts, myaction, myfiles, spinner)

  File "/usr/bin/emerge", line 5968, in action_build

    mydepgraph.saveNomergeFavorites()

  File "/usr/bin/emerge", line 3418, in saveNomergeFavorites

    world_set.save()

  File "/usr/bin/emerge", line 689, in save

    "\n".join(sorted(self)) + "\n")

  File "/usr/lib/portage/pym/portage_util.py", line 827, in write_atomic

    f.close()

  File "/usr/lib/portage/pym/portage_util.py", line 795, in close

    os.rename(self.name, self._real_name)

OSError: [Errno 21] Is a directory

```

scheint irgendwie mit den "world favorites" zusammen zu hängen...

Das beispiel zeigt auch mit welchem progi ich probleme habe, 

gkrellm kann ich nicht mehr als user starten, stürzt sofort ab 

(leider noch keine zeit gehabt mal zu tracen), muss ich zur Zeit immer als root starten ...

----------

## bunder

split from portage and programming.

Specifically, topic "bzip2 problems". -- desultory

----------

## Max Steel

heideblitz, du scheinst dir echt dein Python geschrottet zu haben, da hab ich mir mal was geboomarked,

https://forums.gentoo.org/viewtopic-t-504315.html

dort Stigmatas Lösungsweg folgen, dann müsste es wieder funktionieren (den python-updater nicht vergessen zu installieren).

Edith1:

Hmm wohl doch nicht so wie ich erst gelesen hab (jaja, wer lesen kann)

Das scheint wirklich komisch zu sein.

Du kannst es mal versuchen.

----------

## vaddi

Danke für die fixe Info  :Very Happy: 

Seltsamerweise hatte alles bei der ersten Installation von gentoo so unglaublich geil gefunzt 

(glxgears kahmen locker auf 10000 Frames und ich mache immer mal wieder viel mit 3d), 

leider hatte ich nur vergessen mal meine partionen anzupassen. 

Mein / Verzeichnis war am ende dann exakt voll (7,9gig). nach ner Woche /tmp auf 

eine andere platte auslagern, hatte ich die Nase voll, und habe das ganze System nochmal 

neu aufgesetzt. 

Bei der zweiten Installation (habe alles vom lappi aus per ssh und screen gemacht), 

ging es dann nicht mehr so glatt. KDE hatte einige Anlaufschwierigkeiten, musste ich 

mehrmals fehlende Pakete nach mergen. 

Kann es sein, das man beim System installieren evtl nicht alle USE flags setzten sollte? 

(ich habe mir mein altes etc Verzeichnis einfach nur gepackt und daraus allerlei Dateien 

rauskopiert, unter anderem auch meine alte make.conf)

bin absoluter gentoo newbee, davor 6jahre mit debian und slackware gespielt, 

jetzt bin ich bei gentoo gestrandet (mir gefielen die verdammt guten Dokus und Howto's)

Zum Problem:

Ich konnte es mit der anleitung nicht lösen, rennt zwar alles durch, aber es löst das problem nicht.

Portage und python nochmal emerged aber auch das brachte keine besserung.

```

# /usr/sbin/python-updater

 * Can't determine any previous Python version(s).

```

Das war dann wohl auch nix :-/ aber cih finde die Ursache schon noch

python:

```

>>> Recording dev-lang/python in "world" favorites file...

Traceback (most recent call last):

  File "/usr/bin/emerge", line 6518, in ?

    retval = emerge_main()

  File "/usr/bin/emerge", line 6512, in emerge_main

    myopts, myaction, myfiles, spinner)

  File "/usr/bin/emerge", line 5971, in action_build

    retval = mergetask.merge(pkglist, favorites, mtimedb)

  File "/usr/bin/emerge", line 3946, in merge

    world_set.save()

  File "/usr/bin/emerge", line 689, in save

    "\n".join(sorted(self)) + "\n")

  File "/usr/lib/portage/pym/portage_util.py", line 827, in write_atomic

    f.close()

  File "/usr/lib/portage/pym/portage_util.py", line 795, in close

    os.rename(self.name, self._real_name)

OSError: [Errno 21] Is a directory

```

oder beim mergen von emerge:

```

>>> Regenerating /etc/ld.so.cache...

>>> Original instance of package unmerged safely.

>>> app-xemacs/emerge-1.11 merged.

>>> Recording app-xemacs/emerge in "world" favorites file...

Traceback (most recent call last):

  File "/usr/bin/emerge", line 6518, in ?

    retval = emerge_main()

  File "/usr/bin/emerge", line 6512, in emerge_main

    myopts, myaction, myfiles, spinner)

  File "/usr/bin/emerge", line 5971, in action_build

    retval = mergetask.merge(pkglist, favorites, mtimedb)

  File "/usr/bin/emerge", line 3946, in merge

    world_set.save()

  File "/usr/bin/emerge", line 689, in save

    "\n".join(sorted(self)) + "\n")

  File "/usr/lib/portage/pym/portage_util.py", line 827, in write_atomic

    f.close()

  File "/usr/lib/portage/pym/portage_util.py", line 795, in close

    os.rename(self.name, self._real_name)

OSError: [Errno 21] Is a directory

```

Man beachte, die gleiche fehler konstelation  :Wink: 

Wie gesagt bin ich auch nicht sicher, ob das generell ein python problem wäre,

oder von emerge oder sonst etwas anderem ...

----------

## Max Steel

der Befehl emerge ist im PAket portage enthalten, bitte nicht verwechseln mit dem emacs Programm emerge.

```
[ Searching for file(s) /usr/bin/emerge in *... ]

sys-apps/portage-2.1.3.19 (/usr/bin/emerge -> ../lib/portage/bin/emerge)

```

Ich habe mir angewöhnt nach dem syncen und dem konfigurieren erstmal

emerge -a1 gcc

emerge -a1 glibc libtool

und danach ein

emerge -e system

durchlaufen zu lassen, damit alles aktuell ist und es weniger Versionsschwierigkeiten gibt.

Aber daran liegt es nicht, es scheint mehr ein portage Problem zu sein, du könntest mal versuchen portage neuzuinstallieren.

----------

## Genone

Was sagt

```
ls -l /var/lib/portage
```

----------

## vaddi

Denke mal ist gelöst.

```

# emerge -a1 gcc

# emerge -a1 glibc libtool

# emerge -e system 

```

Das hat anscheinend geholfen (war da doch die gcc version schuld... ?)

Abgesehen davon klingt es einleuchtend, gcc schon früh zu mergen.

Ich denke mal das wird mein fehler gewesen sein.

Genaues weis ich aber doch wohl erst in ein paar stunden, wenn sytem durch ist  :Wink: 

```

# ls -l /var/lib/portage

insgesamt 12

-rw-r--r-- 1 root root 5346  4. Jan 19:31 config

drwxr-xr-x 2 root root 4096 20. Apr 2007  world

```

----------

## obrut<-

/var/lib/portage/world sollte eine datei sein und kein verzeichnis!

```
# ls -l /var/lib/portage/

insgesamt 80

-rw-rw---- 1 root portage 72537  5. Jan 22:12 config

-rw-r--r-- 1 root root     4623  5. Jan 20:57 world
```

aufgefallen sein sollte, dass emerge von einer "world favorites file" redet und dann als letztes den fehler "OSError: [Errno 21] Is a directory" ausspuckt. schon daran kann man sehen, woran es liegen könnte (schreiben in datei, die sich als verzeichnis entpuppt).

dass der fehler bislang noch nicht wieder aufgetaucht ist, liegt daran, dass durch durch die option "-1" oder auch "--oneshot" keine änderungen an der datei /var/lib/portage/world vorgenommen werden. emerge system ändert ebenfalls nichts. daher auch keine fehlermeldungen.

----------

## vaddi

Das schaut gut aus, 

```

# mv /var/lib/portage/world  /var/lib/portage/world_old 

# touch /var/lib/portage/world 

# emerge -a1 gcc

# emerge -a1 glibc libtool

# emerge -e system

```

Wenn ich nun z.B. python emerge, dann kommen die Fehler nicht mehr.

Klingt auch verdammt einleuchten, bin allerdings davon ausgegangen, das beim

System bauen von live cd die Dateinamen richtig angelegt werden :-/ 

Beim ersten mal hat es ja auch einwandfrei gefunzt...

wie kann das denn dann entstehen, ich bin mir sicher, das ich das Verzeichnis 

nicht angelegt habe, dazu mal den Inhalt von dem Verzeichnis /var/lib/portage/world 

```

ls -la /var/lib/portage/world_old/

insgesamt 140

drwxr-xr-x 2 root root     4096  6. Jan 21:41 .

drwxrws--- 3 root portage  4096  7. Jan 09:24 ..

-rw-r--r-- 1 root root       33 20. Apr 2007  BINPKGMD5

-rw-r--r-- 1 root root        9 20. Apr 2007  CATEGORY

-rw-r--r-- 1 root root       18 20. Apr 2007  CBUILD

-rw-r--r-- 1 root root       22 20. Apr 2007  CFLAGS

-rw-r--r-- 1 root root       18 20. Apr 2007  CHOST

-rw-r--r-- 1 root root     3613 20. Apr 2007  CONTENTS

-rw-r--r-- 1 root root        2 20. Apr 2007  COUNTER

-rw-r--r-- 1 root root       22 20. Apr 2007  CXXFLAGS

-rw-r--r-- 1 root root       59 20. Apr 2007  DEPEND

-rw-r--r-- 1 root root       37 20. Apr 2007  DESCRIPTION

-rw-r--r-- 1 root root        2 20. Apr 2007  EAPI

-rw-r--r-- 1 root root    31473 20. Apr 2007  environment.bz2

-rw-r--r-- 1 root root       62 20. Apr 2007  FEATURES

-rw-r--r-- 1 root root       40 20. Apr 2007  HOMEPAGE

-rw-r--r-- 1 root root       57 20. Apr 2007  INHERITED

-rw-r--r-- 1 root root       15 20. Apr 2007  IUSE

-rw-r--r-- 1 root root       68 20. Apr 2007  KEYWORDS

-rw-r--r-- 1 root root        6 20. Apr 2007  LICENSE

-rw-r--r-- 1 root root      324 20. Apr 2007  NEEDED

-rw-r--r-- 1 root root        1 20. Apr 2007  PDEPEND

-rw-r--r-- 1 root root       17 20. Apr 2007  PF

-rw-r--r-- 1 root root       40 20. Apr 2007  RDEPEND

-rw-r--r-- 1 root root        2 20. Apr 2007  SLOT

-rw-r--r-- 1 root root      220 20. Apr 2007  SRC_URI

-rw-r--r-- 1 root root     3341 20. Apr 2007  sysvinit-2.86-r8.ebuild

-rw-r--r-- 2 root root     2206 20. Apr 2007  USE

```

Wie man sieht passt das datum dazu auch nicht. Dabei habe ich, 

genauso wie bei meiner ersten Installation, ein Stage 3 Archiv verwendet!?

(für alle, die sich schonmal gefragt haben, was eigendlich die "insgesamt" 

Angaben bei ls -a immer bedeuten, habe ich einen netten Post gefunden , 

da im manual nicht viel dazu drin steht).

Allgemeine frage zum Problem:

Ist die datei /var/lib/portage/world die datei, nach der emerge world geht?

Wenn ja, wo ist dann die System-Datei? oder habe ich den zusammenhang nicht richtig 

verstanden?

----------

## Finswimmer

 *vaddi wrote:*   

> 
> 
> Allgemeine frage zum Problem:
> 
> Ist die datei /var/lib/portage/world die datei, nach der emerge world geht?
> ...

 

Ja das ist die Datei.

Nun, da die leer ist, läuft bei emerge world natürlich nicht viel.

Hier im Forum gibt es allerdings ein Skript "dep", das  es ermöglicht die World Datei, auf der Grundlage von deinen installierten Paketen, neu aufzubauen. Dazu findet das Skript die Pakete, die keine "Reverse Dependencies" haben. Sowas wie kde-meta zum Beispiel und trägt diese dann in world ein.

Ich hoffe du findest es, wenn nicht schicke ich dir meine Kopie von dem Skript.

Tobi

----------

## vaddi

Kopie wäre net, finde es leider nicht im forum unter reverse dependencies  finde 

ich einiges, aber nichts scheint auf deine beschreibung zu passen.

Danke erstmal für die schnelle hilfe, hatte schon fast nochmal neu angefangen 

(und sowas mache ich nur verdammt ungern)

greetings  :Wink: 

----------

## Finswimmer

https://forums.gentoo.org/viewtopic-t-142475-postdays-0-postorder-asc-start-0.html

----------

## Genone

 *vaddi wrote:*   

> 
> 
> wie kann das denn dann entstehen, ich bin mir sicher, das ich das Verzeichnis 
> 
> nicht angelegt habe, dazu mal den Inhalt von dem Verzeichnis /var/lib/portage/world 

 

Kaputtes Dateisystem.

----------

