Taller de Instalación de S.O. Libres

FLISOL 2016 CHIMBOTE - PERÚ

Who am I?

Richard Cotrina

Desarrollador Web en

            @rcotrina94
        

Miembro de

Linux

Sistema Operativo GNU/Linux

I. Introducción

Desambiguación, ¿Linux?, ¿Kernel?

¿Qué es Linux ?

GNU/Linux

Kernel Linux

Distribución Linux

Sistema Operativo

¿Linux?

Kernel

University of Helsinki - 1991

Linus Torvalds

GNU OS

. . .

Kernel

Núcleo o parte central del S.O.

Hardware

Windows

"Basado u opera de manera similar al sistema operativo Bell Labs UNIX"

> Linux

 

 

 

 

Unix-like

 

> BSD

> Mac

> Solaris

> ...

Kernels:

2 compiten en el mercado

Microkernel









+










Monolítico

Kernels:

3 categorías

Híbrido

Linux

Windows

> CPU

> Memoria

> IPC

> Controlador de dispositivos

> Gestión de sistema de archivos

> Llamadas al servidor del sistema

* Escoge

Presencia de Linux

Distribuciones

Linux

OS

. . .

Distribución Linux

y más ...

Linux y Open Source

??

  • Programas de entrenamiento
  • Soporte
  • Certificaciones
  • Suscripciones
  • Donaciones

II. Historia de Linux

Antecedentes, Aparición, Cronología

Antecedentes

Antecedentes

Antecedentes

Antecedentes

Antecedentes

Antecedentes

Aparición de Linux

Aparición de Linux

Desarrollo del Núcleo Linux por Linus Torvalds 

Anuncio 25 Agosto 1991 en el newsgroup de minix

Freax?

-         

Linux

1992: Cambio a licencia GNU GPl.

GNU/Linux

» Lignux?

-                         

III. Generalidades

Objetivos, Interfaces, Shell, Programas, Estructura

Objetivos

Multi-proceso

Multi-usuario

  • Simple
  • Elegante
  • Consistente
  • Potente
  • Flexible
ls A*
grep ard f

Principio de la menor sorpresa

Redundancia inútil

rm A*

Interfaces

Shell

Interfaz Línea de Comandos (CLI)

yomira@linux:~ $ 
cp archivo2.doc archivo3.doc
ls -l *.doc
-rwxr-xr-x    yomira    yomira    4096    Jul 19 00:36 archivo1.doc
-rwxr-xr-x    yomira    yomira    3342    Jun 22 15:02 archivo2.doc
-rwxr-xr-x    yomira    yomira    3342    Jun 22 15:02 archivo3.doc
ls -l archivo1.doc archivo2.doc archivo3.doc
yomira@linux:~ $ 
yomira@linux:~ $ 
yomira@linux:~ $ 
-rwxr-xr-x    yomira    yomira    4096    Jul 19 00:36 archivo1.doc
-rwxr-xr-x    yomira    yomira    3342    Jun 22 15:02 archivo2.doc
-rwxr-xr-x    yomira    yomira    3342    Jun 22 15:02 archivo3.doc
Comodines: * ? [] <> |

Bash

yomira@linux:~ $ 

Interfaz Gráfica de Usuario (GUI)

es el

predeterminado en Linux

Programas Utilitarios

  • Comandos de manipulación de archivos y directorios
  • Filtros
  • Herramientas de desarrollo de programas
  • Procesamiento de texto
  • Administración del sistema
  • Misceláneos

Estructura del Kernel

Terminal Linux (demo)

IV. Procesos en Linux

Conceptos, Llamadas, Implementación, Planificación 

Conceptos Fundamentales

Proceso: Entidad Activa Principal en Linux

Ejecuta 1 solo programa,
inicialmente tiene 1 hilo

Linux, sistema multiprogramación

Procesos en segundo plano: daemons

cron

Creación especialmente simple

Se pueden comunicar entre sí.

Llamadas al Sistema

Llamadas al Sistema

Implementación

Planificación

Arranque

V. Admin. de Memoria

Conceptos, Llamadas, Implementación, Paginación

VI. Entrada/Salida en Linux

Conceptos, Redes, Implementación, Módulos

Conceptos Fundamentales

  • Discos
  • Impresoras
  • Redes

Integra los dispositivos en el sistema de archivos

/dev/...
Disco:      /dev/hd1
Impresora:  /dev/lp
Red:        /dev/net

Se pueden utilizar de la misma forma que cualquier otro archivo

cp archivo /dev/lp 

Copia archivo a la impresora (lo imprime)

Redes

  • Berkeley UNIX el primero en promover su uso
  • Socket: diseño clave

Llamadas al Sistema de E/S

  • Principales llamadas POSIX

Implementación de E/S

2

componentes

principales

Módulos en Linux

Proceso de carga:

Piezas de código que se pueden cargar en el kernel mientras el sistema se ejecuta.

  1. El módulo se tiene que reubicar al instante, durante la carga.
  2. El sistema tiene que comprobar si están disponibles los recursos necesarios.
  3. Se deben establecer todos los vectores de interrupción necesarios.
  4. Se tiene que actualizar la tabla de cambio de drivers apropiada para manejar el nuevo tipo de dispositivo mayor.
  5. Se permite la ejecución del driver para realizar toda la inicialización específica del dispositivo que se requiera.

VII. Sistema de Archivos

Conceptos, Llamadas al sistema, Implementación, ...

Conceptos Fundamentales

MINIX1

14 caracteres - 64MB

255 caracteres - 2GB

EXT

Mejor rendimiento, mayor capacidad

EXT2

minix     xia
ext3      ext2
reiserfs  msdos
umsdos    vfat
iso9660   nfs
smbfs     hpfs
sysv      vfs*

 (*) VFS

(Sistema de Archivos Virtual)

Convención:

nombre.extension
nombre.ext1.ext2

Conceptos Fundamentales

Conceptos Fundamentales

Vínculos (enlaces)

Llamadas al sistema

Llamadas al sistema

Sistema de Archivos en Red

VIII. Seguridad en Linux

Árbol de directorios, permisos, propiedades

Conceptos fundamentales

UID's

GID's

Categorías

1. Acceso del propietario

2. Acceso de miembros G. propietarios

3. Acceso de otros usuarios

Accesos Potenciales

1. Acceso de lectura

2. Acceso de escritura

3. Acceso de ejecución

r
rr
w
ww
x
xx

Conceptos fundamentales

Directorios

  • Mismo tipo de protección
  • Búsquedas en directorio
  • Los demás no pueden agregar ni eliminar
UID 0: Superusuario (root)

Archivos especiales

  • Mismo modo de protección

Llamadas al Sistema

Algunas llamadas al sistema:

chmod
s = chmod("/usr/ast/nuevojuego",0755)

Verifica acceso permitido con el UID y GID proporcionados

Devuelve los UID y GID efectivos

Modifica propietario y los valores de UID y GID

¿Qué hace seguro a Linux?

Sist. Multiusuario avanzado

Diversidad

Actualización

Repositorios

Linux es Software Libre

Sistema modular

Mejores herramientas para combatir ataques zeroday

No tienen *.exe ni registro centralizado 

Es más "asegurable"

Mejor configuración por defecto

¡Gracias!

FLISOL 2016 - CHIMBOTE

By Richard Cotrina

FLISOL 2016 - CHIMBOTE

  • 1,080