# [ SOLVED ] mise à jour avec soucis [ OFF ]

## amara

Bonjour,

Apres avoir tenté de faire une mise à jour "emerge --sync" "emerge -Dup world".

J'ai un message d'erreur qui apparait.

```

#>kernelversion

2.6

```

```

 #>emerge -Dup world

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

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

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

  s='/var/db SLOT move' S='binary SLOT move' p='update /etc/portage/package.*'

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

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

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

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

  s='/var/db SLOT move' S='binary SLOT move' p='update /etc/portage/package.*'

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

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

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

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

  s='/var/db SLOT move' S='binary SLOT move' p='update /etc/portage/package.*'

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

pTraceback (most recent call last):

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

    emerge_main()

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

    portage.global_updates(settings, trees, mtimedb["updates"])

  File "/usr/lib/portage/pym/portage.py", line 6656, in global_updates

    myupd)

  File "/usr/lib/portage/pym/portage_update.py", line 198, in update_config_files

    write_atomic(updating_file, "".join(file_contents[x]))

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

    f.close()

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

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

OSError: [Errno 16] Device or resource busy

```

Voilà.

Merci pour l'aide.Last edited by amara on Sun Nov 26, 2006 10:46 pm; edited 1 time in total

----------

## kopp

essaye de refaire un emerge --sync

----------

## amara

quand je fais un "emerge --sync" le message est le meme.

```

emerge --sync

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

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

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

  s='/var/db SLOT move' S='binary SLOT move' p='update /etc/portage/package.*'

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

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

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

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

  s='/var/db SLOT move' S='binary SLOT move' p='update /etc/portage/package.*'

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

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

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

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

  s='/var/db SLOT move' S='binary SLOT move' p='update /etc/portage/package.*'

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

pTraceback (most recent call last):

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

    emerge_main()

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

    portage.global_updates(settings, trees, mtimedb["updates"])

  File "/usr/lib/portage/pym/portage.py", line 6656, in global_updates

    myupd)

  File "/usr/lib/portage/pym/portage_update.py", line 198, in update_config_files

    write_atomic(updating_file, "".join(file_contents[x]))

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

    f.close()

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

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

OSError: [Errno 16] Device or resource busy

```

----------

## boozo

'alute

mmmh plus de place sur les partitions et répertoires dédiés à portage ? 

upgrade python ?

btw : un petit peu plus d'infos sur ce que tu as fait et dans quel contexte (comprendre historique) ne ferait pas de mal pour que l'on puisse t'aider correctement   :Wink: 

edit OT : au fait la commande kernelversion ne donne que la version majeure du noyau ce qui ne renseigne pas beaucoup non plus... en général *les non débianeux  :Mr. Green:  * préfère utiliser uname -a ^^

----------

## amara

d'accord désolé.

Je souhaites faire un "emerge world" pour mettre à jour mon système.

mais en premier lieu j'ai fait un "emerge --sync" et ensuite "emerge world".

et ensuite le message est apparu en faisant un "emerge world"

----------

## boozo

bon on s'est pas compris   :Laughing:    la précédente mise à jour date de qd ?

donne nous un emerge --info stp

----------

## amara

lol désolé et d'ailleur tu viens de me faire remarquer que lorsque je fais un "emerge --info" il me fait le meme et identique message d'erreur.

```

#>emerge --info

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

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

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

  s='/var/db SLOT move' S='binary SLOT move' p='update /etc/portage/package.*'

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

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

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

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

  s='/var/db SLOT move' S='binary SLOT move' p='update /etc/portage/package.*'

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

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

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

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

  s='/var/db SLOT move' S='binary SLOT move' p='update /etc/portage/package.*'

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

pTraceback (most recent call last):

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

    emerge_main()

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

    portage.global_updates(settings, trees, mtimedb["updates"])

  File "/usr/lib/portage/pym/portage.py", line 6656, in global_updates

    myupd)

  File "/usr/lib/portage/pym/portage_update.py", line 198, in update_config_file                                                                             s

    write_atomic(updating_file, "".join(file_contents[x]))

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

    f.close()

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

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

OSError: [Errno 16] Device or resource busy

```

Voilà

----------

## man in the hill

 *boozo wrote:*   

> 'alute
> 
> mmmh plus de place sur les partitions et répertoires dédiés à portage ? 

 

 *amara wrote:*   

> OSError: [Errno 16] Device or resource busy 

 

Ta partition /usr ou /var est pleine ...

Colle:

```

df -h
```

@ +

----------

## boozo

ben voilà maintenant on est fixé   :Twisted Evil: 

fait voir :

```
ls -l /etc/make.profile
```

et tant qu'on y est fait du ménage dans /var/tmp/{portage,portage-pkg,distfile,ccache(si tu l'utilises)} et dans /usr/portage/distfiles/

après on vois si portage a besoin d'électrochocs   :Razz: 

----------

## geekounet

 *man in the hill wrote:*   

>  *boozo wrote:*   'alute
> 
> mmmh plus de place sur les partitions et répertoires dédiés à portage ?  
> 
>  *amara wrote:*   OSError: [Errno 16] Device or resource busy  
> ...

 

Non en général quand le disque est plein, c'est une erreur du genre "No space left on device"

----------

## boozo

certes pierre mais j'ai déjà eu des comportements étranges pour un pb de place avec portage sans avoir cette sortie et puis autant éliminer des causes potentielles d'entrée de jeu çà ne fait pas de mal   :Smile: 

----------

## man in the hill

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

Bien vu Geekounet   :Razz:  ...

@ +

----------

## amara

voilà désolé du retard.

le resultat de "df -h"

```

#>df -h

Sys. de fich.         Tail. Occ. Disp. %Occ. Monté sur

/dev/sda3              47G  4,9G   42G  11% /

udev                  506M  264K  505M   1% /dev

/dev/sda2             471M  9,4M  438M   3% /boot

/dev/sda4              63G   53G   11G  84% /home

/dev/sdb1             112G   80G   33G  72% /mnt/ftp/volume1

/dev/hda1              75G   44G   32G  58% /mnt/ftp/volume2

shm                   506M     0  506M   0% /dev/shm

```

et le resultat de  "ls -l /etc/make.profile"

```

#>ls -l /etc/make.profile

lrwxrwxrwx 1 root root 49 jui 20 17:52 /etc/make.profile -> ../usr/portage/profiles/default-linux/x86/no-nptl

```

voilà

----------

## kopp

Il y a une raison particulière pour que avoir choisi ce profil ? Sinon, tu ferais bien de choisir le 2006.1/desktop

----------

## amara

rien de particulier j'ai suivi l'installation de gentoo sur le site www.gentoo.org

----------

## kopp

Et on te dit de mettre le profil no-nptl ? tu as une configuration matérielle très particulière ?

----------

## amara

je n'arrives pas a trouver et j'avances pas, j'ai tenté de regarder sur bugzilla mais les informations sont pas très coherentes.

Merci

----------

## boozo

ce que veux dire kopp c'est que le profile utilisé n'est pas très adapté pour une utilisation classique hormis si tu as des raisons motivées (config matérielle particulière par exemple)   :Wink:   donc supprime ton lien et refait le vers le profile qu'il te conseille.

sinon pour avancer dans l'analyse et pour être sûr, fait nous un petit :

```
ls -al /etc/portage/*
```

après on tentera le #comment 15 du bugzilla

----------

## amara

```

 #>ls -al /etc/portage/*

-rw-r--r-- 1 root root 124 oct  8 23:52 /etc/portage/package.keywords

-rw-r--r-- 1 root root  49 jui 28 00:54 /etc/portage/package.mask

```

voilà et apres cette reflexion tu pourras me guider pour changer de profile parce qu'actuelle j'ai un autre probleme et peut etre que sa viendrai de là.

Voilà

----------

## boozo

sure

 *Quote:*   

> #unlink /etc/make.profile
> 
> #ln -s /usr/portage/profiles/default-linux/<ton_architecture>/2006.1/desktop /etc/make.profile

 

----------

## amara

sa y est j'ai changer de profile

----------

## amara

aucune modification particuliere.

P4 2.6Ghz

P4C800 E deluxe

1024Mo de RAM

ATI radeon 9600xt serie.

et je crois qu'il faut passer au bugzilla comment #15.

parce que c'est la caca. lol

Voilà

----------

## boozo

bon alors  si il n'y a aucune amélioration pour emerge, tu peux prendre le patch du comment 15 et patcher portage (j'adore ce petit goût de frisson rien que de le dire  :Mr. Green: ) par exemple :

```
#cd /usr/lib/portage

#patch -p0 < /<path_où_tu_l'as_mis>/update_config.patch
```

----------

## amara

frisson frisson garantie c'est sur.

mais le "fix config file update" ne m'avance pas.

C'est meme bizarre parce que la commande "patch -p0 < /<path_où_tu_l'as_mis>/update_config.patch"

me mets sur une sorte de prompt...

----------

## amara

Ce patch est mm tres bizarre lol.

----------

## boozo

gné ?   :Shocked: 

edit : y'a bien çà dans le patch nan ?

```
Index: pym/portage_update.py

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

--- pym/portage_update.py   (revision 4432)

+++ pym/portage_update.py   (revision 4433)

@@ -193,7 +193,7 @@

    for x in update_files:

       updating_file = os.path.join(abs_user_config, x)

       if protect_obj.isprotected(updating_file):

-         updating_file = new_protect_filename(updating_file)[0]

+         updating_file = new_protect_filename(updating_file)

       try:

          write_atomic(updating_file, "".join(file_contents[x]))

       except PortageException, e:

```

----------

## amara

Voilà le message apres cette commande

"patch -p0 < ~patch"

```

#>patch -p0 < ~patch

patching file pym/portage_update.py

Hunk #1 FAILED at 193.

1 out of 1 hunk FAILED -- saving rejects to file pym/portage_update.py.rej

```

Chelou   :Confused: 

----------

## amara

```

Index: pym/portage_update.py

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

--- pym/portage_update.py       (revision 4432)

+++ pym/portage_update.py       (revision 4433)

@@ -193,7 +193,7 @@

                for x in update_files:

                                updating_file = os.path.join(abs_user_config, x)

                                if protect_obj.isprotected(updating_file):

-                                               updating_file = new_protect_filename(updating_file)[0]

+                                               updating_file = new_protect_filename(updating_file)

                                try:

                                                write_atomic(updating_file, "".join(file_contents[x]))

                                except PortageException, e:

```

voilà le patch.

----------

## boozo

bah c'est ce que je craignais... le patch est rejeté car la modif est déjà effectué dans ton /usr/lib/portage/pym/portage_update.py (pour t'en convaincre, tu peux vérifier dans le.rej ou éditer le fichier portage_update.py et regarder la ligne 193 : le "[0]" ne doit pas apparaitre)

bon ben il ne reste plus que le portage rescue (/usr/portage/sys-apps/portage/files/README.RESCUE)

edit : lol tout change... maintenant y'a plus simple   :Laughing:  les vieux sont bons pour sucrer les fraises http://www.gentoo.org/proj/en/portage/doc/manually-fixing-portage.xml

----------

## amara

bon merde je vais potasser tout sa et regarder, c'est toujours chiant quand on a un soucis quelqueconque.

enfin je vias donner suite apres lecture.

Voilà

----------

## amara

sa me semble de passer

je viens de pouvoir lancer "emerge sys-apps/portage"

On va voir ce que sa va donner par la suite.

je vous tiens au courant.

Voilà

----------

## amara

Voilà apres un "emerge sys-apps/portage"

```

[...]

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

>>> Original instance of package unmerged safely.

 * In portage-2.1.1, emerge --newuse is now sensitive to changes in IUSE.

 * Immediately after upgrade from 2.1, users may notice a significantly larger

 * number of packages pulled in by --newuse, but that behavior is normal.

 * For additional information regarding this change, please see bugs #116955,

 * #144333, #144661, and #146060.

 * See NEWS and RELEASE-NOTES for further changes.

 *

 * For help with using portage please consult the Gentoo Handbook

 * at http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=3

 *

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

>>> sys-apps/portage-2.1.1-r1 merged.

>>> No packages selected for removal by clean.

>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

 * GNU info directory index is up-to-date.

 * IMPORTANT: 1 config files in /etc need updating.

 * Type emerge --help config to learn how to update config files.

```

Voilà.

----------

## boozo

bon ben il ne te manque plus qu'un emerge -puDv world maintenant    :Smile: 

et puis un petit (Résolu) à la fin de ton thread stp ^^

edit : Et le etc-update au préalable bien sûr

----------

## man in the hill

 *boozo wrote:*   

> ... puis un petit (Résolu) à la fin de ton thread stp ^^

 

Bravo Sensei Boozo   :Wink:   :Razz:  !

----------

## boozo

@man in the hill : lol sauf que je n'ai toujours pas compris le pb malgré tout   :Laughing: 

----------

## amara

Merci pour les explications a l'avenir je m'en souviendrais.

Merci

Thread close

----------

