Así es como he estado actualizando Gentoo durante mucho tiempo. ¿Es este el método recomendado ? ¿Alguna trampa o mejores métodos para usar?
emerge --sync
emerge -uDav --tree world
emerge -av --depclean
revdep-rebuild -v -- --ask
dispatch-conf
glsa-check -t all
glsa-check -f all
Respuestas:
Parece que lo tienes cubierto. El único otro consejo es quizás tomarlo un poco más lento que una actualización mayorista ciega. Siempre puede actualizar los paquetes o las cadenas de dependencia individualmente en
emerge -DNuav <atom>
lugar deworld
(use --oneshot para las cosas que no desea agregar al archivo mundial, como las bibliotecas del sistema, por ejemplo).Tenga en cuenta que siempre es más fácil hacerlo si se mantiene actualizado regularmente en lugar de buscar actualizaciones de lotes monolíticos cada dos meses. Además, para evitar demasiadas sorpresas, puede que le resulte útil suscribirse a una de las listas de correo como
gentoo-user
(ADVERTENCIA: ~ 100 correos al día en esta lista), ya que es probable que aparezcan en la lista prácticamente cualquier problema de actualización importante. mucha discusión explicando cómo resolverlos.Supongo que la próxima actualización importante del "problema" será la migración a openrc una vez que se estabilice (se realizó a mediados del año pasado con solo unos pocos problemas, principalmente con cambios en la red).
fuente
He estado usando casi los mismos pasos que usted, excepto:
eix-sync
en lugar deemerge --sync
porque me gusta ver los cambios en el árbol de portage. Esto es especialmente bueno para notar paquetes que podría querer instalar que son nuevos en el árbol.layman -S
(ocasionalmente) antes de que emerja el principal para sincronizar cualquier cambio en las superposiciones.eclean-dist -d
despuésrevdep-rebuild
de limpiar tarballs obsoletos. Hago esto después de cada emergencia, porque las degradaciones de paquetes no son tan comunes.eix-test-obsolete
como el último paso para ayudar a mantener mis archivos / etc / portage ordenados y actualizados. Esto también me permite saber cuándo he instalado paquetes que se han eliminado por completo de portage, por lo que necesito obtener el ebuild del repositorio. Un ejemplo reciente, tengo que enmascarar todas las versiones de iproute2> 2.6.22.20070710 debido a que el kernel anterior se ejecutaba en mi Xen VPS, pero fue eliminado recientemente de portage.eix-sync
yeix-test-obsolete
están en app-portage / eix.eclean-dist
está en app-portage / gentoolkit.fuente
emerge --sync
oeix-sync
oemerge-delta-webrsync
yeix-update
emerge -av portage
eclean-dist
Compruebe que uno de los encabezados de Linux, glibc, binutils, libtool o gcc tiene una actualización magor (por ejemplo, actualizaciones de gcc de 4.6 a 4.8). Si no es así, vaya al paso 11.
Reconstrucción completa:
rm -rf PKGDIR/*
¡Reemplace PKGDIR con su ruta al paquete dir!emerge -av linux-headers glibc binutils gcc-config libtool gcc
gcc-config <number of new gcc>
Cambiar a nuevo gccsource /etc/profile
emerge -avb glibc binutils gcc libtool
emerge -avbke system
emerge -avbke world
Si tiene algún problema en los pasos 10 u 11, corríjalo e intente nuevamente
Actualización mundial:
/var/lib/portage/world
de paquetes innecesarios y verifique las/etc/portage
entidadesfixpackages
emerge -avuDN world
eselect python update
python-updater -- -av
perl-cleaner --all -- -av
emerge -a --depclean
revdep-rebuild -i -- -av
Si tiene algún problema en los pasos 14-18, corríjalo y repita todos los pasos del paso 13
etc-update
odispatch-conf
glsa-check -vp affected
Puede tener paquetes afectados en las ranuras después de la actualizaciónemaint --check all
fuente
Si su objetivo es tener el último absoluto de todos los paquetes, entonces sí, eso parece cubrir todas las bases. Sin embargo, me sorprende que esto haya funcionado para usted durante mucho tiempo, porque me imagino que a menudo lo muerden bloques, pisos rotos, etc. En los últimos dos años he tenido mucho más cuidado con las actualizaciones al por mayor, eligiendo en cambio hacerlo poco a poco después de ver el árbol de actualización. El desarrollo de Gentoo parece haber pasado su apogeo. Tal vez sea por el auge de Ubuntu.
De todos modos, una cosa adicional que puedes probar, solo para ser realmente exigente con todo el proceso, es limpiar tus destiladores. Hay secuencias de comandos por ahí si busca.
fuente
Eso es lo que debes correr primero. No es necesario si actualiza todos los paquetes.
Ah, y prefiero cfg-update;)
fuente
Esto es lo que hago:
Si no comprende completamente los comentarios, lea esto porque es la autoridad sobre cómo actualizar sus paquetes gentoo.
http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=2&chap=1
fuente
Su proceso es correcto, aunque ejecutar todos los comandos probablemente no sea necesario, generalmente solo hago una sincronización y un mundo de actualización. Emerge le dirá generalmente si necesita ejecutar un script para reconstruir el archivo, como durante una actualización importante de Python, y también le dirá cuándo combinar los cambios de configuración. Dado que Gentoo en realidad no tiene una ruta de actualización de versión a versión. En el momento en que emerges, tienes la última versión.
fuente
Durante mucho tiempo, siempre utilicé este procedimiento:
Yo, para el mío, prefiero actualizar durante la noche. Pero a veces sucede que algo falla y, por lo tanto, debe descargar todos (o algunos) programas nuevamente.
Quizás el modificador --newuse es innecesario, pero a menudo edito mi make.conf, por lo que tiene sentido para mí.
fuente
Se ve bien, aunque no sería tan rápido para ejecutar depclean.
A menos que tenga un requisito como un espacio bajo en el disco duro, puede volver y limpiar en intervalos menos regulares. No hay daño tenerlos cerca por un período corto. Si tuvo la mala suerte de notar algunos paquetes rotos después de la actualización, entonces estaría seguro de que no son el resultado de eliminar las dependencias sueltas.
fuente
Así lo hago en mi VPS:
paso 0 (desde / etc / crontab)
paso 1:
paso 2:
fuente