IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

La version 6.2 du noyau Linux laisserait prévoir de nombreuses améliorations du système de fichiers
Dans le même temps, les systèmes de fichiers Linux de nouvelle génération n'avancent pas vite

Le , par Bruno

20PARTAGES

10  0 
La prochaine version du noyau Linux (6.2) devrait apporter une amélioration de la gestion des systèmes de fichiers, notamment les performances des cartes SD et des clés USB, ainsi que FUSE. Quant aux sous-systèmes de stockage de la prochaine génération... pas vraiment. Pour un noyau de système d’exploitation aussi mature, il y a encore des améliorations considérables dans la gestion par Linux des formats de disques existants, et cela pourrait s'améliorer avec l’arrivé du noyau 6.2. Aussi, de l'avis de certains spécialistes, les systèmes de fichiers Linux de nouvelle génération n'avanceraient pas vite.

Linux est un membre de la grande famille des systèmes d'exploitation de type Unix. Ce nouveau venu, qui a connu une popularité soudaine et spectaculaire à la fin des années 1990, rejoint les systèmes d'exploitation commerciaux Unix bien connus tels que System V Release 4 (SVR4), développé par AT&T (aujourd'hui détenu par le SCO Group) ; la version 4.4 BSD de l'Université de Californie à Berkeley (4.4BSD) ; Digital UNIX de Digital Equipment Corporation (aujourd'hui Hewlett-Packard) ; AIX d'IBM ; HP-UX de Hewlett-Packard ; Solaris de Sun Microsystems ; et Mac OS X d'Apple Computer, Inc. Outre Linux, il existe quelques autres noyaux de type Unix à open source, tels que FreeBSD, NetBSD et OpenBSD.


Aujourd'hui, pour monter un système de fichier, il faut être administrateur ou que celui-ci l'ait prévu dans « /etc/fstab » avec des informations en dur. FUSE abréviation de Filesystem in Userspace, permet à un utilisateur de monter lui-même un système de fichier. Avec FUSE, il est possible d'implémenter toutes les fonctionnalités d'un système de fichier dans un espace utilisateur. Ces fonctionnalités incluent :

  • une API de bibliothèque simple ;
  • une installation simple (pas besoin de patcher ou recompiler le noyau) ;
  • une implémentation sécurisée ;
  • utilisable dans l'espace utilisateur.

Linux a été initialement développé par Linus Torvalds en 1991 comme système d'exploitation pour les ordinateurs personnels compatibles IBM basés sur le microprocesseur Intel 80386. Linus reste très impliqué dans l'amélioration de Linux, en le maintenant à jour avec les différents développements matériels et en coordonnant l'activité de centaines de développeurs Linux dans le monde. Au fil des ans, les développeurs ont travaillé pour rendre Linux disponible sur d'autres architectures, notamment Alpha de Hewlett-Packard, Itanium d'Intel, AMD64 d'AMD, PowerPC et zSeries d'IBM.

L'un des avantages les plus attrayants de Linux est qu'il ne s'agit pas d'un système d'exploitation commercial : son code source sous licence GNU General Public License (GPL)† est ouvert et peut être étudié par tous.

Les systèmes de fichiers standard de Linux existent en plusieurs versions

Techniquement parlant, Linux est un véritable noyau Unix, bien qu'il ne s'agisse pas d'un système d'exploitation Unix complet car il n'inclut pas toutes les applications Unix, telles que les utilitaires de système de fichiers. Avec Linux, il est possible d’utiliser le bon vieux système de fichiers Ext2 s’il n’éxiste pas de besoins spécifiques. Il est possible de passer à Ext3 pour éviter les longues vérifications du système de fichiers après une panne du système. Pour gérer de nombreux petits fichiers, le système de fichiers ReiserFS est probablement le meilleur choix.

Outre Ext3 et ReiserFS, plusieurs autres systèmes de fichiers de journalisation peuvent être utilisés sous Linux, notamment le système de fichiers de journalisation (JFS) d'IBM AIX et le système de fichiers XFS de Silicon Graphics IRIX. Grâce à une puissante technologie de système de fichiers virtuel orienté objet (inspirée de Solaris et du SVR4), le portage d'un système de fichiers étranger vers Linux est généralement plus facile que le portage vers d'autres noyaux.

Matthew Wilcox, développeur du noyau d'Oracle Linux, a recommandé la suppression du système de fichiers ReiserFS, un système de fichiers développé spécialement pour le système d'exploitation Linux par Hans Reiser et la société Namesys. C'est le premier système de fichiers journalisé qui a été accepté dans le noyau et développé alors que les systèmes de fichiers Ext n'étaient pas encore prévus.

Le motif évoqué par Wilcox pour soutenir son idée de supprimer le système de fichiers ReiserFS est la difficulté supplémentaire avec la modernisation de l'infrastructure du noyau causée par le fait qu'il est obligé de laisser le tag AOP_FLAG_CONT_EXPAND dans le noyau car reiserfs reste le seul système de fichiers qui utilise ce tag dans la fonction Write_begin. Également, la dernière correction dans le code de reiserfs date de l'année 2019.

Jan Kara de la société SUSE a indiqué que Reiserfs est sur la voie de l'obsolescence, mais il n'est pas possible de conclure qu’il est dépassé pour être retiré du noyau. Selon certains analystes, Reiserfs continue à être fourni dans OpenSUSE, mais la base d'utilisateurs de ce FS est insignifiante et se réduit constamment. Pour les utilisateurs professionnels, le support de Reiserfs dans SUSE a été interrompu il y a 3-4 ans et le module reiserfs n'est pas inclus dans le paquet par défaut avec le noyau.

Comme option, Sheng Yang, Directeur principal de l’ingénierie chez SUSE a proposé de commencer à afficher un avertissement sur l'obsolescence lors du montage des sections ReiserFS et de considérer que ce système de fichiers est prêt à être supprimé si personne n’émet le désir de continuer à utiliser le système de fichiers.

exFAT publié par Microsoft en 2019 et intégré dans le noyau Linux en 2020

ExFAT est l’abréviation du terme anglais « Extended File Allocation Table » (en français « tableau de distribution de fichier étendu »). exFAT permet une taille de cluster maximale de 32 MiB (mébibytes). Au maximum, un dossier peut contenir 2 796 202 fichiers. Par conséquent, les utilisateurs privés n’atteindront jamais cette limite de plusieurs millions de fichiers qui offre par ailleurs une marge considérable aux utilisateurs d’applications professionnelles dans les domaines de la recherche, de l’industrie et des médias. Le prédécesseur d’exFAT, FAT32, permettait au maximum 65 534 fichiers. Cette amélioration est donc particulièrement utile, voire indispensable, pour les applications impliquant de grandes quantités de données.

Depuis la version 10.6.5, le standard exFAT est en outre entièrement supporté par Apple permettant ainsi d’accroître la compatibilité entre les appareils Mac et PC et de simplifier le transfert des données. Pendant très longtemps, la compatibilité avec les systèmes d’exploitation Linux n’a pas été optimale. Suite à la publication par Microsoft de la spécification exFAT en 2019 et à son intégration dans le noyau Linux en 2020, sa prise en charge s'est régulièrement améliorée.

Tout récemment, Linux a acquis la capacité de réparer les volumes exFAT, grâce à un patch du développeur Samsung Namjae Jeon, qui maintient le pilot exFAT hors-arbre pour les anciens noyaux - comme celui utilisé dans Android. Son historique de commit montre de nombreuses contributions du programmeur de Sony. Un autre ingénieur de Samsung, Jaeguk Kim, a contribué à un patch pour améliorer F2FS, le Flash Friendly File System.

Quels que soient le système d’exploitation et la plateforme, exFAT peut parfois entraîner des problèmes dans le cadre d’une utilisation intensive : le disque dur ou le support de stockage n’est pas toujours reconnu immédiatement et il est parfois nécessaire de s’y reprendre à plusieurs fois pour transférer des données sans erreur. Comme exFAT ne procède pas à un enregistrement redondant des données maîtres, les supports de stockage avec un système de fichiers exFAT doivent toujours être déconnectés et retirés avec soin. Dans le cas contraire, cela peut entraîner des pertes de données et dans certains cas, la seule solution pour y remédier sera d’avoir recours à un sauvetage des données.

Un correctif de Yuezhang Mo, ingénieur chez Sony, permet de créer plus rapidement de nouveaux fichiers ou répertoires sur un disque exFAT contenant beaucoup de fichiers - et plus il y a de fichiers, plus l'amélioration est importante. Cette amélioration fait suite à un précédent correctif du même programmeur visant à améliorer la gestion de l'exFAT, en mars.

Système de fichiers et POSIX

Traditionnellement, les systèmes qui prennent en charge la famille de normes POSIX (Portable Operating System Interface) partagent un modèle de permission de système de fichiers simple mais puissant.

Les ingénieurs ont depuis longtemps reconnu les déficiences du modèle de permission traditionnel et ont commencé à réfléchir à des alternatives. Cela a finalement donné lieu à un certain nombre d'implémentations de listes de contrôle d'accès (ACL) sur UNIX, qui ne sont compatibles entre elles que dans une mesure limitée. Christian Brauner, ancien ingénieur d'Ubuntu et maintenant de Microsoft a envoyé un patch détaillé pour ajouter une API VFS (Virtual File System) dédiée aux ACL POSIX. Celles-ci sont prises en charge depuis longtemps, mais la nouvelle version devrait nettoyer et simplifier leur gestion.

Brauner a également soumis un patch pour supporter les montages par ID pour les volumes SquashFS. Il s'agit d'un complément à son patch précédent qui introduisait les montages mappés par ID, qui contient également une explication de leur fonctionnement et de leur utilité.

Il y a aussi des améliorations pour certains des systèmes de fichiers les plus établis. L'un d'entre eux est une liste de corrections et d'améliorations pour XFS, qui vise la nouvelle fonctionnalité importante de réparation en ligne. Un autre correctif apporte des améliorations de performance aux volumes montés avec FUSE - en d'autres termes, lorsque le code du système de fichiers est exécuté dans un programme en espace utilisateur, et non dans le cadre du noyau. Il y a même quelques corrections de bogues pour le désormais vénérable ext4.

Améliorations dans Btrfs

Btrfs est un système de fichiers doté de fonctionnalités intéressantes telles que l'intégrité des données, la prise en charge de plusieurs périphériques, etc. Btrfs est devenu le système de fichiers par défaut pour les ordinateurs de bureau dans Fedora Linux 33, et Fedora Linux 34 Beta s'appuie sur ce travail en permettant la compression transparente pour plus d'espace de stockage.

Ceci est conçu pour aider à augmenter de manière significative la durée de vie des supports flash. Cette compression sera essentielle pour augmenter les performances de lecture et d'écriture de fichiers plus volumineux, avec le potentiel d'ajouter un gain de temps significatif dans les flux de travail.

Il y a également quelques améliorations dans Btrfs, en particulier dans sa gestion des RAID 5 et 6. En particulier, un correctif aborde le problème de « lecture-modification-écriture » pour les matrices Btrfs RAID5 (mais pas RAID6). C'est une bonne chose, mais ces dispositions de disques ne sont toujours pas recommandées. Selon les termes de la propre documentation du produit : cette fonctionnalité ne doit pas être utilisée en production, seulement pour l'évaluation ou le test.

Les systèmes de fichiers Linux de nouvelle génération n'avancent pas vite

Zsys d'Ubuntu pour les installations Linux OpenZFS

En avril de cette année, Zsys d'Ubuntu pour les installations Linux OpenZFS a reçu sa première mise à jour depuis un an. Il est à noter qu'il n'y a pas eu de nouveau message sur le blog ZSys depuis la version 20.04 d'Ubuntu, et certains utilisateurs commencent à se demander ce qui se passe, et s'il faut le supprimer. Quand Ubuntu a commencé à supporter les installations basées sur OpenZFS, ils en ont beaucoup parlé et ont commencé à travailler sur Zsys et d'autres intégrations autour d'OpenZFS sur Ubuntu.

Mais plus récemment, l'intérêt pour OpenZFS sur Ubuntu s'est clairement émoussé, Canonical ne lui accordant pas beaucoup d'attention en matière de développement ou de promotion. OpenZFS par défaut ne s'est pas non plus matérialisé et la situation de la licence autour d'OpenZFS avec le noyau Linux reste obscure. La première version de Zsys, Zsys 0.5.9 a été publiée, depuis la v0.5.8 de l’année dernière.

Le seul changement apporté par cette mise à jour était la mise à jour des liaisons ZFS Go afin qu'elles soient compatibles avec OpenZFS 2.1. Cela corrige le fait que Zsys ne démarre pas avec une erreur d'exécution comme cela a été constaté sur Ubuntu 22.04 LTS. Maintenant, Zsys fonctionnera au moins sur Ubuntu 22.04 LTS en utilisant le paquetage OpenZFS 2.1.

Stratis, une solution de gestion du stockage local pour Linux

Du côté de Red Hat, l'équipe Stratis a publié la version 3.4 en novembre, et trois versions mineures depuis. Le journal des modifications ne montre pas de travail très important. Il cible toujours la version de Fedora précédant la version actuelle, par exemple. Elle peut être utilisée dans RHEL 9, mais elle reste une non prise en charge, comme c'était le cas dans RHEL 8 en 2019.

Stratis est une solution de gestion du stockage local pour Linux. Elle est axée sur la simplicité et la facilité d'utilisation, et donne accès à des fonctionnalités de stockage avancées. Elle facilite les activités suivantes :

  • configuration initiale du stockage ;
  • modification ultérieure ;
  • utilisation des fonctions de stockage avancées.

Ces fonctionnalités fournissent un accès anticipé aux fonctionnalités des produits à venir, permettant aux clients de tester les fonctionnalités et de fournir des commentaires pendant le processus de développement. Canonical et Red Hat auraient perdu tout intérêt à faire avancer cette technologie innovante.

Et vous ?

Quel est votre avis sur le sujet ?

Que pensez-vous de l'évolution actuelle du noyau Linux ?

Les améliorations annoncées pour la version 6.2 du noyau Linux sont-elles pertinentes ?

Voir aussi :

Le système de fichiers reiserfs pourrait quitter le noyau Linux en 2022, est-il temps de supprimer reiserfs ?

La version bêta de Fedora 34 est disponible, elle utilise GNOME 40 comme environnement de bureau par défaut, et apporte une compression transparente du système de fichiers Btrfs

Linus Torvalds annonce la disponibilité de la version 5.15 du kernel Linux, elle apporte une nouvelle implémentation de NTFS, un nouveau serveur SMB3, le support Btrfs pour le mappage fs-verity

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de GATEN
Membre habitué https://www.developpez.com
Le 21/02/2023 à 19:54
Je ne savais pas que le support des puces Apple (M1, M2 et leurs variantes) avait déjà été mergé dans la branche stable. Ça date de quand ?
1  1