Anda di halaman 1dari 130

Introduccin

Historia del Linux

Fecha de nacimiento : 14 05-1991 Nacionalidad : Finlandes Padre: Linuz Torvald Versin : 0.0.1 Funcionalidades: - Sin soporte de red - Micro 80386 y comp. - Filesystem Minix

Introduccin

Historia del Linux

Fecha de nacimiento : 14 03-1994 Versin : 1.0 Funcionalidades:


Red: TCP/IP Unix Sockets BSD Filesystem Mejorado Manejo de memoria virtual Emulacion de coprocesador mat.

Introduccin

Licenciamiento

El kernel de Linux es distribuido bajo licencia GPL (General Public License) Esto implica que los autores han liberado el copyright sobre el software pero...

No han liberado el copyright sobre el cdigo fuente de el programa

Introduccin

Licenciamiento

Linux es un software free.

Esto implica que la gente puede copiarlo, modificarlo, usarlo en la manera que quieran y distribuir copias sin ninguna restriccin, pero...

Introduccin

Licenciamiento

Linux es un software free. Cualquiera que use o cree su propio derivado de Linux , no puede hacer este producto propietario. El software liberado bajo GPL, no puede ser redistribuido como un producto solo binario Si alguien distribuye software con algn componente GPL, entonces debe asegurarse que el cdigo fuente sea tambin distribuido.

Introduccin

Licenciamiento

Linux es un software free. Estas restricciones no prohben realizar o vender distribuciones solo binarias, dando la oportunidad de vender tambin los fuentes por un precio razonable.

Otros Sistemas Aparte de Linux


FreeBSD, OpenBSD

LINUX Kernel
Linus Torvals Desarrollo y Pblico, Tambin Licenciado Bajo GPL. Publicado en kernel.org

Administra el HW del equipo.

GNU/LINUX
GNU conjunto de aplicaciones Licencia GPL
Libertad de uso.

Libertad de Distribucin.
Libertad de Mejorar y Publicarlo.

Introduccin

Distribuciones

qu es una distribucin? Una aplicacin

Introduccin

Distribuciones

qu contiene una distribucin? Un sistema Linux bsico, un sistema amigable de instalacin y un conjunto de aplicaciones

Introduccin

Distribuciones

Alguna de la distribuciones ms conocidas RedHat -> Fedora Mandrake -> Mandriva Conectiva , Suse Slackware OpenBSD, FreeBSD Debian (Estable, Unstable, Testing) Knoppix , Ututo, Ubunto Etc, etc,

etc,

Introduccin
Comerciales RedHat Mandriva Conectiva , Suse CorelLinux Etc, etc,

Distribuciones

etc,

Introduccin
No Comerciales Fedora Madrake Debian Slackware Knoppix, Ututo Etc, etc,

Distribuciones

etc,

Introduccin
Fedora Madrake RedHat etc

Distribuciones

Por sistema de manejo de paquetes

RPM

Debian, Knoppix Repositorio .deb Suse

Introduccin

Distribuciones

Por sistema de manejo de paquetes

Fundamentalmente

Fuentes

Introduccin
Un sistema operativo es un programa que acta como intermediario entre un usuario de una computadora y el hardware de esa computadora

Operating system concepts, fifth Edition, Silberschatz, Galvin

Introduccin
Un sistema operativo es un programa, que nos provee de una abstraccin al hardware subyacente de una computadora

Taller de Linux- nivel inicial primera edicin.

Funcionalidades de un OS
Kernel. Administracin de procesos.

Sistema de permisos y privilegios.


Manejo de FileSystems. Dispositivos de entrada y salida Manejo de shells. Administracin de paquetes. Proceso de booteo.

Funcionalidades de un OS - Kernel

Compilacin personalizada. Carga dinmica de mdulos.

Monitoreo y configuracin va filesystem virtual /proc

Funcionalidades de un OS Administracin de procesos


Sealizacin y asignacin de prioridades.

Monitoreo.
Foreground y background.

Funcionalidades de un OS Sistema de permisos y privilegios.


Sistema multiusuario.

Esquema de administrador (root), grupos y usuarios. Ambientes (enviroments) personalizables.

Funcionalidades de un OS Manejo de FileSystems

Filesystems virtuales. Sistema de permisos para el dueo (owner), grupo (group) y el resto (others).

Montaje de filesystems en el arbol de directorios propio.

Funcionalidades de un OS Administracin de paquetes


Depende de la distribucin

Funcionalidades de un OS Proceso de booteo


Distintos niveles de disparo de procesos (RunLevels)

Posibilidad de booteo sobre diferentes kernels.

Funcionalidades de un OS Monitoreo del sistema . SysLog


Monitoreo y registro de actividades del sistema.

Posibilidad de almacenaje remoto va cliente servidor.

Preparar Instalacin
Conocemos el HW del Equipo Tipo de Disco (SAS, IDE,SCSi,SATA)

Mdulo de Tarjeta de Red


Cantidad de Memoria

Tipo de Procesador

Medios de Instalacin CD,DVD,USB,RED Datos de Red

DHCP,IP,GW,DNS
Bios (booteo usb, booteo cdrom)

Funcionalidades de un OS

Herramientas
grep : Busca expresiones regulares dentro de cadenas de caracteres (Strings, archivos, etc) watch : Ejecuta un comando repetidamente < > : Redireccionadores de I/O

: Pipe, dirige la salida de un comando en la entrada de otro Y muuucho de ... man , apropos , locate, updatedb, which

Funcionalidades de un OS
Organizacin de los directorios en Linux
/ : Directorio raz /etc: Archivos de configuracin /usr: Aplicaciones de usuarios /bin: Binarios ejecutables /tmp : Archivos temporales /var : Archivos de contenido y tamanio variable,
/var/spool, /var/log

/home: Directorios personales de los usuarios /dev: Directorio bajo el cual se presentan todos los dispositivos

Tabla de particiones
Tipo Primarias: Particin o Divisin Bsica del Disco 4 particiones

de este tipo mximo. 1 disco formateado completo contiene 1 sola.


Puede Ser (Activa). Tipo Extendidas: Acta Como particin primaria solo 1 por disco, rompe el lmite de 4 particiones y solo sirve para contener particiones lgicas.

Tipo lgicas: 23 particiones lgicas


MBR Sector 0 es donde se instala los programas de arranque.

Programas Para Particionar


Gparted, Partition Magic, Acronis Director Suite, Fdisk

File System.
Ext, Ext2, Ext3 Linux

Ntfs: Windows NT
Swap: Archivo de Intercambio

Manejo del Kernel

El kernel es el nico programa que esta corriendo en todo momento sobre la computadora

Operating system concepts, fifth Edition, Silberschatz, Galvin

Analizar Instalacin

Manejo del Kernel

El kernel es el unico programa que esta corriendo en todo momento sobre la computadora, gestionando las funcionalidades mnimas necesarias para su correcto funcionamiento

Taller de Linux- nivel inicial primera edicin.

Manejo del Kernel

/proc

Filesystem virtual que almacena y muestra en forma de archivo de texto, la informacin que maneja el kernel de Linux.

Manejo del Kernel

/proc

Actividad 1
Obteniendo datos de la memoria

Manejo del Kernel

/proc

Actividad 2
Obteniendo datos acerca del microprocesador

Manejo del Kernel

/proc

Actividad 3
Obteniendo datos acerca de los procesos

Manejo del Kernel

/proc

Descripcin de lo que podemos ver


cmdline cwd:

: Lista de argumentos para el proceso

link simblico al dir. Actual de trabajo del proceso


environ exe:

: Ambiente del proceso

symlink a la imagen ejecutable

fd:

filedescriptors abiertos por el proceso

map: root:

archivos mapeados dentro del espacio de direcciones del proceso symlink al root dir. Del proceso

Manejo del Kernel

/proc

Actividad 4
Implementacin de un monitoreador de la memoria

Manejo del Kernel

LILO

Linux nos permite elegir con que kernel queremos arrancar nuestra computadora (bootear)

Manejo del Kernel

LILO

Para ello usamos un utilitario llamado LInuxLOader

Manejo del Kernel

LILO

LILO nos permite


Elegir la imagen del kernel que deseamos para bootear
Configurar tipo de men para elegir el kernel Proteger con password el booteo de determinados kernels Y muchisimas cosas ms.

Manejo del Kernel

LILO

Actividad 0 Configurando LILO

Manejo de procesos Un proceso es el contexto bsico en el cual toda la actividad requerida por los usuarios es servida al sistema operativo
Operating system concepts, fifth Edition, Silberschatz, Galvin

Manejo de procesos El proceso padre es el init cuyo pid es 1

Montaje de filesystems
Algunas de las opciones bsicas de mount
rw = Permite rw sobre el filesystem montado
suid = Permite activar el bit suid dev = Habilita la creacin de dispositivos

exec = Permite la ejecucin de binarios auto = Monta el filesystem en boottime nouser = Permite el montaje solamente al root
async = Restringe a I/O asincrnicas

Shell Scripting
Actividad nmero 1

Escribir en un archivo todos los usuarios del sistema


#awk -F : {print $1} < /etc/passwd > usuarios.log #cat /etc/passwd |awk -F : {print $1} >usuarios.log

Shell Scripting
Actividad nmero 2

Escribir en un archivo todos los usuarios del sistema y su home directory


#awk -F : {print $1,$6} < /etc/passwd > usuarios.log #cat /etc/passwd |awk -F : {print $1,$6} >usuarios.log

Shell Scripting
Actividad nmero 3 Escribir en un archivo todos los usuarios del sistema y su home directory si el mismo esta dentro del /home y escribirlo en un archivo
#awk -F : {print $1,$6} < /etc/passwd |grep /home/ > usuarios.log

Shell Scripting
Actividad nmero 4 Escribir en un archivo todos los usuarios del sistema y su home directory que no tienen shell y escribirlo en un archivo
#awk -F : {print $1,$6} < /etc/passwd |grep /bin/false > usuarios.log

Shell Scripting
Actividad nmero 4.1 Realizar todos estos mismos procesos desde un programa

Shell Scripting
Estructuras del control If [ variable oper valor ] then

instrucciones
else

instrucciones
fi

Shell Scripting
Estructuras del control while [ variable oper valor ] do

instrucciones
done

Shell Scripting
Estructuras del control. Ejemplo de usar un bucle para leer un archivo

IFS=c while read var1 var2varn

do
instrucciones done < archivoDeEntrada

Shell Scripting
Estructuras del control. Asignaciones aritmticas

let variable=variable oper valor

Shell Scripting
Actividad 5

Dado el conjunto de usuarios de la actividad 4 , realizar un programa que cuente cuantos son, leyendolos desde un archivo

Shell Scripting
Actividad 5

Dado el conjunto de usuarios de la actividad 4 , agregarles su UID y realizar un programa que cuente cuantos de ellos tienen un UID menor al pasado como parametro

Shell Scripting
Actividad 5
cantidad=0 IFS=' ' awk -F : '{print $1,$3,$6}'< /etc/passwd |grep /home/ > usuarios.log echo Ingrese la letra: echo Parametro=$1 while read usuarios uid home do if [ $uid -lt $1 ] then echo $usuarios echo $uid let cantidad=$cantidad+1 fi done < usuarios.log echo Usuarios=$cantidad

Solucion1

Shell Scripting
Actividad 5

Solucion2
cantidad=0 IFS=' ' echo Ingrese parametro read parametro awk -F : '{print $1,$3,$6}'< /etc/passwd |grep /home/ > usuarios.log echo Ingrese la letra: while read usuarios uid home do if [ $uid -lt $Parametro ] then echo $usuarios echo $uid let cantidad=$cantidad+1 fi done < usuarios.log echo Usuarios=$cantidad

Configuracin bsica del entorno de red


Modelo OSI
Aplicacin Presentacin Sesin Transporte Red Enlace Fisica

Configuracin bsica del entorno de red


Modelo TCP/IP
Aplicacin

Transporte Red

Host to- Network

Configuracin bsica del entorno de red


Modelo TCP/IP
Aplicacin

Transporte Red

TCP IP

Host to- Network

Configuracin bsica del entorno de red


Protocolo TCP/IP En una red TCP/IP cada maquina que la integra se identifica por un nico nmero de 32 bits de la siguiente forma

nnnn.nnnn.nnnn.nnnn
255 n 0

Configuracin bsica del entorno de red


Protocolo TCP/IP En nuestro entorno de red configuraremos los siguientes elementos:

IP de la interface de red Direccion de broadcast Gateway (Puerta de enlace) Servidor de nombre (DNS)

Configuracin bsica del entorno de red


Protocolo TCP/IP Verifiquemos como esta configurada nuesta interfaz de red

#ifconfig -a

Configuracin bsica del entorno de red


Protocolo TCP/IP Configuremos:

IP de la interface de red y demas


#ifconfig etho up 168.83.4.125 netmask 255.255.255.0

Configuracin bsica del entorno de red


Protocolo TCP/IP Examinemos nuestra tabla de ruteo

Gateway
#route

Configuracin bsica del entorno de red


Protocolo TCP/IP Configuremos:

Gateway
#route add default gw 168.83.4.100

Configuracin bsica del entorno de red


Protocolo TCP/IP Configuremos:

Gateway
#route del default gw

Configuracin bsica del entorno de red


Protocolo TCP/IP Configuremos:

DNS
#cat /etc/hosts

Configuracin bsica del entorno de red


Protocolo TCP/IP Configuremos:

DNS
#cat /resolv.conf

RunLevels y scripts de inicio


Para hacer mas verstil al ordenador, se le dotado de la posibilidad de definir niveles en funcin de los servicios necesarios.

RunLevels y scripts de inicio


Este sistema esta basado en el Unix System V, existe otra opcin basada en el Unix BSD, pero no es tan utilizada.

RunLevels y scripts de inicio


As el nivel 0 se ejecuta al arrancar, el 6 al reiniciar y 1 es el modo monousuario, para administracin.
Los niveles 2 al 5 estn disponibles para que el usuario defina hasta 4 roles de funcionamiento. As p.e. el 5 suele ser el nico en que se ejecuta el servidor grfico X, aunque todo esto es configurable.

RunLevels y scripts de inicio


Existe un directorio /etc/init.d donde estn shellscripts de cada uno de los servicios disponibles.

RunLevels y scripts de inicio


Existen adems una serie de directorios /etc/rc.N donde N es el runlevel, que contienen enlaces simbolicos a los shellscripts de /etc/init.d

RunLevels y scripts de inicio


El nombre del enlace tiene una forma especial:

XNNshellscript
X puede ser una S (Star) o un K (kill) y controlara que ese servicio se inicie o se termine al entrar en ese runlevel

RunLevels y scripts de inicio

NN es la prioridad de ese servicio, servicios con la prioridad mas baja se iniciaran antes que aquellos con la prioridad mas alta, de esta manera es posible p.e. controlar que el servidor web (S80apache por ejemplo) no se inicie hasta que se haya iniciado la red (S30 network por ejemplo).

Anda mungkin juga menyukai