Esto es esencialmente una cuestión de revisar una bolsa completa de cajas de esquina.
- Una unidad puede aparecer en / proc / mounts
- Se puede usar una unidad como intercambio (use / proc / swaps)
- Un disco puede ser parte de un pv LVM activo (use pvdisplay)
- Una unidad puede ser parte de un grupo RAID dm-mapper (use / proc / mdstat)
- Una aplicación puede acceder directamente a una unidad (por ejemplo, Oracle admite escribir directamente en una unidad o partición en lugar de un sistema de archivos) (use el fusor)
- Se puede acceder directamente a una unidad mediante una máquina virtual (usar fusor)
- Una unidad puede ser referenciado por un dispositivo de bucle de retorno (por ejemplo:
mount /dev/sda -o offset=1M /foo
) (uso losetup -a)
Estos son solo los ejemplos con los que se me ocurrió dar un minuto y medio para pensarlo. Estoy seguro de que hay una docena más.
Creo que este último ejemplo es el más interesante y pocas personas lo saben. Le permite montar un sistema de archivos sin usar particiones. Simplemente especifique el desplazamiento inicial y Linux creará de forma transparente un dispositivo de bucle invertido. El ejemplo anterior produce lo siguiente:
# cat /proc/mounts
...
/dev/loop0 /foo ext4 relatime,data=ordered 0 0
# losetup -a
/dev/loop0 [0005]:2048 (/dev/sda), offset 1048576
¿Por qué harías eso? Por lo general, implica situaciones en las que las cosas han salido terriblemente mal anteriormente.
También tenga en cuenta que con la función de espacio de nombres ahora en la línea principal (ver no compartir ), diferentes procesos pueden tener diferentes vistas sobre lo que está montado y lo que no. Aquí las cosas comienzan a ponerse un poco rojas.