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:
- Darse de alta en el Sistema SIU Guaraní del DUI.
- 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