Winnie
Underconst


depclean es la opción más peligrosa de emerge. Es equiparable al deborphan de Debian (creo que el nombre es asÃ)
Como reza su man:
"Determines all packages installed on the system that have no explicit reason for being there."
Pero lo peor es el warning:
"WARNING: Removing some packages may cause packages which link to the removed package to
stop working and complain about missing libraries"
La cosa es que el único que habÃa hecho hasta ahora me habÃa dejado como resultado un sistema insalbable (para mi), y de eso ya hace unos años.
Pero como el servidor de esta web lo quiero mantener muy limpito, me decidà a hacerlo. (Bueno, y lo hice en el del curro, donde me eliminó 20 paquetes... y sigo vivo!)
Lo primero:
#emerge -p --depclean
Nos indica que antes de hacerlo, hay que hacer un emerge -uD world, asà que lo realizamos y volvemos al depclean. Ahora tenenmso lo siguiente:
[...] Rollo que asusta [...]
>>> 'Selected' packages are slated for removal.
>>> 'Protected' and 'omitted' packages will not be removed.
Packages installed: 249
Packages in world: 31
Packages in system: 56
Unique package names: 249
Required packages: 244
Number to remove: 5
sys-devel/bc
selected: 1.06-r6
protected: none
omitted: none
sys-libs/cracklib
selected: 2.8.9
protected: none
omitted: none
perl-core/Test-Simple
selected: 0.62
protected: none
omitted: none
sys-libs/pam
selected: 0.78-r3
protected: none
omitted: none
sys-libs/libstdc++-v3
selected: 3.3.4
protected: none
omitted: none
Evidentemente en el servidor hay 4 paquetes (bueno, 31 en word) y es relativamente nuevo...
Miramos por encima que es lo que trata de eliminar, y tras ver que el único paquete importante es cracklib, quitamos la -p y hacemos el depclean.
Una vez hecho, hay que hacer un revdep-rebuild para ver si a algun paquete le falata alguna dependencia:
# revdep-rebuild -p
Configuring search environment for revdep-rebuild
Checking reverse dependencies...
Packages containing binaries and libraries broken by a package update
will be emerged.
Collecting system binaries and libraries... done.
(/root/.revdep-rebuild.1_files)
Collecting complete LD_LIBRARY_PATH... done.
(/root/.revdep-rebuild.2_ldpath)
Checking dynamic linking consistency...
broken /bin/passwd (requires libcrack.so.2)
broken /usr/lib/apache2/modules/libphp5.so (requires libpam.so.0)
broken /usr/lib/php5/bin/php (requires libpam.so.0)
broken /usr/lib/php5/bin/php-cgi (requires libpam.so.0)
done.
(/root/.revdep-rebuild.3_rebuild)
Assigning files to ebuilds... done.
(/root/.revdep-rebuild.4_ebuilds)
Evaluating package order... done.
(/root/.revdep-rebuild.5_order)
All prepared. Starting rebuild...
emerge --oneshot -p =dev-lang/php-5.1.6-r6 =sys-apps/shadow-4.0.15-r2
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild R ] dev-lang/php-5.1.6-r6
[ebuild N ] sys-libs/cracklib-2.8.9-r1 USE="nls python"
[ebuild R ] sys-apps/shadow-4.0.15-r2 USE="cracklib%*"
Now you can remove -p (or --pretend) from arguments and re-run revdep-rebuild.
Uooo! cracklib?¿ pero si acaba de borrarlo?¿!!! En fin, su motivo tendrá.
quitamos la -p del revdep-rebuild y lo ejecutamos.
Al terminar, siempre es bueno volver a ejecutar el revdep-rebuild, para comprobar que nada queda huérfano.
Asà que, y en resumen, depclean no es tan malo (siempre que mires que te está eliminando, claro), y los comandos a ejecutar:
emerge -uD world
emerge --depclean
revdep-rebuild
revdep-rebuild
salu2
Recent comments
28 weeks 1 day ago
32 weeks 1 day ago
32 weeks 2 days ago
36 weeks 1 day ago
36 weeks 4 days ago
37 weeks 3 days ago
37 weeks 5 days ago
38 weeks 2 days ago
38 weeks 6 days ago
48 weeks 3 days ago