← TeorĂ­a

Practica 09: Explorando Ubuntu en Maquina Virtual

Modulo: MF0219_2 - Instalacion y Configuracion de Sistemas Operativos
Unidad Formativa: UF0853 - Explotacion de las funcionalidades del sistema microinformatico
Bloque: Funcionamiento de Sistemas Operativos
Duracion estimada: 5 horas (1 sesion)
Modalidad: Trabajo individual
Herramientas: Oracle VirtualBox + VM con Ubuntu instalado (Practica 07)
Nota: Esta practica requiere tener completada la Practica 07 (Instalacion de Ubuntu). Trabajaras sobre la maquina virtual de Ubuntu que ya tienes creada.

Objetivos de la practica

  • Conocer la estructura de directorios de Linux y gestionar archivos desde la terminal.
  • Dominar los comandos basicos de la terminal de Linux.
  • Instalar y gestionar software con el gestor de paquetes apt.
  • Gestionar usuarios, grupos y permisos en Linux.
  • Monitorizar procesos y recursos del sistema.
  • Crear un script basico en Bash.

Requisitos previos

Antes de comenzar, comprueba que cumples todos los requisitos:

Requisito OK
Practica 07 (Instalacion de Ubuntu) completada
Maquina virtual con Ubuntu funcionando correctamente
Guest Additions de VirtualBox instaladas

Parte 1 - Estructura de directorios de Linux (30 min)

La estructura de directorios de Linux es muy diferente a la de Windows. No existe la unidad C:\, sino que todo parte de un directorio raiz /. Abre la terminal con Ctrl+Alt+T y navega por el sistema.

Procedimiento

  1. Ejecuta ls / para ver los directorios principales del sistema.
  2. Navega a cada directorio de la tabla y observa su contenido con ls.
  3. Documenta la funcion de cada directorio.

Directorios principales del sistema

Directorio Que contiene Equivalente en Windows (si existe)
/ (raiz)
/home
/etc
/var
/usr
/tmp
/bin
/boot
/dev
/media
Nota: A diferencia de Windows, en Linux todo es un archivo: los dispositivos (discos, USB) aparecen como archivos en /dev, y las configuraciones se guardan como archivos de texto en /etc.

Captura 1: Terminal mostrando el resultado de ls / con los directorios principales

📷

Pega una captura (Ctrl+V) o arrastra una imagen aqui

Captura de la terminal mostrando ls / con los directorios principales

Preview

Parte 2 - Gestion de archivos desde la terminal (40 min)

En Linux, la terminal es la herramienta fundamental para gestionar archivos. Aunque existe un explorador grafico (Nautilus), un tecnico debe dominar los comandos de terminal.

Comandos basicos de navegacion y archivos

Comando Que hace Resultado (copia la salida)
pwd Muestra el directorio actual
ls -la ~/ Lista archivos del home (incluidos ocultos)
cd /etc && pwd Cambia a /etc y muestra ruta
cd ~ && pwd Vuelve al home y muestra ruta
cat /etc/hostname Muestra el nombre del equipo
cat /etc/os-release Muestra info de la distribucion
df -h Muestra espacio en disco
free -h Muestra uso de memoria RAM

Creacion de estructura de carpetas y archivos

  1. Crea la siguiente estructura en tu directorio home:
    mkdir -p ~/Curso_IFCT0309/{Practicas,Apuntes,Capturas}
  2. Verifica la estructura:
    tree ~/Curso_IFCT0309 (si tree no esta instalado: sudo apt install tree)
  3. Crea un archivo de texto:
    echo "Esto es una prueba desde la terminal de Ubuntu" > ~/Curso_IFCT0309/Practicas/prueba.txt
  4. Comprueba el contenido:
    cat ~/Curso_IFCT0309/Practicas/prueba.txt
  5. Copia el archivo:
    cp ~/Curso_IFCT0309/Practicas/prueba.txt ~/Curso_IFCT0309/Apuntes/
  6. Mueve el archivo original:
    mv ~/Curso_IFCT0309/Practicas/prueba.txt ~/Curso_IFCT0309/Capturas/
  7. Verifica el resultado:
    tree ~/Curso_IFCT0309

Equivalencia de comandos Linux - Windows

Comando Accion que realiza Equivalente en Windows
mkdir
cp
mv
rm
cat
ls
cd
tree

Captura 2: Terminal mostrando el resultado de tree ~/Curso_IFCT0309 con la estructura creada

📷

Pega una captura (Ctrl+V) o arrastra una imagen aqui

Captura de la terminal mostrando tree ~/Curso_IFCT0309

Preview

Parte 3 - Gestion de paquetes con apt (30 min)

En Linux, el software se instala mediante un gestor de paquetes. Ubuntu usa apt (Advanced Package Tool), que descarga e instala programas desde repositorios oficiales. Es el equivalente a descargar un .exe de Internet en Windows, pero mas seguro y automatizado.

Procedimiento

  1. Actualiza la lista de paquetes disponibles:
    sudo apt update
  2. Observa cuantos paquetes pueden actualizarse.

Comandos de gestion de paquetes

Comando Que hace Resultado
sudo apt update Actualiza la lista de paquetes disponibles
apt list --upgradable Lista los paquetes que tienen actualizacion
sudo apt install htop -y Instala el monitor de procesos htop
sudo apt install neofetch -y Instala una herramienta de info del sistema
neofetch Muestra informacion del sistema de forma visual
dpkg -l | wc -l Cuenta los paquetes instalados en el sistema
apt search image editor Busca paquetes relacionados con edicion de imagen
sudo apt remove neofetch -y Desinstala neofetch
Importante: Nunca ejecutes sudo apt upgrade o sudo apt install sin saber que estas instalando. El comando sudo te da permisos de administrador (root), y cualquier error puede afectar al sistema.

Captura 3: Terminal mostrando la salida de neofetch con la informacion del sistema

📷

Pega una captura (Ctrl+V) o arrastra una imagen aqui

Captura de la terminal mostrando la salida de neofetch

Preview

Parte 4 - Gestion de usuarios y permisos (30 min)

Usuarios y grupos

  1. Consulta informacion sobre tu usuario actual ejecutando los comandos de la tabla.
Comando Que hace Resultado
whoami Muestra tu usuario actual
id Muestra tu UID, GID y grupos
groups Muestra los grupos a los que perteneces
cat /etc/passwd | grep -v nologin | grep -v false Muestra usuarios con acceso al sistema
sudo adduser alumno_prueba Crea un nuevo usuario
sudo usermod -aG sudo alumno_prueba Anade el usuario al grupo sudo
su - alumno_prueba Cambia al nuevo usuario
exit Vuelve a tu usuario original -
Nota: En Linux, el usuario root es el administrador supremo del sistema. Normalmente no se usa directamente, sino que se ejecutan comandos con sudo (Super User DO) que otorga permisos temporales de root.

Permisos de archivos

En Linux, cada archivo tiene permisos de lectura (r), escritura (w) y ejecucion (x) para tres niveles: propietario, grupo y otros.

  1. Crea un archivo de prueba:
    echo "archivo de prueba de permisos" > ~/permiso_test.txt
  2. Observa sus permisos actuales:
    ls -l ~/permiso_test.txt
  3. Documenta los permisos en la tabla siguiente.
Dato Valor
Permisos mostrados (ej: -rw-r--r--)
Propietario del archivo
Grupo del archivo

Modificacion de permisos con chmod

Comando Que hace Permisos resultantes (ejecuta ls -l)
chmod 755 ~/permiso_test.txt Da permisos rwx al propietario, rx al grupo y otros
chmod 644 ~/permiso_test.txt Da permisos rw al propietario, r al grupo y otros
chmod u+x ~/permiso_test.txt Anade permiso de ejecucion al propietario
sudo chown alumno_prueba ~/permiso_test.txt Cambia el propietario del archivo (usar sudo)

Captura 4: Terminal mostrando permisos de archivos con ls -l

📷

Pega una captura (Ctrl+V) o arrastra una imagen aqui

Captura de la terminal mostrando permisos de archivos con ls -l

Preview

Parte 5 - Monitorizacion de procesos y recursos (30 min)

Comandos de monitorizacion

Comando Que hace Resultado o dato relevante
top (pulsa q para salir) Muestra procesos en tiempo real
htop (pulsa q para salir) Monitor de procesos mejorado (instalado antes)
ps aux | head -15 Lista los primeros 15 procesos activos
ps aux | wc -l Cuenta el numero total de procesos
uptime Muestra tiempo encendido y carga del sistema
lscpu Muestra informacion del procesador

Gestion de procesos

  1. Abre el editor de texto grafico (gedit o la app de texto de Ubuntu):
    gedit & (el & lo lanza en segundo plano)
  2. Busca el proceso de gedit:
    ps aux | grep gedit
  3. Anota el PID (numero de proceso).
  4. Cierra el proceso desde la terminal:
    kill [PID] (sustituye [PID] por el numero real)
Accion Comando usado Resultado
Abrir gedit en segundo plano
Encontrar el PID de gedit
Cerrar gedit con kill
Comprobar que ya no esta activo

Monitor del sistema (GUI)

Ubuntu tambien incluye un monitor grafico. Buscalo como Monitor del sistema en el menu de aplicaciones.

Pestana Informacion que muestra Dato relevante
Procesos
Recursos
Sistema de archivos

Captura 5: htop o Monitor del sistema mostrando los procesos y recursos

📷

Pega una captura (Ctrl+V) o arrastra una imagen aqui

Captura de htop o Monitor del sistema mostrando procesos y recursos

Preview

Parte 6 - Mi primer script en Bash (30 min)

Un script es un archivo de texto con una secuencia de comandos que se ejecutan automaticamente. En Linux, los scripts de Bash (.sh) son una herramienta fundamental para automatizar tareas.

Procedimiento

  1. Crea un archivo de script:
    nano ~/mi_primer_script.sh
  2. Escribe el siguiente contenido en nano (copia exactamente):
#!/bin/bash
# Mi primer script - Practica Ubuntu
echo "================================"
echo "  INFORME DEL SISTEMA"
echo "================================"
echo ""
echo "Fecha y hora: $(date)"
echo "Usuario: $(whoami)"
echo "Hostname: $(hostname)"
echo "Sistema operativo: $(lsb_release -d | cut -f2)"
echo "Kernel: $(uname -r)"
echo ""
echo "--- USO DE DISCO ---"
df -h / | tail -1
echo ""
echo "--- MEMORIA RAM ---"
free -h | grep Mem
echo ""
echo "--- PROCESOS ACTIVOS ---"
echo "Total de procesos: $(ps aux | wc -l)"
echo ""
echo "================================"
echo "  Informe generado correctamente"
echo "================================"
  1. Guarda con Ctrl+O (Enter para confirmar) y sal con Ctrl+X.
  2. Dale permisos de ejecucion:
    chmod +x ~/mi_primer_script.sh
  3. Ejecuta el script:
    ./mi_primer_script.sh (alternativa: bash ~/mi_primer_script.sh)

Resultado del script

Dato Tu respuesta
Resultado del script (pega la salida completa)
Se ejecuto correctamente?
Que comando usaste para darle permisos de ejecucion?

Explica con tus palabras que hace cada linea del script. Que significa la primera linea #!/bin/bash?

Captura 6: Terminal mostrando la ejecucion del script con su salida

📷

Pega una captura (Ctrl+V) o arrastra una imagen aqui

Captura de la terminal mostrando la ejecucion del script Bash

Preview

Parte 7 - Preguntas de reflexion

Responde a cada pregunta con un minimo de 3 lineas. Las respuestas deben reflejar tu experiencia personal durante la practica.

1. Compara la estructura de directorios de Linux (/, /home, /etc, /var...) con la de Windows (C:\, C:\Users, C:\Windows...). Cual te parece mas logica y organizada? Justifica tu respuesta.

2. Que ventajas tiene instalar software con apt install frente a descargar un instalador .exe de Internet como se hace en Windows?

3. Explica con tus palabras el sistema de permisos de Linux (rwx). Por que crees que es mas seguro que el sistema de permisos de Windows?

4. Para que sirve un script de Bash? Piensa en un ejemplo practico de una tarea repetitiva que podrias automatizar con un script en un entorno de trabajo.

Entrega de la practica

Sube tu practica completada al canal #entrega-practicas del Discord del curso en formato PDF.

Capturas requeridas

# Descripcion OK
1 Estructura de directorios (ls /)
2 Estructura de carpetas creada (tree)
3 Neofetch / informacion del sistema
4 Permisos de archivos (ls -l)
5 htop o Monitor del sistema
6 Ejecucion del script Bash

Formato del mensaje en Discord

Nombre: [Tu nombre y apellidos]
Practica: Explorando Ubuntu en Maquina Virtual
[Adjuntar documento PDF y capturas de pantalla]

Criterios de evaluacion

Criterio Puntuacion Desglose
Estructura de directorios 1.0 punto Directorios documentados con equivalentes en Windows
Gestion de archivos desde terminal 2.0 puntos Comandos ejecutados + estructura creada + equivalentes documentados
Gestion de paquetes con apt 1.5 puntos Todos los comandos apt ejecutados con resultados
Usuarios y permisos 1.5 puntos Usuario creado + permisos documentados + comandos chmod
Monitorizacion de procesos 1.0 punto Comandos de monitorizacion + gestion de procesos con kill
Script en Bash 1.0 punto Script ejecutado correctamente + explicacion de cada linea
Preguntas de reflexion 1.0 punto 4 preguntas respondidas con argumentacion (min 3 lineas)
Capturas completas 1.0 punto Las 6 capturas incluidas y relevantes
Total 10 puntos

Penalizaciones

Motivo Penalizacion
Entrega fuera de plazo (sin justificacion) -2 puntos
Capturas insuficientes (menos de 3) -1 punto
Respuestas copiadas de Internet o de otro companero -3 puntos
Respuestas de una sola linea en preguntas que piden minimo 3 lineas -0.5 puntos por pregunta
Fecha limite: Indicada por el profesor en el canal de Discord.

Lista de verificacion de entrega (firma del alumno)

Antes de subir tu practica, confirma que has incluido todo:

Dato Tu respuesta
Nombre del alumno
Firma
Fecha de entrega

Entrega esta practica en el canal #entrega-practicas del Discord del curso.

Formato del mensaje: Nombre: [tu nombre] | Practica: Explorando Ubuntu en Maquina Virtual

Practica correspondiente al Bloque Funcionamiento de Sistemas Operativos