martes, 31 de marzo de 2015

¿Cómo se gestionan los discos en Linux?






Particiones:
MBR (Master Boot Record): Son los primeros 512 bytes = 444 (rutina de arranque o IPL (Inital Program Loader)) + 4 (firma del HDD, sólo Windows) + 4 * 16 (tabla de particiones)
Tipos: Primarias (1 a 3), extendidas o secundarias (4) y lógicas (5, ...)
Nombrado: [hs]d[a-z][0-9]
h disco mecánico
s disco sólido o SCSI
a-z número de disco
0-9 número de partición
Al tener varias particiones se crean los EBR (Extended Boot Record) que dan más información al MBR
PBR (Partition Boot Record), PBS (Partition Boot Sector) o VBR (Volume Boot Record) es el lugar donde se guarda información sobre las particiones.


Gestión de particiones:
fdisk Herramienta de particionado textual
fdisk -l /dev/sda Muestra información de la partición sda
fdisk /dev/sda Permite agrupar las acciones relativas al disco sda:
p Imprime (print) información
o Crea una tabla de particiones (muy importante al principio)
d Elimina (delete) una partición, a continuación se solicitará el número de la partición
n Crea (new) una partición, eligiendo el tipo: p (primaria) o e (extendida) y el tamaño
w Salva (write) los cambios realizados
t Cambia el tipo (type), solicitará el número de partición y luego el nuevo tipo (podemos listar los tipos con L)
parted Herramienta de particionado textual
gparted Herramienta de particionado gráfica
blockdev Herramienta de discos:
blockdev --rereadpt /dev/sda Fuerza la recarga de la información de la partición sda
partprobe Lee la tabla de particiones de un disco (Ej. partprobe /dev/sda). Requiere la instalación previa de parted.
mkfs crea un sistema de ficheros
mkfs -t tipo opciones periferico
tipo: ext2 (mkfs.ext2), ext3 (mkfs.ext3), reiserfs (mkfs.reiserfs), vfat (mkfs.vfat), ntfs (mkfs.ntfs), etc. [iso9660 para CDs y UDF para DVDs]
opciones:
ext*: -b tamañoBloque, -c (chequea defectos), -i ratio_bytes/inodos, -m %_para_root, -L etiq_disco, -j (crea log en .journal)
raisefs: -b tamañoBloque (potencias de 2, 512-8192), -l etiq_disco, -f (modo forzado), -d (modo debug)
vfat: -c (chequea defectos), -f tipo (12, 16 o 32), -l (coje todo el disco), -n etiq_disco, -v (modo verbose)




Gestión del sistema de ficheros:
mount monta unidades para su uso.
Ej: mount -t tipo -o opciones periferico punto_montaje
{ mount -t tipo -L etiqueta munto_montaje
ls -l /dev/disk/by-label }
{ ./vol_id -u /dev/sda2
dumpe2fs -h /dev/sda2 | grep UUID
ls -l /dev/disk/by-uuid
mount -t tipo -u uuid munto_montaje }
mount -o ro,remount munto_montaje # Re-monta una particion
mount -a # Monta todos las particiones disponibles
opciones:
defaults por defecto: rw, suid, dev, exec, auto, nouser y async
sync/async escrituras sincronas o no sincronas
exec/noexec permite ejecutar fichero o no
noatime no guarda los tiempos de acceso
auto/noauto montar automáticamente o no
user/nouser cualquiera o sólo root pueden montar
remount re-montar
ro/rw solo lectura o lectura y escritura
dev/nodev con o sin ficheros especiales
noload [ext3] no carga el diario
usrquota/grpquota cuotas de usuario o grupos
acl para añadir Access Control List
user_xattr [ext3, xfs] atributos extra
umask= [fat, ntfs] mascara por defecto (133)
dmask=/fmask= [fat, ntfs] mascaras de directorio o ficheros
uid=/gid= [fat, ntfs] gestión de permisos para usuarios o grupos
umount desmonta particiones. Ej: umount /mnt/disco2
lsof determina que procesos usan un punto de montaje. Ej: lsof /mnt/disco2
fuser mata los procesos que usan un punto de montaje. Ej: fuser -km /mnt/disco2
El archivo /etc/fstab guarda información sobre las particiones, estructura: periferico punto_montaje tipofs opciones dump fsck
periferico puede ser la ruta (/dev/sda1), la etiqueta (LABEL=home) o el uuid (UUID=123456798)
dump frecuencia de volcado
fsck frecuencia de verificacion: 0=ignorar, 1=primero, 2=segundo,... Se verifican según ese orden ascendentemente.

bind existe una opción para montar sólo partes de una partición, poniendo en el fstab: /mnt/disco2/midir  /midir  none  bind

df muestra información (por defecto en Kb) de todos o de un dispositivo en concreto
Ejemplos: df
df -m /home # Muestra información de la partición de home en Mb
df -h # Amigable para el humano
df -H # En formato del Sistema Internacional (potencias de 10)
df -T # Muestra también el tipo
df -i # Muestra información de los inodos
du muestra información de uso del disco
Opciones: k En KB
m En MB
s Sólo el total (sin detalles)
x Para todo el sistema de ficheros (incluidos todos los puntos de montaje)

fsck comprueba y chequea el sistema de ficheros. Uso: fsck -t tipo periferico

mkswap prepara una partición para que sea de tipo swap (previamente tendria que haberse ejecutado el comando partprobe)
swapon activa una partición para que sea swap.
Opciones: -p prio asigna una prioridad (0 a 32767), a mayor valor más proritaria
-L label la activa usando su etiqueta
-a activa todas las particiones swap
-v -----------------
sur -----------------
ls /proc/swaps muestra el estado de las particiones swap.
swapoff desactiva una partición swap (similar a swapon).
free muestra información sobre la RAM y la swap. Opciones: -k (en Kb, por defecto), -m (en MB), -g (en GB)
sync sincroniza los medios externos y sus cachés
meminfo es un proceso o seudofichero almacenado en /proc/meminfo, usar "cat /proc/meminfo"


Gestión de usuarioss y grupos:
useradd crea un usuario
Opciones: -d dirhome # asigna directorio de trabajo
-g grupo # asigna un grupo base
-G g1,g2 # asigna a más grupos
-p password # asigna una contraseña
-m # crea el directorio de trabajo inmediatametne
userdel borra un usuario (con -r borra su espacio de trabajo)
passwd permite cambiar la contraseña al usuario
groupadd crea un grupo
groupdel borra un grupo
gpasswd asigna un usuario a un grupo. Ejemplo: gpasswd -a user grupo


Gestión de permisos de usuarios y grupos:
id muestra los uid y gid de cada usuario y grupo del sistema de ficheros
chown cambia el propietario de un fichero (-r de forma recursiva).
Ejemplos: chown user fich1 fich2
chown user:group fich1 fich2 # cambia propietario y grupo, también con . en lugar de :
chgrp cambia el grupo de un fichero (-r de forma recursiva). Ej: chgrp grupo fich1 fich2


Cuotas de disco:  [Cuotas duras (no se pueden superar nunca) o suaves (se pueden superar temporalmente). Debe ponerse en /etc/fstab usrquota/grpquota]
quotacheck comprueba las cuotas de una particion. Ej: quotacheck -c /home
quotaon activa las cuotas en una particion. Ej: quotaon /home
quotaoff desactiva las cuotas en una particion. Ej: quotaoff /home
edquota muestra y modifica los datos de cuota de un usuario o grupo. Ejemplos:
edquota -u user # muestra la cuota de user
edquota -u user -f /home # muestra la cuota de la particion /home de user
edquota -p user1 user2 # copia la couta de user1 en user2
edquota -t time # configura el periodo de gracia general: time= número + unidad (days, hours, minutes o seconds)
edquota -u user -T time # configura el periodo de gracia del usuario user: time= número + unidad (days, hours, minutes o seconds)
quota muestra el uso del disco y de las cuotas
Opciones: -u user # aplicadas al usuario user
-g grp # aplicadas al grupo grp
-v # muestra también los archivos pendientes de almacenar
-q # muestra sólo la información de las cuotas
repquota crea un reporte de todos los usuarios (por defecto) para una partición solo puede lanzarla el root. Ej: sudo repquota /home
Opciones: -s formato más legible
-a muestra todas las particiones
-g el reporte se crea para grupos
warnquota crea mensajes de cuotas excedidas. Configurables en /etc/warnquota.conf

No hay comentarios:

Publicar un comentario

¡Danos tu opinión!