Freebox Server (Ultra V9/ Pop V8/ Delta V7 / Revolution V6 / Mini 4K)

  • État Fermée
  • Pourcentage achevé
    100%
  • Type Évolution
  • Catégorie Non trié
  • Assignée à Personne
  • Système d'exploitation Tous
  • Sévérité Basse
  • Priorité Très Basse
  • Basée sur la version 4.1.3
  • Due pour la version Non décidée
  • Échéance Non décidée
  • Votes
  • Privée
Concerne le projet: Freebox Server (Ultra V9/ Pop V8/ Delta V7 / Revolution V6 / Mini 4K)
Ouverte par Wozzeck - 11/12/2019
Dernière modification par Thibaut Freebox - 09/03/2020

FS#29382 - Support Ext4 - Optimisation de la journalisation "journal_data"

Lorsque la Freebox formatte un disque interne, ou lorsque l’utilisateur choisit ce format pour un support externe (USB) à priori elle génère un système de fichier EXT4 journalisé avec l’option par défaut “Journal data ordered”

Suite à de mauvaises expériences liées à des coupures intempestives de courant ou simplement un plantage inopiné du système, l’Ext4 m’a donné une exécrable impression. Très peu robuste.... disons que sur un “power failure” sur un moment critique (accès en écriture sur le disque), vous avez 35% de chances soit de ne pas récupérer vos données du tout, soit de les récupérer mais avec un tas de fichiers perdus dans Lost+found, et la ça vous fait une belle jambe car vous savez que le sysème est orphelin de fichiers épars qui vont causer un tas de problèmes bizarres.... il faut forcer une réinstallation totale du système.

Comparativement, NTFS c’est bien plus costaud contre les “power failures”. En plus de 30 ans, très peu de pertes sèches à déplorer... très très peu et imaginez comme mes systèmes ont pu souffrir le martyr. Bref, la journalisaton EXt4 est loin d’être la plus optimum du marché...
Sous BSD, UFS2 + Geom Journal, là aussi c’est du costaud.... impressionnant même, peut-être même plus costaud que NTFS car j’ai des systèmes qui en ont connu des vertes et pas mûres.... une vérification de fichers et tout revient dans l’ordre, aucun fichier dans “lost+found” c’est ça qui est le plus bluffant.

En cherchant un peu je me suis rendu compte qu’ext4 offrait en fait trois niveau de journalisation :

Journal data
journal data ordered
journa data backup

“ordered” est l’option par défaut, mais l’option “journal data” est l’option la plus robuste
Dans cette option, le journal est alimenté AVANT d’écrire les données sur le disque. Ca signifie concrètement, qu’au prix d’un léger ralentissement, le système devrait être plus robuste face aux scénari de “power failure”

L’option la moins sûre, c’est l’option “backup” mais sans doute au bénéfice d’une légère accélération du système de fichier, interessant si le système est protégé par un onduleur.

Je propose simplement aux devs de la Freebox d’adopter cette option de montage par défaut pour l’ext4 pour les disques internes et les supports externes en USB (pour les supports externes en USB j’ai déja ouvert un fil où je signale que la Freebox ne devrait pas récativer un journal, comme le fait actuellement si l’utilisateur l’a explicitement désactivé pour des soucis de portabilité entre plusieurs systèmes)

On peut même changer l’option de montage par défaut dans le superblock avec “tune2fs -o journal_data /dev/ddd”, de la sorte si l’utlisateur ne spécifie aucune option de montage, le système Linux le montera par défaut en Journal_data

Je signale que de façon régulière il y a quand même des gens qui suite à des coupures de courant signalent des pertes irréversibles de données sur le NAS. Certes le phénomène est assez rare pour plusieurs raisons :

- le système est journalisé
- les problèmes critiques peuvent se poser lorsque la Freebox ECRIT sur le disque... or statiquement la panne de courant interviendra souvent en dehors de ces plages... tout simplement.

Dans le cadre d’un NAS qui désormais pourrait grimper à 8 TO sur la Delta.... non ce que je propose n’a rien de superflu au nom de la protection de données.

Suite à des erreurs de manipulations récentes.... j’ai pu effectivement connaitre récemment un “power failure” durant une phase critique d’écritures intensives (le système effectuait un upgrade en mode console)
J’ai un peu angoissé.... mais ça a l’air de marcher. Le système a redémarré sans soucis et SURTOUT sans aucun fichier orphelin dans lost+found, alors que sur mon expérience précédente... j’avais récupéré un système bancal où j’avais dû tout reinstaller.
Je ne peux pas certifier que l’option “journal_data” y est pour beaucoup mais on peut quand même le penser

NOTE : ne vous faites pas d’illusions, les grand systèmes de fichier serveurs de type BTFRS, XFS, le nouveau ReFS de Microsoft.... sans doute même ZFS sont en réalité très médiocres en terme de résistance aux coupures de courant. c’est ce que j’ai pu en conclure de mes rechcherches. Donc ce sont des systèmes NON RECOMMANDES pour le système de ficher principal d’un ordinateur personnel de monsieur tout le monde. Ces grands systèmes de fichiers sont conçus pour des serveurs haut de gamme, ça signfie CARTES CONTROLEURS haut de gamme avec de multiples controles internes et des batteries de sauvegarde de tampon, les serveurs sont protégées par des onduleurs qui au pire laissent le temps d’éteindre le serveur proprement en attendant que le courant revienne. Donc dans un contexte serveur “big data” le “power failure” on s’en bat les ... Ce scénario est peu pris en compte, et on part du principe que les serveurs sont équipés de produits professionnels haut de gamme, donc on se concentre sur la performance et les autres scénarios possibles de corruptions de données.

Ne vous laissez pas entrainer par les geekeux moyens qui vont vous survendre du BTFRS, ZFS, XFS pour votre ordinateur personnel, c’est DE LA CONNERIE. Faire le concours de celui qui pisse le plus loin n’a aucun sens. Sous Linux restez sagement sous Ext4 pour un usage personnel, fuyez BTFRS, ZFS et XFS (xfs étant l’option par défaut de Mageia / Red Hat, BTFRS l’option par défaut d’OpenSUSE Tumbleweed)

Fermée par  Thibaut Freebox
09.03.2020 14:59
Raison de la fermeture :  Sans objet
Commentaires de fermeture :  

Demande de l'auteur

Chargement...

Activer les raccourcis clavier

Liste des tâches

Détails de la tâche

Édition de la tâche