[ anterior ] [ Contenidos ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ siguiente ]

Notas de liberación de Debian GNU/Linux 3.0 (`woody'), Motorola 680x0
Capítulo 3 - Actualizaciones desde versiones anteriores


3.1 Detalle de los cambios al sistema


3.1.1 Cambios en la sintaxis de programas importantes

En Debian intentamos evitar modificar los programas originales, y por lo tanto, los cambios producidos en los programas originales, estarán presentes en Debian GNU/Linux.

En la versión Debian GNU/Linux 2.2 «Potato», tar usaba el modificador

     -I

para indicar compresión bzip, sin embargo, ahora se usa el modificador

     -j

. Es posible que necesite hacer cambios en sus scripts de acuerdo a esto.


3.2 Preparación de la actualización

Antes de actualizar su sistema, se recomienda que realice una copia de respaldo completa, o al menos de los datos o información de configuración que no pueda permitirse perder. Las herramientas de actualización y proceso son bastante fiables, pero un fallo de hardware a mitad de una actualización puede dar como resultado un sistema muy dañado.

Las cosas principales que podría querer poner a salvo son los contenidos de /etc, /var/lib/dpkg y la salida de dpkg --get-selections \*.

Es aconsejable informar a los usuarios con antelación de cualquier actualización que esté planeando realizar, aunque los usuarios que accedan al sistema mediante ssh (al menos) no deberían notar casi nada durante la actualización, y puede que quieran seguir trabajando. Si desea tomar más precauciones, haga una copia de respaldo, o desmonte las particiones de usuario (/home) antes de actualizar. Normalmente no será necesario reiniciar la máquina.

La actualización de la distribución debería hacerse de forma local, frente a una consola virtual en modo texto (o conectado de forma directa mediante una terminal por puerto serie), o de forma remota mediante un enlace ssh.

Importante: No debería actualizar usando telnet, rlogin, rsh, o desde una sesión X controlada por xdm en la máquina que esté actualizando. Esto se debe a que cada uno de esos servicios puede cerrarse durante la actualización, y podríamos obtener un sistema inaccessible que estará sólo medio actualizado.


3.2.1 Comprobación del estado de los paquetes

Independientemente del método que se use para actualizar, se recomienda que compruebe el estado de todos los paquetes primero, y que verifique que se encuentran en un estado actualizable. La siguiente orden mostrará cualquier paquete que se encuentre en estado Half-Installed (medio instalado) o Failed-Config (falló la configuración), y aquellos cuyo estado sea erróneo.

             
                 # dpkg --audit

También podría inspeccionar el estado de todos los paquetes de su sistema usando dselect, o con órdenes tales como

              
                 # dpkg -l | paginador

o

              
                 # dpkg --get-selections > ~/paqu-actuales.txt

Es deseable eliminar cualquier bloqueo (hold) antes de actualizar. Si un paquete esencial para la actualización se encontrase bloqueado, el proceso fallará. Puede identificar los paquetes bloqueados con

              
                 # dpkg --audit

Si ha cambiado y recompilado un paquete de forma local, y no le ha cambiado el nombre o marcado con una época (epoch) en la versión, debería bloquearlo si desea prevenir que sea actualizado. El estado «hold» de un paquete se puede cambiar mediante dselect (en el menú Selección (use las teclas «H» y «G» para bloquear y desbloquear, respectivamente)), o editando el fichero producido por

             
                 dpkg --get-selections > ~/selec-actuales.txt

para cambiar de «hold» a «install» (o viceversa), y entonces, con permisos de root, haga

              
                dpkg --set-selections < ~/selec-actuales.txt

3.2.2 Consideraciones especiales para usuarios de SSH

El SSH comercial que aparecía en el paquete ssh antes de la versión 2.2 o en ssh-nonfree en la versión 2.2 ha sido reemplazado por el paquete ssh (OpenSSH), libre según las DFSG, en esta entrega. Los programas SSH comerciales han desaparecido. El paquete ssh incluye varias preguntas mediante Debconf que regenerarán la configuración de una manera compatible con OpenSSH.

Tenga en cuenta que el paquete ssh de esta entrega permite por defecto que el usuario root acceda a la máquina (opción inactiva en 2.2). Si no desea esta modalidad de acceso remoto a su sistema debería asegurarse de que la opción PermitRootLogin en el fichero /etc/ssh/sshd_config esté configurada con el valor no después de actualizar, por razones de seguridad. Para asegurarse que dpkg no actualice nunca el fichero colocando nuevos valores por defecto, basta con que lo modifique manualmente. Añadir una línea en blanco será suficiente.


3.2.3 Directorios que posiblemente precisen atención

Es importante que exista el directorio /etc/rcS.d antes de la actualización; en caso contrario, fallará la instalación del paquete libc6.

El directorio /usr/share/doc (si ya existe) no debería ser un enlace simbólico (a /usr/doc, por ejemplo), ya que causaría el mal funcionamiento de varios paquetes. Sin embargo, se permite enlazar simbólicamente /usr/doc a /usr/share/doc. Tenga en cuenta que si usa tal enlace, obtendrá numerosos mensajes al respecto de directorios en /usr/doc que no han podido ser borrados. Esto es normal, y puede ignorarlo tranquilamente.


3.3 Preparación de fuentes para APT

El método de actualización recomendado es usar apt junto con dselect, tal como se describe aquí. El análisis de dependencias implementado permite actualizaciones sin problemas e instalaciones sencillas.

No debería realizar actualizaciones importantes de paquetes mediante dselect con otros métodos de acceso que no sean apt, ya que, al contrario que el método apt, no realizan una ordenación lógica de los paquetes durante la instalación, y por tanto no son tan fiables. Además, tales actualizaciones pueden no estar tan bien probadas, y no están soportadas por Debian.

Cualquier operación de instalación de paquetes debe ser ejecutada con privilegios de superusuario, bien registrándose como root (login) o usando los programas su o sudo para obtener los derechos de acceso necesarios.

Antes de comenzar la actualización, debe configurar el fichero de listas de paquetes de apt, /etc/apt/sources.list.

apt tomará en consideración todos los paquetes que pueda encontrar mediante una línea que empiece por «deb», e instalará el paquete con el mayor número de versión, dando prioridad a las líneas mencionadas primero (de esa manera, en el caso de localizaciones de varias réplicas, normalmente indicará primero un disco duro local, luego los CD-ROM, y por último HTTP/FTP).


3.3.1 Añadir fuentes en Internet a APT

La configuración por defecto para la instalación escoge los principales servidores de Debian en Internet, pero puede que desee modificar /etc/apt/sources.list para usar otras réplicas, preferentemente una que esté cerca (en términos de red) de usted.

Por otro lado, encontrará una lista de direcciones de réplicas en HTTP o FTP de Debian en http://www.debian.org/distrib/ftplist (busque en la sección «Lista de servidores FTP»). Las réplicas HTTP son más rápidas, en general, que las FTP.

Por ejemplo, suponga que su réplica más cercana es http://mirrors.kernel.org/debian/. Si observa su contenido mediante un navegador web o un programa FTP, comprobará que los directorios principales están organizados así:

                
                  http://mirrors.kernel.org/debian/dists/woody/main/binary-m68k/...
                  http://mirrors.kernel.org/debian/dists/woody/contrib/binary-m68k/...

Para usar esta réplica con apt, deberá añadir esta línea a su fichero sources.list:

                
                  deb http://mirrors.kernel.org/debian woody main contrib

Fíjese que «dists» se añade de forma implícita, y los parámetros tras el nombre de la entrega se usan para expandir el camino a varios directorios.

Tras añadir sus nuevas fuente, desactive las líneas «deb» que habían previamente en sources.list, colocando el símbolo de celdilla (#) delante de ellas.

Cualquier paquete necesario para la instalación que se descargue de la red quedará almacenado en /var/cache/apt/archives (y en el subdirectorio partial/, durante la descarga), de manera que debe asegurarse de tener suficiente espacio antes de intentar iniciar la instalación. Con una instalación de Debian de tamaño razonable, espere por lo menos 300 MB de datos descargados.

Nota: si está usando las versiones estáticas de apt y dpkg, la resolución de nombres no funciona (lo cual es una razón para usar el apt cuando actualice mediante la red). La solución es colocar las direcciones IP de las réplicas en las líneas «deb». (Pista: nslookup some-server)


3.3.2 Añadir réplicas locales a APT

En lugar de usar réplicas de paquetes HTTP o FTP, puede que desee modificar /etc/apt/sources.list para usar una réplica existente en su disco local (posiblemente montada mediante NFS).

Por ejemplo, su réplica puede encontrarse en /var/ftp/debian/, y tener directorios como estos:

                
                  /var/ftp/debian/dists/woody/main/binary-m68k/...
                  /var/ftp/debian/dists/woody/contrib/binary-m68k/...

Para usar esto con apt,añada esta línea a su fichero sources.list:

                  deb file:/var/ftp/debian woody main contrib

Fíjese que «dists» se añade de forma implícita, y los parámetros tras el nombre de la entrega se usan para expandir el camino a varios directorios.

Tras añadir sus nuevas fuente, desactive las líneas «deb» que habían previamente en sources.list, colocando el símbolo de celdilla (#) delante de ellas.


3.3.3 Añadir fuentes en CD-ROM a APT

Compruebe en base a la información anterior si necesita instalar previamente la última versión de los paquetes apt y dpkg, tal como hemos descrito.

Si sólo desea usar CDs, comente todas las líneas «deb» existentes en /etc/apt/sources.list colocando delante suya un símbolo de celdilla (#).

Asegúrese de que existe una línea en /etc/fstab que permita montar la lectora de CD-ROM en el punto de montaje /cdrom (apt-cdrom precisa este punto de montaje en particular). Por ejemplo, si su lector de CD-ROM se encuentra en /dev/hdc, /etc/fstab debería contener una línea como:

                  
                  /dev/hdc/ cdrom auto defaults,noauto,ro 0 0

Fíjese que no deben haber espacios entre las palabras defaults,noauto,ro en el cuarto campo.

Para verificar que esto funciona, inserte un CD e intente ejecutar

      
                 mount /cdrom (esto montará el CD en el punto de montaje)
                 ls -alF /cdrom (esto debería mostrar el directorio raí zdel CD)
                 umount /cdrom (esto desmontará el CD)

Después, ejecuta:

                 apt-cdrom add

por cada CD-ROM de Binarios de Debian que tenga, para añadir los datos sobre cada uno en la base de datos de APT.


3.4 Actualización usando dselect

El método recomendado para actualizar a Debian GNU/Linux 3.0 es usar la herramienta de gestión de paquetes dselect. Esta herramienta toma decisiones más seguras que las de apt-get al respecto de los paquetes.

Si no está instalado dselect, por favor, instale la versión porporcionada por su versión de Debian GNU/Linux.

Ya se ha configurado el método de acceso al archivo (usando APT), aunque puede cambiar esta configuración usando la opción ``[M]étodo'' ([A]ccess) del menú. Si está contento con la configuración de acceso, proceda con la siguiente estapa escogiendo ``[A]ctualizar'' ([U]pdate) del menú. Esto actualizará la base de datos de paquetes.

Si no hay problemas durante la etapa de actualización, escoja ``[S]eleccionar'' ([S]elect) en el menú; dselect examinará los paquetes disponibles y decidirá de forma inteligente cuales necesitan ser actualizados y qué paquetes nuevos hace falta instalar para complementar la actualización. También sugerirá los paquetes que debería eliminar. Darle a la tecla de retorno en la pantalla de selección de paquetes le llevará a una de resolución de conflictos/dependencias (en la que puede que tenga que cambiar selecciones y pulsar retorno de nuevo) o de vuelta al menú principal. Dispone de ayuda sobre la etapa de selección de paquetes pulsando "?".

Ahora que ha decidido la selección de paquetes, es necesario instalar los nuevos. Hágalo escogiendo ``[I]nstalar'' ([I]nstall) en el menú principal. Esto descargará de su fuente preferida e instalará los paquetes usando APT. Vaya y tómese algo mientras tanto, porque esto tardará un tiempo.

Las dos etapas finales son ``[C]onfigurar'' y ``[D]esinstalar'' ([C]onfig y [R]emove) que terminarán el proceso de actualización configurando los nuevos paquetes y borrando los redundantes


3.5 Actualizar usando apt-get directamente (no se recomienda)

No olvide montar todas las particiones necesarias (en particular la raíz y /usr) en modo lectura-escritura, con una orden como:

                 mount -o remount,rw /puntodemontaje

Asumiendo que ya tenga configurado el sources.list de apt como le hemos explicado, ejecuta (como root):

                 apt-get update

Esto resincronizará los ficheros de información sobre paquetes usando sus fuentes, actualizando así la información sobre paquetes nuevos y actualizados.

Le recomendamos encarecidamente que use el programa /usr/bin/script para guardar un registro de la sesión de actualización. De esa manera, si aparece algún problema, tendrá un registro de lo sucedido, y si fuera necesario, podrá proporcionar información exacta en un informe de fallo. Para empezar la grabación, escriba:

                 script -a ~/upgrade-to-woody.typescript

o similar. No ponga el fichero «typescript» en un directorio temporal como /tmp o /var/tmp (ya que los ficheros en esos directorios pueden ser borrados durante la actualización o durante el reinicio de la máquina).

Es importante que actualice apt, dpkg y debconf antes de realizar la mayoría de la actualización. Se ha mejorado considerablemente apt desde la entrega previa. Debconf es una herramienta esencial de la que los paquetes recientes hacen uso intensivo.

                 apt-get install dpkg apt debconf

Esto instalará las versiones más modernas de dpkg, apt y debconf, que necesitará para el resto de la actualización. También actualizará a la última versión algunas bibliotecas necesarias del sistema.

Cuando debconf le pida el tipo de preguntas que desea que le haga, no escoja "critical", ya que en caso contrario no verá algunas preguntas importantes.

Algunas personas prefieren repasar primero la actualización usando

                 apt-get --fix-broken --show-upgraded --simulate dist-upgrade | pager

Mientras que esto puede tomar su tiempo, también le ayuda a evitar sorpresas. Esto le dirá tanto qué falla en su sistema (y cómo arreglarlo) o, más probablemente, qué ocurrirá exactamente durante la actualización. Preste especial atención a los paquetes que serán «BORRADOS» («REMOVED»); no debería aparecer ningún paquete esencial en esa lista.

Después de verificar que apt-get debería funcionar correctamente, ejecute:

                 apt-get --fix-broken --show-upgraded dist-upgrade

Esto ejecutará una actualización completa del sistema, esto es, instlará las versiones más modernas disponibles de todos los paquetes, y resolverá todas los cambios de dependencias posibles entre paquetes de diferentes entregas. Si fuera necesario, instalará algunos paquetes nuevos (normalmente nuevas versiones de librerías, o paquetes que han cambiado de nombre), y eliminará cualquier paquete obsoleto conflictivo.

Cuando actualice desde un juego de CD-ROMs, se le pedirá que inserte CDs específicos en varios momentos durante la actualización. Puede que tenga que insertar el mismo CD varias veces; esto se debe a paquetes interrelacionados que estén dispersos en varios CD.

Se dejará instalada la versión actual de aquellos paquetes que no puedan ser actualizados sin cambiar el estado de instalación de otros paquetes (indicados como «held back»). Por tanto, puede que sea necesario usar dpkg o dselect para borrar y reinstalar algunos paquetes o dependencias en mal estado. De forma alternatica, puede usar apt-get dselect-upgrade tras apt-get -f dist-upgrade (consulte la página de manual de apt-get(8)).

La opción --fix-broken (también -f) hace que apt intente corregir un sistema con dependencias en mal estado. apt no permite que existan dependencias en mal estado en un sistema.


3.5.1 Posibles problemas durante o después de actualizar

Algunas veces se hace necesario activar la opción APT::Force-LoopBreak en APT para permitir el borrado temporal de un paquete esencial debido a un bucle Conflicts/Pre-Depends. apt-get le alertará de esta situación y abortará la actualización. Puede atajar esto especificando la opción -o APT::Force-LoopBreak=1 en la línea de órdenes de apt-get.

Es posible que la estructura de dependencias de un sistema esté tan corrupta que necesite intervención manual. Normalmente esto quiere decir usar dselect o

               
                 dpkg --remove packagename

para eliminar el paquete problemático, o

     
                 apt-get --fix-broken --show-upgraded install
                 dpkg --configure --pending

En casos extremos, puede que necesite forcar la reinstalación con una orden parecida a

     
                 dpkg --install /path/to/packagename.deb

Después de arreglar las cosas, debería poder continuar la instalación donde la dejó repitiendo la orden dist-upgrade descrita previamente.

Durante la actualización, se le harán preguntas para configurar o reconfigurar varios paquetes. Cuando se le pregunte si debería reemplazarse algún fichero en los directorios /etc/init.d o /etc/terminfo, o el fichero /etc/manpath.config con la versión que propone el mantenedor del paquete, normalmente es necesario responder «sí» para asegurar la consistenciad el sistema. Siempre puede volver a la versión antigua, ya que queda guardad con extensión .dpkg-old.

Si no está seguro de lo que hacer, escriba el nombre del paquete o fichero, y examine las cosas más tarde. Puede buscar en el fichero de transcripción de la instalación para revisar la información que estaba en pantalla durante la actualización.


3.5.2 Cosas por hacer antes del siguiente reinicio

Cuando apt-get dist-upgrade haya terminado, ya estará completa la actualización «formal», pero hay otras cosas que debería tener en cuenta antes del siguiente reinicio.

Más aún, puede que haga falta instalar los paquetes locales y util-linux. Esto se puede hacer con:

                 apt-get install locales util-linux

Si estaba actualizando de Debian versión 2.0 o anteriores, esto borrará el paquete getty, ya que getty está ahora en el paquete util-linux.

Probablemente haya muchos más paquetes que necesite instalar, que apt-get no detecte, ya que apt-get no escoge automáticamente paquetes de los que no dependan otros paquetes (por ejemplo, los que se indican en los cambios Recommends: y Suggests:). Los puede encontrar fácilmente ejecutando dselect u otro frontal visual. En dselect, escoja el método «apt» en la pantalla [M]étodo ([A]ccess), si es que no lo ha hecho ya, y actualice la base de datos con información de nuevos paquetes, usando la opción [A]ctualizar ([U]pdate). Después, en la pantalla [S]eleccionar, pulse «o», «o», «v» y Shift-d, y busque entonces la cabecera

               
     	    --- Paquetes obsoletos y localmente instalados ---

En esa sección, encontrará todos esos paquetes. Por ejemplo, el viejo paquete gimp ha sido reemplazado por gimp1.2. Puede instalar el nuevo paquete mediante dselect (que entonces le mostrará una pantalla de «Resolución de dependencia/conflicto» indicando que deberían borrarse los paquetes antiguos), o usando:

      
                 apt-get install gimp1.2

que borrará las versiones antiguas (puede que necesite confirmarlo).

Otro ejemplo, que a menudo no se ve siquiera con dselect, son los clientes y servidores de telnet y tal, y el servidor NFS, que se dividieron, saliendo del antiguo paquete netstd. Puede instalarlos con la orden:

                 apt-get install telnet telnetd talk talkd nfs-server

Lo mismo se aplica a manpages-dev, que se separó de manpages.

Por favor, remítase al documento Notas de Liberación de anteriores entregas de Debian GNU/Linux si desea más información al respecto de los paquetes divididos en ellas; vuelva atrás y lea Paquetes renombrados, Sección 5.1 y Paquetes divididos, Sección 5.2 para ver la lista de paquetes divididos para esta entrega.

Si estuviera actualizando desde Debian versión 2.0 o anteriores, y tiene instalado el X Window System, de las siguientes órdenes:

     
                apt-get remove xbase
                apt-get install xfonts-base xfonts-75dpi xfonts-100dpi xfonts-scalable

Y si no desea que xdm arranque durante el inicio del sistema ("X autostart"), ejecute también:

              
                apt-get remove xdm

Lea /usr/share/doc/xfree86-common/README.Debian-upgrade si desea más información sobre la actualización de los paquetes del sistema de ventanas X. Esto es relevante para los usuarios de todas las entregas anteriores. En resumen, necesita leerlo.

El sistema de configuración del módulos del núcleo ha cambiado desde Debian GNU/Linux versión 2.0. Si actualizó desde Debian 2.0 o anterior, deberá convertir su sistema antes del siguiente reinicio. Normalmente bastará ejecutar update-modules force; sin embargo, recomendamos leer la página de manual update-modules(8).

Tenga en cuenta que el núcleo de Linux no ha sido actualizado mediante estos procedimientos. Puede que desee hacerlo usted mismo, bien instalando uno de los paquetes kernel-image-* o compilando un núcleo a su medida desde las fuentes.

Debian GNU/Linux viene con un 2.2.20 que está en la serie 2.2, la anterior serie estable del núcleo Linux. Puede que desee utilizar un núcleo de la serie 2.4 por su mejor soporte de hardware o el rendimiento mejorado. Arrancar el tercer cdrom hará esto automágicamente, y también puede instalar o precompilar uno.

                apt-get install kernel-image-2.4.18-{386,586tsc,686}

Para los más aventureros, hay una manera sencilla de compilar su propio núcleo a medida en Debian GNU/Linux. Instale la herramienta kernel-package y lea la documentación que hay en /usr/share/doc/kernel-package.

¡Disfrute de su nuevo sistema Debian GNU/Linux 3.0! :-)


[ anterior ] [ Contenidos ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ siguiente ]

Notas de liberación de Debian GNU/Linux 3.0 (`woody'), Motorola 680x0

$Id: release-notes.es.sgml,v 1.1 2003/01/04 00:37:57 joy Exp $

Josip Rodin, Bob Hilliard, Adam Di Carlo, Anne Bezemer, Rob Bradford
debian-doc@lists.debian.org