Suplementos: Shell scripts rpm

18
Administración de Servicios de Red Escuela de Informática y Telecomunicaciones Suplementos: Shell scripts rpm RHA 030 Sistemas Operativos de Red

description

Suplementos: Shell scripts rpm. RHA 030 Sistemas Operativos de Red. Tema 1: Escritura avanzada de scripts. Los scripts son archivos ejecutados por un intérprete de línea de comandos indicado al principio del mismo. Al ejecutarlos es posible entregarles argumentos directamente y en orden. - PowerPoint PPT Presentation

Transcript of Suplementos: Shell scripts rpm

Administración de Servicios de Red

Escuela de Informática y Telecomunicaciones

Suplementos:Shell scriptsrpm

RHA 030Sistemas Operativos de Red

Sistemas operativos de red

Tema 1: Escritura avanzada de scripts

• Los scripts son archivos ejecutados por un intérprete de línea de comandos indicado al principio del mismo.

• Al ejecutarlos es posible entregarles argumentos directamente y en orden.

• read permite leer la entrada estándar

• La bash provee las sentencias condicionales if...then...[else] fi

• test es un comando que permite verificar condiciones y usar en sentencias if...then.

• La bash provee la sentencia for...in...do...done para implementar bucles.

Sistemas operativos de red

Sentencia condicional

if condición

then comando(s)....

fi

if condición

then comando(s)

....

else comando(s)....

fi

if y then deben ir en líneas separadasCualquier comando se utiliza como condición. Se ejecutan las sentencias en then o else dependiendo del valor de retorno que entrega la condición (exito=0; fracaso=1 o más).

Sistemas operativos de red

Comando test

• Está diseñado para comprobar cadenas de texto, números enteros y atributos de archivo.

• No genera salida estándar, sólo el valor de retorno.

• test -e filename permite verificar la existencia de un archivo.

Sistemas operativos de red

Expresiones de test para examinar atributos de archivo

Sistemas operativos de red

Expresiones de test para comparar cadenas de texto

Sistemas operativos de red

Expresiones lógicas para test

Sistemas operativos de red

Expresión alterna para test: [ expresión ]

El paréntesis cuadrado reemplaza a test.

Al usar la sintaxis alterna se debe tener cuidado de incluir un espacio después de abrir el paréntesis y antes de cerrarlo.

Sistemas operativos de red

Bucles: for…in…do…done

for iterador in lista

do

comando(s)

done

Para cada repetición del bucle la variable iterator evaluará las palabras individuales en la expresión lista

La variable PET se utiliza como iterador. Con cada iteración del bucle, la variable adquiere un valor diferente.

Sistemas operativos de red

Ejemplo

Sistemas operativos de red

Técnicas comunes para generar listas iterativas

Sistemas operativos de red

Ejemplo

Sistemas operativos de red

Tema 2: El administrador de paquetes RPM

• Se utiliza para agregar o quitar programas.

• Debe ejecutarse como root cuando se quiere agregar o eliminar programas.

• Un usuario puede usarlo para consultar los paquetes instalados.

Sistemas operativos de red

Administración de paquetes

• RPM soluciona el problema de dependencia de librerías especiales para un programa en particular y el problema de mantenimiento al necesitar actualizar.

• RPM posee tres componentes:– La base de datos RPM

• Lista de dependencias y lista de archivos instalados por el paquete• Reside en el directorio /var/lib/rpm

– El ejecutable rpm• Los usuarios interactúan con la base de datos RPM a través del

comando rpm.– Los archivos del paquete

• nombre-version-publicacion.archivo.rpm• zsh-4.0.7-1.i386.rpm

Sistemas operativos de red

Realizar peticiones a la BD de RPM

• rpm -q nombrepaquete Consulta a la BD.

• rpm -qa Muestra todos los paquetes instalados

• rpm -ihv nombrepaquete.rpm Instala un paquete.

• rpm -e nombrepaquete Borra o desinstala un paquete.

• Para formular peticiones RPM considerar:– ¿Qué paquetes se está solicitando?

– ¿Qué pregunta se está haciendo?

Sistemas operativos de red

Formulación de peticiones RPM

Sistemas operativos de red

Ejemplos

Sistemas operativos de red

Ejemplos