<commit_before>#Ejercicios tema 4


##Ejercicio 1
###Instala LXC en tu versión de Linux favorita. Normalmente la versión en desarrollo, disponible tanto en GitHub como en el sitio web está bastante más avanzada; para evitar problemas sobre todo con las herramientas que vamos a ver más adelante, conviene que te instales la última versión y si es posible una igual o mayor a la 1.0
Para instalar LXC he utilizado el comando:
`sudo apt-get install lxc`

Seguidamente confirmo dos datos importantes:

* Por un lado que la versión es superior a la 1.0. Usando el comando: `lxc-monitor --version`

![versión LXC](https://www.dropbox.com/s/7f7zlshwif8xdhv/ejr1.2.png?dl=1)

* Y por otro lado comprobamos que el kernel soporta lxc-containers y que todo está bien configurado. Esto lo he hecho con el comando: `lxc-checkconfig`

![kernel soporta lxc-containers](https://www.dropbox.com/s/u25004f1v8k4er6/ejr1.1.png?dl=1)


##Ejercicio 2
###Comprobar qué interfaces puente se han creado y explicarlos.
Creo una caja para ubuntu con el nombre una-caja, con el comando: `sudo lxc-create -t ubuntu -n una-caja`

Una vez finaliza el proceso (el cual es bastante largo) nos muestra un mensaje con los datos necesarios para poder acceder 

![datos de acceso](https://www.dropbox.com/s/il93cl07uu99k8n/ejr2.1.png?dl=1)

Para arrancar el contenedor creado anteriormente uso el comando: `sudo lxc-start -n una-caja`, esto inicializa el contenedor y finalmente nos pide los datos que nos mostró al crearla para poder acceder. Una vez los introduzco termina de arrancar

![contenedor arrancado](https://www.dropbox.com/s/svej7pbnj0bupt7/ejr2.2.png?dl=1)

Para ver que interfaces puentes nos ha creado pongo tanto en la terminal de mi máquina como en el contenedor creado anteriormente el comando: `ifconfig` obteniendo los siguientes resultados:

![compruebo interfaces puentes](https://www.dropbox.com/s/f1is1lch0x0edhr/ejr2.3.png?dl=1)

Como podemos ver, en nuestra máquina, nos ha creado una nueva interfaz llamada lxcbr0.



##Ejercicio 3
###1.- Crear y ejecutar un contenedor basado en Debian.

###2.- Crear y ejecutar un contenedor basado en otra distribución, tal como Fedora. Nota En general, crear un contenedor basado en tu distribución y otro basado en otra que no sea la tuya. Fedora, al parecer, tiene problemas si estás en Ubuntu 13.04 o superior, así que en tal caso usa cualquier otra distro. Por ejemplo, <NAME> ha logrado instalar Gentoo usando un script descargado desde su sitio, como indica en este comentario en el issue.



##Ejercicio 4
###

![]()

[]()<commit_msg>Añadido ejercicio 3 Tema 4<commit_after>#Ejercicios tema 4


##Ejercicio 1
###Instala LXC en tu versión de Linux favorita. Normalmente la versión en desarrollo, disponible tanto en GitHub como en el sitio web está bastante más avanzada; para evitar problemas sobre todo con las herramientas que vamos a ver más adelante, conviene que te instales la última versión y si es posible una igual o mayor a la 1.0
Para instalar LXC he utilizado el comando:
`sudo apt-get install lxc`

Seguidamente confirmo dos datos importantes:

* Por un lado que la versión es superior a la 1.0. Usando el comando: `lxc-monitor --version`

![versión LXC](https://www.dropbox.com/s/7f7zlshwif8xdhv/ejr1.2.png?dl=1)

* Y por otro lado comprobamos que el kernel soporta lxc-containers y que todo está bien configurado. Esto lo he hecho con el comando: `lxc-checkconfig`

![kernel soporta lxc-containers](https://www.dropbox.com/s/u25004f1v8k4er6/ejr1.1.png?dl=1)


##Ejercicio 2
###Comprobar qué interfaces puente se han creado y explicarlos.
Creo una caja para ubuntu con el nombre una-caja, con el comando: `sudo lxc-create -t ubuntu -n una-caja`

Una vez finaliza el proceso (el cual es bastante largo) nos muestra un mensaje con los datos necesarios para poder acceder 

![datos de acceso](https://www.dropbox.com/s/il93cl07uu99k8n/ejr2.1.png?dl=1)

Para arrancar el contenedor creado anteriormente uso el comando: `sudo lxc-start -n una-caja`, esto inicializa el contenedor y finalmente nos pide los datos que nos mostró al crearla para poder acceder. Una vez los introduzco termina de arrancar

![contenedor arrancado](https://www.dropbox.com/s/svej7pbnj0bupt7/ejr2.2.png?dl=1)

Para ver que interfaces puentes nos ha creado pongo tanto en la terminal de mi máquina como en el contenedor creado anteriormente el comando: `ifconfig` obteniendo los siguientes resultados:

![compruebo interfaces puentes](https://www.dropbox.com/s/f1is1lch0x0edhr/ejr2.3.png?dl=1)

Como podemos ver, en nuestra máquina, nos ha creado una nueva interfaz llamada lxcbr0.



##Ejercicio 3
###1.- Crear y ejecutar un contenedor basado en Debian.

Este contenedor lo he instalado en el ejercicio anterior usando el comando: `sudo lxc-start -n una-caja` y se me instalo sin problema.

###2.- Crear y ejecutar un contenedor basado en otra distribución, tal como Fedora. Nota En general, crear un contenedor basado en tu distribución y otro basado en otra que no sea la tuya. Fedora, al parecer, tiene problemas si estás en Ubuntu 13.04 o superior, así que en tal caso usa cualquier otra distro. Por ejemplo, Óscar Zafra ha logrado instalar Gentoo usando un script descargado desde su sitio, como indica en este comentario en el issue.


He optado por instalar cirros. 
He instalado el contenedor de cirros con el comando:`sudo lxc-create -t cirros -n cirrosBox`

![instalación cirros](https://www.dropbox.com/s/y1h4suww7cyrtn6/ejr3.1.png?dl=1)



{'fraction_non_alphanumeric': 0.07364766081871345, 'fraction_numerical': 0.0222953216374269, 'mean_word_length': 4.561991869918699, 'pattern_counts': {'":': 0, '<': 4, '<?xml version=': 0, '>': 4, 'https://': 11, 'lorem ipsum': 0, 'www.': 11, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '658381', 'n_tokens_mistral': 2021, 'n_tokens_neox': 1937, 'n_words': 750}