Estoy tratando de detectar qué sistemas de archivos puede admitir un núcleo. Idealmente en una pequeña lista de sus nombres, pero tomaré todo lo que tengas.
Tenga en cuenta que no me refiero a los sistemas de archivos actuales en uso , solo a los que el núcleo actual podría, en teoría, soportar directamente (obviamente, el fusible podría soportar números infinitos más).
fuente

/boot/config-$(uname -r)/proc/filesystemsno está mal , simplemente está incompleto ./lib/modules/$(uname -r)/kernel/fssolo ayudará con los sistemas de archivos que se han habilitado como módulos, no los que están integrados en el núcleo. Además, un nombre de módulo puede no coincidir con el nombre del sistema de archivos que proporciona, y un solo módulo puede proporcionar múltiples sistemas de archivos./proc/config.gzpor alto en absoluto. 1) no se garantiza que exista, 2) un nombre de módulo puede no coincidir con el nombre del sistema de archivos que proporciona, y un solo módulo puede proporcionar múltiples sistemas de archivos./proc/filesystemsenumera todos los tipos de sistemas de archivos admitidos por el núcleo en ejecución, junto con los atributos del sistema de archivos,nodevpara indicar que este sistema de archivos no está respaldado por un dispositivo de bloque, por ejemplo.man 5 filesystemsda información más detallada.fuente
nodevsignifica el resultado cuando ustedcat /proc/filesystems?cat /proc/filesystemsenumero un grupo de "nodev", obviamente sistemas de archivos de propósito especial, además de ext2, ext3, ext4. Cuando miro/lib/modules/3.11.6-1-ARCH/kernel/fs, veo una serie de otros, como "grasas", "btrfs", "reiserfs", que también son sistemas de archivos regulares en el disco, pero no aparecen en la/proc/filesystemlista. ¿Que pasa con eso?nodevindica que el sistema de archivos en cuestión no es un sistema de archivos físico que necesita un dispositivo de bloques para vivir, sino más bien un sistema de archivos virtual respaldado por algo que no sea un dispositivo de bloques./proc/filesystemssolo muestra los sistemas de archivos que el kernel ha cargado; hasta que inserte esos módulos en el kernel (que generalmente ocurre automáticamente cuando los necesita), el kernel no puede admitir esos sistemas de archivos.Creo que esto te dará lo que quieres:
Explicación
Basado en mi mejor entendimiento:
cat /proc/filesystems | awk '{print $NF}' | sed '/^$/d'le brinda todos los sistemas de archivos que el núcleo admite de forma nativa (como sysfs) junto con aquellos que tienen sus módulos de núcleo actualmente cargadosls -1 /lib/modules/$(uname -r)/kernel/fsle proporciona la lista de módulos de sistema de archivos disponibles para su núcleosort -uordena los resultados combinados de los dos primeros comandos con duplicados eliminados (solo muestra resultados únicos -u)Todavía estoy aprendiendo Linux, esto funciona en Arch Linux, pero creo que al menos para Ubuntu es posible que deba cambiar la ruta
/lib/modules/$(uname -r)/kernel/fsa un directorio diferente apropiado para su distribución.fuente