# emerge -C metacity-2.4.34 [ERRNO 5] I/O error [Risolto]

## Peach

```
>>> Updating Scrollkeeper

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

>>> x11-wm/metacity-2.4.55 merged.

 

 x11-wm/metacity

 selected: 2.4.34

 protected: 2.4.55

 omitted: none

 

>>> Packages in red are slated for removal.

>>> Packages in green will not be removed.

 

>>> Waiting 5 seconds before starting...

>>> (Control-C to abort)...

>>> Unmerging in: 5 4 3 2 1

>>> Unmerging x11-wm/metacity-2.4.34...

No package files given... Grabbing a set.

Traceback (most recent call last):

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

    mydepgraph.merge(mydepgraph.altlist())

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

    if not unmerge("clean", [xsplit[0]]):

  File "/usr/bin/emerge", line 1452, in unmerge

    retval=portage.unmerge(mysplit[0],mysplit[1],portage.root,unmerge_action not in ["clean","prune"])

  File "/usr/lib/python2.2/site-packages/portage.py", line 1879, in unmerge

    mylink.unmerge(trimworld=mytrimworld)

  File "/usr/lib/python2.2/site-packages/portage.py", line 4116, in unmerge

    pkgfiles=self.getcontents()

  File "/usr/lib/python2.2/site-packages/portage.py", line 4043, in getcontents

    mylines=myc.readlines()

IOError: [Errno 5] Input/output error

peach root #
```

mi sono appena svegliato e track, sto errore... non lo capisco pardonne moi.  :Confused: 

----------

## cerri

Prova a fare emerge -C del pacchetto, ovviamente quello vecchio.

----------

## Peach

niente da fare, stesso identico errore  :Sad: 

----------

## cerri

Prova ad aggiornare portage.

----------

## Peach

l'ho fatto prima di fare l'emerge -C di prima

cmq ora sto ri-riprovando.  :Confused: 

----------

## Peach

```
....

>>> Updating Portage cache...  ...done!

 

peach root # emerge -C x11-wm/metacity-2.4.34

 

 x11-wm/metacity

    selected: 2.4.34

   protected: none

     omitted: 2.4.55

 

>>> Packages in red are slated for removal.

>>> Packages in green will not be removed.

 

>>> Waiting 5 seconds before starting...

>>> (Control-C to abort)...

>>> Unmerging in: 5 4 3 2 1

>>> Unmerging x11-wm/metacity-2.4.34...

No package files given... Grabbing a set.

Traceback (most recent call last):

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

    if 1==unmerge(myaction, myfiles):

  File "/usr/bin/emerge", line 1452, in unmerge

    retval=portage.unmerge(mysplit[0],mysplit[1],portage.root,unmerge_action not in ["clean","prune"])

  File "/usr/lib/python2.2/site-packages/portage.py", line 1879, in unmerge

    mylink.unmerge(trimworld=mytrimworld)

  File "/usr/lib/python2.2/site-packages/portage.py", line 4116, in unmerge

    pkgfiles=self.getcontents()

  File "/usr/lib/python2.2/site-packages/portage.py", line 4043, in getcontents

    mylines=myc.readlines()

IOError: [Errno 5] Input/output error

peach root #

```

----------

## shev

Provato la soluzione molto windozziana, cioè reinstallare la versione incriminata e quindi riprovare a disinstallarla? So che può suonare riprovevole, ma in mancanza d'altro...   :Rolling Eyes: 

----------

## cerri

E poi manca solo bugs.gentoo.org...  :Razz: 

----------

## Peach

```
>>> Updating Portage cache...  ...done!

 

 

 

Performing Global Updates: /usr/portage/profiles/updates/3Q-2003

(Could take a couple minutes if you have a lot of binary packages.)

  .='update pass'  *='binary update'  @='/var/db move'

......................................................................@grep: /var/db/pkg/x11-wm/metacity-2.4.34/CONTENTS: Input/output error

 

peach root # 
```

```
# fixpackages

 

 

Performing Global Updates: /usr/portage/profiles/updates/1Q-2003

(Could take a couple minutes if you have a lot of binary packages.)

  .='update pass'  *='binary update'  @='/var/db move'

...............................

 

 

Performing Global Updates: /usr/portage/profiles/updates/3Q-2002

(Could take a couple minutes if you have a lot of binary packages.)

  .='update pass'  *='binary update'  @='/var/db move'

........................................................................................

 

 

Performing Global Updates: /usr/portage/profiles/updates/4Q-2002

(Could take a couple minutes if you have a lot of binary packages.)

  .='update pass'  *='binary update'  @='/var/db move'

..................................................................................

 

 

Performing Global Updates: /usr/portage/profiles/updates/2Q-2003

(Could take a couple minutes if you have a lot of binary packages.)

  .='update pass'  *='binary update'  @='/var/db move'

.................................................................................

 

 

Performing Global Updates: /usr/portage/profiles/updates/3Q-2003

(Could take a couple minutes if you have a lot of binary packages.)

  .='update pass'  *='binary update'  @='/var/db move'

......................................................................

Done. 
```

Questi due strip sono consecutivi temporalmente... e il primo non mi dice niente di buono....

se provo a sfogliare il file in questione da mc questo mi crasha....  :Shocked: 

 :Exclamation:  achtung  :Exclamation:  achtung  :Exclamation: 

provo a fargli un fsck???

----------

## shev

 *Peach wrote:*   

> 
> 
> provo a fargli un fsck???

 

Prova, ti diamo il permesso di farlo  :Very Happy: 

Male che vada cancellalo e rifa il sync.

----------

## Peach

ok

fatto fsck mi ha trovato un blocco duplicato nel file... sistemato tutto ho quindi fatto emerge -c e mi ha "disinstallato" metacity vecchio solo che alla fine mi da sempre lo stesso errore di cui sopra... qui l'output:

```
# emerge -c

 

 x11-wm/metacity

    selected: 2.4.34

   protected: 2.4.55

     omitted: none

 

>>> Packages in red are slated for removal.

>>> Packages in green will not be removed.

 

>>> Waiting 5 seconds before starting...

>>> (Control-C to abort)...

>>> Unmerging in: 5 4 3 2 1

>>> Unmerging x11-wm/metacity-2.4.34...

No package files given... Grabbing a set.

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-top-left-corner.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-top-left-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-top-center-right.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-top-center-mid.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-top-center-left.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-right-top-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-right-top-border-shaded.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-right-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-restore-button.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-minimize-button.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-menu-button.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-menu-button-pressed.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-menu-button-prelight.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-maximize-button.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-left-top-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-left-top-border-shaded.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-left-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-close-button.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-button.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-button-pressed.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-button-prelight.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-bottom-right-corner.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-bottom-right-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-bottom-mid-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-bottom-left-corner.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-bottom-left-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-border-top-right-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/inactive-border-top-left-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-top-right-corner.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-top-right-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-top-mid-right-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-top-mid-left-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-top-left-corner.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-top-left-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-top-center-right.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-top-center-mid-right.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-top-center-mid-left.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-top-center-left.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-right-top-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-right-top-border-shaded.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-right-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-restore-button.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-minimize-button.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-menu-button.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-menu-button-pressed.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-menu-button-prelight.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-maximize-button.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-left-top-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-left-top-border-shaded.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-left-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-close-button.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-button.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-button-pressed.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-button-prelight.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-bottom-right-corner.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-bottom-right-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-bottom-mid-right-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-bottom-mid-left-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-bottom-left-corner.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-bottom-left-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-border-top-right-border.png

--- !mtime obj /usr/share/themes/Crux/metacity-1/active-border-top-left-border.png

--- !mtime obj /usr/share/themes/Bright/metacity-1/metacity-theme-1.xml

--- !mtime obj /usr/share/themes/Atlanta/metacity-1/metacity-theme-1.xml

--- !mtime obj /usr/share/pixmaps/metacity-properties.png

--- !mtime obj /usr/share/metacity/icons/metacity-window-demo.png

--- !mtime obj /usr/share/metacity/glade/metacity-properties.glade

--- !mtime obj /usr/share/locale/zh_TW/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/zh_CN/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/vi/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/uk/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/tr/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/sv/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/sl/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/sk/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/ru/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/ro/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/pt_BR/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/pt/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/pl/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/no/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/nl/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/ms/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/mn/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/mk/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/lv/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/ko/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/ja/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/it/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/hu/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/he/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/gl/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/fr/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/fi/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/et/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/es/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/en_GB/LC_MESSAGES/metacity.mo

--- !mtime obj /usr/share/locale/el/LC_MESSAGES/metacity.mo

<<<        obj /usr/share/doc/metacity-2.4.34/README.gz

<<<        obj /usr/share/doc/metacity-2.4.34/NEWS.gz

<<<        obj /usr/share/doc/metacity-2.4.34/INSTALL.gz

<<<        obj /usr/share/doc/metacity-2.4.34/HACKING.gz

<<<        obj /usr/share/doc/metacity-2.4.34/ChangeLog.gz

<<<        obj /usr/share/doc/metacity-2.4.34/AUTHORS.gz

Traceback (most recent call last):

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

    if 1==unmerge(myaction, myfiles):

  File "/usr/bin/emerge", line 1452, in unmerge

    retval=portage.unmerge(mysplit[0],mysplit[1],portage.root,unmerge_action not in ["clean","prune"])

  File "/usr/lib/python2.2/site-packages/portage.py", line 1879, in unmerge

    mylink.unmerge(trimworld=mytrimworld)

  File "/usr/lib/python2.2/site-packages/portage.py", line 4144, in unmerge

    if not os.path.exists(obj):

  File "/usr/lib/python2.2/posixpath.py", line 171, in exists

    st = os.stat(path)

TypeError: stat() argument 1 must be (encoded string without NULL bytes), not str
```

guardando il file CONTENT c'è qualcosa che non va...

qui lo strip da /var/db/pkg/x11-wm/metacity-2.4.34/CONTENTS

```
obj /usr/share/themes/Crux/metacity-1/inactive-top-center-right.png 2a4ff34236a6456cc9f12bf347154e28 1047500973

obj /usr/share/themes/Crux/metacity-1/inactive-top-left-border.png d27d74479725366ba4b0f130c5bc62d1 1047500973

obj /usr/share/themes/Crux/metacity-1/inactive-top-left-corner.png bd36bf10d9dbb472aa30322a5e9d5ff5 1047500973

obj /usr/share

 

 

 

 

 

 

 

 

 

 

 

 

 

                                                                                                                   

 

locale/de/LC_MESSAGES/metacity.mo bb764a4571a4df6a4b502d6d28db2ce2 1047500973

dir /usr/share/locale/el

dir /usr/share/locale/el/LC_MESSAGES

obj /usr/share/locale/el/LC_MESSAGES/metacity.mo 6c72f1de3bac5d85b936404c3e46d40a 1047500973

dir /usr/share/locale/en_GB
```

prima di riprovare a ridare emerge -c cavando gli accapo 

chi ha metacity potrebbe controllarmi che non manchino delle righe ??? oppure qualcuno sa se c'è un modo per ricostruire quel file?

emerge sync lo fa?

vorrei ricordare che il file è in /var/db/pkg/x11-wm/metacity-2.4.34/CONTENTS

----------

## Peach

a riguardo stavo pensando che forse fare un merge dell'output di

```
# qpkg -l metacity-2.4.34
```

nel file incriminato ma ho paura di fare casini   :Rolling Eyes: 

----------

## cerri

Lo puoi fare, cancellare tutti i files che vedi e riemergere l'ultimo pacchetto.

Ma bugs.gentoo.org cosa dice al riguardo?

PS Okkio ai files di configurazione.

----------

## Peach

no no io dicevo di prendere l'output di qpkg -l etcetc e integrarlo, controllando, nel CONTENTS file nel caso manchi qualcosa al posto di quei NULL bytes ,,,

se qualcuno ha quella versione di metacity sarebbe una cosa giusta da sapere...

----------

## cerri

Mmmhhh scusa avevo tralasciato qualche info importante...

ma se provi a riemergerlo non va? non c'e' qualche opzione in emerge per rifare quel file? ora sono sotto windows e non posso controllare...

----------

## Peach

non ho mai vistonulla che nel manuale di emerge si riferisse a /var/db/pkg se non i tbz2

 *Quote:*   

>        tbz2file
> 
>               A  tbz2file  must be a valid .tbz2 created with ebuild <package>-<version>.ebuild package
> 
>               or emerge --buildpkg [category/]<package> or quickpkg /var/db/pkg/<category>/<package>.

 

non so come e quando venga toccata quella dir

in effetti (forsE) dovrei solo controllare che non manchino in CONTENTS files che qpkg -l mi da come output... no? mah...

----------

## cerri

 *Peach wrote:*   

> non ho mai vistonulla che nel manuale di emerge si riferisse a /var/db/pkg se non i tbz2

 

Infatti mi sbagliavo con regen.

 *Peach wrote:*   

> non so come e quando venga toccata quella dir
> 
> in effetti (forsE) dovrei solo controllare che non manchino in CONTENTS files che qpkg -l mi da come output... no? mah...

 

qpkg -l dovrebbe prendere la lista da quel file, ho dato un'occhiata veloce in strace e si va a leggere quel file.

----------

## Peach

ok, dopo un breve dialogo con cerri a riguardo in chat, la soluzione più "safe" sarebbe essere unmergiare l'ultima versione di metacity (2.4.55) e reemergere quella vecchia incriminata (2.4.34) ma prima di fare questo ho preferito domandare se c'era un modo per ricostruire il file visto che effettivamente qpkg va a leggere proprio da quale cavolo di file per la lista dei files... 

rebuild broken files in /var/db/pkg

----------

## cerri

Peach, ma non abbiamo notato che la soluzione ce l'avevamo a portata di mano!!!!!!!!!!

 *Peach wrote:*   

> If at first you don't succeed, call in an air strike.

 

----------

## Peach

 *cerri wrote:*   

> Peach, ma non abbiamo notato che la soluzione ce l'avevamo a portata di mano!!!!!!!!!!
> 
>  *Peach wrote:*   If at first you don't succeed, call in an air strike. 

 

ROTFL!!!!

 :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing: 

----------

## Peach

ok risolto il tutto:

il fatto che quelle entry in /var/db/pkg/ vengono create runtime al momento dell'installazione (il vero e proprio merge) nel sistema quindi l'unico modo o almeno il metodo che ho seguito io è stato:

1) rm -R /var/db/pkg/x11-wm/metacity-2,4,34

2) emerge -C x11-wm/metacity-2.4.55

3) emerge /usr/porgate/x11-wm/metacity-2,4,34,ebuild

4) emerge sync

5) emerge -DUv world (questo significa implicitamente l'emerge di metacity-2,4,55 e l'unmerge della versione vecchia come nei miei desideri  :Wink:  )

grazie a tutti per l'aiuto prestatomi  :Smile: 

----------

