Administracion Avanzada Linux
Administracion Avanzada Linux
Administracion Avanzada Linux
Universidad de Huelva
Memoria de Prcticas
A DMINISTRACIN DE S ERVIDORES
Grado en Ingeniera Informtica
Resumen
1. Monitorizacin de los distintos recursos del sistema: Uso de distintos comandos para la monitorizacin del estado del sistema.
ndice general
1. PRCTICA DE MONITORIZACIN. TOPIC 200
1.1. Introduccin . . . . . . . . . . . . . . . . . .
1.1.1. Objetivos . . . . . . . . . . . . . . . .
1.2. Procedimiento . . . . . . . . . . . . . . . . .
1.3. Conclusin . . . . . . . . . . . . . . . . . . .
1.4. Bibliografa . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5
5
5
7
19
20
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
21
21
22
23
32
33
.
.
.
.
.
34
34
35
36
52
53
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
ndice de figuras
1.1. Creacin equipo para Centos . . . . . . . . . . . . . . . . . .
1.2. Iniciando instalacin Centos . . . . . . . . . . . . . . . . . .
1.3. Instalando Centos . . . . . . . . . . . . . . . . . . . . . . . . .
1.4. Centos iniciado . . . . . . . . . . . . . . . . . . . . . . . . . .
1.5. Configuracin red NAT . . . . . . . . . . . . . . . . . . . . . .
1.6. Configuracin reenvio de puertos . . . . . . . . . . . . . . .
1.7. Asignacion de nombre (ethX) a MAC . . . . . . . . . . . . . .
1.8. Asignacion de nombre (ethX) a MAC 2 . . . . . . . . . . . . .
1.9. Levantamiento de la NIC . . . . . . . . . . . . . . . . . . . .
1.10.Configuracin levantamiento automtico NIC . . . . . . . .
1.11.Conexin ssh (maquina anfitriona y virtualizada) . . . . . .
1.12.Ejecucin vmstat (Monitorizacin 512Mb RAM) . . . . . . .
1.13.Ejecucin vmstat (Monitorizacin 1Gb RAM) . . . . . . . .
1.14.Ejecucin comando free . . . . . . . . . . . . . . . . . . . . .
1.15.Ejecucin comando ps -ef . . . . . . . . . . . . . . . . . . . .
1.16.Ejecucin comando w . . . . . . . . . . . . . . . . . . . . . .
1.17.Ejecucin comando top . . . . . . . . . . . . . . . . . . . . .
1.18.Ejecucin comando netstat . . . . . . . . . . . . . . . . . . .
1.19.Ejecucin comando df . . . . . . . . . . . . . . . . . . . . . .
1.20.Ejecucin de programa y monitorizacin de recursos . . . .
1.21.Ejecucin de programa y monitorizacin de recursos . . . .
1.22.Ejecucin de programa y visualizacin de proceso zombie.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
7
8
8
9
10
11
11
12
12
12
13
14
14
15
15
15
16
16
16
17
17
18
2.1.
2.2.
2.3.
2.4.
2.5.
2.6.
2.7.
2.8.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
22
23
23
24
25
26
27
27
Maqueta a implementar . . . . . . . . . . . . .
Editar network . . . . . . . . . . . . . . . . . . .
Editar hostname y reiniciar systema network .
Comprobacin cambio de nombre . . . . . . .
NIC internas (Choco, Gamba y router) . . . . .
Configuracin tarjetas de red . . . . . . . . . .
Comprobacin de Fordwarding . . . . . . . . .
Fordwarding temporal . . . . . . . . . . . . . .
3
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
ndice de figuras
ndice de figuras
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
27
28
28
29
30
30
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
36
36
37
37
37
38
38
38
39
39
40
41
41
42
43
43
44
44
45
45
46
46
47
47
48
49
50
50
51
51
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Captulo 1
PRCTICA DE MONITORIZACIN.
TOPIC 200
1.1. Introduccin
Este capitulo se centra en los distintos mtodos (herramientas y comandos)
que podemos emplear para obtener una vista de la utilizacin que hace nuestro
sistema de sus recursos internos (memoria, cpu, discos duros...).
Defincin de un pie de pgina1
1.1.1. Objetivos
El objetivo de esta prcticas es que el alumno se familiarice con los diferentes comandos existente para monitorizar los recursos de un servidor. Para ello
requiere cumplementar cada uno de los siguientes aspectos.
1. Conseguir crear una mquina virtual basada en virtualbox que contega
un sistema centos 6.3 mnimo.
2. Conseguir una conexin de tipo NAT con redireccin de puertos.
3. Conocer el uso de comandos para monitorizar el comportamiento del
sistema y actuar en funcin de dichos estados. Como varan las monitorizaciones conforme varan los requisitos.
4. Compilar y ejecutar el siguiente programa y monitorizar los recursos cada
5 segundos.
1
1.1. Introduccin
#include <stdio.h>
#include <stdlib.h>
int main()
{
char str[] = "This is tutorialspoint.com";
FILE *fd = fopen("prueba.txt","w");
int i,j;
for (i=0; i < 30000 ; i++)
for (j=0; j < 30000 ; j++)
fwrite(str , 1 , sizeof(str) , fd);
fclose(fd);
return 0;
}
#include <stdlib.h>
#include <sys/types.h>
#include <unistd.h>
int main ()
{
pid_t child_pid;
child_pid = fork ();
if (child_pid > 0) {
sleep (60);
}
else {
exit (0);
}
return 0;
}
6
1.2. Procedimiento
1. El primer requisito que necesitamos es una aplicacin, donde virtualizar
el sistema operativo, en este caso he usado VirtualBox 4.3. Dentro de esta aplicacin se ha virtualizado el SO Centos 6.4 minimal i386, el cual es una versin
de linux servidora reducida. Para realizar la virtualizacin lo primero que debo
hacer es preparar la mquina en VirtualBox en la cual vamos a instalar el SO.
Esta mquina la he preparado con las siguientes caractersticas:
- Linux
- Red-Hat X86
- RAM 512 Mb
- HDD 8Gb (Dinmico)
Una vez definida la mquina con los requisitos, para instalar Centos procedemos a su instalacin. Para ello arrancamos la mquina indicando el dispositivo desde el que se desea que arranque la primera vez (en mi caso un archivo
ISO que contiene el SO).
Luego, se abrir un men que nos permitir realizar la instalacin de Centos
entre otras opciones. Imgen a continuacin.
de manera que cuando este vuelve a arrancar ya nos muestra el SO, donde una
vez logueados podremos empezar a utilarlo.
2. Una vez conseguido el paso anterior vamos a configurar una red NAT con
redireccin de puertos. Esto permitir que nuestro sistema virtualizado tenga
salida a internet. En cuanto a la redireccin de puerto, ser algo que configuremos en la configuracin de VirtualBox.
Para ello debemos acceder a la configuracin de nuestra mquina dentro del
VirtualBox, una vez aqu tenemos que acceder al apartado de red, para as indicar la configuracin de red que usar nuestra instalacin. En la imagen que
se muestra a continuacin tendremos que preparar la interfaz de red para la
conexin por NAT.
tre ambas mquinas. La opcin -p que aparece en el comando ssh nos permite
indicarle el puerto de reenvio entre ambas mquinas.
13
3. Una vez que los puntos anteriores han funcionado, se ha consultado varios parmetros de monitorizacin del sistema. Esto nos permite saber el estado actual de los recursos que disponemos en nuestra mquina con el objetivo
de solucionar un problema o poder evirtarlo mediante la modificacin de alguna configuracin o en su caso realizando alguna mejora HW.
Se ha usado el comando vmstat para monitorizar los recursos del sistema, ya
que este muestra numerosas mtricas de los recursos del sistema en tiempo
real (colas de procesos, informacin de memoria, n de bloques R/W...). En la
imagen siguiente podemos apreciar la informacin del sistema que nos devuelve este comando.
Comando ps: Muestra procesos del sistema. Usando los parmetros -efjh
nos muestra informacin sobre las relaciones padres/hijos.
4. Para poder ejecutar el programa he tenido que crearlo dentro de la mquina y compilarlo. Para realizar la compilacin he usado el comando gcc -o
bucle bucle.c, esto me genera el ejecutable con el cdigo mostrado en el enunciado.
Ahora si analizamos o ejecutamos el cdigo del programa en cuestin, podemos observar que lo que hace es escribir en el disco en el fichero prueba.txt.
Podemos comprobar con el comando vmstat los bloques escritos.
La siguiente imagen muestra el estado del sistema (vmstat) antes de lanzar la
16
17
5. El cdigo de este programa lo que hace es crear un proceso hijo, el proceso hijo muere, pero el padre no ha hecho wait(). El proceso hijo queda zombie
hasta que el proceso padre muere ya que los procesos zombis no se pueden
matar.
Si usamos el comando ps -efjH podemos ver los procesos hijos que ha creado
cada proceso(imagn siguiente).
18
1.3. Conclusin
1.3. Conclusin
Comandos bastante importante para la monitorizacin de los recursos de
nuestro servidor. Importancia de estos para una buena administracin del sistema.
19
1.4. Bibliografa
1.4. Bibliografa
1. http://ocw.um.es/gat/contenidos/ldaniel/ipu_docs/latex/tema6.
html/
2. http://www.linuxtotal.com.mx/?cont=info_admon_010/
20
Captulo 2
PRCTICA CONFIGURACIN DE
RED. TOPIC 205
2.1. Introduccin
Este capitulo se centra en la realizacin de y configuracin de una red, en
la cual coexistirn dos redes conectadas a un router y estas redes deben tener
salida al exterior (internet).
21
2.1. Introduccin
Captulo 2. PRCTICA CONFIGURACIN DE RED. TOPIC 205
2.1.1. Objetivos
La empresa ACME S.A, dispone de una red formado por tres ordenadores:
1. Choco: equipado con CentOS, un disco duro y una tarjeta de red.
2. Gamba: equipado con CentOS, un disco duro y una tarjeta de red
3. Router: equipado con CentOS y cuatro tarjetas de red
El ordenador router acta como pasarela para las subredes en las que se encuentran gamba y choco. Adems, router permite tanto el acceso a internet de
todos los equipos (choco, gamba, router) como el acceso del equipo anfitrin
al router.
22
2.2. Procedimiento
1.Creacin de mquinas. Lo primero que hemos de realizar, partiendo desde la prctica anterior, es la clonacin de la mquina ya utilizada, para evitar
tener que realizar las instalacin del sistema desde cero. Para ello simplemente
necesitamos hacer clic encima del sistema instalado y hacer clic en clonar, esto nos genera una copia idntica del sistema. Usando este mtodo varias veces
tenemos las 3 mquinas que necesitamos.
2.Asignacin de nombres. Ahora una vez que tenemos las mquinas que
necesitamos para identificarlas vamos a asignarle el nombre que viene en la
maqueta a implementar (Choco, Gamba y Router).
Para ello en cada una de las mquinas creadas tenemos que realizar los siguientes pasos:
1. Cambiar el nombre dentro del archivo network. Este est en la ruta /etc/sysconfig/network, para ello usamos el comando vi como se muestra
en la siguiente figura y le damos el nombre que desehemos al equipo
(HOSTNAME=NOMBREEQUIPO.DOMINIO).
23
2.2. Procedimiento
Captulo 2. PRCTICA CONFIGURACIN DE RED. TOPIC 205
3. Por ltimo para comprobar que el cambio de nombre a funcionado correctamente reiniciamos el sistema con comando reboot y cuando arranca en el prompt podemos observar el nombre que le hemos dado al equipo.
24
25
2.2. Procedimiento
Captulo 2. PRCTICA CONFIGURACIN DE RED. TOPIC 205
Choco
Gamba
Router-Choco
Router-Gamba
IP
10.0.3.16
10.0.2.16
10.0.3.15
10.0.2.15
MSCARA
255.255.255.0
255.255.255.0
255.255.255.0
255.255.255.0
RED
10.0.3.0
10.0.2.0
10.0.3.0
10.0.2.0
GATEWAY
10.0.3.15
10.0.2.15
"DirPuente"
"DirPuente "
BROADCAST
10.0.3.255
10.0.2.255
10.0.3.255
10.0.2.255
26
4.Habilitar configuracin para ping entre todos. Para conseguir que desde cualquier equipo podamos realizar un ping hacia cualquier otro de la maqueta (aunque sea de redes distintas) debemos habilitar el fordwarding en el
equipo que hace de intermediario de redes (router). Podemos usar el comando
fordwarding y comprobar si est activo o no. Si no lo est mostrar un 0 como
ocurre en la siguiente imagen.
2.2. Procedimiento
Captulo 2. PRCTICA CONFIGURACIN DE RED. TOPIC 205
28
2.2. Procedimiento
Captulo 2. PRCTICA CONFIGURACIN DE RED. TOPIC 205
30
31
2.3. Conclusin
Comandos bastante elementales y otros ms avanzados para la configuracin completa de redes. Estos comandos son de bastante utilidad ya que permiten comunicar nodos de distintas sedes o departamentos que es una tarea
muy comn a realizar en la vida real.
32
2.4. Bibliografa
1. http://www.alcancelibre.org/staticpages/index.php/08-parametros-red/
2. http://moodle.uhu.es/contenidos2/pluginfile.php/173870/mod_
resource/content/28/dist/index.html/
3. http://www.linuxtechtips.com/2013/12/configure-centos-as-a-router.
html
33
Captulo 3
PRCTICA MANTENIMIENTO DEL
SISTEMA. TOPIC 206
3.1. Introduccin
Este captula trata la instalacin de un software desde un cdigo fuente,
pasando por todo el proceso de compilacin, instalacion...
Adems aborda otros puntos como son la programacin de copias de seguridad
en distintos equipos.
34
3.2. Objetivos
En Choco realizar lo siguiente:
1. Instalar desde el cdigo fuentre la versin 2.9.4 del JOE. Ser necesaria la
instalacin de otras herramientas para poder realizar la compilacin.
Una vez hecho el punto anterior, vamos a hacerlo en Gamba. 1. Usando el comando oportuno, hacer una copia de seguridad de todos los ficheros que se
creearon durante la instalacin del JOE.
2. Transferir el fichero resultante a Gamba usando el comando scp o rsync.
3. Descomprimir el fichero y comprobar que funciona.
Tras realizar la instalacin de dicho software, mande un mensaje a todos los
usuarios de choco y gamba (estn o no conectados) indicando que est disponible este nuevo editor.
Por ltimo, se propone realizar un sistema de copias de seguridad incrementales de los directorios /home de choco y gamba. Estas copias se realizarn todos los das. La idea es que las copias de seguridad de choco se almacenen en
el directorio /backups/ de gamba y las de gamba en el directorio /backups/ de
choco. Para programar las copias de seguridad use el comando cron.
35
3.3. Procedimiento
Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC 206
3.3. Procedimiento
1. Para solventar el primer apartado de la prctica, lo primero que debemos
hacer es arrancar Choco y comprobar que tenga conectividad a internet (requisito dns bien configurados). La siguiente imagen muestra la configuracin
dns de nuestro equipo Choco y realiza un ping a www.google.es para asegurar
la conectividad total del equipo.
3.3. Procedimiento
Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC 206
3.3. Procedimiento
Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC 206
40
41
3.3. Procedimiento
Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC 206
42
3.3. Procedimiento
Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC 206
44
45
3.3. Procedimiento
Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC 206
46
4. Copia de Seguridad Gamba y Choco Antes que nada, para realizar este
apartado, vamos a crear un directorio donde se almacenarn las copias de seguridad creadas. En este caso vamos a crear el directorio backup en el raiz. Para
ello uso mkdir como muestra la imagen siguiente.
3.3. Procedimiento
Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC 206
48
49
3.3. Procedimiento
Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC 206
50
51
3.4. Conclusin
Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC 206
3.4. Conclusin
Comandos bastante importantes para poder realizar un buen manteniemiento del sistema, especialmente me parece de mucha utilidad la manera de
automatizar las copias de seguridad.
52
3.5. Bibliografa
1. https://lc.fie.umich.mx/~rochoa/Manuales/Linux_Curso_1/Joe.
php
2. http://moodle.uhu.es/contenidos2/pluginfile.php/212939/mod_
resource/content/2/dist/index.html
3. http://moodle.uhu.es/contenidos2/pluginfile.php/210733/mod_
resource/content/3/dist/index.html
4. Distintos recursos de mantenimiento de la plataforma Moodle
53