Résolution d'une erreur de système de fichiers Btrfs en lecture seule sous SUSE Linux Enterprise

Vous tentez d'enregistrer un fichier ou de mettre à jour un service sur SUSE Linux Enterprise Server (SLES), et Linux affiche le message « Système de fichiers en lecture seule ». Ce message peut indiquer que le point de montage a été volontairement configuré en lecture seule, que vous avez démarré sur un instantané Snapper en lecture seule, ou que Btrfs a détecté un problème et a bloqué les écritures pour protéger le volume. Ces causes nécessitent des solutions différentes. Commencez par identifier le système de fichiers et le point de montage concernés ; n'effectuez pas de remontage forcé ni de commande de réparation avant d'avoir consulté les journaux du noyau et protégé vos données importantes.

Que signifie l'erreur ?

Btrfs est un système de fichiers Linux à copie sur écriture utilisé par défaut comme système de fichiers racine SLES dans de nombreuses installations standard. Un sous-volume Btrfs est une partie d'un système de fichiers pouvant être montée indépendamment ; un instantané est une copie d'un sous-volume à un instant donné, partageant des blocs de données inchangés. Snapper et le menu de démarrage SLES peuvent utiliser des instantanés pour récupérer le système après des modifications. Démarrer à partir d'un instantané monte intentionnellement les parties incluses en lecture seule. Par ailleurs, Btrfs peut passer en mode lecture seule après la détection de certaines erreurs structurelles afin d'éviter toute écriture supplémentaire. SUSE documente le comportement des instantanés dans son guide Snapper pour SLES 15 SP7 ; le projet Btrfs explique dans sa documentation sur l'outil de vérification de l'arborescence que les vérifications structurelles du système de fichiers peuvent basculer un volume en mode lecture seule pour prévenir d'autres dommages . Les libellés exacts des menus et les options de récupération disponibles peuvent varier selon le Service Pack de SLES et la configuration du stockage.

Un problème d'autorisations est différent. « Accès refusé » indique généralement un problème de propriété ou de contrôle d'accès ; « Système de fichiers en lecture seule » (souvent indiqué par EROFS) indique l'état du système de fichiers ou d'un sous-volume. Modifier les autorisations d'un fichier chmodne rendra pas un montage en lecture seule accessible en écriture.

Avant de changer quoi que ce soit

S'il s'agit d'un serveur de production, d'un volume de base de données ou de l'unique copie de données importantes, contactez l'administrateur système et confirmez la sauvegarde avant toute tentative de restauration. Tant que le système est accessible, copiez les fichiers les plus importants sur un support de stockage sain distinct, si cela ne sollicite pas excessivement un périphérique défaillant. Après une erreur critique, les modifications récentes des métadonnées sur Btrfs peuvent être conservées uniquement en mémoire ; un démontage ou un redémarrage peut entraîner la perte de ces modifications non validées. Si les journaux font état d'erreurs d'E/S, de périphériques disparus ou de réinitialisations répétées, privilégiez la préservation de l'intégrité du stockage et la protection des données à la restauration des écritures.

Ne lancez pas btrfs check --repaircette opération en première intention. Le projet Btrfs avertit que le mode de réparation peut causer des dommages et ne peut pas corriger tous les types de corruption. Évitez également de forcer un remontage en lecture-écriture à plusieurs reprises : cette opération peut échouer immédiatement si le noyau a protégé le système de fichiers pour une raison quelconque.

Étape 1 : Identifier le support concerné

Utilisez le chemin où l'écriture a échoué. Par exemple, si un service ne peut pas écrire dans un répertoire /srv/app, examinez ce chemin plutôt que de supposer que le problème vient du système de fichiers racine :

findmnt -T /srv/app -o TARGET,SOURCE,FSTYPE,OPTIONS

Remplacez /srv/apppar le fichier ou le répertoire concerné. Vérifiez la sortie pour la source Btrfs, la cible de montage et l'option `--bind` roou ` rw--bind`. La cible peut être `/ /etc/btrfs`, un montage de données séparé ou un sous-volume. Notez la source et la cible avant de continuer. Si la commande indique un autre type de système de fichiers, les étapes spécifiques à Btrfs ne s'appliquent pas à ce chemin.

Consultez les messages du noyau du démarrage actuel pour connaître la raison pour laquelle le système de fichiers est devenu en lecture seule :

sudo journalctl -k -b --no-pager | grep -iE 'btrfs|I/O error|read-only|readonly'

Recherchez les erreurs Btrfs ou les messages « lecture seule forcée », les erreurs de somme de contrôle ou d'arborescence, les défaillances d'E/S des périphériques et les déconnexions. Une ligne de journal est un indice, mais pas un diagnostic complet. Enregistrez les messages et horodatages pertinents avant de redémarrer, car les journaux peuvent être utiles à l'équipe de support technique du stockage ou du matériel.

Étape 2 : Vérifier l’existence d’un instantané intentionnel en lecture seule

Si le serveur a été démarré à partir d'un instantané de démarrage dans GRUB, les fichiers inclus dans cet instantané sont, par conception, en lecture seule. Il s'agit d'un environnement de récupération permettant de vérifier un état système antérieur ; il ne s'agit pas automatiquement du système restauré définitivement. Confirmez l'entrée de démarrage avec l'administrateur, puis redémarrez et sélectionnez l'entrée SLES par défaut si le démarrage à partir de l'instantané était accidentel. SUSE indique que le démarrage à partir d'un instantané monte les parties du système de fichiers qu'il contient en lecture seule et décrit la procédure de restauration dans son guide de récupération Snapper pour SLES 15 SP7 .

Un instantané peut être en lecture seule même si le système de fichiers parent est monté en lecture-écriture. Si vous travaillez intentionnellement avec un instantané, examinez-le sans le modifier :

sudo btrfs property get -t subvol /path/to/subvolume ro

Remplacez le chemin par le chemin de montage du sous-volume. Le résultat de cette commande ro=trueconfirme que la propriété du sous-volume est en lecture seule ; la documentation de référence des propriétés Btrfs décrit cet indicateur. Ne convertissez pas simplement un instantané de sauvegarde géré par Snapper ou reçu en lecture-écriture : le statut lecture seule peut être nécessaire lors d'une restauration ou d'une sauvegarde incrémentale. Utilisez un flux de travail Snapper compatible ou créez un sous-volume accessible en écriture lorsque tel est l'objectif.

Étape 3 : Vérifier la configuration du montage et l’état du stockage

Si findmntles rapports roet les journaux ne signalent aucune erreur Btrfs ou d'E/S, examinez l'entrée de montage correspondante /etc/fstab. Un montage peut avoir été délibérément configuré en lecture seule pour la récupération, une image système ou une politique de protection des données. Ne modifiez la configuration qu'après avoir confirmé l'état souhaité avec le responsable du service. Vérifiez également si le système utilise un déploiement transactionnel ou en lecture seule : SLES documente ces configurations et leur procédure de maintenance dans son guide des mises à jour transactionnelles . Si l'entrée est explicitement conçue pour être accessible en écriture, que le périphérique est sain et que le chemin n'est pas un instantané en lecture seule, un administrateur peut tenter un remontage temporaire.

sudo mount -o remount,rw /mountpoint

Remplacez /mountpointpar la cible exacte indiquée findmnt. Cette opération ne diagnostique ni ne répare les corruptions. En cas d'échec, d'erreur ou si les journaux du noyau signalent des problèmes de stockage, arrêtez-vous et passez à la planification de la récupération plutôt que de réessayer avec d'autres options.

En cas de problème de capacité, vérifiez l'allocation Btrfs et l'état du périphérique :

sudo btrfs filesystem usage /mountpoint
sudo btrfs filesystem show /mountpoint

SUSE indique que les résumés d'espace disque disponible peuvent être trompeurs sur Btrfs, car les données et les métadonnées sont allouées séparément. Les instantanés Snapper peuvent également occuper un espace considérable. Cependant, le message « Espace insuffisant sur le périphérique » n'est pas identique à une erreur de lecture seule Btrfs ; identifiez le message réellement reçu par l'application. Ne supprimez pas les instantanés pour vérifier une hypothèse. Vérifiez d'abord leur contenu et respectez la politique de conservation applicable. Consultez le guide de dépannage du système de fichiers SLES 15 SP7 .

Étape 4 : Déterminer si le système de fichiers nécessite une récupération

Si des erreurs Btrfs apparaissent dans le journal du noyau, que le périphérique est manquant ou qu'un remontage est refusé, conservez les journaux et effectuez une sauvegarde vérifiée ou un instantané du stockage avant toute intervention. Pour un volume de données autre que la racine, planifiez une fenêtre de maintenance et démontez-le avant les vérifications hors ligne. Pour le système de fichiers racine, utilisez le support d'installation ou de récupération SUSE et suivez la procédure correspondant à votre version SLES et à la signature d'erreur. Ne devinez pas le nom du périphérique : un système de fichiers Btrfs peut s'étendre sur plusieurs périphériques ; identifiez donc d'abord tous les membres et les identifiants de montage ou de périphérique corrects.

Le guide d'administration de SLES 15 SP7 de SUSE comporte une section dédiée aux partitions Btrfs racine impossibles à monter. Il y décrit les options de récupération en cas d'échec de démarrage. Ces instructions ne signifient pas que le journal de chaque système de fichiers en lecture seule monté doit être effacé. Le manuel de btrfs-rescue explique que cette btrfs rescue zero-logopération est réservée à certains échecs de relecture du journal lors du montage et peut entraîner la perte des modifications effectuées depuis la dernière transaction validée. Utilisez-la uniquement si l'erreur enregistrée correspond au cas documenté et si le plan de récupération prend en compte le risque de perte de données.

btrfs checkPar défaut, la commande s'exécute en lecture seule sur un système de fichiers non monté. Conservez-la ainsi pour l'évaluation initiale et partagez le résultat avec le support SUSE ou un spécialiste Btrfs. La documentation de btrfs-check met explicitement en garde contre son utilisation --repairsans l'avis d'un utilisateur ou développeur expérimenté. N'exécutez jamais une vérification hors ligne sur un système de fichiers monté et en cours de modification.

Étape 5 : Vérifier la récupération

Une fois la cause du problème corrigée, redémarrez uniquement lorsque le plan de récupération le prévoit. Ensuite findmnt -T /path -o TARGET,SOURCE,FSTYPE,OPTIONS, vérifiez que le montage souhaité est accessible en lecture-écriture. Consultez le journal du noyau pour détecter d'éventuelles erreurs Btrfs ou d'E/S récentes. Enfin, assurez-vous que le service ou l'application concerné(e) fonctionne normalement et que la sauvegarde est toujours disponible. Un remontage réussi ne garantit pas à lui seul l'intégrité du stockage.

Si le système de fichiers repasse en mode lecture seule, que le périphérique se déconnecte ou que des erreurs persistent, interrompez les écritures et fournissez un rapport détaillé contenant les journaux enregistrés, findmntla sortie, la liste des périphériques Btrfs, le niveau du Service Pack SLES et les informations du contrôleur de stockage. Ces éléments permettent de distinguer une capture instantanée ou une option de montage intentionnelle d'une défaillance du support, de la connexion, du pilote ou du système de fichiers, et d'éviter qu'un état de lecture seule préventif ne se transforme en un problème de récupération plus important.

Laisser un commentaire

Téléchargez FlightGear gratuitement : Guide d’installation officiel

Téléchargez FlightGear gratuitement : Guide d’installation officiel

Téléchargez gratuitement FlightGear depuis le site officiel. Comparez les versions pour Windows, macOS et Linux, installez les fichiers de données et effectuez votre premier vol.

Application Google Tasks pour ordinateur : comment l’utiliser sur un ordinateur

Application Google Tasks pour ordinateur : comment l’utiliser sur un ordinateur

Ouvrez Google Tasks dans un navigateur, ajoutez un raccourci Chrome ou lancez-le comme une application, et gérez vos tâches datées via Agenda et Gmail.

OKSampler : un échantillonneur musical gratuit et simple pour les rythmes au clavier

OKSampler : un échantillonneur musical gratuit et simple pour les rythmes au clavier

OKSampler permet d'associer des clips MP3 à des touches du clavier et de lire des fichiers audio en boucle. Découvrez les fonctionnalités de cette ancienne version gratuite, ses limitations et les points à vérifier avant de la télécharger.

Comment créer une clé USB bootable Windows 11 sous Linux

Comment créer une clé USB bootable Windows 11 sous Linux

Créez une clé USB d'installation Windows 11 sous Linux avec Ventoy : téléchargez l'ISO officiel, installez Ventoy en toute sécurité, copiez l'image et démarrez le PC cible.

Comment jouer à Don't Starve Together sous Linux

Comment jouer à Don't Starve Together sous Linux

Installez la version Linux de Don't Starve Together via Steam, créez un monde ou rejoignez vos amis grâce à ces étapes d'installation et de dépannage.

Comment jouer à Squad sur Linux avec Steam Proton

Comment jouer à Squad sur Linux avec Steam Proton

Configurez Squad sur Linux avec Steam Play et Proton, installez le jeu, choisissez un outil de compatibilité et résolvez les problèmes liés à l'anti-triche.

Comment installer Linux Mint Debian Edition 5 « Elsie » depuis une clé USB

Comment installer Linux Mint Debian Edition 5 « Elsie » depuis une clé USB

Téléchargez et vérifiez l'image ISO archivée de LMDE 5, créez une clé USB bootable et choisissez l'option d'installation sécurisée. Elsie n'est plus prise en charge ; consultez la version actuelle de LMDE.

Comment installer Wireshark sous Linux : Ubuntu, Fedora, Arch et autres distributions

Comment installer Wireshark sous Linux : Ubuntu, Fedora, Arch et autres distributions

Installez Wireshark sur Ubuntu, Debian, Fedora, Arch ou openSUSE avec les commandes de paquets actuelles, puis configurez la capture de paquets en direct en toute sécurité.

Comment jouer à DiRT Rally sur Linux : configuration de Steam et correctifs Proton

Comment jouer à DiRT Rally sur Linux : configuration de Steam et correctifs Proton

Découvrez comment jouer à DiRT Rally sur Linux si vous le possédez déjà sur Steam : installez la version native, lancez-la et n’utilisez Proton qu’en dernier recours.

Comment jouer à It Takes Two sur Linux avec Steam Proton

Comment jouer à It Takes Two sur Linux avec Steam Proton

Apprenez à jouer à It Takes Two sur Linux avec Steam Proton, à installer la version Steam, à activer la compatibilité, à configurer le mode coopératif et à résoudre les problèmes de lancement.