Certificacion LPI 101

  • Upload
    iceboyx

  • View
    214

  • Download
    7

Embed Size (px)

Citation preview

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

Inicio Certificacin LPI

Certificacin LPI 101Etiquetas: lpi

Tabla de Contenidos [-]1 Mtodos de Instalacin 1.1 Metodos de instalacion alternativos 1.2 Instalacion desde CD o DVD 1.2.1 Carpeta paquetes 1.2.2 Carpeta imagenes 1.2.3 Carpeta dosutils 1.3 Instalacion desde un servidor HTTP 1.3.1 Configuracion de la instalacion HTTP 1.4 Instalacion desde un disco duro 1.4.1 Configuracion de la instalacion desde disco duro 1.5 Disco de Rescate Linux 1.5.1 Comenzado con el Disco de Rescate Linux 2 Arquitectura del Sistema 2.1 Asignacion de recursos 2.1.1 Solicitudes de interrupcion (IRQ) 2.1.2 Direcciones de Entrada/Salida 2.1.3 Accesos Directos a Memoria (DMA) 3 Listado de asignacion de recursos 3.0.1 lspci 3.0.2 dmesg 3.1 Soporte USB 3.2 Dispositivos SCSI 3.2.1 El canal SCSI 3.2.2 El numero ID del dispositivo 3.2.3 Numero de unidad logica 3.2.4 Deteccion de dispositivos SCSI 3.3 Tarjetas de Red 3.4 Configuracion de impresoras 3.5 Tarjetas de Audio 3.5.1 OSS (Open Sound System) 3.5.2 ALSA (Advanced Linux Sound Architecture) 3.5.3 Identificando las tarjetas de audio 3.5.4 Administracion de tarjetas de audio 4 Conociendo el Arranque de Linux 4.1 Sobre los Discos Duros 4.2 Tipos de Discos Duros 4.2.1 Discos Duros IDE-ATA= 4.2.2 Discos Duros SATA 4.2.3 Discos Duros SCSI 4.3 Configuracion de discos 4.4 Configuracion de Particiones 4.5 Aplicaciones graficas para particionar discos duros 4.5.1 Gparted 4.5.2 Parted Magic 4.6 Formatear y particionar discos duros desde BASH 4.6.1 Dando formato de bajo nivel con dd 4.6.2 Particionando un disco duro con fdisk 4.6.3 Dando formato a un disco duro con mkfs 5 Niveles de Ejecucion en Linux 5.1 El Proceso de arranque

1 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

5.2 El Proceso INIT 5.2.1 SystemV 5.2.2 BSD 5.3 El fichero init.d 5.4 El fichero rcN.d 5.5 El fichero inittab 5.6 El fichero rc.sysinit 5.7 El fichero rc.local 5.8 Niveles de Ejecucion 5.8.1 Nivel 0 Parada Del Sistema 5.8.2 Nivel 1 o S -Monousuario o Single User 5.8.3 Nivel 2 -Multiusuario sin Red 5.8.4 Nivel 3 -Multiusuario con Red 5.8.5 Nivel 4. -Sin Uso 5.8.6 Nivel 5. -Multiusuario Grafico 5.8.7 Nivel 6. -Reinicio del Sistema 5.9 Comando chkconfig 5.10 Levantando, deteniendo y reiniciando servicios 6 Manejo de Paquetes 6.1 Introduccion a la gestion e instalacion de software 6.2 Herramienta RPM 6.3 Herramienta YUM 6.3.1 Configuracin de YUM 6.3.2 Extensiones de YUM 6.3.3 Utilidades YUM 6.4 Herramienta DPKG 6.5 Herramienta APTITUDE 6.6 Herramienta APT 7 Manejo de comandos 7.1 Sobre SHELL 7.2 El Ambiente Linux 7.3 Algunas variantes del SHELL 7.3.1 Bourne Shell (sh) 7.3.2 Korn Shell (ksh) 7.3.3 Boune Again Shell (bash) 7.3.4 CShell (csh) 7.4 Introduccion a BASH 7.4.1 Conociendo el SHELL de nuestro equipo 7.4.2 Usando el comando cd 7.4.3 Rutas (Paths) 7.4.4 Rutas Absolutas 7.4.5 Rutas Relativas 7.4.6 Usando el . . (punto a punto) 7.4.7 Entendiendo el . (punto) 7.5 Usando los comandos de Linux 7.5.1 El comando ls 7.5.2 Comodines 7.5.3 El comando mkdir 7.5.4 comando touch 7.5.5 comando echo 7.5.6 comando cat y cp 7.5.7 comando mv 7.6 Procesando cadenas de texto usando filtros 7.7 Listando el contenido de un fichero 7.8 Ordenando lineas de un fichero con Sort 7.8.1 Segmentando un texto con Cut 7.8.2 Pegando texto con Paste

2 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

7.8.3 Formateando parrafos 7.8.4 Borrando o sustituyendo caracteres. 7.8.5 Ver el inicio de un fichero 7.8.6 Ver el final de un fichero 7.8.7 Uniendo multiples ficheros 7.8.8 Segmentando un fichero 7.8.9 Eliminando lineas repetidas en un fichero 7.8.10 Convirtiendo ficheros para imprimir 7.8.11 Mostrando estadisticas de un fichero 7.8.12 Aadiendo numeros de linea a un fichero. 8 Administracion de Archivos 8.1 Listando el contenido de un directorio 8.2 Determinando el tipo de fichero 8.3 Copiando Archivos 8.4 Copiando y convirtiendo archivos con diferente formato 8.5 Moviendo Archivos 8.6 Moviendo Archivos 9 Creando, monitorizando y matando procesos 9.1 Sobre procesos 9.1.1 Estados de un proceso 9.1.2 Diagrama de formacion de un proceso 9.1.3 Modelo de dos estados 9.1.4 Modelo de cinco estados 9.2 Sobre demonios 9.2.1 Caracteristicas 10 Comando ps (process state) 10.1 Comando pstree y top 10.2 Finalizando un proceso 10.3 Procesos en segundo y primer plano 11 Creando particiones y sistemas de ficheros 11.1 Sobre fdisk 11.2 Utilizando fdisk 11.3 Utilizando mkfs 11.4 Manteniendo la integridad de los sistemas de ficheros 11.5 Monitorizando el espacio y los inodos libres del disco 11.6 Monitorizando el espacio y los inodos libres del disco 11.7 Comprobando la integridad del sistema de ficheros 12 Montando y desmontando sistemas de ficheros 12.1 Controlando el montaje y desmontaje del sistema de ficheros 12.2 Administrando la tabla del sistema de ficheros 12.3 Montando el sistema de ficheros 12.4 Desmontando el sistema de ficheros 13 Administrando cuotas de disco 13.1 Establecer y consultar cuotas de disco 14 Cuotas de Limitacion 14.1 Comandos de cuotas 14.1.1 quota 14.1.2 quotaon 14.1.3 quotaoff 14.1.4 quotacheck 14.1.5 edquota 14.1.6 repquota 14.2 Habilitando las cuotas 15 Permisos de archivos y directorios 15.1 Administracion de Permisos 15.2 Permisos de archivos y directorios 15.3 Comando chmod

3 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

15.4 Permisos especiales 15.4.1 SUID 15.4.2 SGID 15.4.3 Stiky Bit 16 Administrando el propietario de los ficheros 16.1 Comando chown 16.2 Comando chgrp 17 Crear y cambiar enlaces de ficheros 17.1 Creando links a ficheros 17.2 Los Hard Links 17.3 Los Symlinks

Mtodos de InstalacinMetodos de instalacion alternativosEl proceso de instalacin de Sistemas Operativos Linux es una tarea similar para casi todas las distribuciones Linux existentes. Una de las formas mas usadas e implementadas es la basada en los discos de instalacin de Linux los cuales puedes descargar directamente en formato .ISO desde la pagina oficial de la distribucin Linux que tu elijas. As mismo, existen mtodos de instalacin alternativos que pueden ser aplicados cuando por ejemplo no disponemos de un lector DVD en el equipo, algunos de estos mtodos alternativos de instalacion son los siguientes: Mediante un servidor HTTP Mediante un Disco Duro

Instalacion desde CD o DVDVarias distribuciones linux asignan diferentes nombres para la estructura de sus carpetas de sus discos de instalacion, la escructura generica de estos directorios es la siguiente:

Carpeta paquetesEsta carpeta contiene los paquetes precompilados de Linux. La siguiente tabla muestra los nombres asociados a la carpeta paquetes de cada una de las distribuciones linux mas relevantes. Sistema Operativo Carpeta que almacena los paquetes precompilados Red Hat CentOS Fedora Debian Ubuntu Server CentOS Fedora dists dists

Carpeta imagenesEsta carpeta alberga los ficheros necesarios para llevar a cabo el proceso de instalacion de Linux como son: 1.Ficheros de boteo para el arranque de Linux 2.Modulos del Nucleo de Linux 3.Ficheros para el rescate de sistemas Linux Algunos de estos ficheros pueden ser copiados a una memoria USB o CD para ser usados como discos de arranque. Para sistemas operativos Linux de la familia Red Hat la carpeta imagenes esta relacionada con las carpetas images isolinux Para sistemas operativos Linux de la Familia Debian la carpeta imagenes esta relacionada con las carpetas casper isolinux

Carpeta dosutilsEste directorio contiene herramientas que pueden ser usadas para preparar la instalacion de Linux. Estas herramientas son programas diseadas en MS-DOS muy partiularmente el comando rawrite. Rawrite es un programa que graba una imagen de un archivo en un

4 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

disquette,cd o USB. Puede ser usado para grabar la imagen de un sistema operativo que sea utilizable como disco de arranque. La versin original fue escrita por Mark E. Becker a peticin de Linus Torvalds Existen versiones para otros sistemas operativos. En Linux y otros Unix se puede usar la orden dd que ya viene incluida con el sistema operativo.

Instalacion desde un servidor HTTPConfiguracion de la instalacion HTTP1.El primer paso sera instalar el servidor HTTP. Para sistemas operativos Linux de la familia Red Hat la instalacion de hace de la siguiente manera [BASH]# yum install -y httpd Para sistemas operativos Linux de la familia Debian la instalacion de hace de la siguiente manera [BASH]# apt-get install -y apache2 2.El siguiente paso sera introducir el medio de instalacion DVD a la unidad lectora de discos, crear una carpeta dentro de la carpeta publica del servidor HTTP y luego montarlo sobre dicha carpeta. Para sistemas operativos Linux de la familia Red Hat la ubicacion de la carpeta publica es la siguiente: /var/www/html/ Dentro de esta ruta se tiene que crear la carpeta y nombrarla con el nombre que usted elija. Para sistemas operativos Linux de la familia Debian la instalacion de hace de la siguiente manera /var/www/ Dentro de esta ruta se tiene que crear la carpeta y nombrarla con el nombre que usted elija. El comando para montar el medio de instalacion DVD es el siguiente: [BASH]# mount -t iso9660 -o loop /dev/dvd /var/www/html/carpeta

Esto ultimo para sistemas operativos Linux de la familia Red Hat y para sistemas operativos Linux de la familia Debian [BASH]# mount -t iso9660 -o loop /dev/dvd /var/www/carpeta

3.Una vez montado el DVD en la carpeta publica del servidor HTTP deberas copiar el fichero boot.iso al escritorio de trabajo o en algun otro lugar Este fichero lo podras encontrar dentro de la carpeta images La ruta completa donde puedes escontrar este fichero es la siguiente: /var/www/html/carpeta/images/boot.iso Esto ultimo para sistemas operativos Linux de la familia Red Hat y para sistemas operativos Linux de la familia Debian /var/www/carpeta/images/boot.iso 4.Graba el fichero boot.iso en formato .iso en un CD con ayuda da algun programa de grabacion de datos como K3B o Brasero. 5.Inserta el CD de arranque que acabas de crear en el lector del servidor y teclea enter. 6.Selecciona el idioma y tipo de teclado correspondiente: 7.En la seccion Metodo de Instalacion elige HTTP

5 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

8.En configuracion TCP/IP deshabilita la opcion IPv6 y solo deja habilitada la opcion Ipv4 9.En configuracion HTTP deberas teclear la direccion IP en la cual tienes montado el medio de instalacion DVD asi como tambien el nombre del directorio publico que creaste en el servidor HTTP y teclear el boton Acpetar NOTA:Este metodo de instalacion solo es aplicable a distribuciones Linux de la familia Red Hat

Instalacion desde un disco duroConfiguracion de la instalacion desde disco duro1.El procedimiento es relativamente parecido al anterior para ello debera contar con lo siguiente: medio de Instalacion DVD La imagen .ISO de la distribucion 1.Si usted cuenta con el medio de instalacion DVD debera convertir este en una imagen .ISO, si ya cuenta con la imagen .ISO omita este punto y salte al siguiente paso, si no es asi siga leyendo. Inserte el medio de instalacion DVD en el lector del equipo y teclee el siguiente comando para crear la imagen .ISO [BASH]# dd if=/dev/dvd of=/Ruta/En/Donde/Creara/La/Imagen/imagen.iso

2.Monta la imagen .ISO de la siguiente manera [BASH]# mount -t iso9660 -o loop imagen.iso /punto/De/Montaje 3.Copia los ficheros * initrd.img * vmlinuz En alguna carpeta del sistema Estos ficheros los podras encontrar en la carpeta isolinux de la imagen .ISO que acabas de montar 5.Edita el fichero /boot/grub/menu.lst Y agrega el siguiente contenido al final del archivo title root En esta linea usted puede agregar un comentario sobre el Sistema Operativo a Instalar En esta linea se indica el disco duro y la particion del disco duro en donde se encuentra localizada la imagen .ISO del sistema operativo

kernel En esta linea se indica la ruta en donde copio el fichero vmlinuz initrd En esta linea se indica la ruta en donde copio el fichero initrd.img No olvides guardar los cambios hechos al fichero 6.Desmonta la imagen .ISO de la siguiente forma: [BASH]# umount /punto/De/Montaje/imagen.iso 7.Lo siguiente sera reiniciar el equipo y justo cuando arranque el GRUB elegir la linea de instalacion del sistema Operativo Esta accion cargara el instalador del Sistema Operativo como si estuviera leeyendolo desde el medio de instalacion DVD

Disco de Rescate LinuxSi tu sistema operativo Linux se corrompe es posible recuperarlo usando un CD de rescate, este CD de rescate es una version reducida de Linux que implementa un sistema de ficheros en la memoria RAM del equipo el cual tiene como funcion acceder al sistema de ficheros del disco duro como usuario root

Comenzado con el Disco de Rescate Linux1.Introduce el medio de instalacion DVD en el lector de discos del equipo

6 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

2.Teclea en la pantalla la palabra #linux rescue 3.Selecciona el idioma y tipo de teclado correspondiente: 4.En configuracion de red, selecciona la opcion No 5.La siguiente ventana emergente intentara montar el sistema de ficheros de nuestro equipo en la ruta virtual /mnt/sysimage. Seleccione la opcion Continuar 6.Al terminar el proceso de arranque este nos mostrara una interfaz parecida al BASH 7.Teclee el comando [BASH]# fdisk /dev/hda Esta accion nos arrojara el siguiente mensaje Presione la tecla p , esto nos mostrara una lista con las distintas particiones alojadas en el disco duro, algo muy parecido al siguiente ejemplo 8.De acuerdo a la informacion obtenida en el anterior punto, monte la particion que contenga el sistema de ficheros de linux. Ejemplo: [BASH]# mount -t ext3 /dev/hda1 /tmp 9.Aplique el comando chroot Sobre la particion que acaba de montar Ejemplo: [BASH]# chroot /tmp Esto es porque existen dos sistemas de archivos , uno relacionado al virtualizando en la memoria RAM y el segundo relacionado al sistema de ficheros del disco duro. Al aplicar chroot sobre la particion montada tomaremos el control sobre el sistema de ficheros del disco duro y con ello podremos ajecutar comandos administrativos sobre el equipo. 10.Por ultimo, si olvido la contrasea de root o si esta fue cambiada por alguien mas , podra recuperarla tecleando en consola lo siguiente: [BASH]# passwd Cambiando la contrasea del usuario root. Nueva UNIX contrasea:

Arquitectura del SistemaAsignacion de recursosPara permitir que los perifericos y dispositivos del equipo se comuniquen directamente con los recursos del sistema , en particular con el CPU (Central Processing Unit) el sistema asigna recursos tales como lneas y canales de comunicacion para cada dispositivo. Muy particulamente, estos recursos son conocidos como solicitudes de interrupcion (IRQ), direcciones de entrada/salida y accesos directos a memoria(DMA).

Solicitudes de interrupcion (IRQ)Antes de explicar que es una solicitud de interrupcion, entendamos primero cual es la funcion de un procesador. El procesador es el encargado de procesar y administrar los datos y peticiones que a este llegan, sin embargo un solo procesador no es capaz de procesar simultaneamente varias peticiones , por lo que solo atiende de una a una las peticiones que a el llegan, aqui es donde las solicitudes de interrupcion empiezan a jugar un papel importante. Suponga que un programa1 est siendo atendido por el procesador pero subitamente una solicitud de interrupcin llega al procesador,es entonces cuando el programa1 llega a ser momentaneamente suspendido por un programa2. Este programa2 es ahora el atendido por el procesador y hasta que este termine de ser atendido el programa1 interrumpido puede continuar ejecutndose . Una interrupcin se convierte en una interrupcin de hardware cuando es solicitada por uno de los componentes de hardware del equipo. Cuando un perifrico desea acceder a un recurso, enva un pedido de interrupcin al procesador para llamar su atencin. Los perifricos cuentan con un nmero de interrupcin que se denomina IRQ (Peticiones de Interrupcin. Es como si cada perifrico tirara de un "hilo" que est atado a una campana para indicarle al equipo que desea que le preste atencin. Este "hilo" es, de hecho, una lnea fsica que conecta cada ranura de expansin as como cada interfaz entrada/salida a la motherboard.

Direcciones de Entrada/SalidaLas direcciones de entrada/ salida representan direcciones especificas en la memoria del sistema, dichas direcciones son asignadas por el

7 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

CPU a cada uno de los dipositivos del hardware del sistema para que puedan escribir y leer datos sobre la misma.

Accesos Directos a Memoria (DMA)El acceso directo a memoria (DMA) permite a cierto tipo de componentes del equipo acceder a la memoria del sistema para leer o escribir independientemente del procesador. Muchos sistemas hardware utilizan DMA, incluyendo controladores de unidades de disco, tarjetas grficas y tarjetas de sonido. DMA es una caracterstica esencial en todos los equipos modernos, ya que permite a dispositivos de diferentes velocidades comunicarse sin someter al procesador a una carga masiva de interrupciones. Una transferencia DMA consiste principalmente en copiar un bloque de memoria de un dispositivo a otro. En lugar de que el procesador inicie la transferencia, la transferencia se lleva a cabo por el controlador DMA. Un ejemplo tpico es mover un bloque de memoria desde una memoria externa a una interna ms rpida. Tal operacin no ocupa el procesador y como resultado puede ser planificado para efectuar otras tareas. Las transferencias DMA son esenciales para aumentar el rendimiento de aplicaciones que requieran muchos recursos. Regularmente un equipo consta de 8 canales DMA. Los primeros cuatro canales DMA poseen un ancho de banda de 8 bits mientras que los DMA 4 a 7 poseen a su vez un ancho de banda de 16 bits. Los canales DMA por lo general suelen asignarse de la siguiente manera: DMA0: libre DMA1: (tarjeta de sonido)/libre DMA2: controlador de disquete DMA3: puerto paralelo (puerto de la impresora) DMA4: controlador de acceso directo a memoria (conectado a DMA0) DMA1: (tarjeta de sonido)/libre DMA6: (SCSI)/libre DMA7: disponible

Listado de asignacion de recursosEl nucleo de linux agrupa la informacion relacionada a la asignacion de recursos en la carpeta /proc Los ficheros relevantes de esta carpeta son los siguientes: * /proc/dma ---> Fichero que contiene el historio DMA del equipo ---> Fichero que contiene el historico IRQ del equipo ---> Fichero que contiene el historico Entrada/Salida del equipo

* /proc/interrupts * /proc/ioports * /proc/pci

La asignacion de recursos tambien pueden ser consultada usando comandos como * lspci * dmesg

lspciLspci es un comando que nos imprime informacion detallada sobre los buses y dispositivos PCI conectados al equipo. Asi mismo nos da informacion detallada sobre los IRQ y direcciones de Entrada/Salida asociados a los dispositivos PCI entontrados, para ello solo se tiene que agregar el parametro -v al comando. Ejemplo [BASH]# lspci -v

dmesgdmesg (diagnostic message)es un comando que lista el buffer de mensajes del kernel de linux. Este buffer contiene una gran variedad de mensajes importantes generados durante el arranque del sistema y durante la depuracin de aplicaciones. Estos mensajes pueden ser consultado en el fichero /var/log/messages

Soporte USBEl bus universal en serie (Universal Serial Bus) es un protocolo de comunicacion diseado para conectar dispositivos a un equipo de computo. Estos dispositivos estan divididos en cuatro clases 1.Dispositivos de comunicacion (Tarjetas WiFi) 2.Dispositivos de audio (Bocinas, Microfonos) 3.Dispositivos de almacenamiento de datos (Memorias, Discos Duros, Lectores DVD) 4.Dispositivos de interfaz humana (Mouse, Teclado)

8 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

El soporte para dispositivos USB estuvo disponible hasta la version 2.2.7 del kernel de linux y con ello la liberacion de 3 modulos o controladores para la misma. Controlador Desarrollador Modulo para el Kernel OHCI UHCI EHCI Compaq Intel usb-ohci.o usb-uhci.o ehci-hdc.o

Asi mismo existe un comando en linux que nos imprime informacion detallada sobre los buses, dispositivos USB conectados al equipo, IRQ y direcciones de Entrada/Salida asociados a los dispositivos USB encontrados, el nombre de este comando es el siguiente. [BASH]# lsusb -v } El parametro -v es el encargado de listar la infomacion referente a los IRQ, DMA y las direcciones de entrada/salida de los dispositivos USB. Una forma para cononcer si en nuestro sistema operativo tiene soporte para estos controladores es revisando directamente el fichero de modulos del kernel de linux. La ruta de este fichero es la siguiente: /proc/modules

Dispositivos SCSIExisten dos tipos de interfaces scsi, estas son Una interfaz de 8 bits con un bus que soporta 8 dispositivos, esta incluye el controlador por lo tanto slo hay espacio para 7 dispositivos de bloque Una interfaz de 16 bits con un bus que soporta 16 dispositivos, esta incluye el controlador por lo tanto slo hay espacio para 15 dispositivos de bloque Los dispositivos SCSI pueden ser identificados mediante una serie de 3 numeros llamados SCSI ID, estos son: 1.El canal SCSI 2.El numero ID del dispositivo 3.Numero de unidad logica

El canal SCSICada adaptador SCSI soporta un canal de datos en la que atribuimos los dispositivos SCSI (discos, CD-ROM, etc). Estos canales estn numerados de 0 en adelante

El numero ID del dispositivoA cada dispositivo se le asigna un nmero nico de identificacin que se puede ajustar usando los jumpers del disco SCSI. Este rango de numeros de identificacion van de 0 a 7 para las interfaces de 8 Bits y de 0 a 15 para las interfaces de 16 Bits

Numero de unidad logicaEl trmino es originario del protocolo SCSI como una forma de diferenciar unidades de disco individuales dentro de un bus SCSI tal que un array de discos

Deteccion de dispositivos SCSITodos los dispositivos SCSI son listados en el fichero /proc/scsi/scsi El cual contiene las caractersitcas de los dispositivos scsi que el equipo a detectado. Ejemplo: Attached devices: Host: scsi0 Channel: 00 Id: 00 Lun: 00 Vendor: ATA Type: Model: ST3200820AS Rev: 3.AA ANSI SCSI revision: 05 Direct-Access

Tarjetas de RedLas tarjetas de red son el punto neuralgico de la comunicacion del equipo con el exterior y viceversa. Para ello el kernel debera tener soporte para este tipo de dispositivos. Una forma de obtener informacion referente a las tarjetas de red del sistema es haciendo uso de los siguientes comandos:

9 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

[BASH]# dmesg [BASH]# lspci Ejemplo: [BASH]# dmesg eth0: ADMtek Comet rev 17 at MMIO 0xdffffc00, 00:02:2a:cb:10:2b, IRQ 19. [BASH]# lspci 01:0a.0 Ethernet controller: ADMtek NC100 Network Everywhere Fast Ethernet 10/100 (rev 11) En el ejemplo podemos observar que la tarjeta de red cuenta con un chipset ADMtek , direccion de entrada/salida 0xdffffc00 y solicitud de interrupcion (IRQ)19. Esta informacion puede ser usada si el modulo asociado a la tarjeta de red comienza a entrar en conflictos con el kernel. Tambien es util si se requiere insertar un modulo con una diferente direccion entrada/salida a travez del comando modprobe.

Configuracion de impresorasAunque el tema de impresion es tratado mas a profundidad en el curso LPI 102 aqui daremos una breve introduccion. Desde la perspectiva del hardware, las impresoras son detectadas automaticamente por el equipo cuando este es encendido , asi mismo las impresoras detectadas por el sistema son listadas en el fichero /var/log/dmesg La forma de gestionar impresoras en linux se puede hacer de dos metodos. El primero es mediante una herramienta actualmente en desuso llamada printtool la cual proporciona un entorno grfico para montar y gestionar impresoras, sin embargo este paquete ha desaparecido para la mayoria de las distribuciones linux existentes. El segundo metodo es actualmente el mas implementado para la mayoria de las distribuciones linux y este lleva por nombre CUPS. CUPS(Common Unix Printing System) es un sistema de impresin modular para sistemas operativos de tipo Unix que permite que un equipo acte como servidor de impresin. Usualmente CUPS guarda todos sus ficheros de configuracion en el fichero /etc/cups Y generalmente hace uso del puerto 631 para llevar a cabo la administracion de estos recursos

Tarjetas de AudioExisten dos proyectos para el soporte de audio en linux , estos son: OSS.- Open Sound System ALSA.- Advanced Linux Sound Architecture

OSS (Open Sound System)En efecto, OSS es un proyecto comercial que proporciona controladores de audio a otras plataformas. El controlador libre paso a formar parte del proyecto Linux a partir de la version 2.0 del kernel de linux

ALSA (Advanced Linux Sound Architecture)Advanced Linux Sound Architecture es un componente del ncleo de Linux destinado a sustituir al Open Sound Sistema Algunas de las metas de este proyecto desde su concepcin fueron la configuracin automtica de tarjetas de sonido y el manejo de mltiples dispositivos de sonido en un slo sistema, metas que han sido alcanzadas en su mayor parte.

Identificando las tarjetas de audioUna forma usual de identificar las tarjetas de audio es haciendo uso del comando dmesg el cual nos informa si el kernel de linux detecto alguna tarjeta de audio. Ejemplo: [BASH]# dmesg | grep ALSA ALSA sound/pci/hda/hda_codec.c:3303: autoconfig: line_outs=4 (0x14/0x15/0x16/0x17/0x0) ALSA sound/pci/hda/hda_codec.c:3307: ALSA sound/pci/hda/hda_codec.c:3311: ALSA sound/pci/hda/hda_codec.c:3312: ALSA sound/pci/hda/hda_codec.c:3320: speaker_outs=0 (0x0/0x0/0x0/0x0/0x0) hp_outs=0 (0x0/0x0/0x0/0x0/0x0) mono: mono_out=0x0 inputs: mic=0x18, fmic=0x0, line=0x1a, fline=0x0, cd=0x1c, aux=0x0

10 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

Administracion de tarjetas de audioUna forma de administrar graficamente las tarjetas de audio en Linux es mediante la herramienta alsamixer. alsamixer es un programa de mezclado de audio para la arquitectura de sonido de Linux ALSA. Se utiliza para configurar el sonido y ajustar los volmenes. Tiene una interface para usuarios basada en ncurses (modo texto) y no necesita del sistema X Window System. Soporta gran variedad de placas de sonidos con dispositivos mltiples. -h, -help -c -g -s -V Ayuda: muestra las opciones disponibles. Selecciona la placa de sonido a utilizar, si en el sistema existen ms de una placa. Las placas se numeran desde 0 (por defecto). Cambia el uso de colores. Minimiza la ventana del mezclador Selecciona el modo de vista inicial, reproduccin, captura o todos.

-D Selecciona el mezclador para el control.

Conociendo el Arranque de LinuxSobre los Discos DurosUn disco duro es un dispositivo de almacenamiento masivo de datos que a su vez tambin puede tener instalado algn Sistema Operativo, as mismo funge como memoria no voltil, es decir, cuando por alguna razn se interrumpe la energa elctrica de nuestra casa u oficina la informacin anidada en el mismo se almacena de manera correcta, salvo algunas excepciones, como por ejemplo cuando se trabaja en tiempo real con el disco duro y no se guardan con anticipacin dichos cambios. Un ejemplo de memoria voltil es la memoria RAM (Random Access Memory), ya que este tipo de memoria solo almacena la informacin de manera temporal y es borrada nuevamente cuando se interrumpe la energa elctrica de la computadora. Un disco duro (Hard Disk) emplea un sistema de grabacin magntica el cual es aplicado a una una serie de platos metlicos apilados girando a gran velocidad. Sobre estos platos se sitan los cabezales encargados de leer o escribir los impulsos magnticos. Existen distintos tipos de interfaces y entre las mas comunes se encuentran las siguientes: IDE-ATA (Integrated Drive Electronics) SATA (Serial Advanced Technology Attachment) SCSI generalmente usado en servidores

Tipos de Discos DurosComo anteriormente mencionamos existen 3 tipos de discos duros:

Discos Duros IDE-ATA=Los discos duros con esta denominacin hacen uso de una interfaz llamada IDE(Integrated Device Electronics) ATA(Advanced Technology Attachment) que es la encargada de comunicar al Disco Duro con la tarjeta madre. El estndar IDE-ATA fue diseado originalmente para conectar discos duros; sin embargo, se desarroll una extensin llamada ATAPI que permite interconectar otros perifricos de almacenamiento como unidades de CD o unidades de DVD en una interfaz IDE-ATA. Habitualmente, un disco duro IDE-ATA puede estar configurado de 3 maneras diferentes, las cuales son: Maestro.- Los discos duros con esta configuracin indican a la tarjeta madre que el debe ser el primero en ser leido y por ende el primero en arrancar Esclavo.- Los discos duros con este tipo de configuracin no son tomados en cuenta al momento de arrancar el sistema por lo que el disco duro maestro puede disponer de los dems discos duros configurados como discos esclavos Seleccin por cable.- El dispositivo ser maestro o esclavo en funcin de su posicin en el cable. Si hay otro dispositivo, tambin debe estar configurado como cable select. Si el dispositivo es el nico en el cable, debe estar situado en la posicin de maestro. Este diseo IDE-ATA tiene el inconveniente de que mientras se accede a un dispositivo el otro dispositivo del mismo conector IDE no se puede usar. Este inconveniente est resuelto en discos duros como los SATA y en SCSI, que pueden usar dos dispositivos por canal. Los discos IDE estn mucho ms extendidos que los SCSI debido a su precio mucho ms bajo. El rendimiento de IDE es menor que SCSI pero se estn reduciendo las diferencias. En la siguiente figura podemos observar un diagrama que muestra la forma en cual debe ser conectado un disco duro IDE-ATA.

Discos Duros SATALos discos duros con esta denominacin hacen uso de una interfaz llamada Serial Advanced Technology Attachment que es la encargada de comunicar los dotos del Disco Duro con la tarjeta madre. Estos discos duros sustituyen a los tradicionales IDE-ATA, ademas de que proporciona mayores velocidades, mejor aprovechamiento cuando hay varios discos, mayor longitud del cable de transmisin de datos y

11 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

capacidad para conectar discos en caliente (con la computadora encendida). El estndar Serial ATA se basa en una comunicacin en serie. Se utiliza una ruta de datos para transmitir los datos y otra ruta para transmitir las confirmaciones de recepcin. En cada una de estas rutas, los datos se transmiten mediante el modo de transmisin LVDS (Seal diferencial de bajo voltaje) que consiste en transferir una seal a un hilo y su contrapartida a un segundo hilo para permitir que el destinatario recree la seal por diferencia. Los datos de control se transmiten por la misma ruta que los datos mediante una secuencia especfica de bits que los distingue. Por lo tanto, la comunicacin requiere de dos rutas de transmisin, cada una de las cuales est compuesta por dos hilos, con un total de cuatro hilos utilizados para la transmisin. Conectores de Serial ATA El cable utilizado por el estndar Serial ATA es un cable redondeado que contiene 7 hilos con un conector de 8 milimetros en su extremo, tres hilos tienen conexin a tierra y dos pares se utilizan para la transmisin de datos, el conector de la fuente de alimentacin tambin es diferente ya que comprende 15 clavijas que alimentan al perifrico con una potencia que varia entre 3.3 Volts, 5 Volts o 12 Volts y tiene una apariencia similar al conector de datos: Caractersticas El estndar Serial ATA brinda una velocidad de 187.5 MB/s 1.5 Gb/s, cada octeto se transmite con un bit de arranque y un bit de parada, con una velocidad efectiva terica de 150 MB/s 1,2 Gb/s. El estndar Serial ATA II debe contribuir a alcanzar 375 MB/s 3 Gb/s, es decir, una velocidad efectiva terica de 300 MB/s, y finalmente 750 MB/s 6 Gb/s, es decir, una velocidad efectiva terica de 600 MB/s. Los cables del estndar Serial ATA pueden medir hasta 1 metro de longitud (en comparacin con los 45 cm que miden los cables IDE). Adems, la baja cantidad de hilos en una envoltura redonda permite una mayor flexibilidad y una mejor circulacin del aire dentro de la carcasa que la de los cables IDE (incluso si existieran los cables IDE redondeados). A diferencia de los perifricos del estndar ATA, los del Serial ATA se encuentran solos en cada cable y ya no es necesario diferenciar los discos duros maestros de los discos duros esclavos. Otra de la ventajas con este tipo de disco es que permite la conexin en caliente o en pocas palabras, mientras el equipo esta encendido.

Discos Duros SCSIEl estndar SCSI (Small Computers System Interface) es una interfaz que se utiliza para permitir la conexin de distintos tipos de perifricos a un ordenador mediante una tarjeta denominada adaptador SCSI o controlador SCSI generalmente mediante un conector PCI. El nmero de perifricos que se pueden conectar depende del ancho del bus SCSI. Con un bus de 8 bits, se pueden conectar 8 unidades fsicas y con uno de 16 bits, 16 unidades. Direccionamiento de los Perifricos SCSI Los perifricos se direccionan mediante nmeros de identificacin. El primer nmero es el ID, nmero que designa al controlador que se encuentra dentro de cada perifrico (definido a travs de los caballetes posicionados en cada perifrico SCSI o por el software). El perifrico puede tener hasta 8 unidades lgicas (por ejemplo, una unidad de CD-ROM con varios cajones). Las unidades lgicas se identifican mediante un LUN (Nmero de unidad lgica). Por ltimo, un ordenador puede contener diversas tarjetas SCSI y, por lo tanto, a cada una le corresponde un nmero diferente. SCSI asimtrico y diferencial Existen dos tipos de bus SCSI: el bus asimtrico, conocido como SE (por Single-Ended o Terminacin nica), basado en una arquitectura paralela en la que cada canal circula en un alambre, sensible a las interferencias. Los cables SCSI en modo SE poseen 8 alambres para una transmisin de 8 bits (que se denominan limitados) o 16 alambres para cables de 16 bits (conocidos como extendidos). Este es el tipo de bus SCSI ms comn. el bus diferencial transporta seales a un par de alambres. La informacin se codifica por diferencia entre los dos alambres (cada uno transmite el voltaje opuesto) para desplazar las interrupciones electromagnticas, lo que permite obtener una distancia de cableado considerable (alrededor de 25 metros). En general, existen dos modos: el modo LVD (Voltaje bajo diferencial), basado en seales de 3,3 V y el modo HVD (Voltaje Alto Diferencial), que utiliza seales de 5 V. Los perifricos que utilizan este tipo de transmisin son cada vez ms raros y por lo general llevan la palabra "DIFF". Los conectores para las dos categoras de perifricos son los mismos, pero las seales elctricas son diferentes. Por lo tanto, los perifricos necesitan ser identificados (mediante los smbolos creados para tal fin) para no daarlos. Estndares SCSI Los estndares SCSI definen los parmetros elctricos de las interfaces de entrada/salida. El estndar SCSI-1 de 1986 defini los comandos estndar para el control de los perifricos SCSI en un bus con una frecuencia de 4,77 MHz con un ancho de 8 bits, lo que implicaba que era posible alcanzar velocidades de 5 MB/s. Sin embargo, un gran nmero de dichos comandos eran opcionales, por lo que en 1994 se adopt el estndar SCSI-2. ste define 18 comandos, conocidos como CCS (Conjunto de comandos comunes). Se han definido varias versiones del estndar SCSI-2: El SCSI-2 extendido, basado en un bus de 16 bits (en lugar de 8), ofrece una velocidad de 10 MB/s

12 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

El SCSI-2 rpido es un modo sincrnico rpido que permite un aumento de 5 a 10 MB/s para el estndar SCSI y de 10 a 20 MB/s para el SCSI-2 extendido (denominado SCSI-2 extendido rpido). Los modos Rpido-20 y Rpido-40 duplican y cuadriplican dichas velocidades respectivamente. El estndar SCSI-3 incluye nuevos comandos y permite la unin de 32 perifricos, as como una velocidad mxima de 320 MB/s (en modo Ultra-320). El siguiente cuadro resume las caractersticas de los diversos estndares SCSI

Configuracion de discosEn Linux, los discos fisicos son listados y representados dentro de la carpeta /dev Recordemos: Para ser identificados, el kernel les agrega un identificador el cual comienza con hd para el caso de discos IDE o sd para el caso de discos PATA o SCSI. Adicionalmente a cada uno de estos identificadores se les agrega una letra del alfabeto para identificar los discos maestros de los esclavos. Identificador del Disco Duro Dispositivo Logico hda hdb hdc hdd sda sdb Maestro Primario Esclavo Secundario Maestro Secundario Esclavo Secundario Primer Disco Sata o SCSI Segundo Disco Sata o SCSI

Configuracion de ParticionesAsi como los discos duros son listados y representados, tambien las particiones correspondientes a cada disco duro son representadas y listadas. Para ser identificados, el kernel le agrega un numero al final de cada identificador para diferenciar de una particion primaria, logica o extendida. NOTA:Los discos duros ATA y SATA permiten 4 particiones primarias, de las cuales 1 puede ser extendida.Las particiones extendidas pueden ser divididas en particiones logicas y estas pueden tener un maximo de 64 particiones para discos ATA/SATA y 16 particiones para discos SCSI

Aplicaciones graficas para particionar discos durosExisten aplicaciones libres como alternativas a las aplicaciones propietarias como es el caso del Partitioning Magic, a continuacin se exponen 2 de las mejores:

GpartedGParted es el editor de particiones de GNOME. Esta aplicacin es usada para crear, eliminar, redimensionar, inspeccionar y copiar particiones, como tambin sistemas de archivos. Esto es til para crear espacio para nuevos sistemas operativos, reorganizar el uso del disco y crear imgenes de un disco en una particin. La aplicacin utiliza la librera libparted para detectar y manipular dispositivos y tablas de particin, mientras varias herramientas de sistema de archivos dan mantenimiento a sistemas de archivos no incluidos en libparted. Est escrito en C++ y utiliza gtkmm como herramienta grfica. Este acercamento es para mantener la interfaz grfica de usuario lo ms simple posible, conforme con las Human Interface Guidelines. Gparted LiveCD Se encuentra disponible en LiveCD, basado en Slackware y construido sobre la ltima rama estable ncleo de Linux (2.6). LiveCD es actualizado con cada lanzamiento de GParted. El LiveCD de Ubuntu incluye esta aplicacin entre sus utilidades. Tambin se encuentra disponible en versin LiveUSB. Cuando se carga LiveCD, se inicia una mini-distribucin que contiene las siguientes aplicaciones: Escritorio Xfce Thunar como gestor de archivos Una aplicacin para capturas de pantallas (por medio de Thunar se pueden guardan en un pendrive) Documentento de ayuda GParted Xfree86 Capacidades y limitaciones GParted no puede incrementar el tamao de las particiones sin existir un espacio vaco despus de dicha particin, es decir, si existen dos particiones juntas no se podr aumentar el tamao de una en detrimento de la otra; pero esto es ms bien una limitacin tcnica. En esta tabla se muestran las capacidades de GParted, de acuerdo con cada sistema de archivos.

13 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

Si tu deseas probar esta aplicacin, la puedes descargar directamente de la pagina oficial del proyecto http://gparted.sourceforge.net

Parted MagicParte Magic es un LiveCD que incluye una distribucin Linux a medida para poder operar directamente con ella sin necesidad de ser instalada en el disco duro. No estamos hablando solo de un particionador de discos mas. En este LiveCD podemos encontrar varias herramientas entre ellas un editor de particiones llamado VisParted basado en el genuino Gparted con la que podremos crear, redimensionar y borrar nuestras particiones del disco duro. Parted Magic soporta los siguientes sistemas de archivos: ext2, ext3, ext4, fat16, fat32, hfs, hfs+, jfs, linux-swap, ntfs, reiserfs, reiser4 y xfs. Si tu deseas probar esta aplicacin, la puedes descargar directamente de la pagina oficial del proyecto http://partedmagic.com/

Formatear y particionar discos duros desde BASHFormatear y particionar dispositivos de almacenamiento de datos como discos duros y memorias USB es una tarea sencilla. Para ello usaremos tres herramientas, estas son: dd fdisk mkfs

Dando formato de bajo nivel con ddEsta herramienta sirve para dar formato de bajo nivel a un disco duro. La forma de implementar esta herramienta es la siguiente: [BASH] # dd if=/dev/zero of=/dev/sda

dd

El comando dd (duplicate disk) es un comando bastante til para transferir datos desde un dispositivo o archivo hacia otro dispositivo o archivo of significa output file, o sea, el dispositivo o archivo destino donde se van a copiar los datos.En el ejemplo de arriba nos referimos al disco duro

if=/dev/zero if significa input file, es decir, lo que quieres copiar En el ejemplo de arriba llenaremos de ceros el disco duro of=/dev/sda

El proceso puede variar dependiendo del tamao de almacenamiento del disco duro o del tipo de interfaz (IDE o SATA), por lo que tendra que ser paciente.

Particionando un disco duro con fdiskFdisk nos servira para agregar, eliminar, redimensionar o dar formato a un disco duro. La forma de aplicar esta herramienta es la siguiente: [BASH] # fdisk -l /dev/sd[a,b,c] sda,b,cHace referencia al numero de disco duro al que se le aplicara esta herramienta -l Este parametro listara la tabla de particiones que contiene el Disco duro La forma correcta de aplicar fdisk es de la siguiente manera: [BASH] # fdisk /dev/sd[a,b,c] La diferencia con el anterior comando radica en la forma en como fue implementado, pues en el primer comando indicamos explicitamente que deseamos conocer las particiones anidadas en el disco duro y con este ultimo estamos lanzando la aplicacion como tal. Una vez aplicado el comando mostrara un mensaje como este: Orden (m para obtener ayuda): Prueba tecleando la letra 'm', esto desplegara un menu con las utilidades de esta aplicacion.: Orden a b c d l m n Accin Conmuta el indicador de iniciable Modifica la etiqueta de disco bsd Conmuta el indicador de compatibilidad con DOS Suprime una particin Lista los tipos de particiones conocidos Imprime este men Aade una nueva particin

14 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

o p q s t u v w x

Crea una nueva tabla de particiones DOS vaca Imprime la tabla de particiones Sale sin guardar los cambios Crea una nueva etiqueta de disco Sun Cambia el identificador de sistema de una particin Cambia las unidades de visualizacin/entrada Verifica la tabla de particiones Escribe la tabla en el disco y sale Funciones adicionales (slo para usuarios avanzados)

La forma de agregar una particion al disco duro sera tecleando la letra 'n' lo cual nos desplegara la siguiente informacion: Accin de la orden e p p solo habra que especificar si la particion a aadir sera primaria (p) o extendida (e). NOTA:Los discos duros ATA y SATA permiten 4 particiones primarias, de las cuales 1 puede ser extendida. Las particiones extendidas pueden ser divididas en particiones logicas y estas pueden tener un maximo de 64 particiones para discos ATA/SATA y 16 particiones para discos SCSI* El siguiente paso sera especificar el tamao y numero de la particion a la cual haremos el cambio. En el siguiente ejemplo crearemos una particion que ocupara todo el tamao del disco duro. Nmero de particin (1-4): 1 Primer cilindro (1-1019, valor predeterminado 1): 1 Last cilindro, +cilindros or +size{K,M,G} (1-1019, valor predeterminado 1019): 1019 Si se quisiera asignar un tamao diferente para la particion tambien se podra hacer, Para ello podemos hacer uso de las unidades KiloBytes,Megabytes o GigaBytes pero de manera abreviada (K,M,G) Al terminar de aplicar lo cambios solo debera ejecutar la orden 'w' lo cual escribira los cambios al disco duro. Se ha modificado la tabla de particiones! Llamando a ioctl() para volver a leer la tabla de particiones. Se estn sincronizando los discos. Particin extendida Particin primaria (1-4)

Dando formato a un disco duro con mkfsPor ultimo solo restaria asignarle un formato a las particiones que creamos. Para ello haremos uso de la herramienta mkfs, la cual debe ser aplicada segun la siguiente sintaxis [BASH]# mkfs.[ext2|ext3|ext4|vfat|ntfs] /dev/sd[a,b,c][1,2,3]

Niveles de Ejecucion en LinuxEl Proceso de arranqueEl proceso de arranque de un sistema operativo Linux se inicializa de la siguiente manera: Cuando usted enciende su servidor o su computadora personal, esta hace que el BIOS de su equipo inicie las operaciones relacionadas con el arranque. El BIOS (Basic Input Output System) es un pequeo programa escrito en lenguaje ensamblador cuya funcin es cargar el sistema operativo en la memoria RAM (Random Access Memory), una vez que el BIOS carga el sistema operativo en RAM este inicia un proceso llamado POST (Power On Self Test) el cual es un proceso de diagnostico y verificacin de los componentes de entrada y salida de un servidor o computadora y se encarga de configurar y diagnosticar el estado del hardware, una vez verificado el hardware se inicia la fase de arranque del sistema (bootstrapping) el cual cede el control al GRUB (Grand Unified Bootloader), el GRUB es un gestor de arranque que hace uso de un men grfico que permite elegir el Sistema Operativo que se desea arrancar; As mismo, el GRUB realiza las siguientes tareas: 1.Cargar el kernel en memoria. 2.Cargar el sistema de ficheros virtual initrd el cual es usado tipicamente para hacer los arreglos necesarios antes de que el sistema de ficheros raz pueda ser montado 3.Pasarle los argumentos runlevel e init al kernel 4.Comenzar la ejecucin del

15 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

kernel Al terminar de ejecutar todas las tareas anteriores el GRUB le cede el control total del arranque al kernel y este a su vez se encarga de realizar la llamada a la funcin starup la cual tiene como funcin detectar el tipo de CPU con el que el equipo cuenta as como de lo principal del sistema operativo, como el manejo de memoria, planificador de tareas, entradas y salidas, comunicacin interprocesos, y dems sistemas de control, a partir de este momento se ejecuta el proceso INIT.

El Proceso INITINIT es el primer proceso en ejecutarse despues de la carga del kernel de linux e implementa dos modelos bajo los cuales puede trabajar, estos son 1.SystemV 2.BSD Estos modelos son arrancados por un programa (script) de arranque que establece como deben inicializarse los diferentes servicios, programas o registros que sean necesarios para que el sistema funcione como el administrador lo requiere. Explicaremos brevemente como es que trabajan estos modelos

SystemVEs un modelo usado para controlar el inicio y apagado del sistema y fue originalmente desarrollado por la compaa estadounidense de telecomunicaciones AT&T. SystemV fue una de las versiones del sistema operativo Unix que se encargaba de controlar el arranque de los programas en el instante de inicio del equipo. Este modelo es considerado por muchos como facil, potente y flexible en comparacion con el sistema de inicio BSD Existen cuatro versiones release de SystemV (SVR) , las cuales son: 1.SVR1.-Primera version de SystemV lanzada en 1984, incluia el editor de textos Vi 2.SVR2.-Incluye mejoras con respecto al nucleo el cual esta implementado como memoria virtual paginada, el sistema operativo Apple esta basado en este modelo. 3.SVR3.-Incluye mejoras en el sistema de ficheros asi como una nueva API de red, el sistema operativo AIX de IBM hace uso de este modelo 4.SVR4.- Fue la versin ms popular de SVR asi como la fuente de varias caractersticas comunes del sistema operativo Unix, como el script /etc/init.d Niveles de Ejecucion Los niveles de ejecucion en SystemV describen ciertos estados del equipo los cuales se caracterizan por ejecutar ciertos procesos. En general existen 8 niveles de ejecucion los cuales van del 0 al 6 y S o s, que son alias del mismo nivel de ejecucion, de estos ochos niveles, tres son considerados reservados, estos son: 0.- Halt 1.-Single user mode 6.-Reboot Aparte de los niveles de ejecucion 0,1 y 6 todos los sistemas operativos Linux tratan a los niveles de ejecucion un poco diferente. El denominador comun de todas las distribuciones linux es el fichero /etc/inittab el cual define lo que hace cada nivel de ejecucion. A continuacion un ejemplo de cuantos niveles de ejecucion tienen cada una de las distribuciones mas importantes de linux, asi como del sistema operativo solaris y AIX. En la mayoria de los sistemas operativos linux los usuarios pueden saber bajo que nivel de ejecucion estan trabajando tecleando en una consola y como root lo siguiente: [root@localhost ]$ runlevel N 5 Existen tambien los ficheros llamados rcN.d en donde la letra N representa cada uno de los niveles de ejecucion en los que trabaja init.d, la funcion de estos ficheros se explicara mas a detalle en el siguiente tema.

BSDEl modelo BSD init se ejecuta mediante el script de inicializacion situado en la ruta /etc/rc Algunos de los sistemas operativos que se basan en este modelo son los basados en BSD como:

16 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

FreeBSD NetBSD OpenBSD DragonFlyBSD DesktopBSD PCBSD

El fichero init.dEn este fichero se encuentran todos los scripts encargados de levantar cada uno de los servicios del servidor. La ubicacin de este fichero esta localizada en: Algunos de los servicios que podemos encontrar en el fichero init.d son los referentes a: Servidor Web Apache ---->httpd Servidor Samba ----->smb Servidor de Correo --->sendmail Servidor DHCP ---->dhcpd Servidor DNS ---->named Manejador de Base de Datos MySQL ---->mysqld [root@localhost ~]# cd /etc/rc.d/init.d/ [root@localhost init.d]# ls -l total 428 -rwxr-xr-x 1 root root . . . -rwxr-xr-x 1 root root -rwxr-xr-x 1 root root . . . -rwxr-xr-- 1 root root -rwxr-xr-x 1 root root -rwxr-xr-x 1 root root 6154 ago 6 05:05 named 2008 sendmail 1745 sep 18 10:26 smb 4112 mar 29 3099 feb 25 4239 mar 3 2008 httpd 2008 mysqld 2974 jun 23 10:18 dhcpd

El fichero rcN.drcN.d es un conjunto de directorios que representan cada uno de los niveles de ejecucion del sistema operativo. Estos directorios a su vez contienen un conjunto de enlaces simbolicos a los scripts del directorio /etc/rc.d/init.d La funcion que desempean estos directorios es organizar la manera en como los servicios de un servidor son levantados, como por ejemplo, imaginemos que tenemos instalado un servidor Web apache, y que lo tenemos configurado para que trabaje en los niveles de ejecucion 3 y 5 , por ende deberiamos poder observar dichos enlaces simbolicos en las rutas: /etc/rc.d/rc3.d /etc/rc.d/rc5.d Otra de las caracteristicas de estos enlaces simbolicos es la sintaxis de sus propiedades. Esta sintaxis esta conformada por 3 parametros 1.El estado del servicio, los cuales son representados con dos variables: La letra K.-Esta letra representa que el servicio esta dado de baja La letra S.-Esta letra representa que el servicio esta dado de alta 1.El orden en el que es arrancado el servicio.- Este parametro indica el orden en el que los servicios deben ser dados de alta o de baja 2.El nombre del servicio Un ejemplo de esto lo podemos observar de la siguiente tabla, la cual la tomamos de la ruta /etc/rc.d/rc5.d, lo cual indica que los scripts dentro de esta carpeta se ejecutan en el nivel de ejecucion 5 Los detalles del renglon subrayado se explican a continuacion:

El fichero inittabLa ubicacin de este fichero la podemos localizar en:

17 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

El fichero inittab describe que procesos se inician en la carga asi como los scripts de inicializacion del sistema, tambien distingue los multiples niveles de ejecucion bajo la cual trabaja el sistema operativo, recordemos que los niveles de ejecucion validos son 8, de los cuales tres son reservados y otro mas es alias de algun nivel en particular. De acuerdo a lo mostrado en la siguiente imagen describiremos la funcion que desempea cada linea. Para ello usamos como ejemplo el fichero inittab del sistema operativo Centos version 5.2 1.- Este recuadro nos indica los diferentes niveles de ejecucion bajo los cuales trabaja CentOS 5.2 2.-Este es el nivel de ejecucion en el cual arranca por defecto el equipo 3.-Aqui se especifica que script de configuracion se debe cargar para el proceso de arranque del sistema 4.-Aqui se especifican los scripts de arranque que el sistema utilizara para cada nivel de ejecucion o tambien llamados runlevels 5.-Esta seccion controla el reseteo del sistema. Se puede comentar esta linea para que no pueda ser reseteado el sistema 6.-Estas dos lineas estan relacionadas con las acciones que deben de seguirse en caso de una falla de voltaje y la segunda indica que debe hacerse cuando el voltaje ha sido restablecido. 7.-Lineas encargadas de controlar los procesos getty 8.-Esta linea arranca el entorno grafico del sistema, las cuales pueden ser GNOME o KDE

El fichero rc.sysinitEste fichero esta localizado en la siguiente ruta La funcion que desempea este fichero es ejecutar una serie de scripts que inicializan tareas como: Configuracion de reloj del sistema Configuracion de los parametros del Kernel Levantamiento de dispositivos RAID y LVM Activacion y Actualizacion de cuotas en disco Activacion de la particion SWAP

El fichero rc.localEste fichero esta localizado en la siguiente ruta Este fichero es el utimo en ser ejecutado por el proceso init. La funcion que tiene este script es agregar comandos que nos haga facil de realizar tareas necesarias como arrancar servicios especiales o inicializar dispositivos sin tener que escribir scripts complejos de inicializacion en el directorio /etc/rc.d/init.d ni creando enlaces simbolicos.

Niveles de EjecucionLos niveles de ejecucion o tambien llamados runlevels hacen referencia a los sistemas operativos Linux que implementan el estilo de sistema de arranque de iniciacion tipo UNIX System V del cual ya hemos hablando extensamente. A lo largo de este tema mencionamos 8 niveles de ejecucion bajo los cuales trabajan algunos sistemas operativos linux, en especial los de la Familia Red Hat. A continuacion mencionaremos las caracteristicas de cada uno de ellos.

Nivel 0 Parada Del SistemaEl nivel 0 es usado para especificarle al sistema que debe apagarse, la forma en que este lo hace es a travez del comando halt. Al ejecutarse este comando se apagan todos los servicios que se encuentren activos

Nivel 1 o S -Monousuario o Single UserEl nivel 1 o tambien llamado nivel Single (S) solo puede ser iniciado por el administrador del sistema (root), por lo que ningun usuario podra hacer eso de este nivel de ejecucion En este nivel no se activan los servicios de Red, y tampoco se inician los procesos (daemons) de inicio por lo que permite reparar problemas o hacer pruebas al sistema.

Nivel 2 -Multiusuario sin RedEste nivel esta caracterizado por la capacidad de permitir que varios usuarios puedan entrar al sistema pero sin contar con soporte en red, esto quiere decir que no se puede contar con servidores como NFS o web.

Nivel 3 -Multiusuario con RedEste sistema esta caracterizado por la capacidad de permitir a varios usuarios entrar al sistema, a diferencia del nivel de ejecucion 2, este si cuenta con soporte de red.

Nivel 4. -Sin UsoPara la mayoria de las distribuciones linux este nivel de ejecucion no tiene asignada ninguna funcion, pero puede ser personalizado por el administrador para que cumpla con alguna funcion en especial

Nivel 5. -Multiusuario GraficoEste nivel de ejecucion es identico al nivel 3, la unica diferencia es el alta de entornos graficos como GNOME o KDE para la administracion del sistema

Nivel 6. -Reinicio del Sistema

Comando chkconfig

18 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

Este comando es una herramienta util para levantar o desactivar servicios los cuales son aplicados durante el arranque del equipo asi como tambien conocer el estado de los servicios que se estan ejecutando. Para conocer el estado de los procesos que estan corriendo en su sistema puede ejecutar el siguiente comando [root@localhost ~]#chkconfig --list

Para conocer el status de algun proceso en particular solo teclee esto [root@localhost ~]#chkconfig -list httpd httpd 4:desactivado 0:desactivado 5:desactivado 1:desactivado 6:desactivado 2:desactivado 3:desactivado

Lo cual nos mostrara bajo que niveles de ejecucion esta corriendo el proceso o servicio. Para levantar algun proceso o servicio durante el arranque del sistema solo teclee esto [root@localhost ~]#chkconfig -level 35 httpd on De esta manera estamos especificando el sistema que siempre que este inicie levante el servidor web apache en los niveles de ejecucion 3 y 5 Para detener algun proceso o servicio durante el arranque del sistema solo teclee esto [root@localhost ~]#chkconfig -level 35 httpd off De esta manera estamos especificando el sistema que siempre que este inicie tenga detenido el servidor web apache en los niveles de ejecucion 3 y 5

Levantando, deteniendo y reiniciando serviciosOtra forma de levantar, detener o reiniciar servicios en caliente es mediante el uso del siguiente comando el cual hace uso del fichero init.d del cual hemos hablado anteriormente. La estructura de la sintaxis para poder ocupar el comando es la siguiente: [root@localhost ~]#/etc/init.d/nombreDelServicio {start|stop|status|restart|reload}

A manera de ejemplificar el uso del anterior comando haremos lo siguiente. Supongamos que tenemos ya instalado y configurado un servidor web apache y lo unico que falta es levantar el servicio, para ello solo bastara teclear lo siguiente: [root@localhost ~]#/etc/init.d/httpd start Para detener este mismo servicio solo debemos cambiar la palabra start por stop [root@localhost ~]#/etc/init.d/httpd stop De igual manera si se quiere reiniciar el servicio solo debemos cambiar la palabra stop por restart [root@localhost ~]#/etc/init.d/httpd restart Otra manera de arrancar, detener o reiniciar servicios sin necesidad de teclear toda la ruta anterior es mediante el uso de un alias el cual tiene la siguiente sintaxis [root@localhost ~]# service httpd {start|stop|status|restart|reload} De igual forma solo debemos teclear start, stop o restar segn sea el caso Ejemplo: [root@localhost ~]#service httpd start

Manejo de Paquetes

19 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

Introduccion a la gestion e instalacion de softwareInstalar, actualizar o eliminar software en sistemas operativos linux diferira de la forma en como usted lo hacia en sistemas operativos Windows o Mac, esto es debido a que la mayoria de las aplicaciones desarrolladas para Linux no cuentan con un asistente de instalacion, en cambio, usted tendra que aprender a aplicar una serie de comandos en su equipo para poder llevar a cabo tareas de administracion y de gestion de paquetes. La forma en que usted llevara a cabo esta administracion y gestion de paquetes sera mediante el uso de las siguientes herramientas Yellow dog Updater Modified (YUM) es una herramienta de software libre de gestin de paquetes para sistemas Linux basados en yum RPM, fue desarrollada principalmente para actualizar y controlar los sistemas Red Hat, Fedora, CentOS, y otras distribuciones de GNU/Linux basadas en RPM, incluyendo el mismo Yellow Dog. Red Hat Package Manager (RPM), es una herramienta de administracin de paquetes. Es capaz de instalar, actualizar, desinstalar, rpm verificar y solicitar programas. Originalmente desarrollado por Red Hat para Red Hat Linux, en la actualidad muchas distribuciones GNU/Linux lo usan, dentro de las cuales las ms destacadas son Fedora Linux, Mandriva Linux, SuSE Linux. Tambin se ha portado a otros sistemas operativos. apt Advanced Packaging Tool (APT) , es un sistema de gestin de paquetes creado por el proyecto Debian. APT simplifica en gran medida la instalacin y eliminacin de programas en los sistemas GNU/Linux. aptitude es una interfaz para APT. Muestra una lista de paquetes de software y permite al usuario elegir de modo interactivo cules aptitude desea instalar o eliminar. Dispone de un poderoso sistema de bsqueda que utiliza patrones de bsqueda flexibles, que facilitan al usuario entender las complejas relaciones de dependencia que puedan existir entre los paquetes. En un principio, se dise para distribuciones GNU/Linux Debian, pero hoy da se utiliza tambin en distribuciones basadas en paquetes RPM, como Mandriva. dpkg El programa dpkg es la base del sistema de gestin de paquetes de Debian GNU/Linux. Se utiliza para instalar, quitar, y proporcionar informacin sobre los paquetes .deb.

Herramienta RPMRPM (Red Hat Package Manager) es una herramienta de administracion y gestion de paquetes orientada para sistemas operativos Linux, la cual es capaz de instalar, actualizar, desinstalar y verificar paquetes. Los paquetes RPM fueron originalmente desarrollados por la empresa Red Hat con la intencion de implementarlo en el sistema operativo Red Hat Linux. Actualmente los paquetes RPM son utilizados por distribuciones linux como Fedora, Centos, Suse y White Box. Comando rpm -ivh paquete1.rpm rpm -Uvh paquete1.rpm Comentario Te permite instalar paquetes .rpm Te permite actualizar paquetes .rpm

rpm -e nombreDelPaquete Te permite eliminar un paquete No hay que aadir la extensin, sino slamente el nombre del paquete, sin la estensin RPM. Generalmente, se comienza por listar el paquete para conocer el nombre del mismo antes de desinstalarlo asi como tambien para asegurarse de que el paquete est instalado en nuestro sistema. rpm -q nombreDelPaquete Nos permite conocer si un paquete se encuentra instalado o no en el equipo rpm -qa | grep nombreDelPaquete Realiza una busqueda mas profunda sobre los paquetes que tenemos instalados o no en el equipo.

Herramienta YUMComando yum install paquete1 paquete2 ...paqueteN yum update paquete1 paquete2 ...paqueteN yum remove paquete1 paquete2 .. paqueteN yum update yum update --exclude=ekiga yum search paquete1 yum info paquete1 yum repolist enabled yum localinstall paquete1.rpm yum localupdate paquete1.rpm Comentario Instala paquetes con sus dependencias Te permite actualizar paquetes junto con sus dependencias Te permite eliminar paquetes junto con sus dependencias Actualiza e instala todos los paquetes del sistema operativo Actualiza e instala los paquetes del sistema operativo, solo excluye el definido en la opcion --exclude Nos ofrece un listado de resultados de los paquetes producto de la bsqueda por coincidencia de cadena de caracteres en la descripcin, resumen y nombre del paquete Nos ofrece informacion detallada sobre algun paquete Nos permite conocer los repositorios que se encuentran habilitados Te permite instalar paquetes RPM Te permite actualizar un paquete RPM

20 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

yum list installed yum list available yum list updates yum grouplist yum groupinfo "nombreDelGrupo"

Lista todos los paquetes instalados en el sistema Lista los paquetes que pueden ser instalados Lista los paquetes que pueden ser actualizados Lista por grupos los paquetes instalados Obtiene informacin de los grupos y de sus paquetes constitutivos

yum groupinstall "nombreDelGrupo" Instala un grupo de aplicaciones yum groupupdate "nombreDelGrupo" Actualiza un grupo de aplicaciones yum groupremove "KDE (K Desktop Environment)" Elimina un grupo de aplicaciones.

Configuracin de YUMLa configuracin general de YUM se encuentra en /etc/yum.conf los repositorios YUM configurados en sistemas operativos de la familia Red Hat se encuentran declarados en /etc/yum.repos.d/ Para usos ms avanzados agregaremos nuevas secciones y en caso de no encontrar lo que busca consulte man yum.conf. [main] cachedir=/var/cache/yum keepcache=0 debuglevel=2 logfile=/var/log/yum.log exactarch=1 obsoletes=1 gpgcheck=1 plugins=1 metadata_expire=1800 installonly_limit=2 tsflasg=repackage # PUT YOUR REPOS HERE OR IN separate files named file.repo # in /etc/yum.repos.d La primera cosa que podemos notar de los archivos de configuracin es su estructura de bloques de secciones con seccin. Veremos que esta estructura se repite al momento de configurar los repositorios. En este caso yum.conf en la seccin main define el comportamiento general de yum y establece las directivas base, por ejemplo, de dnde se encuentran el cache. Comentamos a abajo un poco cada una de las directivas. cachedir Directorio donde yum debe almacenar su cache y archivos db. El valor por omisin es /var/cache/yum. keepcache Ya sea 1 o 0. Determina si yum debe o no mantener el cache de los encabezados y paquetes despus de una instalacin exitosa. Valor por omisin es 1 (mantener los archivos) debuglevel Nivel de mensajes de depuracin en la salida. El rango prctico es de 0-10. El valor por omisin es 2. logfile Ruta completa al nombre de archivo donde yum debe escribir sus actividades. exactarch Ya sea 1 o 0. Puesto a 1 provoca que yum update solo actualice los paquete de arquitectura que haya instalado, es decir, con esta opcin habilitada yum no instalar un paquete i686 para actualziar un paquete i386. Por omisin el valor es 1.

21 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

obsoletes Esta opcin slo tiene efecto durante una actualizacin. Habilita la lgica de procesamiento de obsolescencias yum. Es til cuando se realiza actualizaciones de nivel de distribucin (upgrade). Vea tambin la documentacin del comando yum upgrade para ms detalles. Opcin en la lnea de comando: --obsoletes gpgcheck Ya sea 1 o 0. Esto le indica a yum si debe o no realizar una verficacin de firma GPG en los paquetes. Cuando est habilitado en la seccin main, establece el comportamiento por omisin para todos los repositorios. Esta opcin tambin determina si una instalacin de un archivo local RPM ser verificado por su firma GPG o no. El valor por omisin es 0. plugins Ya sea 0 o 1. Conmutador global para habilitar o deshabilitar las extensiones (plugins) de yum. Por omisin su valor es 0 (extensiones deshabilitadas). Vea la seccin PLUGINS del manual yum(8) para ms informacin acerca de la instalacin de extensiones yum. metadata_expire Duracin en segundos despus del cual los metadatos caducarn. As entonces si los metadatos actuales descargados son menos segundos de antiguo, entonces yum no actualizar dichos metadatos a partir del repositorio. Si encuentra que yum no est descargando la informacin para actualizaciones tan frecuente como usted quisiera, disminuya el valor de este parmetro. Tambin puede cambiar del formato por omisin en segundos a das, horas o minutos agregando d, h o m respectivamente al valor especificado. El valor por omisin es 1.5 hours, para complementar yum-updatesd ejecutndose una vez por hora. Tambin es posible usar la palabra "never" implicando que los metadatos nunca expirarn. installonly_limit Cantidad de paquetes listados en installonlypkgs que se deben mantener instalados al mismo tiempo. Poner este valor a 0 deshabilita la funcionalidad. Por omisin el valor es 3. tsflasg Lista separado por comas o espacios de banderas de transaccin que sern pasadas a rpm. Estas incluyen noscripts, notriggers, nodocs, test, y repackage. Puede poner todas o cualquiera de ellas. Sin embargo, si no sabe qu hacen stas banderas en el contexto de una transaccin rpm, mejor no toque. Por omisin la lista est vaca. Estas son slo algunas directivas, para ms, man yum.conf. Dentro de yum.conf puede incluir la configuracin de los repositorios pero esa forma de configuracine est en desuso y se prefiere utilizar archivos individuales en /etc/yum.repos.d/ que comentaremos ms adelante.

Extensiones de YUMdownloadonly Este paquete nos permite descargar los paquetes RPM de alguna aplicacin sin que estos sean instalados. La forma de instalar esta herramienta sera tecleando lo siguiente .. [BASH]# yum install yum-downloadonly Implementando downloadonly====== La manera de usar este comando es de la siguiente forma.. [BASH]# yum install downloadonly paquete1 fastestmirror Esta extensin est diseada para ordenar la lista de espejos por velocidad de respuestas de cada uno antes de comenzar una descarga. La forma de instalar esta herramienta sera tecleando lo siguiente .. [BASH]# yum install yum-fastestmirror Implementando downloadonly====== La manera de usar este comando es de la siguiente forma..

22 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

[BASH]# yum install paquete1

Utilidades YUMyumdownloader Esta herramienta complementa al plugin downloadonly ya que dicho plugin slo funciona si el software deseado no est instalado. Veamos como falla y cmo podemos resolver este problema con yumdownloader. [BASH]# yum --downloadonly install openssh-server Loading "downloadonly" plugin Setting up Install Process Setting up repositories Reading repository metadata in from local files Parsing package install arguments Nothing to do Pues claro, no hay nada que instalar, ya est instalado. Intentemos ahora con yumdownloader. [BASH]# yumdownloader openssh-server 00:01

openssh-server-4.3p2-19.f 100% |=========================| 252 kB Listo, ya tenemos el rpm que queramos.

package-cleanup Esta herramienta ayuda a detectar problemas en la base de datos rpm y a resolverlos. Comando package-cleanup --dupes Comentario Lista los paquetes con duplicados en la base de datos RPM

package-cleanup --orphans Lista paquetes hurfanos o aquellos paquetes que no son provistos por ninguno de los repositorios configurados package-cleanup --problemsLista los problemas de dependencias en la base de datos RPM yum-complete-transaction yum-complete-transaction es un program que busca transacciones yum incompletas o abortadas en el sistema e intenta completarlas. Busca en los archivos transaction-all* y transaction-done* que normalmente se encuentran en /var/lib/yum si una transaccin ha sido abortada en el medio de su ejecucin. Si se encuentra ms de una transaccin no terminada se intentar completar la ms reciente primero. Puede ejecutar este programa ms de una vez para limpiar todas las transacciones sin terminar. Ejemplo.. [BASH]# yum-complete-transaction

Herramienta DPKGComando dpkg -i *.deb dpkg --purge paquete1.deb dpkg --info paquete1.deb dpkg --status paquete1.deb dpkg --search paquete1.deb dpkg help dpkg --configure -a Comentario Te permite instalar varios paquetes deb. dpkg -i paquete1.deb Te permite instalar paquetes deb. dpkg -r paquete1.deb Borra paquete instalado en el sistemas. Borra paquete instalado sin dejar rastro.

dpkg -l paquete1.deb Hace bsquedas en SO de los paquetes ya instalados. Muestra la informacin del paquete. Muestra el estado del paquete. Muestra la informacin de donde se instalo el paquete. Obtienes la ayuda del comando dpkg. Ayuda arreglar a terminar de configurar paquetes rotos o que no se terminaron de instalar, se ocupa solo en emergencias cuando las herramientas avanzadas no pueden solucionar el problema.

Herramienta APTITUDE

23 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

Comando

Comentario

aptitude install paquete1 Instala paquete y con las dependencias que tenga. aptitude remove paquete1 Borra paquete y sus dependencias pero no las configuraciones. aptitude purge paquete1 Borra paquete, sus dependencias y archivos de configuracin. aptitude hold paquete1 aptitude update aptitude upgrade aptitude dist-upgrade aptitude show paquete1 aptitude clean aptitude autoclean Bloquea paquete, para que no sean actualizados o eliminados. Actualiza lista de paquetes nuevos. Actualiza los paquetes que tengamos instalados en nuestro sistema. Actualiza SO a la nueva versin de la misma. Muestra informacin detallada de un paquete. Elimina los fichero de paquetes descargados. Elimina los ficheros de paquetes descargados, como tambin limpia las llaves de los repositorios. aptitude unhold paquete1 Desbloquea paquete.

aptitude search paquete1 Busca paquetes por nombre o expresin.

Herramienta APTComando apt-get update apt-get upgrade apt-get install paquete1 apt-get -f install apt-get remove paquete1 apt-get dist-upgrade apt-get clean apt-get autoclean apt-get check apt-cache search paquete1 apt-cache showpkg apt-cache dumpavail apt-cache pkgnames apt-get autoremove Comentario Actualiza la lista de paquetes. Actualiza los paquetes de la SO. Instala paquetes y con sus dependencias. Instala/borra paquetes y dependencias que esten o sin cumplir paquetes. Borra paquete y sus dependencias. Actualiza distribucin a la mas reciente. Elimina paquetes descargados. Elimina paquetes descargados, tambin borra cabeceras de repositorios. Verifica que hay dependencias o paquetes . Busca paquete o una cadena de texto. Muestra informacin sobre el paquete. Muestra informacin sobre los paquetes que estan disponibles. Muestra una lista rpida de todos los paquetes del sistema. Borra paquetes ya obsoletos o no necesarios.

apt-get install --reinstall paquete1 Reinstala paquetes daados.

apt-get remove purge paquete1 Borra paquete, sus dependencias y archivos de configuracin.

Manejo de comandosSobre SHELLEl shell es una interprete de comandos diseado especificamente para sistemas operativos Unix y derivados como Linux y BSD, su principal funcion es la de servir como puente entre los usuarios y el hardare fisico de un equipo; Por puente me refiero a que el shell se encargara de interpretar y traducir los comandos en un lenguaje que pueda ser entendido por el hardware del equipo. El trmino shell tambin hace referencia a un programa particular, tal como el Bourne shell o BASH. El BASH fue el shell usado en las primeras versiones de los sistemas operativos Unix , posteriormente paso a convertirse en estandar para todos los sistemas operativos Linux

El Ambiente LinuxPara que entiendas lo que es y como funciona el Shell, primero te mostrar como funciona el ambiente en capas. Para ello analizaremos la siguiente imagen. En este grfico se ve que la capa del hardware es la mas profunda y se encuentra conformada por los componentes fsicos de tu equipo. Envolviendo a sta, viene la capa del kernel que es el corazn de Linux, su ncleo, y es quien hace que el hardware funcione, efectuando su manejo y control. Los programas y comandos que envuelven el kernel, lo utilizan para realizar las tareas especificas para las cuales fueron desarrolladas. Encerrando todo eso viene el Shell que tiene este nombre porque en ingles, Shell significa concha, envoltura, o sea que, queda entre los usuarios y el sistema operativo, de forma que todo lo que interacciona con el sistema operativo, tiene que pasar por su filtro.

Algunas variantes del SHELL

24 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

Bourne Shell (sh)Desarrollado por Stephen Bourne de la Bell Labs (de AT&T donde tambin fue desarrollado el Unix), este fue durante muchos aos el Shell patrn del sistema operativo Unix. Es tambin llamado de Standard Shell por haber sido durante varios aos, el nico y hasta hoy es el mas utilizado ya que fue transportado para todos los ambientes Unix y distribuciones Linux.

Korn Shell (ksh)Desarrollado por David Korn, tambin de la Bell Labs, es un superconjunto del sh, o sea, posee todas las facilidades del sh y a ellas se agregaron muchas otras. La compatibilidade total con el sh esta atrayendo a muchos usuarios y programadores de Shell para este ambiente.

Boune Again Shell (bash)Este es el Shell mas moderno y cuyo nmero de adeptos crece mas en todo el mundo, sea por ser el Shell default de Linux, su sistema operativo natural, o sea por su gran diversidad de comandos, que incorpora inclusive diversas instrucciones caractersticas del C Shell.

CShell (csh)Desarrollado por Bill Joy de la Berkley University es el Shell mas utilizado en ambientes *BSD e Xenix. La estrutura de sus comandos es bastante similar al del lenguage C. Su gran pecado fue ignorar la compatibilidad con el sh, partiendo por un camino propio. Adems de estos Shells existen otros, pero contigo voy a hablar solamente sobre los tres primeros, tratandolos genricamente por Shell y sealando las peculiaridades de cada uno que eventualmente tengan.

Introduccion a BASHConociendo el SHELL de nuestro equipoUna forma de conocer sobre cual SHELL estamos trabajando es tecleando el siguiente comando en una terminal # echo $SHELL /bin/bash Si obtuviste el mismo resultado que en la linea de ariba entonces estas utilizando el Shell Bash, en caso contrario de no haber obtenido lo mismo, significa entonces que tu estas usando algun otro Shell.

Usando el comando cdcurrent working directory o cd es el comando utilizado para indicar al Shell el directorio en el cual queremos trabajar. Hagamos una prueba de este comando navegando en nuestro propio sistema de ficheros. En la terminal teclee lo siguiente: [BASH]# cd / Este comando le indica al BASH que queremos trabajar en el directorio /, tambien conocido como raiz

Rutas (Paths)Para conocer el directorio actual de trabajo en el que se encuentra el BASH escriba: [BASH]# pwd / En el ejemplo anterior , el argumento / es conocido como la ruta o camino hacia donde queremos dirigirnos. En particular, el argumento / es un ruta absoluta

Rutas AbsolutasAlgunos ejemplos de rutas absolutas son las siguientes: /boot /etc /root /usr/local/bin Note que todas estas rutas absolutas tienen un comun denominador, nos referimos a la barra / Analicemos a detalle la ultima linea del ejemplo: Si usted teclea cd /usr/local/bin En ella indicamos al Shell a traves del comando cd (current working directory) que primero entre al directorio / , desde ahi luego entrara al directorio usr posteriormente al directorio local y recien desde ahi entrara a bin. Las rutas absolutas siempre comenzaran a evaluarse a partir de /.

Rutas RelativasLas rutas relativas son todas aquellas que no comienzan a evaluarse desde / Por ejemplo, si estamos trabajando en la ruta /usr

25 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

[BASH]# cd /usr Entonces, ahora usted podra usar una ruta relativa para cambiar el directorio actual de trabajo a /usr/local/bin de la siguiente forma: [BASH]# cd local/bin [BASH]# pwd /usr/local/bin

Usando el . . (punto a punto)El uso del . . sirve unicamente para regresar un nivel desde el directorio de trabajo en el cual estamos trabajando. Ejemplo: [BASH]# cd /usr/local/bin [BASH]# pwd /usr/local/bin [BASH]# cd ../../ [BASH]# pwd /usr En la primera seccion del ejemplo indicamos a traves del comando cd (current working directory) que primero entre al directorio / , desde ahi luego entrara al directorio usr posteriormente al directorio local y recien desde ahi entrara a bin. En la segunda seccion del ejemplo indicamos mediante el uso del (../) punto punto que regrese un nivel, pero inmediatamente indicamos nuevamente que retroceda otro nivel mas (../) Por cada retorno de nivel debera hacerse uso del (..) punto punto

Entendiendo el . (punto)El uso del punto (. ) sirve para ejecutar algn programa situado en el directorio actual. Ejemplo : [BASH]# ./ejecutable En este ejemplo, se ejecutara el archivo llamado ejecutable que reside en el directorio actual de trabajo.

Usando los comandos de LinuxEl comando lsVamos a darle una pequea mirada al comando ls, el cual, ya conozca tal vez, pero por si no lo sabe , este sirve para listar el contenido del directorio actual de trabajo. Hagamos un ejercicio, con ayuda del comando cd muevase al directorio de trabajo /var [BASH]# cd /var

Ahora con ayuda del comando ls liste el contenido de dicho directorio [BASH]# X11R6 ls cache crash games lib lock log mail opt run spool tmp

Si al comando ls le agregamos el parametro -a nos listara todos los ficheros del directorio incluyendo los ficheros ocultos.Los ficheros ocultos son indentidicados por llevar un punto (.) al princio del nombre del fichero. Ejemplo: [BASH]# .emacs ls -a .gvfs .pulse .wapi

Para realizar un listado completo sobre la informacion de algun directorio basta con agregar al comando ls el parametro -l Nuevamente con ayuda del comando cd muevase al directorio de trabajo /var, pero esta vez use el comando ls junto el parametro -l y compare sus resultados con el primer ejemplo [BASH]# [BASH]# total 52 drwxr-xr-x 11 root root 4096 jun drwxr-xr-x 19 root root 4096 jun drwxrwxrwt drwxr-xr-x 2 root root 4096 dic 2 root root 4096 dic 9 04:59 adm 9 11:28 cache 3 9 2008 crash 2008 games cd /var

ls -l

26 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

drwxr-xr-x 41 root root 4096 jun drwxrwxr-t lrwxrwxrwx drwxr-xr-x

9 11:28 lib

6 root uucp 4096 jun 17 11:40 lock 1 root root 10 jun 9 04:46 mail -> spool/mail 3 2008 opt

drwxr-xr-x 13 root root 4096 jun 16 15:38 log 2 root root 4096 dic

drwxr-xr-x 25 root root 4096 jun 17 11:40 run drwxr-xr-x 12 root root 4096 jun drwxrwxrwt drwxr-xr-x drwxr-xr-x 3 root root 4096 dic 3 root root 4096 dic 9 04:49 spool 9 9 2008 X11R6 2008 yp 8 root root 4096 jun 17 10:44 tmp

La opcion -l le resultara de gran utilidad cuando quiera ver informacion sobre permisos, tiempos de modificacion, tamao o propiedad de los contenidos listados. De forma mas detallada, la primer columna muestra la informacion sobre los permisos para cada elemento listado. La columna siguiente lista el numero de links para cada objeto del sistema de ficheros. La tercer y cuarta columna listan el propietario del elemento, y el grupo al cual pertenece, respectivamente. La quinta muestra el tamao de los objetos, mientras que la sexta lista cuando fue realizada la ultima modificacion del objeto . La ultima columna es el nombre del objeto. Si el archivo es un enlace simbolico, entonces usted ver una flecha --> y la ruta hacia la cual el link simbolico apunta. En el capitulo 7 veremos mas a fondo este comando

ComodinesLos comodines son caracteres que se utilizan en lugar de otros caracteres que el sistema rellena. Los dos comodines ms frecuentes son: El asterisco * La interrogacin ? Aunque en ocasiones se confundan, su significado es diferente y producirn resultados totalmente distintos. El asterisco significa ninguno, alguno o todos los caracteres: Ejemplo: [BASH]# ed ls e*

edusat.txt xito.pdf eduardo.gif educacion

Este comando mostrar todas las entradas de archivos o directorios dentro del directorio actual que comiencen con la letra e, y que tengan cualquier nmero de caracteres. Hay que prestar atencin a que el comando encuentra la e sola y la e seguida de cualquier nmero de caracteres a continuacin. En contraste, la interrogacin (?) es un contenedor para un y slo un carcter. Utilizando las mismas posibilidades que antes, el comando: [BASH]# ed Encontrar entradas de archivos y directorios dentro del directorio actual que comiencen por la letra s y que nicamente tengan una letra ms. Si quisisemos encontrar las entradas que comiencen por e y cuyo nombre tenga 5 caracteres en total, utilizaramos: [BASH]# ls e???? ls e?

En resumen, el asterisco significa todos o ninguno, y el interrogante siempre significa uno. Estos dos comodines no son excluyentes, de modo que se pueden combinar segn las necesidades. Por ejemplo, para encontrar slo los archivos que tengan una extensin de tres letras dentro del directorio actual, utilizaremos: [BASH]# ls *.???

Para complicar un poco ms las cosas tambin podemos utilizar los corchetes ( ) para especificar posibles valores. Todos los valores posibles deben estar dentro de los corchetes, y el shell los tratar individualmente: En el siguiente ejemplo encontrar todas las entradas que comiencen por d o por e y que contengan un nmero ilimitado de caracteres. [BASH]# ls [de]*

Para encontrar las entradas de longitud de 3 caracteres que comiencen por d o por e, utilizaremos: [BASH]# ls [de]???

27 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

El nmero de caracteres que podemos incluir dentro de los corchetes es tericamente ilimitado. Sin embargo, si lo que queremos es encontrar todas las entradas que comiencen por una letra minscula pero no por un nmero u otro carcter, podemos utilizar abcdefghijklmnopqrstuvwxyz. Debido a que esto es un rango, una forma mucho ms simple de obtener el mismo resultado es poniendo: [BASH]# ls [a-z]???

Los rangos no tienen que ser series completas de nmeros o caracteres, podemos expresar subconjuntos de ellos. Por ejemplo, si queremos buscar entradas que comiencen por alguna letra entre la d y la t, podemos utilizar indistintamente defghijklmnopqrst o d-t. Si la entrada puede comenzar por esas letras tanto en maysculas como en minsculas, podemos usar DEFGHIJKLMNOPQRSTdefghijklmnopqrst o D-Td-t .

El comando mkdirVamos a darle una pequea mirada ahora al comando mkdir. La funcion de este comando es la de crear nuevos directorios. Ejemplo: [BASH]# mkdir agenda.emacs .gvfs .pulse .wapi

Por defecto, el comando mkdir no crea directorios padre; la ruta completa hasta el anteultimo elemento debe existir previamente. De esta manera, si quiere crear los directorios principal/secundario/ultimo tendra que crearlos uno a uno. [BASH]# mkdir principal/secundario/ultimo mkdir: no se puede crear el directorio "principal/secundario/ultimo": No such file or directory [BASH]# mkdir principal [BASH]# mkdir principal/secundario [BASH]# mkdir principal/secundario/ultimo Sin embargo, mkdir tiene la opcion -p la cual puede crear una rama de directorios en un solo paso [BASH]# mkdir -p principal/secundario/ultimo

Para obtener mas informacion sobre el comando mkdir escriba [BASH]# man mkdir

comando touchTouch es un comando que sirve para crear ficheros sin contenido [BASH]# touch archivo1

comando echoAhora que el archivo existe, le agregaremos algunos datos. Esto podemos hacerlo mediante el comando echo , que toma sus argumentos y los imprime en la salida est n dar (standard output). Probemos como funciona el comando echo [BASH]# echo "HELLO LINUX" Ejecutemos ahora el mismo comando pero ahora redireccionando su salida al fichero vacio que creamos en el punto anterior. [BASH]# echo "HELLO LINUX" > archivo1 El signo mayor (>) le dice al BASH que escriba la salida de echo a un archivo llamado archivo1.

comando cat y cpPara ver los contenidos de un archivo en una terminal, use el comando cat: [BASH]# cat archivo1 HELLO LINUX Bien,ahora podemos hacer uso del comando cp para crear una copia del fichero nombrado archivo1 [BASH]# cp archivo1 copiadearchivo1

comando mvUsemos ahora el comando mv para renombrar archivo1 a nuevoarchivo1. [BASH]# mv archivo1 nuevoarchivo1

28 de 58

03/11/10 10:40

Certicacin LPI 101 - Base de Conocimiento

http://www2.linuxparatodos.net/web/comunidad/ba...

Veamos otra manera de usar el comando mv, ya que este comando, ademas de permitirnos renombrar archivos,