Curso Linux: Administración de Sistema y Servicios (parte 2)

Anuncio
Curso Linux: Administración de Sistema y Servicios
CURSO LINUX: Administración de
Sistema y Servicios
1
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
GNU GPL
Linux
Software Libre
Kernel
GNU/Linux
Distribución Linux Debian
Paquete
(K)Ubuntu
KDE
Gnome Emule
2
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Introducción a GNU/Linux
Introducción a GNU/Linux
8
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Introducción a GNU/Linux
GNU/Linux
●
Herramientas GNU + Linux (núcleo).
●
Compatible con UNIX (GNU's Not UNIX).
●
Sistema multiusuario y multitarea.
Bash
9
●
Herramienta GNU.
●
Shell, intérprete de comandos.
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Shell:Intérprete de órdenes
Curso Linux: Administración de Sistema y Servicios
GSyC - 2010
La Shell I
5
Curso Linux: Administración de Sistema y Servicios
Introducción a GNU/Linux
Shells
●
Existen muchas shells: sh,csh,ksh,bash...
●
Entorno de trabajo:
Case sensitive: sensible a mayúsculas (ECHO != echo).
➔ Sintáxis: comando arg1 arg2... argn
➔ Si un programa no está en el PATH: ./programa
➔ Prompt:
➔
• $: usuario normal
• #: usuario administrador (root)
10
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Introducción a GNU/Linux
Comandos
●
11
Manejo del sistema de ficheros: ls, cd, cp, mv, rm, mkdir, rmdir...
●
Información sobre ficheros: cat, more, less, file...
●
Busquedas: find, whereis, locate...
●
Filtros: grep, sed, cut, tr...
●
Usuarios y grupos: id, whoami, su, sudo...
●
Permisos: chmod, chown, chgrp...
●
Otros: date, tar, gzip, echo...
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Introducción a GNU/Linux
Tuberías
●
Un proceso en un sistema UNIX-like tiene inicialmente
abiertos 3 canales:
0: STDIN o entrada estándar
➔ 1: STDOUT o salida estándar
➔ 2: STDERR o salida de error
➔
●
Imaginémonos una refinería:
➔
12
Metes crudo por 0 (STDIN), consigues gasolina por 1
(STDOUT) y bastantes residuos por el “desagüe” 2 (STDERR).
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Introducción a GNU/Linux
Tuberías
●
Redirigiendo la salida de un comando:
➔
> : redirigir STDOUT a un fichero:
ls > listado.txt
➔
>>: redirigir STDOUT al final de un fichero (añadir):
ls >> listados.txt
➔
2>: redirigir STDERR a un fichero:
ls 2> errores.txt
➔
2>>: redirigir STDERR al final de un fichero:
ls 2>> errores.txt
➔
2>&1: redirigir STDOUT y STDERR a un fichero:
ls > salida 2>&1
13
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Introducción a GNU/Linux
Tuberías
●
Redirigiendo la entrada de un comando:
➔
<: redirigir el contenido de un fichero a STDIN:
tr a A < fichero.txt
●
| : es posible recoger la salida de un desagüe y conducirlo a
la entrada de otro comando.
cat fichero.txt | tr a A
echo "Solo la X de este texto" | cut ­d" " ­f3
14
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Sistemas de ficheros en Unix
●
●
●
En un sistema Unix todo son archivos: memoria física,
ratón, modems, teclado...
Filosofía de diseño de grán éxito y potencia, aunque
también peligrosa: un simple error de permisos puede
permitir modificar todo un disco duro.
Tipos de archivos:
➔
ficheros planos
➔
directorios
➔
ficheros especiales (dispositivos)
• orientados a carácter
• orientados a bloque
2
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Comandos en GNU/Linux
Comandos para búsqueda de archivos
●
find (busca ficheros en directorios)
●
locate (busca patrones en bases de datos)
●
●
3
whereis (busca el binario, el fuente y la página de ayuda
de un fichero)
which (busca comandos en el PATH)
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Gestión de Usuarios y Grupos
Características de usuarios Unix
●
●
4
Los sistemas Unix son sistemas multiusuario. Cada usuario
tiene una serie de características propias y asociadas:
➔
uid: identificativo de usuario (debe ser único)
➔
gid: identificativo de grupo
➔
home: carpeta de trabajo o personal
➔
shell: interprete de comandos
Comandos:
➔
who/whoami/id (muestra información de usuarios)
➔
su/sudo (cambia de usuario o privilegios)
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Administración de permisos de ficheros
Permisos de ficheros en sistemas Unix
●
●
●
9
Todos los archivos en Unix tienen permisos que indican
que y quien puede hacer o no hacer una acción con el
archivo.
Es la base de la seguridad de Unix.
2 formas de notación:
➔
Modo alfabético
➔
Modo octal
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Administración de permisos de ficheros
Permisos de ficheros en sistemas Unix
●
10
Modo alfabético
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Administración de permisos de ficheros
Permisos de ficheros en sistemas Unix
●
11
Modo octal
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Administración de permisos de ficheros
Cambiando los permisos
●
12
Solo es posible alterar los permisos si el usuario que lo está
haciendo es el propietario del archivo.
➔ chmod [ugoa][+­][rwx] archivo
➔
u (propietario), g (grupo), o (resto), a (todos)
➔
+ / ­: añadir / eliminar permisos
➔
r (lectura), w (escritura), x (ejecución)
➔ chmod [modo_octal] archivo
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Montaje de dispositivos
Diferencia Linux <-> Windows
●
En Windows los directorios se montan sobre unidades
físicas:
C:\Carpeta
D:\Drivers\vga
●
En Linux los dispositivos se montan en directorios de la
estructura de ficheros:
/home/usuario
/media/cdrom
33
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Montaje de dispositivos
Dispositivos y “devices” asociados
●
Disco duro IDE y CDROM: /dev/hdXY
➔
X: Número de disco/dispositivo_IDE (a, b, c...)
➔
Y: Número de partición (1, 2, 3...)
/dev/hda
/dev/hda1
/dev/hdb3
●
Disco duro SCSI, SATA y externos USB: /dev/sdXY
/dev/sda
/dev/sda1
/dev/sdc4
34
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Montaje de dispositivos
Particiones primarias y lógicas
●
Máximo 4 primarias:
/dev/hda1 /dev/hda2 /dev/hda3 /dev/hda4
●
Una de ellas se puede establecer como partición
extendida:
/dev/hda4
●
Se pueden crear varias particiones lógicas en una
extendida:
/dev/hda5 /dev/hda6 ...
●
35
Linux puede arrancar desde una partición lógica, no así
Windows que requiere una primaria.
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Montaje de dispositivos
/etc/fstab
# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
/dev/hda1 / ext3 defaults,errors=remount­ro 0 1
/dev/hda3 /home ext3 defaults 0 2
/dev/hda2 none swap sw 0 0
/dev/hdb1 /media/hdb1 ext3 defaults 0 1
/dev/hdc /media/cdrom0 udf,iso9660 user,noauto 0 0
●
36
La opción “user” permite que un usuario normal (no root)
monte la partición.
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Montaje de dispositivos
mount
●
Para montar dispositivos manualmente.
●
Si el dispositivo existe en fstab:
mount punto_de_montaje
ó
mount /dev/dispositivo
➔
Ej:
mount /dev/hdc = mount /media/cdrom0
●
Si el dispositivo no existe en fstab:
mount ­t TIPO_SIS_FICHEROS /dev/dispositivo punto_montaje
➔
Ej:
mount ­t iso9660 /dev/hdc /media/cdrom0
mount ­t ext3 /dev/hdb1 /media/disco_2
mount ­t vfat /dev/hda2 /mnt/windowsXP
37
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Montaje de dispositivos
mount (II)
●
Notas:
➔
Una partición de tipo VFAT no dispone de permisos ni
dueños/grupos así que no se puede usar el comando “chown”
ni “chmod” para permitir a usuarios la escritura.
• La partición por defecto es del usuario que la monta (la puede montar
cualquiera si tiene la opción “user”).
• Se puede fijar el dueño de la partición con la opción “uid”, el grupo
con “gid” y los permisos con “umask” (ojo, “umask” es la máscara
invertida).
●
38
¡¡ man mount !!
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Montaje de dispositivos
umount
●
Desmonta un dispositivo:
umount /dev/dispositivo
ó
umount punto_de_montaje
●
¡ Sólo si el dispositivo no está usado por ningún proceso!
➔
Si un usuario tiene una terminal en /media/cdrom no se podrá
desmontar el dispositivo.
➔
Para comprobar qué procesos están usando un dispositivo:
lsof punto_de_montaje
Ej:
lsof /media/cdrom
39
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Montaje de dispositivos
pmount / pumount
●
40
Igual que mount/umount pero no requiere que exista el
punto de montaje.
➔
Facilidad para manejar dispositivos extraibles (pendrives, cds,
tarjetas...).
➔
Permite el montaje a usuarios normales.
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Administración de procesos
Procesos en Unix
●
●
●
13
Los sistemas Unix son sistemas multitarea. Se pueden estar
ejecutando distintas tareas a la vez y cada tarea es un
proceso.
El kernel es el encargado de asignarle una parte de la
memoria para su ejecución.
Los procesos tienen un dueño y vienen definidos por sus
permisos.
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Administración de procesos
Procesos en Unix
●
14
Se caracterízan por:
➔
pid: número identificador de proceso (único)
➔
ppid: nº de identificador del proceso padre
➔
user: dueño del proceso
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Niveles de Ejecución
En los sistemas Unix hay 7 (0...6) niveles de ejecución
65
●
nivel 0: estado de parada (halt)
●
nivel 1: monousuario
●
nivel 2, 3 y 5: multiusuario
●
nivel 4: no tiene un uso específico
●
nivel 6: estado de reinicio (reboot)
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Niveles de Ejecución
Init
●
Es el primer proceso que se crea (PID=1).
●
Se configura mediante /etc/inittab.
➔
Sintaxis
id:nivel:accion:proceso
• id: nombre de la línea
• nivel: nivel o niveles en los que la línea debe procesarse
• accion
wait (espera), once (solo 1 vez), respawn (rearranca una vez finalizado), off (ignora la línea)
• proceso: path del proceso a ejecutar
66
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Niveles de Ejecución
Init
➔
Valores típicos del archivo /etc/inittab:
id:2:initdefault
l0:0:wait:/etc/init.d/rc 0
l1:1:wait:/etc/init.d/rc 1
l2:2:wait:/etc/init.d/rc 2
l3:3:wait:/etc/init.d/rc 3
1:2345:respawn:/sbin/getty 38400 tty1
2:23:respawn:/sbin/getty 38400 tty2
z6:6:respawn:/sbin/sulogin
# CTRL­ALT­DEL!
ca:12345:ctrlaltdel:/sbin/shutdown ­t1 ­a ­r now
67
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Arranque del sistema
●
●
68
Cuando la máquina se inicia en un nivel de ejecución N
se ejecutan todos los scripts que empiecen por 'S' o 'K'
contenidos en /etc/rcN.d/ con las siguientes
particularidades.
➔ Si el nombre del script comienza por S se le pasa
como parámetro 'start'.
➔ Si el nombre del script comienza por K se le pasa
como parámetro 'stop'.
Normalmente todos estos ficheros de /etc/rcN.d son
enlaces a scripts localizados en /etc/init.d/
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Configurando servicios en arranque y parada
update­rc.d
●
●
Herramienta para configurar automágicamente los enlaces a
los scripts de init tipo System V que están en
/etc/rcN.d/[S|K]NNnombre y que apuntan a los
scripts /etc/init.d/nombre.
Ejemplos
# update­rc.d 3ware defaults
# update­rc.d script start 90 1 2 3 4 5 . stop 20 0 6 .
69
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Administración de procesos
Trabajando con procesos
●
●
●
15
Control de procesos
➔
ps / pstree (resumen de los procesos activos)
➔
top (muestra las tareas de linux)
Señales entre procesos
➔
kill / killall (termina o “mata” procesos)
Control de trabajos
➔
jobs (visulaiza los trabajos en segundo plano)
➔
bg / fg (envía / trae procesos a segundo plano
➔
& (ejecución en segundo plano)
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Sistemas de archivos locales
●
●
Forma en que el SO organiza, gestiona y mantiene la
jerarquía de archivos y directorios en un dispositivo de
almacenamiento.
Linux soporta gran cantidad de sistema de ficheros:
➔
Orientados a disco
• Nativos
ext, ext2, ext3, reiserfs, xfs, jfs
• Externos
msdos, vfat, ntfs, iso9660, ufs
➔
Distribuidos
• nfs, smb, codafs
16
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Ficheros importantes
Ficheros de configuración (/etc/)
●
17
Inicio del sistema
➔
hostname (nombre de la máquina)
➔
inittab (procesos de arranque y niveles de ejecución)
➔
fstab / mtab (información sobre sistemas de ficheros)
➔
rc.d (servicios en el arrancar y parar del sistema)
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Ficheros importantes
Ficheros de configuración (/etc/) (II)
●
18
Usuarios
➔
passwd / group (usuarios y grupos del sistema)
➔
shadow (contraseñas cifradas)
➔
sudoers (lista de que usuarios que pueden ejecutar qué)
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Ficheros importantes
Ficheros de comunicación con el kernel (/proc/)
●
19
Es un pseudo sistema de ficheros que se usa como interfaz
para hablar con el kernel
➔
cpuinfo (procesador del sistema)
➔
meminfo (memoria libre y usada del sistema)
➔
loadavg (carga del sistema)
➔
filesystems (sistemas de ficheros soportados por el kernel)
➔
pci (listado de los dispositivos pci)
➔
sys (permite modificar variables del sistema)
➔
uptime (tiempo de funcionamiento)
➔
version (versión del sistema)
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Sistemas de ficheros en Unix
Comandos para el manejo del sistema de ficheros (II)
linux:~$ ls ­lha /
linux:~$ pwd
linux:~$ cd ../../etc
linux:~$ touch /home/linux/fichero
linux:~$ date +%d/%m/%y
linux:~$ cp ­a /var/log /backup/
linux:~$ mkdir ­p /tmp/prueba/creacion/directorio
linux:~$ rm ­rf /home/linux/carpeta/
28
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Sistemas de ficheros en Unix
Estructura de los Sistemas de Ficheros
●
29
Estándar de la Jerarquía de Ficheros (FHS)
➔
Se encarga de definir los directorios principales y sus
contenidos en Linux y otros sistemas Unix.
➔
Mayor facilidad en el uso de distintos sistemas Unix.
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Sistemas de ficheros en Unix
Estructura de los Sistemas de Ficheros (II)
30
●
/bin/ /sbin/: comandos esenciales del sistema
●
/boot/: kernel y archivos de arranque
●
/dev/: dispositivos esenciales
●
/etc/: archivos de configuración globales
●
/home/: directorios personales de usuarios
●
/lib/: librerías para comandos esenciales
●
/mnt/ /media/: puntos de montaje
●
/usr/: ficheros “compartidos” no esenciales
●
/var/: ficheros variables frecuentemente
●
/tmp/: ficheros temporales
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Comandos en GNU/Linux
Comandos para paginar y visualizar archivos
●
cat (muestra el contenido de ficheros por pantalla)
●
more / less (pagina el contenido de ficheros)
●
31
head / tail (muetra las primeras / últimas líneas de un
fichero)
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Comandos en GNU/Linux
Comandos para paginar y visualizar archivos (II)
linux:~$ cat -n /etc/passwd
linux:~$ more /etc/fstab
linux:~$ less /etc/passwd
linux:~$ cat /etc/passwd /etc/group
linux:~$ tail -f /var/log/syslog
linux:~$ head -n 1 /etc/passwd
32
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Comandos en GNU/Linux
Comandos para búsqueda de archivos (II)
linux:~$ find / ­name passwd
linux:~$ locate halt
linux:~$ whereis cat adduser
linux:~$ which grep
linux:~$ whereis cd
linux:~$ find ~/ ­type f ­atime +5 ­exec rm {} \;
20
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Comandos en GNU/Linux
Comandos para filtrado de archivos
21
●
grep (muestra líneas coincidentes)
●
sed (editor de streams)
●
cut (corta texto)
●
tr (traduce o elimina caraceteres)
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Comandos en GNU/Linux
Comandos para filtrado de archivos (II)
linux:~$ grep -ri nameserver /etc/
linux:~$ grep -c bash /etc/passwd
linux:~$ sed "s/root/rat/g" /etc/passwd
linux:~$ cut -f1,6 -d: /etc/passwd
linux:~$ echo traduccion | tr [a-z] [A-Z]
22
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Comandos en GNU/Linux
Otros comandos interesantes
●
wc / sort (cuenta / ordena palabras)
●
df / du (muestra la ocupación del sistema de ficheros)
●
●
23
tar / gunzip / bzip2 (empaqueta / comprime
ficheros)
history (muestra el historial del intérprete de comandos)
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Comandos en GNU/Linux
Otros comandos interesantes
linux:~$ df -h
linux:~$ du -sh /var/log
linux:~$ tar cvzf /var/log/backup.tgz /etc/ /home/
linux:~$ history
linux:~$ sort -r /etc/group
linux:~$ wc -l /etc/passwd
24
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Gestión de Usuarios y Grupos
Gestión de Usuarios
●
adduser (crear usuarios)
●
usermod (modificar usuarios)
●
deluser (eliminar usuarios)
Gestión de Grupos
5
●
addgroup (añade grupo o usuario a grupo)
●
groupmod (modifica grupo)
●
delgroup (elimina grupo o usuario de grupo)
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Gestión de Usuarios y Grupos
Gestión de Usuarios
linux:~$ adduser alumno
linux:~$ addgroup consultec
linux:~$ adduser –­home /home/consultec/alumno –­shell /bin/sh ­–uid 5001 –­ingroup consultec alumno
linux:~$ usermod –-shell /bin/bash alumno
linux:~$ adduser alumno softwarelibre
• Esto añade a “alumno” al grupo “softwarelibre”
6
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Gestión de Usuarios y Grupos
Cambiando el propietario y grupo
●
7
Para cambiar el propietario o grupo puede hacerse a través
del nombre o del identificativo (uid o gid).
➔
chown (cambiar el propietario)
➔
chmod (cambiar el grupo)
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Gestión de Usuarios y Grupos
Cambiando el propietario y grupo
linux:~$ ls -l ~/documentos/linux.pdf
-rw-rw-r-- 1 alumno alumno 2684 ene
2 21:09 linux.pdf
linux:~$ chown alumno:consultec ~/documentos/linux.pdf
linux:~$ ls -l ~/documentos/linux.pdf
-rw-rw-r-- 1 alumno consultec 2684 ene
2 21:09 linux.pdf
linux:~$ id aktor
uid=500(aktor) gid=500(aktor) grupos=500(aktor)
linux:~$ chown 500 ~/documentos/linux.pdf
linux:~$ ls -l ~/documentos/linux.pdf
-rw-rw-r-- 1 aktor consultec 2684 ene
8
2 21:09 linux.pdf
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Sistemas de ficheros en Unix
Desplazándose por el sistema de ficheros
25
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Sistemas de ficheros en Unix
Rutas en el sistema de ficheros
●
●
Absolutas: desde el directorio raiz hasta el archivo
deseado.
Relativas: desde el directorio actual hasta el archivo
deseado.
Caracteres especiales
●
*: sustituye una cantidad cualquiera de caracteres
●
?: sustituye exactamente un carácter
●
[]: sustituye un carácter de los indicados
Expansión de comandos y archivos
26
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Sistemas de ficheros en Unix
Comandos para el manejo del sistema de ficheros
27
●
ls (lista contenido de directorios)
●
cd / pwd (cambia /muestra la ruta de directorio)
●
touch (crea fichero vacío o actualiza existente)
●
cp / mv / rm (copia / mueve/ elimina fichero)
●
mkdir / rmdir (crea / elimina directorio)
●
man / info (ayuda sobre comandos)
●
echo (muestra una línea de texto)
●
date / cal (muestra la hora del sistema)
●
file (muestra el tipo de fichero)
●
halt / reboot (apaga el sistema)
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Sistemas de ficheros en Unix
Comandos para el manejo del sistema de ficheros (II)
linux:~$ ls ­lha /
linux:~$ pwd
linux:~$ cd ../../etc
linux:~$ touch /home/linux/fichero
linux:~$ date +%d/%m/%y
linux:~$ cp ­a /var/log /backup/
linux:~$ mkdir ­p /tmp/prueba/creacion/directorio
linux:~$ rm ­rf /home/linux/carpeta/
28
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Sistemas de ficheros en Unix
Estructura de los Sistemas de Ficheros
●
29
Estándar de la Jerarquía de Ficheros (FHS)
➔
Se encarga de definir los directorios principales y sus
contenidos en Linux y otros sistemas Unix.
➔
Mayor facilidad en el uso de distintos sistemas Unix.
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Sistemas de ficheros en Unix
Estructura de los Sistemas de Ficheros (II)
30
●
/bin/ /sbin/: comandos esenciales del sistema
●
/boot/: kernel y archivos de arranque
●
/dev/: dispositivos esenciales
●
/etc/: archivos de configuración globales
●
/home/: directorios personales de usuarios
●
/lib/: librerías para comandos esenciales
●
/mnt/ /media/: puntos de montaje
●
/usr/: ficheros “compartidos” no esenciales
●
/var/: ficheros variables frecuentemente
●
/tmp/: ficheros temporales
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Comandos en GNU/Linux
Comandos para paginar y visualizar archivos
●
cat (muestra el contenido de ficheros por pantalla)
●
more / less (pagina el contenido de ficheros)
●
31
head / tail (muetra las primeras / últimas líneas de un
fichero)
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios (parte 2)
Comandos en GNU/Linux
Comandos para paginar y visualizar archivos (II)
linux:~$ cat -n /etc/passwd
linux:~$ more /etc/fstab
linux:~$ less /etc/passwd
linux:~$ cat /etc/passwd /etc/group
linux:~$ tail -f /var/log/syslog
linux:~$ head -n 1 /etc/passwd
32
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Networking en GNU/Linux
Networking
78
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Configuración de la red
●
Las interfaces de red se configuran en el fichero
'/etc/network/interfaces' (man interfaces).
aktor@irontec:~$ cat /etc/network/interfaces
auto eth0 eth1
iface eth0 inet static
address 192.168.0.2
netmask 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1
iface eth1 inet dhcp
79
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Configuración de la red
Configuración manual de la red
●
ifconfig: configura interfaces de red. Asigna IP, máscara,
gateway, etc.
$ ifconfig eth0 192.168.0.12 netmask 255.255.255.0 up
●
route: añade rutas estáticas. Ejemplo típico:
$ route add default gw 192.168.0.1
$ route add ­net 10.10.0.0 netmask 255.255.255.0 gw 192.168.0.100
$ route ­n (muestra tabla de rutas)
●
/etc/resolv.conf: indica los servidores DNS
$ cat /etc/resolv.conf
nameserver 195.235.113.3
80
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Configuración de la red
●
IP alias: crear un interfaz de red sobre otro.
➔
Una misma red física puede albergar distintas redes con
distinto direccionamiento y rango.
$ ifconfig eth0:1 192.168.1.123 netmask 255.255.255.0
$ ifconfig eth0:1
eth0:1
Link encap:Ethernet HWaddr 00:14:85:E8:D3:AF
inet addr:192.168.1.123 Bcast:192.168.1.255
Mask:255.255.255.
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 Interrupt:217 Base address:0xe800
81
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Configuración de la red
Configuración manual de la red
●
●
82
/etc/hosts: realiza una resolución directa de nombre a
IP sin realizar consulta DNS. Normalmente este fichero se
mira antes de preguntar al servidor DNS (sólo para consulta
de tipo A).
Para asegurarnos que el sistema pregunte al DNS o al
fichero '/etc/hosts' para resolver nombres de host hay que
mirar el fichero '/etc/nsswitch.conf'
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Configuración de la red
Configuración automática de la red (DHCP)
●
●
Configuración para el arranque: en /etc/network/interfaces
definimos la interfaz como “inet dhcp”
Configuración manual:
➔
se utiliza un cliente dhcp como dhclient o pump
# dhclient eth0
# pump ­i eth0
83
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Comandos básicos de administración de red
netstat: muestra conexiones de red
●
●
Comando potente que permite mostrar casi toda la
información de la configuración TCP/IP de la máquina (man
netstat).
Ejemplos:
netstat ­atup # muestra tambien procesos
netstat ­a # muestra todas las conex.
netstat ­a | grep LISTEN
netstat ­a | grep ESTABLISHED
netstat ­nrv # muestra tabla de rutas
86
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Gestores de arranque
Grub
●
Datos de interes del archivo menu.lst:
default 0
timeout 3
title Ubuntu, kernel 2.6.12­10­386
root (hd0,1)
kernel /boot/vmlinuz­2.6.12­10­386 root=/dev/hda2 ro quiet splash
initrd /boot/initrd.img­2.6.12­10­386
savedefault
boot
title Microsoft Windows
root (hd0,2)
savedefault
makeactive
chainloader +1
64
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Gestión de Paquetes en GNU/Linux
Gestión de Paquetes
70
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Paquetes .deb
DPKG, Sistema de gestión de paquetes de Debian
●
Permite la instalación, borrado y mantenimiento de .debs
dpkg ­i paquete.deb: instala un paquete.
➔ dpkg ­r [­­purge] paquete: elimina un paquete
➔ dpkg ­L paquete: muestra el contenido completo de un
paquete.
➔ dpkg ­S file: busca paquetes que contengan el fichero.
➔ dpkg ­l: muestra la lista completa de paquetes instalados en
el sistema.
➔ dpkg ­s paquete: muestra información del estado de un
paquete.
➔
71
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Paquetes .deb
APT, front-end avanzado para DPKG
●
●
APT resuelve dependencias. Al instalar un paquete puede
que éste dependa de otro u otros para su funcionamiento.
APT detecta esta dependencia e instala los paquetes
necesarios.
Funcionamiento:
Se crea una base de datos local con la información de los
paquetes instalables. Para crear esta base de datos hace falta
un fichero con las fuentes (/etc/apt/sources.list) de
donde bajarse la información.
➔ Esta base de datos local hay que actualizarla periódicamente
(apt­get update)
➔
72
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Paquetes .deb
APT, front-end avanzado para DPKG
●
Funcionamiento (cont.):
Cuando se solicita la instalación de un paquete, APT
comprueba primero en el sistema que el paquete no esté ya
instalado y posteriormente comprueba en la base de datos
local si el paquete está disponible.
➔ Si el paquete está disponible entonces se conecta a la fuente
en cuestión para bajarse el paquete (archivo .deb). Estos
paquetes bajados se guardan en
/var/cache/apt/archives
➔ Posteriormente se procede a la instalación y configuración
automática del paquete. Si el paquete necesita datos de
configuración nos los pedirá el APT.
➔
73
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Paquetes .deb
APT, front-end avanzado para DPKG
●
Definición de fuentes para APT:
Se definen en el fichero /etc/apt/sources.list
➔ Se pueden configurar con un asistente ejecutando
apt­
setup.
➔ Para leer CDs con fuentes podemos utilizar también apt­
cdrom.
➔
●
Ejemplo de sources.list básico:
deb http://ftp.fi.debian.org/debian stable main contrib non­free
deb http://ftp.se.debian.org/debian­non­US stable/non­US main contrib non­free
deb http://security.debian.org/ stable/updates main contrib non­free
74
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Paquetes .deb
apt­cache: realiza búsquedas sobre la base de datos
local de paquetes.
●
Útil para la obtención de información sobre software
disponible.
apt­cache search patron: busca paquetes que
cumplan un patrón.
➔ apt­cache show paquete: muestra la información de un
paquete
➔ apt­cache depends paquete: muestra las dependencias
del paquete.
➔ apt­cache rdepends paquete: muestra las
dependencias inversas del paquete.
➔
75
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Paquetes .deb
apt­get: interfaz para instalar y desinstalar paquetes así
como para la generación y actualización de la base de
datos local de paquetes.
apt­get update: Actualiza la base de datos local de
paquetes.
➔ apt­get upgrade: Actualiza todos los paquetes instalados
que pueda (solo si hay versiones nuevas disponibles)
➔ apt­get dist­upgrade: Actualiza todos los paquetes que
pueda incluso cuando la actualización implique la instalación
de paquetes nuevos.
➔ apt­get install paquete1 paquete2...: Instala
paquetes
➔
76
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Paquetes .deb
apt­get
apt­get remove [­­purge] paquete1 paquete2 ...
: Desinstala paquetes.
➔ apt­get clean: elimina archivos descargados en
/var/cache/apt/archives (para liberar espacios, NO desinstala los
paquetes).
➔
77
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Gestión de Incidencias en GNU/Linux
Gestión de Incidencias
89
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Herramientas de monitorización
top
●
●
Herramienta presente en todos los Unix que muestra
información de forma continua (cada 3s.) sobre el estado del
sistema, incluyendo la lista de procesos que más CPU están
usando.
Los procesos pueden ser ordenados en base a:
Recursos: utilización de CPU, memoria...
➔ Usuarios: uid, gid...
➔ Procesos: prioridad, estado...
➔
90
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Herramientas de monitorización
top
91
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Herramientas de monitorización
htop
●
●
92
Herramienta similar a top pero con soporte para
desplazamiento vertical entre los procesos.
Permite gestionar los procesos (reiniciarlos, matarlos..) sin
tener que conocer su PID.
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Herramientas de monitorización
htop
93
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Herramientas de monitorización
slmon
●
●
Herramienta que permite monitorizar el rendimiento de un
sistema en tiempo real.
Los recursos que monitoriza son:
Carga de CPU
➔ Memoria
➔ Interfaces de red
➔ Nº de usuarios logueados
➔ Sistemas de ficheros
➔ Procesos
➔
94
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Herramientas de monitorización
slmon
95
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Herramientas de monitorización
iostat
●
Estadísticas de CPU y acceso a disco (man iostat)
Linux 2.6.15­26­686 (mihost) 22/11/06
avg­cpu: %user %nice %system %iowait %steal %idle
51,29 0,01 0,42 0,13 0,00 48,15
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
hda 2,55 14,45 59,21 13825459 56666320
hdb 0,09 18,78 7,29 17967684 6978592
• %user: Uso de CPU en nivel de usuario.
• %nice: Uso de en nivel de usuario con prioridad.
• %system: Uso de CPU a nivel de sistema (kernel).
• %iowait: Porcentaje de tiempo esperando peticiones I/O de disco.
• %steal: Tiempo de espera involuntario por uso de varios CPU's
(virtuales).
• %idle: Tiempo de espera sin recibir petición I/O de disco.
96
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Herramientas de monitoriazión
potion
●
Consumo de ancho de banda por interfaz y conexión.
potion eth0
97
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Recuperación ante errores
Gestores de Arranque: LiLo
●
En caso de que algo haya machacado nuestro MBR...
El objetivo es ejecutar /sbin/lilo de nuestro sistema para
volver a escribir el MBR de la máquina y que lilo vuelva a
funcionar.
➔ Para ello podemos arrancar de diferentes formas:
➔
• Diskette de arranque preparado de antemano + /sbin/lilo
• CD 1 de Debian GNU/Linux con opcion rescue, rescbf24 o similar:
• Live CD (Knoppix o similar) + montar disco + chroot + /sbin/lilo (más
complicada)
98
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Curso Linux: Administración de Sistema y Servicios
Recuperación ante errores
Gestores de Arranque: Grub
●
En caso de que algo haya machacado nuestro MBR...
➔
Podemos recuperarlo de varios modos
• Arrancamos con live-CD, montamos la partición, chroot y ejecutamos
grub­install /disco/duro
• Arrancamos con live-CD, consola, shell de grub (grub) y ejecutamos:
grub> root(hd0,0)
grub> setup(hd0)
grub> quit
99
Iker Sagasti Markina <[email protected]> | Iñaki Baz Castillo <[email protected]>
Descargar