Subsecciones
Para detalles de instalación ver Guía de instalación de Debian
- Descargaremos la imagen de CD pequeño (fichero debian-8.2.0-i386-netinst.iso)
- Enter para iniciar con opciones por defecto, Advances options para opciones de instalación avanzadas, Help para ayuda
- Selección de idioma, localización y teclado
- Configuración de la red
- Por defecto, intenta configurarla por DHCP
- Si no lo consigue, pasa a configuración manual (indicar IP, máscara, pasarela y DNSs)
- Poner un nombre a la máquina e indicar el dominio (si alguno)
- Fijar el password del superusuario (root) y crear un usuario no privilegiado
- El superusuario es un usuario especial que actúa como administrador del sistema
- Tiene acceso a todos los archivos y directorios del sistema
- Tiene capacidad para crear nuevos usuarios o eliminar usuarios
- Tiene capacidad de instalar y borrar software del sistema o aplicaciones
- Puede detener cualquier proceso que se está ejecutando en el sistema
- Tiene capacidad de detener y reiniciar el sistema
- El login del superusuario es root (aunque puede cambiarse)
- No es conveniente acceder al sistema directamente como root:
- acceder como un usuario sin privilegios, y
- obtener los permisos de root haciendo su (necesitamos la contraseña de root)
En una instalación por red los paquetes se traen de un repositorio remoto a través de http o ftp
- Seleccionar el huso horario
- Realizar el particionado del disco (modo guiado o manual)
Podemos optar por instalar todo el sistema en una sola partición, aunque no es nada recomendable
- preferible instalar diferentes directorios del sistema en diferentes particiones
- la estructura de directorios UNIX sigue el estándar FHS (Filesystem Hierarchy Standard)
Localización estándar de los ficheros
- /bin/ (binaries) - ejecutables esenciales (ls, cat, bash, etc.)
- /sbin/ - (superuser binaries) - ejecutables esenciales para el superusuario (init, ifconfig, etc.)
- /lib/ - Librerías esenciales para los ejecutables en /bin/ y /sbin/
- /usr/ (Unix system resources) - aplicaciones y código fuente usados por los usuarios y el superusuario
- /usr/bin/ - más aplicaciones de usuario
- /usr/sbin/ - más aplicaciones para el superusuario
- /usr/lib/ - librerías esenciales para los ejecutables en /usr/bin/ y /usr/sbin/
- /usr/share/ - datos, independientes de la arquitectura, necesarios para las aplicaciones y páginas de manual (/usr/share/man, /usr/share/info)
- /usr/include/ - ficheros de cabecera (.h) estándar
- /usr/src/ (opcional) - código fuente (del kernel u otras aplicaciones)
- /usr/X11R6/ (opcional) - sistema X Window, versión 11 release 6
- /usr/local/ - aplicaciones que no son parte del sistema operativo
- /etc/ - contiene muchos de los scripts y ficheros de configuración del sistema
- /etc/X11/ (opcional) - configuración de X Window
- /etc/skel/ (opcional) - ficheros de configuración para los usuarios
- /var/ - ficheros variables (logs, bases de datos, etc.)
- /var/log/ - ficheros de log
- /var/spool/ - ficheros temporales de impresión, e-mail y otros
- /tmp/ - ficheros temporales
- /opt/ - otras aplicaciones software (estáticas)
- /srv/ - datos de servicios proporcionados por el sistema (páginas web, ftp, cvs, etc.)
- /boot/ - ficheros usados por el gestor de arranque, incluyendo el kernel
Otros directorios del sistema
- / - directorio raíz del sistema
- /home/ (opcional) - directorio de usuarios (directorio inicial o home)
- /root/ (opcional) - directorio home del superusuario
- /dev/ - ficheros de acceso a periféricos
- /proc/ - directorio virtual conteniendo información del sistema
- /sys/ - similar a /proc, contiene información de dispositivos (sólo kernel 2.6)
- /media/ - punto de montaje para medios removibles
- /mnt/ - punto de montaje para sistemas temporales
Para más información ver www.pathname.com/fhs/
Dependiendo del tipo de sistema podemos escoger diferentes esquemas de particionamiento, algunos ejemplos:
- Maquina de escritorio (un sólo usuario), tres particiones
- swap - área de intercambio; siempre necesaria, tamaño función del tamaño de la RAM y del tipo de aplicaciones que se ejecuten (como orientación, tomar al menos el doble de la RAM)
- /home/ - disco de los usuarios, tamaño en función de las necesidades del usuario
- / - resto del disco
- Sistema multiusuario, además de las particiones anteriores crear particiones separadas para /usr, /var y /tmp
- /usr podría montarse en modo sólo-lectura después de que todo el sistema esté instalado (dificulta la introducción de Troyanos)
- tener /var y /tmp en su partición evita que un usuario llene todo el disco
- Particiones adicionales:
- /boot - en versiones antiguas de Linux se necesitaba que el directorio /boot/ estuviese por debajo del cilindro 1024
- /chroot - para aplicaciones en un entorno enjaulado (p.e. DNS, Apache, etc.)
- /var/lib - partición para gestionar ficheros del servidor de bases de datos o del proxy (MySQL, squid) (limitar la posibilidad de un ataque por denegación de servicio)
Ejemplo de partición (disco de 50 G):
Dos opciones:
- Particionamiento guiado (con o sin LVM)
- Selecciona el tamaño de las particiones de manera automática
- Particionamiento manual
- Particionamiento manual
- control total del número y tamaño de las particiones
- Seleccionamos el disco a particionar y crear nueva tabla de particiones:
- Creamos una nueva partición indicándole el tamaño, el tipo (primaria o lógica) y la localización (comienzo o final)
- puede haber 4 primarias o 3 primarias y una extendida, que se puede dividir en varias lógicas
Ejemplo de partición para /
Linux soporta múltiples sistemas de ficheros
Para cada partición podemos seleccionar los siguientes:
- ext2 - Second EXTended filesystem, sistema estándar Linux
- ext3 - Third EXTended filesystem, versión con journal de ext2, que evita corrupción (opción por defecto)
- es posible convertir ext2 en ext3 con el comando tune2fs -j
- muy robusto, aunque no escala muy bien (no ideal para filesystems muy grandes, ficheros muy grandes o un número de ficheros en un directorio muy alto)
- ext4 - Fourth EXTended filesystem, última versión, disponible desde el kernel 2.6.28, mejoras en velocidad y otros aspectos
- ReiserFS, JFS, XFS - otros tipos de sistemas transaccionales (con journal) usados en diferentes sistemas
- ReiserFS - por defecto en algunas distribuciones Linux (p.e. Slackware)
- mayor rendimiento que ext2 y ext3, principalmente con ficheros pequeños (menos de 4k) y buena escalabilidad
- Sucesor: Reiser4
- XFS - usado en sistemas SGI Irix
- optimizado para escalabilidad
- recomendado en grandes sistemas SCSI o fiber channel con fuente de alimentación ininterrumpida (utiliza caché de forma agresiva --> perdida de datos si el sistema se apaga)
- JFS - usado en máquinas de IBM
- fat16, fat32 - usados en MS-DOS y Windows 95/98/Me
Comparativa en wikipedia
- Debemos seleccionar el mirror desde el que descargar el software
- Existen varios repositorios de paquetes Debian --> elegir el más cercano
- Introducir la información del proxy, en caso de ser necesario
- Seleccionar los paquetes software a instalar
- Instalar del gestor de arranque
- Elegir los paquetes a instalar:
- aunque optemos por no instalar nada, se instalarán todos los paquetes con prioridad ``estándar'', ``importante'' o ``requerido'' que aún no estén instalados en el sistema
- Podemos repetir este paso con el sistema instalado usando el comando tasksel
Gestor de arranque: permite seleccionar el SO a arrancar
Existían 2 posibilidades en Linux
- LILO (LInux Loader), cargador clásico en Linux (obsoleto)
- GRUB (GRand Unified Bootloader), cargador del proyecto GNU
La gran mayoría de las distribuciones usan GRUB (las más actuales la versión 2)
El gestor de arranque se carga normalmente en el MBR del primer disco
- MBR (Master Boot Record) está localizado en el primer sector del disco
- en el MBR se encuentra información sobre las particiones (Master Partition Table) y un pequeño código (Master Boot Code)
- cuando el sistema se inicia, la BIOS carga el Master Boot Code, que permite seleccionar el sistema a cargar, y transfiere el control al programa de arranque del SO (localizado en /boot)
El gestor de arranque puede también cargarse en el primer sector de la partición root (por si tenemos otro bootloader en el MBR)
Instalación de GRUB en Debian
Debian: la instalación termina aquí
Debemos reiniciar el sistema para continuar
Proporciona una visión de alto nivel de los discos
- permite ver varios discos como un único volumen lógico
- permite hacer cambios en las particiones sin necesidad de reiniciar el sistema
- permite gestionar los volúmenes en grupos definidos por el administrador
Conceptos (para más información LVM HOWTO):
- Volumen físico (PV): discos duros, particiones de los discos u otro dispositivo similar (p.e. RAID)
- Volumen lógico (LV): particiones lógicas sobre las que se montan los sistemas de ficheros
- Grupo de volúmenes (VG): agrupación de LV, que forman una unidad administrativa
- Extensión física (PE): unidades básicas en las que se divide cada PV; el tamaño de cada PE es el mismo para todas los PV pertenecientes al mismo VG
- Extensión lógica (LE): unidades básicas en las que se divide cada LV; para un VG el tamaño de las LE es el mismo que el de las PEs
- Área de descripción del VG (DAVG): área donde se almacena la información (meta-data) sobre los LV y VG; sería el equivalente a la tabla de particiones de un sistema no-LVM
Estructura de LVM
Hay una relación 1:1 entre cada LE y PE en un VG
- Se pueden elegir dos estrategias para mapear extensiones lógicas en extensiones físicas:
- Mapeado Lineal: asigna un rango de PEs a un área de un LV en orden, por ejemplo LE 1-99 se mapean
a PV1, y los LE 100-199 se mapean a PV2
- Stripping: se reparten los LEs entre los distintos PVs
- 1 LE -> PV1[1], 2 LE -> PV2[1], 3 LE -> PV3[1], ...
Pasos para crear un sistema LVM
Suponemos un sistema con dos discos (sda y sdb)
- Crear los PV
- particionamos sda para reservar un espacio para /boot (dejamos /boot fuera de LVM para evitar problemas con el arranque, aunque en las últimas versiones no es necesario)
- definimos 2 volúmenes físicos
- el primero incluye todo sda menos /boot (sda2)
- el segundo incluye todo sdb (sdb1)
- Crear un grupo de volumen que incluya los PVs
- podemos ponerle un nombre al grupo de volumen
- hacemos que incluya los dos volúmenes físicos que hemos definido en el punto anterior
- Crear los volúmenes lógicos
- creamos un volumen lógico por cada partición
- los LV pueden llevar un nombre identificativo
- Cifrar sistemas de ficheros
- podemos usar algún LV como ``volumen físico para cifrado''
- permite cifrar la información: contraseña para acceder a la misma
- Asignar sistemas de ficheros a los volúmenes (cifrados o no)
Debemos configurar GRUB para evitar que sea modificado el menu de arranque
- debemos usar una contraseña para limitar:
- la modificación de los parámetros iniciales
- el acceso a determinadas imágenes
- el acceso a opciones avanzadas
Administración de Sistemas e Redes <ASR.USC[at]gmail.com>
Tomás Fernández Pena <tf.pena[at]usc.es>
Última actualización: 30-09-15 17:44 por tomas
Curso de Administración de Sistemas y Redes por Tomás Fernández Pena se distribuye bajo la licencia Creative Commons Recoñecemento-Compartir baixo a mesma licenza. 3.0 España.
Trabajo original en persoal.citius.usc.es/tf.pena/ASR.