No use mount
.
Desde man mount
:
- La lista.
- El modo de listado se mantiene solo por compatibilidad con versiones anteriores.
- Para una salida más robusta y personalizable, use
findmnt
(8), especialmente en sus guiones. - Tenga en cuenta que los caracteres de control en el nombre del punto de montaje se reemplazan con ? .
Usa findmnt
, como sugiere la documentación. Aquí hay algunas opciones interesantes como se describe en findmnt --help
:
-i
o--invert
- invertir el sentido de coincidencia
-R
o--submounts
- imprime todos los submontajes para los sistemas de archivos coincidentes
-t
o--types
list
- limitar el conjunto de sistemas de archivos por tipos de FS
Esos son solo algunos de los muchos filtros que puede aplicar en la línea de comandos.
man findmnt
- EJEMPLOS
findmnt --fstab -t nfs
- Imprime todos los sistemas de archivos NFS definidos en
/etc/fstab
. findmnt --fstab /mnt/foo
- Imprime todo
/etc/fstab
sistemas de archivos donde el directorio del punto de montaje es/mnt/foo
. También imprime--bind
se monta donde/mnt/foo
es una fuente.
Podrías usar:
findmnt -it sysfs,cgroup,proc,devtmpfs,devpts,pstore,debugfs,hugetlbfs,mqueue,configfs
Eso debería filtrar todos los pseudo-sistemas de archivos, creo.
Aún así, puedes hacer lo mismo con mount
:
mount -t nosysfs,nodevtmpfs...
Posiblemente, una mejor manera podría ser usar uno de los siguientes comandos, que findmnt --help
describe como se indica:
findmnt -D
ofindmnt --df
- Imita la salida de
df
(1). Esta opción es equivalente a-o SOURCE,FSTYPE,SIZE,USED,AVAIL,USE%,TARGET
pero excluye todos los pseudo sistemas de archivos. Usa--all
para imprimir todos los sistemas de archivos.
- Imita la salida de
Puede agregar campos de lista a los valores predeterminados con findmnt -Do
+field,+field
.... Puede especificar su propia lista de campos usando solo los sistemas de archivos -D
se mostraría omitiendo el +
como findmnt -Do
field,field
.
¿Qué tal:
mount | grep '^/[^/]'
Los puntos de montaje relacionados con los discos físicos siempre comenzarán con un /
ya que el primer campo es la ruta a un dispositivo. cifs
los montajes comenzarán con //
así que excluya las líneas con un segundo /
ignorarlos.
Actualizar
Leí mal la pregunta, pensé que querías excluir cifs
y nfs
. Prueba esto en su lugar:
mount | grep -E '^[^ ]*[/:]'
El -t
opción para mount
también funciona cuando se muestran puntos de montaje y toma una lista separada por comas de tipos de sistemas de archivos:
mount -t ext3,ext4,cifs,nfs,nfs4,zfs
No estoy seguro si eso es mejor solución. Si comienza a usar (por ejemplo, btrfs
) y olvídate de agregar eso a la lista, no lo verás y tal vez no te lo pierdas. Prefiero filtrar activamente cualquier nuevo sistema de archivos "poco interesante" cuando aparezcan, aunque la lista se está haciendo larga.
Puede intentar activamente solo grep
los puntos de montaje interesantes son similares a los que propuso @Graeme, pero dado que también está interesado en los montajes NFS/CIFS (que no comienzan con /
), debes hacer:
mount | grep -E --color=never '^(/|[[:alnum:]\.-]*:/)'
( el --color
es necesario suprimir la coloración del /
inicial en las líneas encontradas). Como señaló Graeme, también debería permitirse el montaje basado en el nombre de los recursos compartidos de NFS. El patrón selecciona líneas que comienzan con un /
o cualquier combinación de "a-zA-Z0-9". seguido de :/
(para montajes NFS).