Tema2 Certificacion LPI-C

download Tema2 Certificacion LPI-C

of 44

Transcript of Tema2 Certificacion LPI-C

TEMA 2: Mantenimiento de softwareLPIC-1

OBJETIVOS Instalacin de aplicaciones Manejar las libreras Instalacin de paquetes en debian Instalacin de paquetes en red hat

CONCEPTOS BSICOS Paquetes: coleccin de ficheros que van a ser instalados en una computadora. Se encuentran comprimidos en un fichero con formato tar, gzip o bzip2. Base de datos de archivos instalados: se trata de una base de datos donde se puede ver que paquetes se encuentran instalados. (Repositorio Dependencias: Son requerimientos necesarios para la correcta instalacin de las aplicaciones.

CONCEPTOS BSICOS CHECKSUMS: El sistema de paquetes lo utiliza para verificar la integridad del paquete a instalar Actualizaciones y desinstalaciones: a travs del sistema de paquetes, se garantiza que todos los paquetes se pueden eliminar evitando que surjan dependencias que evitan futuras instalaciones Creacin de paquetes binarios: Tanto debian como red hat proporcionan herramientas para la creacin de paquetes de instalacin.

NOMENCLATURA PAQUETES Los paquetes con extensin rpm pertenecen a las distribuciones red hat y con extensin .deb a debian. Nomenclatura: packagename-a.b.c-x.arch.rpm packagename-a.b.c-x.arch.debPackagename: nombre del paquete a.b.c : versin del paquete. x: nmero de compilacin. arch: arquitectura. Ej: i586, i686, X86_64

INSTALACIN PAQUETES DEBIAN Se pueden instalar los paquetes de diferentes formas: 1-.Utilizando la herramienta dpkg

2-.Utilizando las herramientas apt-get, aptcache, apt-file.

3-.Utilizando el gestor de paquetes gdebi

dpkg dpkg: instala paquetes con extensin .deb Sintaxis: dpkg [opciones][acciones] nombre_paquete Acciones: -i --install: instala un paquete. --configure: reconfigura un paquete instalado. -r --remove: elimina el paquete (Dejando los ficheros de configuracin) -P ---purge: elimina el paquete incluyendo los paquetes de instalacin. -p --print-avail: muestra informacin sobre un paquete instalado. -I (i mayus) --info: Muestra informacin sobre un paquete desinstalado. -l patron --list patron: muestra todos los paquetes instalados que coinciden con el patron. -L --listfiles: muestra todos los ficheros asociados con el paquete -S patrn --search patrn: localiza el paquete que contiene los archivos indicados por el patrn. -C --audit : busca paquetes parcialmente instalado y sugiere que hacer con ellos

dpkg Opciones: --root=directorio: Modifica el sistema de archivos -B auto-deconfigure: desactiva los paquetes que dependen del que se est desinstalando. --force-things: Para especificar acciones --ignore-depends=paquete :Ignora informacin de dependencia para el paquete especificado. --no-act: comprueba si hay dependencias o conflictos sin tener que instalar el paquete. --recursive: instala todos los paquetes que se encuentren en un directorio incluido los subdirectorios.

EJERCICIOS dpkg Ejercicio 19: Utilizando el paquete nerolinux3.5.0.1-x86.deb a) Instalar el paquete. b) Consulta si el paquete se encuentra instalado. c) Elimina el paquete instalado Solucin: a) dpkg i nerolinux-3.5.0.1-x86.deb b) dpkg -l *nerolinux* c) dpkg r nerolinux

apt-getapt-get: obtiene informacin de los paquetes de unos repositorios. (/etc/apt/sources.list)Sintaxis (dpkg)

apt-get [opciones][comandos] nombre_paqueteComandos: update : Ejecutar este comando despus de cambiar /etc/apt/sources.list. Debe ejecutarseperidicamente para asegurarse que las fuentes estn actualizadas. install: instala un nuevo paquete. Remove: elimina el paquete especificado. upgrade: actualiza todos los paquetes instalados a las versiones mas recientes. dselect-upgrade: utilizado por el administrador de paquetes en funcin del campo status de cada paquete. dist-upgrade: maneja los cambios de dependencias. (Utilizado por el administrador de paquetes). source: hace que apt-get descargue los paquetes fuentes. check: herramienta de diagnostico. Actualiza la cach de paquetes (/var/cache/apt/pkgcache.bin) clean: borra el repositorio local que contiene los .deb descargados. Borra todo excepto el fichero de bloqueo de los directorios /var/cache/apt/archives y /var/cache/apt/archives/partial autoclean: igual que clean pero elimina los paquetes que son inservibles. (Recomendable ejecutarlo a menudo para liberar espacio)

Opciones:

apt-get

-d --download-only: descarga los paquetes pero no los instala. -f --fix-broken: intenta arreglar un sistema con dependencias rotas. (Junto install/remove) -m --ignore-missing --fix-missing: No tiene en cuenta los paquetes que no se han podido descargar o se encuentren daados. -q --quiet: omite el indicador de progreso -s --simulate --just-print --dry-run, --recon no-act: desarrolla una simulacin de la accin pero sin llevarla a cabo. -y --yes --assume-yes --force-yes: produce una respuesta Si a cualquier pregunta SI/NO. -b --compile --build: descarga las fuentes y luego las compila --no-upgrade: no instala un paquete si existe una versin anterior ya instalada.

apt-get Ejercicio 20: a) Instalar el interprete ksh y la aplicacin apt-file. b) Elimina el interprete ksh c) Vuelve a instalar el interprete y desinstalalo respondiendo a todas las preguntas SI. Solucin: a) apt-get install ksh apt-file b) apt-get remove ksh c) apt-get install apt-get --remove --force-yes ksh

INSTALACIN PAQUETES (apt-get) Ejercicio 21: Instalar la ayuda (man) en espaol sabiendo que el paquete de instalacin son manpages-es y manpages-esextra sudo apt-get install manpages-es sudo apt-get install manpages-es-extra

apt-cache apt-cache: herramienta para poder actuar sobre la

cache de la utilidad apt Opciones: search cadena_texto: Busca la cadena_texto en la lista de paquetes conocidos depends aplicacin: nos permite conocer las dependencias de un paquete. show paquete: nos permite conocer toda la informacin disponible de un paquete. pkgnames: muestra un listado de todos los paquetes instalados.

Ejercicios apt-cache Ejercicio 22:a) Averigua si se encuentra disponible la aplicacin virtualbox b) Averigua las dependencias del Firefox. c) Contar el nmero de paquetes que se encuentren instalados Solucin: a) apt-cache search virtualbox b) apt-cache depends firefox c) apt-cache pkgnames | wc -l

apt-file Utilidad de apt que nos sirve para averiguar el nombre del paquete al que pertenece un fichero. (No viene por defecto, hay que instalarlo). Muy til para solventar problemas de dependencias. Opciones: update: actualiza la base de datos search nombre_archivoEjemplo: Averiguar en que paquete se encuentra el archivo

FindKDE4Internal.cmakeapt-file search FindKDE4Internal.cmakeSolucin:kdelibs5-dev: /usr/share/kde4/apps/cmake/modules/FindKDE4Internal.cmake

INSTALACIN DE APLICACIONES RED HAT Existen diferentes formas de instalar aplicaciones en red hat: 1-. Utilizando la herramienta yum 2-. Utilizando la herramienta rpm

3-. Utilizando la utilidad alien

yumSi queremos ver todos los paquetes disponibles en los repositorios: yum list available | less Si queremos ver todos los paquetes que tenemos instalados en el sistema: yum list installed | less Si queremos ver los paquetes que tenemos instalados y que se pueden actualizar: yum list updates | less

yumCuando utilizamos yum, este deja un conjunto de paquetes rpm a partir del directorio: /var/cache/yum. /var/lib/yum (algunas librerias)(los subdirectorios pueden variar en funcin de la distribucin) Es conveniente eliminarlos e para no desaprovechar espacio en disco. Para ello: yum clean all Si queremos realizar bsqueda de algn paquete en las bases de datos: yum search nombre_paquete

yum Ejercicio 23: Comprobar si se encuentra instalado el plugin yum-fastestmirror. Muy til para cuando queramos descargar algo de los distintos repositorios a los que tenemos acceso, de todos los disponibles, el nos selecciona el mas rpido. Solucin: yum list installed | grep i yum-fastestmirror yum install yum-fastestmirror

yumEjercicio 24: a) Comprobar si se encuentra instalado en el sistema la aplicacin k3b. b) Buscar en los repositorios si existe la aplicacin k3b, que es una herramienta grabar casi cualquier formato. c) En el caso de que se encuentre accesible, instalarla desde los repositorios. d) Eliminar del sistema la aplicacin k3bSolucin:

a) Realizaremos una bsqueda en los repositorios a travs de la orden:yum search k3b b) Observaremos que en el listado que aparece, existe un paquete denominado k3b.i686 c). Instalaremos utilizando el comando yum dicho paquete yum install k3b d) Yum remove k3b

yumA travs de este comando podemos actualizar la distribucin basada en red hat.Para actualizar el S.O: yum y update Se conecta a los repositorios indicados: /etc/yum.repos.d

Si queremos aadir un grupo de paquetes :yum y groupinstall nombre_grupo_paquetes

Ejemplo: Vamos a instalar el grupo KDE (K Desktop Environment)yum y KDE (K Desktop Environment)

yumdownloaderNos permite la descarga de los paquetes pero no los instala Ejemplo: Vamos a descargar la aplicacin me-tv yumdownloader me-tv Opciones: yumdownloader opciones nombre_paquete --source : descarga el paquete fuente

--resolve: descarga el paquete junto con sus dependencias.--dest directorio Ejercicio 25: Crear la carpeta descargas. Descargar el paquete me-tv junto con sus dependencias en el directorio creado anteriormente. Solucin: mkdir descargas yumdownloader --dest ./descargas --resolve me-tv

HERRAMIENTA rpm Los paquetes con extensin rpm pertenecen a las distribuciones red hat. Equivalen a los paquetes .deb en las distribuciones de Debian. Nomenclatura: packagename-a.b.c-x.arch.rpmPackagename: nombre del paquete a.b.c : versin del paquete. x: nmero de compilacin. arch: arquitectura. Ej: i586, i686, X86_64

rpmInconvenientes: La mayora de las distribuciones traen versiones diferentes de la utilidad rpm. Los paquetes rpm estn creados para ser utilizado por una distribucin. Lo que va a implicar una serie de dependencias que pudieran no encontrase satisfechas. Muchas veces son construidos dependiendo de otros paquetes, que en diferentes distribuciones no reciben el mismo nombre. Uso de --nodeps (Lo instala sin comprobar dependencia) Un paquete para una distribucin no tiene por que funcionar en otra distribucin.

Sintaxis: rpm [operaciones][opciones] nombre_paquete Operaciones: -i: instala paquetes (no existe) -U: instala nuevos paquetes o los actualiza si existen. -for freshen: actualiza un solo paquete si existe una versin anterior. -q: comprueba si un paquete se encuentra instalado. -V y --verify: verifica un paquete. -e: desinstala un paquete -b: construye un paquete , tomando los fuentes y los ficheros de configuracin movidos por el programa rpmbuild --rebuild: construye un paquete tomando los fuentes utilizados por la aplicacin rpmbuild --rebuilddb: reconstruye el repositorio en busca de errores.

SINTAXIS RPM

Ejercicios rpmEjercicio 26: a) Comprobar si se encuentra instalado los paquetes descargados en el ejercicio anterior. b) En caso negativo, instalarlos utilizando rpm c) Comprobar que se encuentra instalarlo. d) Eliminar la aplicacin del sistema.Solucin: a) rpm -q freeglut libcaca xine-lib lirc-libs gtkmm24 xine-ui me-tv b) rpm i freeglut libcaca xine-lib lirc-libs gtkmm24 xine-ui me-tv c) rpm -q freeglut libcaca xine-lib lirc-libs gtkmm24 xine-ui me-tv d) rpm e me-tv

SINTAXIS rpm Opciones: --root directorio: modificamos el sistema de archivos --force: Obliga a instalar, actualizar o borrar paquetes -h o hash muestra especie de barra de progreso --nodeps: especifica que no compruebe las dependencias. --test: comprueba dependencias, conflictos y otros problemas sin tener que instalar el paquete. --prefix directorio : define el directorio de instalacin. -a o --all : verifica todos los paquetes (Utilizados con-q y V) -f fichero --file fichero: Verifica el fichero que contiene el paquete -p: especifica el nombre del archivo. (Se utiliza con la opcin q(consulta)) -i: muestra informacin del paquete incluyendo una breve descripcin. -R --requires: muestra los paquetes y archivos de los que este depende -l --list : muestra los ficheros que contiene el paquete. (Utilizado con la opcin q).

EJERCICIOS rpmEjercicio 27: Utilizando el S.O Fedora y el paquete google-chromestable_current_i386.rpm, realiza las siguientes operaciones: a) Comprobar si se encuentra instalado b) Ver las dependencias de este paquete. c) Ver los ficheros que contiene el paquete. d) Comprobar si se cumplen las dependencias. Solucionar el problema si existiera. d) Instala el paquete

Solucin:a) b) c) d) rpm q google-chrome-stable_current_i386.rpm rpm qRp google-chrome-stable_current_i386.rpm rpm qlp google-chrome-stable_current_i386.rpm rpm -i test google-chrome-stable_current_i386.rpm No se cumple. Falta lsb y libXss.so.1 Paquetes: libXScrnSaver redhat-lsb

DEFINICIN DE REPOSITORIOS Para aadir nuevos repositorios utilizando rpm No es recomendable actualizar el listado de estos repositorios manualmente. Es mejor hacerlo utilizando el comando rpm de la siguiente forma:

rpm -ivh http://linuxdownload.adobe.com/adoberelease/adobe-release-i386-1.0-1.noarch.rpm rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusionfree-release-stable.noarch.rpm http://download1.rpmfusion.org/nonfree/fedora/rpmfusio n-nonfree-release-stable.noarch.rpm

EXTRACCIN INFORMACIN rpm Se puede extraer informacin de un paquete utilizando rpm2cpio sin instalarlo Se puede utilizar incluso en distribuciones que no utilizan el sistema rpm Sirve para convertir paquetes rpm en un nico fichero cpio que es enviado a la salida estndar. Sintaxis: rpm2cpio opciones paquete -i : restaura el archivo -d: crea los directorios principales si es necesario. -m: mantiene los ficheros si ya existen. --make-directories

Ejemplos rpm2cpio Ejemplo: rpm2cpio google-chrome-stable_current_i386.rpm

Ejemplo:rpm2cpio google-chrome-stable_current_i386.rpm > salida.cpio

Comando cpio La orden cpio (Copy In/Out) es una utilidad que permite copiar archivos a o desde un contenedor cpio, normalmente usado como copia de seguridad. Sintaxis:cpio[opciones] directorios] Opciones: -i: extrae archivos de la entrada estandar -o: lee la entrada estandar para obtner una lista de nombres de ficheros y mostrarlos en la salida estandar. -d: crea directorios cuando sean necesarios Ejemplo: cpio i google-chrome-stable_current_i386.rpm

alien El comando alien se encarga de transformar los paquetes rpm a sus respectivos .deb No en todas las distribuciones se encuentra instalado. Para instalarla: apt-get install alien Sintaxis: alien nombre_paquete Ejemplo: En ubuntu, una vez instalado alien, vamos a convertir el paquete avast4workstation-1.3.0-1.i586.rpm a su equivalente en .deb. A continuacin instalarlo para ver que funciona correctamente. alien avast4workstation-1.3.0-1.i586.rpm Observamos como aparece en el mismo directorio el paquete avast4workstation-1.3.0-1.i586.deb dpkg i avast4workstation-1.3.0-1.i586.deb

COMANDO BSICO tar Permite comprimir y descomprimir ficheros Sintaxis: tar [opciones] fichero_tar ficheros_incluir Algunas opciones:-c: crear un fichero. -x: extraer de un archivo. -t: lista el contenido de un archivo -v: muestra las acciones que se van haciendo -f: empaqueta. -z: comprime a la vez que empaqueta (gzip= comprime) -j: comprime el archivo tar con bzip2

EJEMPLOS tar Ejemplo: Empaquetar los ficheros avast4workstation1.3.0-1.i586.rpm y avast4workstation-1.3.0-1.i586.deb en un el archivo ficheros.tar tar cvf ficheros.tar * Ejemplo: listar su contenido tar tvf ficheros.tar Ejemplo: extraer su contenido tar xvf ficheros.tar Ejemplo: crear el fichero comprimido (fich.tar) tar czvf fich.tar ficheros avast4workstation1.3.0-1.i586.rpm y avast4workstation-1.3.0-1.i586.deb

OTROS FORMATOSDependiendo del formato utilizado, la descompresin se har con el comando asociado: Acabados en TAR.GZ. Teclea tar -xvzf y su nombre con la extensin. Acabados en TAR.BZ2. Teclea tar -xvf y su nombre con la extensin. Acabados en TAR.BZ. Teclea tar -xvif y su nombre con la extensin. Acabados en RAR. Teclea unrar e -kb y su nombre con la extensin. (Necesario instalacin unrar) Acabados en ZIP. Teclea unzip y su nombre con la extensin.

INSTALACIN DE APLICACIONES DESDE CDIGOLos pasos necesarios para instalar las aplicaciones son: 1-. Descomprimir el archivo que incluye el cdigo fuente. 2-.Resolver las dependencias: consultar README o INSTALL 3-.Configurar la aplicacin: ./configure 4-.Compilar los fuentes utilizando make 5-.Instalar la aplicacin: make install

POSIBLES ERRORES Si aparece el error c++ compiler no create, deberemos de instalar el compilador de C. Paquetes Redhat: gcc gcc-c++ kernel-devel qt3-devel Si nos aparece el error libzz2 not found entonces tendremos que instalar la librera libbz2 Si aparece el error de que falta librera newt, tendremos que instalar newt-dev Si nos falta la librera gzip, instalaremos el paquete gzip-1.3.13 Si aparece un error diciendo que no encuentra las cabeceras ssl, tenemos instalar el paquete libssl-dev Si nos aparece el error de que falta la librera bzip2, instalaremos libbz2-dev

EJEMPLO DE INSTALACIN UBUNTUInstalar la aplicacin pdfedit-0.4.5.tar.bz2 1-. Extraer el fichero pdfedit-0.4.5.tar.bz2 tar xvf pdfedit-0.4.5.tar.bz2 2-. Comprobar las dependencias. Consultar los ficheros README e INSTALL 3-. Ejecutamos ./configure (nos mostrar los ficheros que falten)

Falta el compilador: build-essential Falta la librera libbz2-dev Falta el paquete libboost1.42-all-dev Aviso: Falta el paquete FreeType (libfreetype6-dev) Falta el paquete libt1-dev apt-get install libbz2-dev apt-get install libnewt-dev apt-get install libssl-dev 4-. Compilamos: make5-. Instalamos las aplicacin: make install

EJEMPLO INSTALACIN FEDORAEjercicio 28: Instalar en el S.O Fedora 15 la aplicacin pdfedit0.4.5.tar.bz2 1-. Extraer el fichero pdfedit-0.4.5.tar.bz2 tar xvf pdfedit-0.4.5.tar.bz2 2-. Comprobar las dependencias. Consultar los ficheros README o INSTALL 3-. Ejecutamos ./configure (nos mostrar los ficheros que falten) Falta la librera t1 (t1lib-devel) 4-. Compilamos: make 5-. Instalamos las aplicacin: make install

PREGUNTAS 1-. Dado el fichero bash-3.2-112.x86_64.rpm a) Es bash en versin 3.2 b) Este paquete funciona en las arquitecturas x86 y 64 bits c) Este paquete no se podr instalar en una versin de 32 bits de linux d) Es la 112 versin de bash

PREGUNTAS 2-. Cual de las siguientes sentencias extraer la informacin del paquete parted.rpm a) rpm2cio parted.rpm | cpio i make directories b) rpm2cpio parted.rpm > make-directories c) rpm e parted.rpm d) alien to-extract parted.rpm

PREGUNTAS 3-. Utiliznando dpkg para eliminar una aplicacin llamada miprograma, ejecutaramos: a) dpkg P miprograma b) dpkg p miprograma c) dpkg r miprograma d)dpkg r miprograma.deb