Lorsque SLES Btrfs passe en mode lecture seule : diagnostiquer avant de remonter

Si un système de fichiers Btrfs sous SUSE Linux Enterprise signale « Système de fichiers en lecture seule », commencez par vérifier s'il a été monté en lecture seule intentionnellement ou s'il est passé en mode lecture seule suite à une erreur. Avant de tenter un remontage, vérifiez les options de montage, l'espace libre et les journaux du noyau. Utilisez Snapper pour créer un instantané système amorçable et vérifié. Si Btrfs a enregistré des erreurs d'E/S ou de métadonnées, protégez les données et diagnostiquez le chemin d'accès au stockage avant d'écrire à nouveau sur le système de fichiers.

Commandes du terminal vérifiant si le système de fichiers Btrfs /data est monté en lecture seule et listant son périphérique
Cet exemple vérifie les options de montage et identifie le périphérique Btrfs qui prend en charge /data.

1. Indiquer une erreur de système de fichiers lors d'un montage intentionnel en lecture seule

Remplacez /datapar le point de montage concerné, ou /par la racine.

findmnt -T /data -o SOURCE,FSTYPE,OPTIONS
sudo btrfs filesystem show /data

Dans la première commande, recherchez ` --read-only` roou rw`--read-only` dans les options. Un snapshot Snapper en lecture seule est censé refuser les écritures. Un montage configuré avec ` --read- roonly` /etc/fstabpeut également être intentionnel. Btrfs peut aussi passer en lecture seule suite à des erreurs graves de transaction, de métadonnées ou de périphérique. Dans ce cas, exécuter la commande à plusieurs reprises mount -o remount,rwne résout pas le problème et peut échouer immédiatement.

Si le système de fichiers a été délibérément monté en lecture seule, que son périphérique est sain et que le journal du noyau ne contient aucune erreur Btrfs ou d'E/S, un montage de données normal peut être remonté en lecture-écriture :

sudo mount -o remount,rw /data
findmnt -T /data -o TARGET,OPTIONS

N’utilisez pas cette commande pour récupérer un instantané en lecture seule démarré ou un système de fichiers en lecture seule suite à une erreur. Un remontage réussi confirme la possibilité d’écriture, mais pas l’intégrité du système de fichiers.

2. Vérifier si la pression spatiale est le véritable problème

Exemple de terminal comparant l'espace libre ordinaire à l'espace alloué et non alloué de Btrfs
Comparez l'espace libre du système de fichiers avec les détails d'allocation Btrfs ; les valeurs d'exemple sont données à titre indicatif.

Btrfs peut manquer d'espace allouable même si une vue disque basique semble indiquer le contraire, car l'allocation des données et des métadonnées est suivie séparément. Vérifiez à la fois l'espace libre et l'utilisation de Btrfs :

df -hT /data
sudo btrfs filesystem usage -T /data

Si le système signale des problèmes No space left on deviceet que le journal du noyau n'indique aucune défaillance de périphérique ni erreur structurelle, examinez l'utilisation de Snapper avant de supprimer quoi que ce soit :

sudo snapper list

Supprimez uniquement les instantanés dont la perte est autorisée par votre politique de rétention, en utilisant sudo snapper delete SNAPSHOT_IDun ID pour chaque élément sélectionné. Conservez un instantané fonctionnel antérieur à la mise à jour si vous avez besoin d'une option de restauration ; la suppression des instantanés récupère de l'espace, mais supprime les points de restauration. Le nettoyage peut ne pas libérer d'espace immédiatement, et les instantanés ne corrigent pas les erreurs d'E/S. N'exécutez pas de commande d'équilibrage pour forcer l'écriture d'un système de fichiers en lecture seule ; cette opération déplace des données et est conçue pour résoudre un problème d'allocation diagnostiqué sur un système de fichiers sain et accessible en écriture.

3. Consultez le journal du noyau avant de choisir une réparation.

Exemple de terminal affichant les messages d'erreur Btrfs et d'E/S de périphériques de stockage par blocs dans le journal du noyau
Les messages du noyau permettent de distinguer les problèmes de saturation de l'espace disque des erreurs de lecture, de somme de contrôle ou de périphérique ; les lignes affichées en sont des exemples.

Recherchez la première erreur Btrfs, de périphérique de bloc, de contrôleur ou de transport, et non pas seulement le message final indiquant que le système de fichiers est devenu en lecture seule :

sudo journalctl -k -b --no-pager | grep -Ei 'btrfs|I/O error|nvme|ata|scsi'

Les messages d'erreur concernant les échecs de lecture, les incohérences de somme de contrôle, les périphériques manquants ou les erreurs d'E/S indiquent une autre piste qu'une simple rooption de montage. Vérifiez l'état du disque, du contrôleur, du RAID/HBA, du SAN ou de la couche de disque virtuel, ainsi que les informations fournies par le fournisseur. Commencez par corriger les problèmes matériels ou de connectivité. Si vos données sont importantes, limitez les écritures et demandez à un administrateur de créer une sauvegarde ou une image système au niveau bloc avant de tenter une réparation du système de fichiers.

4. Choisissez la récupération la moins risquée qui corresponde aux éléments de preuve.

Ce que vous avez trouvéAction suivanteCompromis
roest configuré ou le montage a été intentionnellement mis en lecture seule ; aucune erreur de noyau pertinenteCorrigez la configuration de montage si elle est incorrecte, ou remontez un sous-volume accessible en écriture normal après avoir vérifié que le périphérique est en bon état.Rapide, mais le remontage ne peut pas effacer un état de lecture seule forcé par une erreur ni rendre un instantané en lecture seule accessible en écriture.
Un instantané racine amorçable fonctionne et le problème est survenu suite à une modification du système.Démarrez et testez l'instantané, puis exécutez sudo snapper rollbacket redémarrez sur l'entrée par défaut.Restaure le sous-volume racine à son état de snapshot. Les données des sous-volumes exclus ou séparés ne sont pas restaurées. SLES 15 SP7 prend en charge cette restauration uniquement avec sa configuration racine/sous-volume par défaut et un système de fichiers racine sur un seul périphérique.
Le journal du noyau contient des erreurs d'E/S de stockage ou des erreurs structurelles BtrfsStabilisez le stockage et préservez les données ; utilisez un environnement de secours et escaladez le processus pour une récupération spécifique au système de fichiers.Plus lent, mais évite de masquer un problème matériel non résolu grâce à un remontage accessible en écriture.
Seul un manque d'espace est signalé ; aucune erreur de stockage n'est constatée.Examinez la durée de conservation de Snapper et les instantanés ou données autorisés gratuitement, puis revérifiez l'utilisation de Btrfs.Libère de la capacité au prix de la perte de points de récupération ou de fichiers sélectionnés.
Exemple de menu de démarrage avec une entrée plus ancienne mise en évidence dans la liste des instantanés de démarrage
Choisissez un instantané antérieur à la panne, vérifiez le démarrage de test en lecture seule, puis effectuez la restauration Snapper si cela résout le problème.

Sous SLES, les snapshots amorçables utilisent la configuration racine Snapper par défaut. La racine doit être un système de fichiers Btrfs sur un périphérique, le chargeur d'amorçage doit le prendre en charge et seul le sous-volume racine est restauré. Vérifiez la configuration avant de la valider ; si elle ne convient pas, redémarrez sur le système actuel ou l'environnement de récupération. Consultez la procédure de restauration Snapper pour SLES 15 SP7 .

Lorsque des vérifications hors ligne ou un nettoyage sont appropriés

Si le système de fichiers ne se monte pas ou si les messages du noyau suggèrent des dommages structurels, démarrez le système de secours SLES ou un autre environnement de récupération approprié, identifiez le périphérique correct et assurez-vous qu'il est démonté avant d'exécuter la vérification par défaut en lecture seule :

sudo btrfs check /dev/DEVICE

Utilisez le périphérique de stockage Btrfs réel, et non un point de montage temporaire. La vérification peut prendre du temps et consommer de la mémoire ; elle signale des anomalies structurelles, mais ne garantit pas la réparation. Ne l'utilisez pas --repairsystématiquement. La documentation Btrfs indique que la réparation peut aggraver le problème et qu'elle ne doit être effectuée qu'avec l'aide d'un expert et après avoir accepté les risques liés aux données. Consultez le support SUSE ou un spécialiste Btrfs si la vérification signale des erreurs ou si le périphérique présente des problèmes d'E/S.

Une fois le stockage stabilisé et le système de fichiers monté en lecture-écriture, la commande sudo btrfs scrub start -B /datascrub permet de vérifier les sommes de contrôle. Scrub n'effectue pas de vérification structurelle. Elle ne peut réparer les dommages qu'à partir d'une copie redondante saine ; sur une configuration à copie unique, elle détecte les erreurs mais ne peut pas reconstruire les données perdues. Consultez la documentation de scrub pour Btrfs . Voir également le guide des systèmes de fichiers SLES 15 SP7 de SUSE , l' article de SUSE sur la récupération de Btrfs et le manuel de vérification de Btrfs .

Vérifier le résultat

Après la récupération choisie, vérifiez que le point de montage dispose des options prévues et peut effectuer une écriture en toute sécurité :

findmnt -T /data -o TARGET,SOURCE,FSTYPE,OPTIONS
sudo touch /data/.rw-check && sudo rm /data/.rw-check

Pour restaurer un instantané racine, redémarrez d'abord le système et vérifiez que le système démarre normalement. Ensuite, consultez le journal du noyau pour détecter d'éventuelles erreurs Btrfs ou de périphérique récurrentes. Un indicateur de lecture/écriture à lui seul ne garantit pas un fonctionnement optimal : si des erreurs se reproduisent, arrêtez les écritures et reprenez le diagnostic du stockage.

Laisser un commentaire

Lorsque SLES Btrfs passe en mode lecture seule : diagnostiquer avant de remonter

Lorsque SLES Btrfs passe en mode lecture seule : diagnostiquer avant de remonter

Identifiez si Btrfs est intentionnellement en lecture seule, manque d'espace ou protège les données après des erreurs, puis choisissez une méthode de récupération adaptée à la cause.

Enregistrez SLES 15 auprès de SUSE Manager sur un réseau hors ligne.

Enregistrez SLES 15 auprès de SUSE Manager sur un réseau hors ligne.

Préparez des canaux miroirs, créez une clé d'activation et initialisez un client SLES 15 sans accès Internet direct tout en préservant la connexion nécessaire aux enregistrements du gestionnaire.

Configurer le transfert X11 de YaST via SSH

Configurer le transfert X11 de YaST via SSH

Corrigez l'erreur de lancement XIO de YaST via SSH, vérifiez le transfert X11 et xauth, et passez à l'interface ncurses lorsqu'une fenêtre distante n'est pas nécessaire.

Restaurez en toute sécurité une mise à jour SLES ayant échoué avec Snapper

Restaurez en toute sécurité une mise à jour SLES ayant échoué avec Snapper

Trouvez l'instantané Btrfs antérieur à la mise à jour, testez-le en lecture seule et rendez la récupération permanente avec Snapper tout en comprenant quelles données restent en dehors de la restauration racine.

Transfert Syslog SLES sécurisé avec rsyslog et TLS mutuel

Transfert Syslog SLES sécurisé avec rsyslog et TLS mutuel

Envoyer les journaux système SLES à un collecteur rsyslog distant via TLS authentifié, avec vérifications de certificat, mise en mémoire tampon en cas de panne et tests de livraison.

Identifiez les erreurs de mémoire lors de la mise à niveau de SLES avant de réessayer.

Identifiez les erreurs de mémoire lors de la mise à niveau de SLES avant de réessayer.

Utilisez les journaux RAM, swap, noyau et Zypper pour identifier la pression réelle sur la mémoire, protéger l'état du paquet et choisir une nouvelle tentative de mise à niveau SLES plus sûre.

Maintenir les mises à jour de sécurité Debian 12 actives sur un serveur sans interface graphique

Maintenir les mises à jour de sécurité Debian 12 actives sur un serveur sans interface graphique

Activez les mises à jour de sécurité automatiques de Debian via SSH, conservez les sources de paquets par défaut et vérifiez les exécutions planifiées via les journaux systemd et APT.

Recevez les alertes SMART Disk d'Ubuntu par e-mail avec smartd

Recevez les alertes SMART Disk d'Ubuntu par e-mail avec smartd

Comparez les options de livraison de courrier, configurez smartd sur Ubuntu et vérifiez que les alertes concernant l'état de votre disque dur arrivent bien dans votre boîte de réception.

Échecs de résolution DNS sous Debian 12 : réparer systemd-resolved

Échecs de résolution DNS sous Debian 12 : réparer systemd-resolved

Rétablissez les requêtes DNS sur Debian 12 en vérifiant systemd-resolved, en réparant resolv.conf si nécessaire et en vérifiant la résolution DNS et applicative en amont.

Ubuntu 24.04 n'affiche pas le son HDMI ? Restaurez la sortie.

Ubuntu 24.04 n'affiche pas le son HDMI ? Restaurez la sortie.

Configurez Ubuntu pour qu'il détecte votre moniteur ou votre téléviseur comme une sortie audio, sélectionnez-le dans les paramètres audio et vérifiez la liste des périphériques de connexion ou PipeWire si le périphérique HDMI est absent.