sábado, 12 de enero de 2008

Solucionar errores en la source.list

Fuente: LaConsola

Descripción
La lista de recursos de paquetes para APT (sources.list) se usa para localizar ficheros del sistema de distribución de paquetes con los que opera el sistema. En la página de manual (manpage) se documenta el sistema de paquetes usado por Debian GNU/Linux y las distribuciones basadas en Debian como es el caso de Ubuntu y su familia. Este fichero de control está situado en el directorio: /etc/apt/

Es una lista de procedencias diseñada para soportar cualquier número y distintos tipos de procedencias. El fichero lista una procedencia por línea, con la procedencia de mayor prioridad en la primera línea. El formato de cada línea es: tipo, uri, argumentos. El primer elemento, tipo, determina el formato de argumentos. uri es Universal Resource Identifier (Identificador Universal de Recursos), un caso general de la más especifica y bien conocida Universal Resource Locator, o URL. El resto de la línea puede marcarse como comentario usando #.

Los tipos DEB y DEB-SRC
El tipo deb hace referencia a un típico archivo de Debian de dos niveles, distribución/componente. Normalmente distribución es stable, testing, o unstable, mientras que componente es main, contrib, non-free, o non-us. El tipo deb-src hace referencia al código fuente de la distribución con la misma sintaxis que el tipo deb. Es necesaria una línea deb-src para descargar un índice de los paquetes que tienen código fuente disponible.

El formato para una entrada en el fichero sources.list usando los tipos deb y deb-src es:

deb uri distribución [componente1] [componente2] [...]

La URI para el tipo deb debe de especificar la base de la distribución de Debian, donde APT encontrará la información que necesita.

Debido a que sólo se puede especificar una distribución por línea es posible que sea necesario tener múltiples líneas para la misma URI si deseamos tener accesibles más de una distribución o componente de ese sitio.

Algunos ejemplos:

deb http://security.ubuntu.com/ubuntu/ gutsy-security universe main multiverse
deb http://archive.ubuntu.com/ubuntu/ gutsy-updates universe main multiverse
deb http://archive.ubuntu.com/ubuntu/ gutsy main universe multiverse

deb http://apt.emesene.org/ ./
deb-src http://apt.emesene.org/ ./

Errores en sources.list

Son muy frecuentes los errores de puntuación y/o sintaxis sobre todo por los novatos, estos errores son interpretados por el sistema como una dirección URI o archivos inexistentes. Al detectar cualquier error, el sistema pone un candado (en la práctica modifica los permisos) y por seguridad no permite instalar o desinstalar (poner o quitar) paquetes o programas hasta solucionar el problema.

Tres formas para corregir el problema

Primera.- Se debe editar el sources.list desde un terminal ya sea en modo gráfico,
Comúnmente “consola”. Acceso desde: panel -> Aplicaciones -> Accesorios -> Terminal

o en modo texto,
Comúnmente “terminal”. Acceso con la combinación de teclas: Ctrl + Alt + F1 (de F1 a F6)
Para salir: Ctrl + Alt + F7),

ambas requieren de un editor de texto plano como lo son gedit, nano, vi, etc. Dicha edición deberá ser en modo “root”, es decir como administrador del sistema, por seguridad a los usuarios no se les permite acceso para escritura en los directorios de sistema. Desde luego quien es propietario de una maquina, se convierte en usuario y administrador, en este caso, la alternativa por seguridad es el comando “sudo” en sustitución de root como se puede apreciar en la siguiente línea, con la cual iniciamos el trabajo de recuperación de nuestro sources.list:

sudo gedit /etc/apt/sources.list

Cuando lo tengamos en pantalla, debemos estar conscientes que el error ha sido nuestro y no del sistema, por lo tanto, hemos de buscar las líneas que introdujimos y chequear que esta sean correctas, al hacerlo vamos a menú -> Archivo -> Guardar

Lo anterior nos dejará en consola nuevamente, ahora hacemos lo siguiente para validar los datos:

sudo apt-get update

Segunda.- Cuando tenemos acceso a Internet.- Respaldamos el actual sources.list para analizar posteriormente lo que hicimos mal, desde consola respaldamos y al mismo tiempo estaremos desechando el error con el actual sources.list:

sudo mv /etc/apt/sources.list /etc/apt/sources.list.error

a) Abrimos desde el panel -> Sistema -> Preferencias -> Orígenes del software,
- Desactivamos las opciones dentro de las pestañas: Software Ubuntu,
Software de otros proveedores y Actualizaciones,
- Hacemos click sobre el botón cerrar.

b) Nuevamente abrimos desde el panel -> Sistema -> Preferencias -> Orígenes del software,
- En las pestañas Software Ubuntu activamos las 4 primeras, en Actualizaciones las 2 primeras y la última, finalmente activamos cada cuando se harán las actualizaciones,
- Hacemos click sobre el botón cerrar, al hacerlo inmediatamente y en automático, el sistema generará un sources.list nuevo.

Tercera.- Si no contamos con acceso a Internet.- Procedemos de manera idéntica a la Segunda forma, con sus incisos a) y b) excepto por la última línea del inciso b), a cambio, hacemos lo siguiente:

Introducimos en el cdrom, el disco LiveCD de nuestra distribución y versión instalada, en la pestaña Software Ubuntu, hacemos click sobre la última línea de texto y luego click en el botón cerrar, al hacerlo inmediatamente y en automático, el sistema generará un sources.list nuevo.

Finalmente no olvidar que hemos guardado una copia del sources.list.error, para analizarlo y hacer anotaciones, luego lo guardamos para tener una referencia:

sudo gedit /etc/apt/sources.list.error

¡Listo! ya podemos instalar o desinstalar.

No hay comentarios: