Administración de Servicios en Linux
Julio Sánchez Cubas IT Arquitect jscubas@es.ibm.com
Diciembre 2004 © 2004 IBM Corporation
Historia de Linux 1985: GNU (Richard Stallman).Emacs, gcc 1989: Minix (Andrew S. Tanembaum) 1991: Linux 0.1 (Linux Torvalds) Crecimiento MS-DOS MacOS UNIX http://www.kernel.org 1992-3: Inclusi贸n de componentes clave (TCPIP, X-Windows. 1993: Primera distribuci贸n Linux (Slackware) http://www.slackware.com 1994: Versi贸n 1.0
From: torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds) Newsgroups: comp.os.minix Subject: What would you like to see most in minix? Summary: small poll for my new operating system Message-ID: <1991Aug25.205708.9541@klaava.Helsinki.FI> Date: 25 Aug 91 20:57:08 GMT Organization: University of Helsinki Hello everybody out there using minix -I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones. This has been brewing since april, and is starting to get ready. I'd like any feedback on things people like/dislike in minix, as my OS resembles it somewhat (same physical layout of the file-system (due to practical reasons) among other things). I've currently ported bash(1.08) and gcc (1.40),and things seem to work.This implies that I'll get something practical within a few months, andI'd like to know what features most people would want. Any suggestions are welcome, but I won't promise I'll implement them :-) Linus (torvalds@kruuna.helsinki.fi) PS. Yes - it's free of any minix code, and it has a multi-threaded fs. It is NOT protable (uses 386 task switching etc), and it probably never will support anything other than AT-harddisks, as that's all I have :-(.
Distribuciones Linux ● DEB –
Debian GNU/Linux: deb
–
Xandros
● RPM –
Red Hat / Fedora Core
–
SUSE
–
Mandrake
● TAR.GZ –
Slackware
● Basadas en cd –
Knoppix
● Menos conocidas –
Caldera, Conectiva, TurboLinux
–
Gentoo (Configurable)
–
Lindows ->Linspire
–
Linex
Algunas características de Linux ● Multiproceso. Permite la ejecución de varias aplicaciones simultáneamente. ● Multiusuario. Distintos usuarios pueden acceder a los recursos del sistema simultáneamente aunque se trate de una instalación en una sola máquina.
● Multiplataforma. Funciona con la mayoría de plataformas del mercado: Intel 386/486/Pentium, Motorola 680, Sun Sparc,...
● Shells programables que lo convierten el el sistema más flexible que existe. ● Soporte para cualquier cantidad y tipo de dispositivos directamente en el núcleo. ● Soporte para la mayoría de sistemas de ficheros. ● Arquitectura Modular: Carga dinámica. ● Memoria virtual: paginación bajo demanda ● Código fuente disponible
¿Cómo funciona un sistema Linux? ● El proceso de arranque. (Boot) ● Cargadores de arranque ● Sistema de ficheros y estructura ● Directorio Sysconfig ● El sistema de ficheros proc ● Usuarios y grupos ● El sistema X-Windows ● Protocolos de red
El proceso de arranque. (BOOT) 1. La BIOS chequea el sistema 3. Lanzamiento del primer “Boot Loader”
BIOS
5. Lanzamiento del segundo “Boot Loader”
MBR
7. Carga del Kernel en memoria y los
/boot
que se encuentra en el MBR de /boot (kernel + initrd) diferentes módulos
9. Ejecución de /sbin/init ● ● ● ●
/etc/rc.d/rc.sysinit /etc/inittab /etc/rc.d /sbin/mingetty
11. Carga de servicios, aplicaciones y sistemas de ficheros
13. Secuencia de Login
initrd Kernel root init login
Runlevels 0 – Halt 1 – Single-user modo texto 2 – (Definible por el usuario) 3 – Multi-user completo modo texto 4 – (Definible por el usuario) 5 – Multi-user completo modo X-Windows 6 – Reboot (rearranque)
Algunas utilidades de configuración. ● /sbin/chkconfig: para mantener aplicaciones de /etc/rc.d/init.d ● /sbin/ntsysv: basada en curses (igual que la anterior) ● Herramienta gráfica (Yast2, redhat-config, etc.) ● shutdown ● reboot ● Gestión del Kernel (/usr/src/linux), dmesg, /var/log/messages
Cargadores de arranque ● GRUB vs LILO ● Características fundamentales de GRUB –
Entorno de línea de comandos
–
Soporta modo de direccionamiento LBA (cilindro 1024)
–
Soporta particiones ext2, ext3, reiserfs
● Carácterísticas fundamentales de LILO –
Carga directamente en el MBR
–
No editable en arranque
Sistemas de ficheros y estructura - Tipos ● Sistemas de ficheros típicos –
Ext2
–
Ext3
–
JFS de IBM
–
XFS de SGI
–
ReiserFS de NameSys
● http://www.linux-mag.com/cgi-bin/ printer.pl?issue=2002-10& article=jfs
Estructura del sistema de ficheros â&#x2014;? File System Hierarchy Standard (FHS) â&#x2014;? Estructura /dev/ /etc/ /lib/ /mnt/ /opt/ /proc/ /sbin/ /usr/ /var/
Directorio /etc/sysconfig ● Almacena los parámetros de configuración de distintos elementos del sistema
● Algunos ejemplos –
clock
–
ide
–
keyboard
–
pcmcia
–
sound
–
ssh
El sistema de ficheros proc ● Kernel tiene dos funciones primordiales: –
Controlar el acceso a los dispositivos físicos
–
Planificar cómo los procesos interactúan con dichos dispositivos
● Proc contiene ficheros que permiten ver el estado del kernel ● Ejemplos: –
meminfo
–
modules
–
Partitions
● Comando sysctl
Usuarios y Grupos ● Organización de Unix en forma de Usuario – Grupo ● Algunos comandos para gestionar usuarios y grupos –
useradd, usermod, y userdel
–
groupadd, groupmod, y user groups
–
Gpasswd
–
pwck, grpck
–
pwconv, pwunconv
–
passwd
● Shadow passwords
El sistema X-Windows ● Sistema de ventanas open source -> XFree86 ● 3 capas –
Sistema X
–
Gestores de ventanas – – – –
–
Kwin Metacity Mwm Sawfish
Entornos de escritorio – –
KDE Gnome
● /etc/X11/XF86Config ● sax, yas2, redhat-config-display
Entornos de Escritorio Gestores de ventanas Sistema XFree86
Protocolos de red 1. xinetd ● TCP Wrappers: xinetd –
Permiten transparencia entre el cliente y el servicio
–
Gestión centralizada de múltiples protocolos
● Ficheros de permisos –
/etc/hosts.allow
–
/etc/hosts.deny
● Ficheros de configuración –
/etc/xinetd.conf
–
/etc/xinetd.d/
● Herramientas alto nivel –
Yast
–
webmin
Monitorización de recursos ● CPU ● Ancho de banda ● Memoria ● Almacenamiento
CPU ● Ver el grado de utilización ● Diferenciar entre CPU de usuario y de sistema ● Cambios de contexto ● Estado de los procesos, en ejecución, esperando I/O, etc ● Comandos: top, gtop, ps, kill, iostat, mpstat
Ancho de Banda y redes ● Monitorizacion de bytes recibidos y enviados ● Medidas a nivel de interfaz (tarjeta de red, memoria, bus, etc) ● Transferencia por unidad de tiempo (segundos) ● Comandos: vmstat (-d, -p, -s), netstat (-i, -a), iostat -x
Memoria ● Utilización de paginación ● Páginas activas e inactivas ● Memoria libre/utilizada ● Swap ● Comandos: free, iostat, vmstat, sar, proc
Almacenamiento ● Monitorización de espacio en discos ● Problemas de rendimiento relacionados con el almacenamiento ● Comandos: proc/ide, fdisk, df, mount, du
Otros comandos útiles en administración de sistemas ● Cron: planificación de tareas, kcron, at ● Administracion de paquetes –
Gnome-apt
–
kpackage, rpm
● Gestión de particiones: Fdisk, yast ● Cambio de usuario: su ● ● CD de recuperación Linux: http://www.sysresccd.org/
Herramientas de alto nivel ● Dependientes de la distribución ● En Suse -> Yast2 ● En RedHat -> redhat-config-* ● Vnc -> control remoto ● VMWare, creación y gestión de máquinas virtuales, consolidación ● Multiplataforma Linux -> webmin http://www.webmin.com
Fuentes de ayuda ● Páginas man ● Info ● Foros internet –
http://www.linuxforum.com
● Howtos –
http://www.tldp.org/
● Linux Gazzette –
http://www.linuxgazette.com/
多Preguntas?
Linux: The Game Changer w3.linux.ibm.com
April 2003 Š 2003 IBM Corporation