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
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...
Introduccin
Licenciamiento
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.
LINUX Kernel
Linus Torvals Desarrollo y Pblico, Tambin Licenciado Bajo GPL. Publicado en kernel.org
GNU/LINUX
GNU conjunto de aplicaciones Licencia GPL
Libertad de uso.
Libertad de Distribucin.
Libertad de Mejorar y Publicarlo.
Introduccin
Distribuciones
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
RPM
Introduccin
Distribuciones
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
Introduccin
Un sistema operativo es un programa, que nos provee de una abstraccin al hardware subyacente de una computadora
Funcionalidades de un OS
Kernel. Administracin de procesos.
Funcionalidades de un OS - Kernel
Monitoreo.
Foreground y background.
Filesystems virtuales. Sistema de permisos para el dueo (owner), grupo (group) y el resto (others).
Preparar Instalacin
Conocemos el HW del Equipo Tipo de Disco (SAS, IDE,SCSi,SATA)
Tipo de Procesador
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
File System.
Ext, Ext2, Ext3 Linux
Ntfs: Windows NT
Swap: Archivo de Intercambio
El kernel es el nico programa que esta corriendo en todo momento sobre la computadora
Analizar Instalacin
El kernel es el unico programa que esta corriendo en todo momento sobre la computadora, gestionando las funcionalidades mnimas necesarias para su correcto funcionamiento
/proc
Filesystem virtual que almacena y muestra en forma de archivo de texto, la informacin que maneja el kernel de Linux.
/proc
Actividad 1
Obteniendo datos de la memoria
/proc
Actividad 2
Obteniendo datos acerca del microprocesador
/proc
Actividad 3
Obteniendo datos acerca de los procesos
/proc
fd:
map: root:
archivos mapeados dentro del espacio de direcciones del proceso symlink al root dir. Del proceso
/proc
Actividad 4
Implementacin de un monitoreador de la memoria
LILO
Linux nos permite elegir con que kernel queremos arrancar nuestra computadora (bootear)
LILO
LILO
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
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
Shell Scripting
Actividad nmero 2
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
do
instrucciones done < archivoDeEntrada
Shell Scripting
Estructuras del control. Asignaciones aritmticas
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
Transporte Red
Transporte Red
TCP IP
nnnn.nnnn.nnnn.nnnn
255 n 0
IP de la interface de red Direccion de broadcast Gateway (Puerta de enlace) Servidor de nombre (DNS)
#ifconfig -a
Gateway
#route
Gateway
#route add default gw 168.83.4.100
Gateway
#route del default gw
DNS
#cat /etc/hosts
DNS
#cat /resolv.conf
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
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).