Curso Administración básica de Sistemas Operativos GNU/Linux

Inicie su aprendizaje en Linux. Aprenda a configurar su estación de trabajo, instalar aplicaciones,  y aprender el concepto de script como herramienta para automatizar tareas

Objetivos:

  • Comprender los conceptos básicos de sistemas operativos.
  • Familiarizarse con los entornos de ventanas de GNU/Linux.
  • Aprender sobre la administración de paquetes (buscar paquetes; actualizar paquetes; instalar paquetes, desinstalar paquetes).
  • Conocer las herramientas de ofimática y multimedios.
  • Comprender y configurar conexiones de red.
  • Aprender la administración de usuarios.
  • Entender el esquema de permisos de acceso a archivos en GNU/Linux.
  • Conocer el concepto de línea de comandos y el manejo de la herramienta bash.
  • Combinar el uso de programas para poder resolver problemas.
  • Aprender el concepto de script como herramienta para automatizar tareas.
  • Conocer las distintas etapas de la instalación de una distribución moderna.

Inscripciones:

  1. Darse de alta en el Sistema SIU Guaraní del DUI.
  2. Traer a la oficina la ficha catastral impresa y firmada. Si es alumno adjuntar constancia de matriculación o alumno regular, si es personal de la UNC copia y original de recibo de sueldo.

Metodología de cursado:

El curso consta de 16 clases que se distribuyen de la siguiente manera:

  • Al menos 13 clases teórico-prácticas de (2) horas.
  • Clase de repaso general y cierre.
  • Evaluación individual.
  • Recuperatorio del curso.

Contenidos:
Introducción al entorno gráfico de un Sistema GNU/Linux y herramientas:

Conceptos básicos de sistemas operativos
Conceptos de multitarea y multiusuario
Explicar la naturaleza del software opensource
Orígenes de GNU/Linux. Distribuciones GNU/Linux. Principios básicos de GNU/Linux
Entornos de escritorio más comunes: Gnome
Navegadores de sistemas archivos: Nautilus
Navegación web: Firefox
Ofimática: LibreOffice:
Writer
Calc
Multimedia:
Reproductores de audio
Reproductores de video
Editores de texto: Gedit
Visor de PDF: Evince
Pasar de entorno gráfico a consola

Gestión de paquetes y administración de usuarios:

Gestores de paquetes: synaptic
Instalación de software
Desinstalación de software
Cambiar el password de usuario
Entorno en Modo usuario / Modo Administrador
Propósito de las cuentas de usuario y grupo
Administración de usuarios en entorno gráfico: crear, modificar y eliminar usuarios
Leer y modificar permisos de archivos
Ejecutar comandos con permisos de otro usuario: sudo, su

Linea de comandos. Comandos básicos I:

Concepto de lineas de comando. Presentación de shell bash
Entender la naturaleza de los privilegios del usuario root
Moverse y explorar el árbol de jerarquía del Sistema Operativo: ls, cd, mkdir, rmdir
Copiar, eliminar y renombrar archivos: cp, rm, mv, ln
Crear y ver archivos: touch, less

Linea de comandos. Comandos básicos II:

Búsqueda de archivos: locate, find
Obtener información de uso de programas: man
Buscar expresiones: grep
Monitorear el uso de espacio: du, df
Archivar y comprimir archivos: tar, gzip, bzip2

Instalación de un Sistema GNU/Linux:

Instalación de GNU/Linux Ubuntu
particiones, usuario inicial
Montar y desmontar particiones: mount, umount
Configuración de fecha y hora del sistema: ntp y timezone
Configuración de red
Dirección IP
Activación del dispositivo
Configuración DNS
Ruta de enlace predeterminada

Uso básico de la consola:

Gnome-terminal
Shortcuts de lineas de comando
Expansión de expresiones con wildcards
Tecla “tabulación”
Comando “history” y “Ctrl – r”
Expansión de lineas de comando
El tilde: ~
Expansión de lineas de comando: $() o «
Llaves de expansión: { }
Trucos en las lineas de comando: Ctrl – a, Ctrl -e, Ctrl – u, Ctrl – k, Ctrl – flechas de dirección

Shell Scripting básico:

Razones para hacer scripting
Creación de shell scritps
Estandar I/O: STDIN, STDOUT, STDERR
Redirección de estandars I/O a archivos
Redirección del estandar output a programas: pipe
Combinación de estandars output y error
Redirección a múltiples objetivos: tee
Redirección del estandar input desde un archivo
Expresiones repetitivas: for

Herramientas para procesar texto:

Herramientas para extraer texto
Ver contenido de archivos: less, cat
Ver extractos de archivos: head, tail
Extraer texto en base a palabras claves: grep
Extraer texto por columna: cut
Herramientas para analizar texto
Estadísticas: wc
Ordenamiento de texto: sort, uniq
Comparación de archivos: diff, patch
Herramientas para manipular texto:
Alterar caracteres: tr
Alterar strings: sed
Caracteres especiales para búsquedas complejas

Administración de procesos:

Definición de proceso
Listado de procesos del sistema: ps
Búsqueda de procesos
Señales. Comunicación inter-procesos
Modificación de prioridades de ejecución
Herramienta interactiva de administración de procesos
Control de trabajos
Trabajos en background
Suspender un trabajo
Administrar trabajos suspendidos y en background
Programación de ejecución de tareas en fecha y hora determinada: at, cron

Shell scripting intermedio

Agrupación de comandos
Interpretación del estado de salida de un proceso
Operadores de ejecución condicional: ||, &&
Evaluación booleana de sentencias: test
Expresiones condicionales: if
Interpretación de parámetros de un comando
Lectura de entrada como argumento de un parámetro: read

Configuración de bash

Variables de bash
Variables de entorno
Alias
Cómo expande bash una línea de comandos
Prevenir la expansión: \
Diferencias entre shells con y sin login
Tareas de ejecución al inicio de un bash: Archivos /etc/profile y ~/.bashrc
Tareas de ejecución al final de un bash: ~/.bash_logout

Clientes de red y herramientas de diagnóstico

Herramientas básicas de diagnóstico de red:
ping
traceroute
host
dig
netstat
Descarga de paquetes vía protocolo HTTP y FTP: wget
Conexión segura a un servidor remoto: openSSH
Autenticación basada en clave pública – privada
Clientes Xorg
Transferencia segura de archivos: scp
Sincronización eficiente de archivos: rsync

Tópicos avanzados en usuarios, grupos y permisos

Concepto de uid y gid
Archivos /etc/passwd, /etc/shadow, /etc/group
Administración de usuarios por linea de comandos: useradd, usermod, userdel [-r]
Usuarios y grupos del sistema
Monitoreo de logins
Permisos por default
Permisos especiales para ejecutables
Permisos especiales para directorios
Bibliografía:

Sistemas Operativos modernos 2da Edición, Tanenbaum
Red Hat Enterprise Linux 6, Richard Peterson