# [Gentoo-OVH] Restaurer portage après suppression ?

## stepson46

Suite à un malencontreux emerge --unmerge portage (destiné à faire derrière un emerge portage pour downgrader portage), emerge n'est plus disponible.

Comment le réinstaller manuellement ?Last edited by stepson46 on Thu May 23, 2013 12:02 pm; edited 1 time in total

----------

## k-root

en copiant les fichiers dans  /usr/lib/portage   :Wink: 

depuis distfiles ou un chroot

----------

## stepson46

super, ca m'aiderait bien. par contre ou trouver ce "distfiles" ou un chroot ?

je suis sur une "gentoo release 2" de OVH qui a été mise à jour à la main par erreur.

en récupérant /usr/portage chez ovh pour me remettre dans le "moule", je me suis rendu compte que portage était trop récent par rapport à ce que veux ovh et j'ai à mes risques et périls tenté un emerge --unmerge portage qui m'a supprimé emerge. 

j'ai gardé la liste de ce qui a été supprimé. il me faudrait remettre ce qui concerne emerge pour pouvoir refaire un emerge portage pour passer sur la version de portage que je suis sensé avoir et appliquer les patchs ovh et repartir sur une base "saine" (ok, saine autant que peut l'être la release 2 de OVH).

```
 ~ # emerge --unmerge portage

!!! 'sys-apps/portage' is part of your system profile.

!!! Unmerging it may be damaging to your system.

>>> Waiting 10 seconds before starting...

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

Press Ctrl-C to Stop in: 10 9 8 7 6 5 4 3 2 1

 sys-apps/portage

    selected: 2.1.4.4

   protected: none

     omitted: none

>>> 'Selected' packages are slated for removal.

>>> 'Protected' and 'omitted' packages will not be removed.

>>> Waiting 5 seconds before starting...

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

>>> Unmerging in: 5 4 3 2 1

>>> Unmerging sys-apps/portage-2.1.4.4...

No package files given... Grabbing a set.

<<<          obj /usr/share/man/man5/portage.5.bz2

<<<          obj /usr/share/man/man5/make.conf.5.bz2

<<<          obj /usr/share/man/man5/ebuild.5.bz2

<<<          obj /usr/share/man/man5/color.map.5.bz2

<<<          obj /usr/share/man/man1/repoman.1.bz2

<<<          obj /usr/share/man/man1/quickpkg.1.bz2

<<<          obj /usr/share/man/man1/etc-update.1.bz2

<<<          obj /usr/share/man/man1/env-update.1.bz2

<<<          obj /usr/share/man/man1/emerge.1.bz2

<<<          obj /usr/share/man/man1/emaint.1.bz2

<<<          obj /usr/share/man/man1/ebuild.1.bz2

<<<          obj /usr/share/man/man1/dispatch-conf.1.bz2

<<<          obj /usr/share/doc/portage-2.1.4.4/RELEASE-NOTES.bz2

<<<          obj /usr/share/doc/portage-2.1.4.4/NEWS.bz2

<<<          obj /usr/share/doc/portage-2.1.4.4/ChangeLog.bz2

<<<          sym /usr/sbin/update-etc

<<<          sym /usr/sbin/update-env

<<<          sym /usr/sbin/regenworld

<<<          sym /usr/sbin/quickpkg

<<<          sym /usr/sbin/fixpackages

<<<          sym /usr/sbin/etc-update

<<<          sym /usr/sbin/env-update

<<<          sym /usr/sbin/emerge-webrsync

<<<          sym /usr/sbin/emaint

<<<          sym /usr/sbin/dispatch-conf

<<<          sym /usr/sbin/archive-conf

<<<          obj /usr/lib64/portage/pym/xpak.py

<<<          obj /usr/lib64/portage/pym/portage_versions.py

<<<          obj /usr/lib64/portage/pym/portage_util.py

<<<          obj /usr/lib64/portage/pym/portage_update.py

<<<          obj /usr/lib64/portage/pym/portage_selinux.py

<<<          obj /usr/lib64/portage/pym/portage_manifest.py

<<<          obj /usr/lib64/portage/pym/portage_mail.py

<<<          obj /usr/lib64/portage/pym/portage_locks.py

<<<          obj /usr/lib64/portage/pym/portage_localization.py

<<<          obj /usr/lib64/portage/pym/portage_gpg.py

<<<          obj /usr/lib64/portage/pym/portage_exec.py

<<<          obj /usr/lib64/portage/pym/portage_exception.py

<<<          obj /usr/lib64/portage/pym/portage_dep.py

<<<          obj /usr/lib64/portage/pym/portage_debug.py

<<<          obj /usr/lib64/portage/pym/portage_data.py

<<<          obj /usr/lib64/portage/pym/portage_const.py

<<<          obj /usr/lib64/portage/pym/portage_checksum.py

<<<          obj /usr/lib64/portage/pym/portage.py

<<<          obj /usr/lib64/portage/pym/output.py

<<<          obj /usr/lib64/portage/pym/getbinpkg.py

<<<          obj /usr/lib64/portage/pym/emergehelp.py

<<<          obj /usr/lib64/portage/pym/elog_modules/mod_syslog.py

<<<          obj /usr/lib64/portage/pym/elog_modules/mod_save_summary.py

<<<          obj /usr/lib64/portage/pym/elog_modules/mod_save.py

<<<          obj /usr/lib64/portage/pym/elog_modules/mod_mail_summary.py

<<<          obj /usr/lib64/portage/pym/elog_modules/mod_mail.py

<<<          obj /usr/lib64/portage/pym/elog_modules/mod_echo.py

<<<          obj /usr/lib64/portage/pym/elog_modules/mod_custom.py

<<<          obj /usr/lib64/portage/pym/elog_modules/__init__.py

<<<          obj /usr/lib64/portage/pym/eclass_cache.py

<<<          obj /usr/lib64/portage/pym/dispatch_conf.py

<<<          obj /usr/lib64/portage/pym/cvstree.py

<<<          obj /usr/lib64/portage/pym/cache/volatile.py

<<<          obj /usr/lib64/portage/pym/cache/util.py

<<<          obj /usr/lib64/portage/pym/cache/template.py

<<<          obj /usr/lib64/portage/pym/cache/sqlite.py

<<<          obj /usr/lib64/portage/pym/cache/sql_template.py

<<<          obj /usr/lib64/portage/pym/cache/metadata_overlay.py

<<<          obj /usr/lib64/portage/pym/cache/metadata.py

<<<          obj /usr/lib64/portage/pym/cache/mappings.py

<<<          obj /usr/lib64/portage/pym/cache/fs_template.py

<<<          obj /usr/lib64/portage/pym/cache/flat_list.py

<<<          obj /usr/lib64/portage/pym/cache/flat_hash.py

<<<          obj /usr/lib64/portage/pym/cache/cache_errors.py

<<<          obj /usr/lib64/portage/pym/cache/anydbm.py

<<<          obj /usr/lib64/portage/pym/cache/__init__.py

<<<          obj /usr/lib64/portage/bin/xpak

<<<          obj /usr/lib64/portage/bin/tbz2tool

<<<          obj /usr/lib64/portage/bin/repoman

<<<          obj /usr/lib64/portage/bin/regenworld

<<<          obj /usr/lib64/portage/bin/quickpkg

<<<          obj /usr/lib64/portage/bin/prepstrip

<<<          obj /usr/lib64/portage/bin/prepman

<<<          obj /usr/lib64/portage/bin/preplib

<<<          obj /usr/lib64/portage/bin/prepinfo

<<<          obj /usr/lib64/portage/bin/prepallstrip

<<<          obj /usr/lib64/portage/bin/prepallman

<<<          obj /usr/lib64/portage/bin/prepallinfo

<<<          obj /usr/lib64/portage/bin/prepalldocs

<<<          obj /usr/lib64/portage/bin/prepall

<<<          obj /usr/lib64/portage/bin/portageq

<<<          obj /usr/lib64/portage/bin/portage_gpg_update.sh

<<<          obj /usr/lib64/portage/bin/pkgname

<<<          obj /usr/lib64/portage/bin/newsbin

<<<          obj /usr/lib64/portage/bin/newman

<<<          obj /usr/lib64/portage/bin/newlib.so

<<<          obj /usr/lib64/portage/bin/newlib.a

<<<          obj /usr/lib64/portage/bin/newins

<<<          obj /usr/lib64/portage/bin/newinitd

<<<          obj /usr/lib64/portage/bin/newexe

<<<          obj /usr/lib64/portage/bin/newenvd

<<<          obj /usr/lib64/portage/bin/newdoc

<<<          obj /usr/lib64/portage/bin/newconfd

<<<          obj /usr/lib64/portage/bin/newbin

<<<          obj /usr/lib64/portage/bin/misc-functions.sh

<<<          obj /usr/lib64/portage/bin/md5check.sh

<<<          obj /usr/lib64/portage/bin/md5check.py

<<<          obj /usr/lib64/portage/bin/isolated-functions.sh

<<<          obj /usr/lib64/portage/bin/fperms

<<<          obj /usr/lib64/portage/bin/fowners

<<<          obj /usr/lib64/portage/bin/fixpackages

<<<          obj /usr/lib64/portage/bin/fixdbentries

<<<          obj /usr/lib64/portage/bin/fix-db.py

<<<          obj /usr/lib64/portage/bin/find-requires

<<<          obj /usr/lib64/portage/bin/filter-bash-environment.py

<<<          obj /usr/lib64/portage/bin/etc-update

<<<          obj /usr/lib64/portage/bin/env-update.sh

<<<          obj /usr/lib64/portage/bin/env-update

<<<          obj /usr/lib64/portage/bin/emerge-webrsync

<<<          obj /usr/lib64/portage/bin/emerge

<<<          obj /usr/lib64/portage/bin/emake

<<<          obj /usr/lib64/portage/bin/emaint

<<<          obj /usr/lib64/portage/bin/ecompressdir

<<<          obj /usr/lib64/portage/bin/ecompress

<<<          obj /usr/lib64/portage/bin/ebuild.sh

<<<          obj /usr/lib64/portage/bin/ebuild

<<<          obj /usr/lib64/portage/bin/dosym

<<<          obj /usr/lib64/portage/bin/dosed

<<<          obj /usr/lib64/portage/bin/dosbin

<<<          sym /usr/lib64/portage/bin/donewins

<<<          obj /usr/lib64/portage/bin/domo

<<<          obj /usr/lib64/portage/bin/doman

<<<          obj /usr/lib64/portage/bin/dolib.so

<<<          obj /usr/lib64/portage/bin/dolib.a

<<<          obj /usr/lib64/portage/bin/dolib

<<<          obj /usr/lib64/portage/bin/doins

<<<          obj /usr/lib64/portage/bin/doinitd

<<<          obj /usr/lib64/portage/bin/doinfo

<<<          obj /usr/lib64/portage/bin/dohtml

<<<          obj /usr/lib64/portage/bin/dohard

<<<          obj /usr/lib64/portage/bin/doexe

<<<          obj /usr/lib64/portage/bin/doenvd

<<<          obj /usr/lib64/portage/bin/dodoc

<<<          obj /usr/lib64/portage/bin/dodir

<<<          obj /usr/lib64/portage/bin/doconfd

<<<          obj /usr/lib64/portage/bin/dobin

<<<          obj /usr/lib64/portage/bin/dispatch-conf

<<<          obj /usr/lib64/portage/bin/clean_locks

<<<          obj /usr/lib64/portage/bin/chkcontents

<<<          obj /usr/lib64/portage/bin/check-implicit-pointer-usage.py

<<<          obj /usr/lib64/portage/bin/archive-conf

<<<          sym /usr/bin/xpak

<<<          sym /usr/bin/tbz2tool

<<<          sym /usr/bin/repoman

<<<          sym /usr/bin/portageq

<<<          sym /usr/bin/emerge

<<<          sym /usr/bin/ebuild

<<<          obj /etc/portage/.keep_sys-apps_portage-0

<<<          obj /etc/make.globals

<<<          obj /etc/make.conf.example

<<<          obj /etc/logrotate.d/elog-save-summary

<<<          obj /etc/etc-update.conf

<<<          obj /etc/env.d/05portage.envd

<<<          obj /etc/dispatch-conf.conf

--- !empty   dir /usr/share/man/man5

--- !empty   dir /usr/share/man/man1

--- !empty   dir /usr/share/man

<<<          dir /usr/share/doc/portage-2.1.4.4

--- !empty   dir /usr/share/doc

--- !empty   dir /usr/share

--- !empty   dir /usr/sbin

--- !empty   dir /usr/lib64/portage/pym/elog_modules

--- !empty   dir /usr/lib64/portage/pym/cache

--- !empty   dir /usr/lib64/portage/pym

<<<          dir /usr/lib64/portage/bin

--- !empty   dir /usr/lib64/portage

--- !empty   dir /usr/lib64

--- !empty   dir /usr/bin

--- !empty   dir /usr

--- !empty   dir /etc/portage

--- !empty   dir /etc/logrotate.d

--- !empty   dir /etc/env.d

--- !empty   dir /etc

[portage-2.1.4.4] bash: /usr/lib64/portage/bin/ebuild.sh: No such file or directory

!!! FAILED postrm: 127

bash: /usr/lib64/portage/bin/isolated-functions.sh: Aucun fichier ou répertoire de ce type

bash: eerror: command not found

bash: eerror: command not found

bash: eerror: command not found

bash: eerror: command not found

bash: eerror: command not found

~ # emerge portage

-bash: /usr/bin/emerge: Aucun fichier ou répertoire de ce type

```

----------

## stepson46

à la base, le but était de passer de portage 2.1.4.4 à portage 2.1.3.19   :Rolling Eyes: 

----------

## xaviermiller

Tant qu'à faire, écrase le tout par une "vraie" Gentoo.

Ici, on n'apprécie pas la Gentoo OVH qui n'est pas à jour et mal ficelée.

On n'est pas le support d'OVH.

----------

## xaviermiller

Dans l'absolu : va chercher une archive binaire dans un "tinderbox" et décompresse-la dans /, puis refais emerge portage pour que l'installation soit propre.

----------

## stepson46

cool, ne montes pas sur tes grand chevaux  :Wink: 

je ne connais pas gentoo, mais plutôt bien ubuntu/debian donc je cherche de l'info auprès des connaisseurs pour voir ce que je fais.

peut-on migrer d'une gentoo cassée vers une gentoo plus récente sans perdre les données ou revenir à une gentoo avec un portage donné (même si la gentoo ovh est paramétrée avec les pieds) ?

si oui, je veux bien tenter ca, sinon, je vais migrer vers un système que je connais mieux.

----------

## k-root

http://blog.flameeyes.eu/2009/12/from-scratch-about-my-tinderbox

----------

## xaviermiller

Honnêtement, je te décourage vivement de rester sur ta Gentoo OVH, tu n'auras que des frustrations à cause de la manière dont OVH a (mal) fait son bouzin.

Dès que tu voudras installer quelque chose, tu seras confronté à des conflits, et ici, en tous cas, tout le monde te dira que tu aurais dû suivre mon conseil  :Wink: 

Donc, n'essaie pas de réparer et vire cette m*de infâme pour installer Gentoo proprement.

----------

## stepson46

 :Question: 

j'avoue avoir du mal à suivre et pourtant je suis pas le moins dégourdi !

il y aurait un descriptif clair de ce qu'il faut faire pour remettre sur pied un système cassé ?

(edition, je répondais au message sur la tinderbox et il y a eu un post entre temps)

oui, je me demande si je vais pas passer sur une nouvelle distrib plutôt que de rester sur la vieille gentoo.

la question étant donc gentoo que je ne connais pas ou debian que je connais.

la balance pourrait pencher pour une gentoo si je pouvais "upgrader" sans perdre ma conf et mes données (c'est du basique, toutes mes boites mails, un tomcat, un apache, mysql)

----------

## stepson46

donc ma question précise est : est-il possible de passer sur une gentoo récente à partir d'une gentoo ovh "cassée" (plus emerge suite à une commande emerge --unmerge portage) ou faut-il sauvegarder les comptes utilisateurs, la bdd, la conf apache et tomcat et réinstaller le tout proprement ?

----------

## xaviermiller

C'est possible, mais ce sera très douloureux.

Vu que c'est ta première expérience, je te conseille de repartir à zéro, à partir d'un live linux et du manuel.

----------

## boozo

'alute

je me joins aux recommendations de XavierMiller.

La question de réparer les choses peut être envisageable mais :

c'est plus le rôle du support d'OVH voire des contributeurs de leurs forums que de t'assister sur la marche à suivre.

nb. Oui, même s'il s'agit de gentoo à la base, les patchs pour faire leur R2 que rajoute OVH et leur mode de gestion est très, très "particulier" et leur est propre. Nous avons écopé ici de bon nombre de cas en carafe dans différentes situations et avec ce recul c'est pourquoi XavierMiller te conseille de repartir d'une gentoo native plutôt que d'y passer des plombes et d'avoir au mieux toujours qqch de bancal à la fin.

Et même pour migrer sur une gentoo brute, ce serait un brin "criminel" que de te conseiller de rester sur une distrib que tu ne maîtrises pas surtout dans le but de l'administrer en serveur. Autant on pourrait s'investir si tu avais déjà un peu roulé avec mais là ce serait t'envoyer au carton et te dégouter du produit alors qu'il n'en est rien.   :Wink: 

Voilà avec un peu plus de détails le "pourquoi du comment" mais il ne faut pas prendre mal ces retours ; ils ne te sont pas destinés en propre (quoique lire le premier post du forum pour respecter nos conventions comme sur n'importe quelle autre distrib aurait été bien non ?  :Razz:  mais c'est encore réparable )

OVH utilise la notoriété de gentoo pour s'attirer une clientèle mais le ticket d'entrée pour gentoo n'est pas celui de debian. C'est un peu comme si tu partais direct en testing en premier contact avec linux   :Rolling Eyes: 

ps: Si pour d'autres raisons que tu nous expliqueras tu dois conserver le produit nous dire.

ps2: Le lien de k-root concernant la tinderbox était plus à l'attention de XavierMiller  :Wink: 

----------

## StinGer_Uesugi

Je viens mettre mon grain de sel là dedans pour donner mes impressions dans le but que ça puisse t'aider à faire ton choix stepson46.

Pour commencer, il faut savoir que mon PC au boulot tourne sous Gentoo et que chez moi, j'ai un HTPC/mini-serveur qui fonctionne aussi sous Gentoo. J'oserais m'avancer et dire que maintenant, je maîtrise Gentoo pas trop mal. En tous cas, j'arrive à faire ce que je veux avec.   :Razz: 

Avant, j'étais passé par plusieurs distributions et c'est cette expérience qui m'a permis de gagner le ticket d'entrée pour Gentoo.   :Very Happy: 

Ça fait pas mal d'années maintenant que je loue un ou des serveurs dédiés chez le fournisseur sus-nommé. J'ai dû essayer presque toutes les distributions qu'ils proposent sauf leurs propres releases, basées sur Gentoo. Comme ils y appliquent toutes des patchs et modifications et font tourner leurs propres noyaux, elles sont toujours en retard par rapport à la distribution d'origine. (Quand on en vient à Debian, ça devient n'importe quoi, limite on aurait un noyau 2.4...) Alors quand en plus, tu veux une configuration un tant soit peu exotique et à jour, tu ne t'en sors plus.

Pendant un temps, je mettais à jour les distributions ou tentait de les ramener à la distribution standard. Mais ça prenait du temps pour gagner quoi au final ? Du coup aujourd'hui, j'utilise leurs distributions que je ne cherche pas à tous prix à mettre à jour. En ce moment par exemple, je tourne avec CentOS 6.

Et quand je veux un truc qui n'existe pas, j'utilise mon expérience gentooesque pour compiler les sources. Ça peut paraître sale, mais ça fait ce que je veux, ça m'évite les problèmes et ça ne me prend pas des siècles à gérer.

Si tu connais et maîtrises mieux Debian, pourquoi ne pas la conserver ? Qu'est-ce que tu gagnes à passer sous une vraie Gentoo ? Tant que ton serveur fait ce que tu veux, qu'il le fait bien, et qu'il le fait vite. Et je ne dis pas ça pour te faire fuir de Gentoo puisque je l'utilise au quotidien et que c'est au final ma distribution préférée.

Voilà, mes 2 centimes.  :Very Happy: 

----------

## stepson46

 *boozo wrote:*   

> 
> 
> La question de réparer les choses peut être envisageable mais :
> 
> [list=1]
> ...

 

Je "plussoie" l'argumentaire. Quand un conseil de leur support pour downgrader portage est "emerge --unmerge portage; emerge portage" (après avoir copié /usr/portage depuis leur tar.gz), j'ai des doutes sur la qualité de leur support et je préfère chercher ailleurs auprès de spécialistes. Ils précisaient bien "des fois ca marche des fois ca marche pas".

Dans mon cas ca a pas marché car ca a enlevé emerge avec....

Le serveur est en exploitation, une migration est prévue dans le cadre d'un changement d'infrastructure cet été...

Donc je dois tenir 1 à 2 mois avant la migration. Est ce grave ou non d'être sans emerge sur une machine ?

Je suis quand même un tantinet dégourdi (linux et opensource depuis 1992...) donc je serai tenté de partir sur la solution de  *Quote:*   

> Dans l'absolu : va chercher une archive binaire dans un "tinderbox" et décompresse-la dans /, puis refais emerge portage pour que l'installation soit propre.

 .

Récupérer dans un dossier temporaire /recup (et pas / en direct) les fichiers que je devrais avoir  et je vais me faire un petit script qui va remettre les fichiers supprimés par erreur listés ci-dessus et je pourrais refaire mon emerge portage pour etre clean.

----------

## xaviermiller

```
emerge -C portage  && emerge portage
```

 ne va jamais fonctionner !

Ils sont complètement incompétents, ça fait peur...

----------

## xaviermiller

Ok, tu vas choisir la solution pénible. Je t'annonce déjà le scénario

- synchronisation de l'arbre vers l'arbre officiel

- nettoyage des patches OVH (lesquels ?)

- tu te retrouveras avec une très vielle version de Gentoo, et donc confronté à des tonnes de conflits à gérer

Bon courage !

En temps et en sueur, ça prendra plus d'énergie par cette voie qu'une installation propre, et je ne suis pas sûr que c'est la meilleure façon d'aborder Gentoo. Soit, mais tu as été prévenu.

En tous cas, potasse bien le manuel, surtout les parties qui parlent de l'utilisation avancée de Portage.

----------

## stepson46

je pensais juste à pouvoir trouver emerge et faire un "reverse" de ce que j'ai fait en remettant les fichiers enlevés. j'en ai pas tant que ca. le plus dur étant de trouver une "source".

je vais tenter de voir si un OVHien peut me copier la liste des fichiers voulus. je vais faire un petit script qui copie les fichiers voulus dans un répertoire temporaire, et en fait un tar et demander à un OVHien s'il peut le faire tourner chez lui et m'envoyer les fichiers qu'il me faut, sinon, si je peux les copier depuis une archive existante (ces tinderbox ?) ca serait bien aussi.

chez ovh , la procédure c'est ne pas faire de emerge --sync et si vous en avez fait vous l'avez dans le baba, réinstallez. sur la machine dont je reprends la gestion le emerge --sync qui a fait sortir de l'arbre ovh a été fait par des stagiaires fin 2012 pour pouvoir installer tomcat et php5 et depuis on ne plus faire les patchs officiels ovh.

et là, maintenant, emerge n'est plus. la machine marche bien sinon et est dans un état plutôt à jour avec un emerge --sync récent récent. donc je dois pouvoir tenir un peu en me passant de emerge en attendant la migration.

----------

## boozo

 *stepson46 wrote:*   

> (...) Quand un conseil de leur support pour downgrader portage est "emerge --unmerge portage; emerge portage" (après avoir copié /usr/portage depuis leur tar.gz), j'ai des doutes sur la qualité de leur support et je préfère chercher ailleurs auprès de spécialistes. Ils précisaient bien "des fois ca marche des fois ca marche pas".
> 
> Dans mon cas ca a pas marché car ca a enlevé emerge avec.... (...)

 

 :Shocked:  ??! Nooon là, là ça fait vraiment peur !   :Shocked: 

 *stepson46 wrote:*   

> Le serveur est en exploitation, une migration est prévue dans le cadre d'un changement d'infrastructure cet été... Donc je dois tenir 1 à 2 mois avant la migration. Est ce grave ou non d'être sans emerge sur une machine ?

 

Donc c'est un usage pro si je comprends bien ?

Ma question implicite est donc plutôt : pourquoi avoir eu ce besoin de downgrader portage ?

Portage est le manger de packages et même hs il n'interfère en rien dans le fonctionnement de ce qui tourne déjà.

Tu es en prod et si ton serveur et ses services n'ont besoin d'aucune opération de maintenance de sécurité ni d'ajouts de fonctionnalités => A mon sens, la réponse est "Y'a rien à toucher". Et on serre-les-fesses sur 2 mois. D'autant plus si une migration d'infra est programmée d'ici 1 à 2 mois alors la réponse serait même moins tendre  :Laughing: 

Il reste donc une question : quel est EXACTEMENT le besoin ?

A voir donc.

ps: La solution qu'envisage XavierMiller est juste mais risquée car tu vas basculer sur l'arbre natif et non le leur et là en plus avec tes LAMP, tomcat, ... aïe... leur "apache-ovh" là...   :Evil or Very Mad: 

ps2: Vu qu'on s'attarde, je l'ai déjà mentionné plus haut : peux-tu éditer ton post et modifier le titre de afin qu'il respecte nos conventions i.e. [Gentoo-OVH] Restaurer portage après suppression ? par avance merci.

@XM:> Je sais pas ce que tu en penses mais perso, je vérifierais 1 ou 2 choses avant de tenter un hold-up i.e. voir les Features activées et/ou si un distfile de portage en version approchante est dispo dans l'arbre... tu vois où je veux en venir ^^

Edit: Ah? réponses en partie données le temps que je poste. Donc tout est bien alors   :Wink: 

----------

## xaviermiller

Voici comment installer portage à la main, une fois une archive des sources de portage importées

```

./configure --prefix=/usr

make

make install

       mkdir -p /usr/share/portage/config

       mkdir -p /usr/lib/portage

       cp -a bin pym /usr/lib/portage

       for f in archive-conf dispatch-conf emaint emerge-webrsync env-update etc-update fixpackages quickpkg regenworld

       do

      ln -s ../lib/portage/bin/$f /usr/sbin/$f

       done

       ln -s env-update /usr/sbin/update-env

       ln -s etc-update /usr/sbin/update-etc

       cp cnf/make.globals cnf/sets.conf /usr/share/portage/config

       for f in ebuild egencache emerge portageq repoman

       do

      ln -s ../lib/portage/bin/$f /usr/bin/$f

       done

       cp -r cnf/logrotate.d /etc

       cp cnf/dispatch-conf.conf /etc

       cp cnf/etc-update.conf /etc

       ln -s ../usr/share/portage/config/make.globals /etc/make.globals 

```

puis faire un "eselect profile list" et choisir le profile

puis "emerge -1 portage" (qui va faire ce qui faut pour mettre à jour ou downgrader. JAMAIS faire "emerge -C toto; emerge toto")

----------

## stepson46

 *boozo wrote:*   

> 
> 
> Ma question implicite est donc plutôt : pourquoi avoir eu ce besoin de downgrader portage ?
> 
> Il reste donc une question : quel est EXACTEMENT le besoin ?
> ...

 

le but du downgrade était de revenir dans l'arbre ovh pour pouvoir remettre la machine dans les clous pour ensuite la mettre à jour avec leur "patch-all" car elle n'était pas à jour selon leur système de mise à jour. mais leur patch-all pas possible car nécessitant un portage plus vieux que celui en cours sur la machine.

autrement, tout tourne bien et je vais plutôt planifier la migration et la laisser sans emerge quelques semaines plutôt que de risquer de casser quelque chose.

merci de vos renseignements.

@xaviermiller : où trouve-t'on les sources de portage ? une fois migrée la machine je tenterai bien de faire la "réparation" pour voir si ca marche. si ca marche, ca sauverai pas mal d'ovhien qui galèrent avec le même souci que moi !!

----------

## xaviermiller

http://mirrors.kernel.org/gentoo/distfiles/portage-$portage_version.tar.bz2

Pour tes potes OVHiens, la seule solution est de ne pas utiliser Gentoo-OVH. C'est cruel, mais c'est ainsi.

----------

## boozo

 *stepson46 wrote:*   

> (...) je vais plutôt planifier la migration et la laisser sans emerge quelques semaines plutôt que de risquer de casser quelque chose.

 

Sage décision   :Wink: 

ps: Pour ta dernière remarque, même si le but est louable et sans douter de ta sincérité : j'ai des craintes quant à l'usage qui en sera fait...

----------

## stepson46

merci de vos infos qui m'incitent à prendre la sage décision   :Wink: 

----------

## hagar-dunor

Pour ajouter de l'eau au moulin, j'ai également un serveur OVH que j'ai réinstallé vers une gentoo "normale"

Je ne sais pas si cette option est dispo pour tous leurs serveurs, en tout cas perso je suis passé par leur option "netboot" avec "rescue-pro" : ca te "netboot" le serveur sur un linux minimal à partir duquel tu peux installer gentoo exactement comme à partir du cd d'install "minimal" de gentoo : OVH t'envoie par email un login / pass one-shot pour te logger en ssh sur ta machine bootée sur ce linux minimal.

Le rescue-pro te permettra aussi de reprendre la main dans le cas où tu foires ta config système / kernel et que ta gentoo est pas bootable ou que tu n'arrives pas à prendre la main dessus : tu bootes rescue-pro, tu te chroote sur ton install et tu corriges le problème. Et ainsi de suite jusqu'à ce que ca fonctionne  :Smile: 

----------

## xaviermiller

Parfait !

----------

## StinGer_Uesugi

 *hagar-dunor wrote:*   

> Le rescue-pro te permettra aussi de reprendre la main dans le cas où tu foires ta config système / kernel et que ta gentoo est pas bootable ou que tu n'arrives pas à prendre la main dessus : tu bootes rescue-pro, tu te chroote sur ton install et tu corriges le problème. Et ainsi de suite jusqu'à ce que ca fonctionne 

 

Y a aussi le VKVM en Java pour voir le boot. Ça aide pas mal pour débugger le noyau.

----------

## hagar-dunor

Comme le vkvm émule le hardware, je serais réservé sur son utilité pour débugger le kernel   :Wink:  En fait je serais réservé sur l'utilité du vkvm tout court pour du linux : hard émulé, et pas d'accès internet à partir du shell (en tout cas au moment où j'ai testé, c'était limité aux domaines OVH), ce qui est assez pénible pour installer Gentoo, y'a peut être moyen de s'en sortir avec des miroirs OVH. J'avais commencé par vkvm avant de découvrir l'option rescue-pro, l'ironie va même plus loin : j'ai pris OVH pour le vkvm, pensant à faire à un vrai KVM IP. Erreur d'appréciation majeure. Heureusement rescue-pro est quasi parfait pour Gentoo, pour peu qu'on ait l'expérience de quelques install en "local". En fait le vkvm ne sert que pour le use case décrit dans leur page : ca sert à changer l'adresse IP de ton interface dans windows si jamais tu entres une valeur fausse (duh).

Le débug noyau, en tout cas de l'expérience que j'en ai et dans la limite de ce que j'en fais, c'est sur la base de dmesg une fois que le système est accessible à distance. Pour rendre la gentoo bootable le "défi" est le controleur disque et l'interface réseau, ce qui fait quand même partie des choses les plus simples à paramétrer sur la base d'un "lspci -v" dans rescue-pro.

----------

## StinGer_Uesugi

Je crois que le vkvm dépend de ton offre. En tous cas, la dernière fois que je l'ai testé sur un Kimsufi, j'avais le bon lspci. Le reste, osef nan ?   :Laughing: 

Et j'avais Internet.

----------

