F2FS - Le système de fichiers pensé pour Raspberry Pi (et comment l'installer)

Originally published at: https://korben.info/f2fs-systeme-de-fichiers-pense-raspberry-pi-linstaller.html

Aujourd’hui, je vous propose de continuer à jouer un peu avec votre Raspberry Pi en jetant un oeil au système de fichier F2FS conçu par un ingénieur de Samsung en 2012. Ce nouveau système de fichier tient compte des particularités des mémoires flash (NAND). F2FS repose sur un système de fichier journalisé et ses algos…

Salut Korben,

Concernant les RPI et son “probleme” de carte SD, quels sont pour toi les meilleurs combinaisons performances/fiabilité que l’on peux appliquer afin d’avoir un système au plus performant et éviter de flnguer des SD a tout va ?

J’ai un serveur jeedom qui ne va servir qu’a ça, mais bon j’ai pas envie d’acheter un camion de SD … :wink:

Autre OS où le f2fs améliore les performances : Android. Perso cela fait deux mois que j’ai formaté les partitions cache et data en f2fs, et franchement la réactivité de tout l’OS s’est améliorée. Les applis s’ouvrent plus rapidement, et elles sont plus réactives.

Merci pour la news!
J’espère que ça peut améliorer la fiabilité long terme du système…

J’ai pour l’instant rencontré 1x une microSD défectueuse après 1 an d’utilisation dans un RPi (beaucoup de R/W). Je suppose que le mieux est de trouver des cartes à base de puces MLC, mais de mon expérience, difficile de trouver l’information… (le mieux c’est sans doute d’utiliser un PiDrive, mais il ne faut plus trop compter sur le GPIO dans ce cas…).

Génial ! Merci :slight_smile:

Un moyen “simple” de le faire ? Je présume qu’on perd toutes ses données.
(en cas de réinstallation de rom custom ensuite, ça ne pose pas de problème ? TWRP s’y retrouvera ?

Ben lis l’article, c’est simple (à moins que tu sois totalement débutant sous linux) et tu ne perds pas tes données…
Je viens de le faire, ça marche nickel ! Merci Korben

Ben lis le commentaire. @MPATATE parlait de le faire sur android pas sur le raspberry pi.

1 J'aime

Oui on perd toutes ses données, entre autre dû au fait que la partition data est la partition où sont stockés la mémoire du téléphone et les applis. Tout d’abord il te faut un kernel compatible avec le système de fichier. Ensuite il te faut une version récente de TWRP supportant le formatage en f2fs.

Je n’ai pas précisé mais c’ets ça oui :slight_smile:

Oui logique effectivement !
Je tourne sous un vieux Motorola G XT1032 avec un kernel Kaminari et pour TWRP, la dernière version est la 3.0.2-2 donc je ne sais pas si c’est compatible.
Je vais essayer de faire quelque recherche mais je ne pense pas être assez bon dans le domaine ^^
Merci pour les infos

EDIT : je suis sur Identity Crisis (Marshmallow) et le kernel est Kaminari R7, apparemment il gère le système de fichiers F2FS.


"All ROMS support f2fs."

Bonjour,

Je syis sous Mac Mini, Windows 10, Linux et Mrashmallow 6.0.1 pour les 2 smartphone Samsung S6 Edge.

Je suis intéressé par tout ce que je lis sur la Raspberry car extra pour bidouiller et apprendre.

Toutefois j’aimerais lire un article pour le lecteur lambda disons:: quels sont les usages lorsque ça marche A QUOI CELA SERT DANS LA VIE DE TOUS LES JOURS (dsl majuscules)

Henri

Tu devrais poster un benchmark de ton R&W pour voir les améliorations :wink:
Sinon merci pour la technique ^^

Merci pour le tuto @Korben, je suis bien curieux de voir ce que va donner la manip sur Recalbox.

Dans mon cas j’ai voulu être malin et copier des roms sur le /share directement en mettant la SD de mon install de Recalbox dans mon lecteur de SD.

  • Le point positif c’est que je me suis enfin décidé à installer un KUbuntu 16.04.2 LTS sur un vieux portable.
  • Le gros soucis c’est que Recalbox (et certainement Raspbian) utilise un gloubiboulga de formats de partitions sur une seule SD (il y en a 4 différentes), donc mon Linux ne sait pas lire la partition où se trouve le /share, vu que KDE partition manager ne sait pas quoi en faire.

Après recherches, à partir de la version Ubuntu 14.04.2 et ses dérivées (et peut-être de la Debian dont elle est issue), il y a un conflit entre les partitions aux formats MBR (MS-DOS) et ADFS utilisées par NOOBS pour faire booter RiscOS. La bonne nouvelle c’est qu’Ubuntu s’en fout en déclarant le issue report invalide et que NOOBS considère le problème comme insoluble :slight_smile:
Donc j’ai fait comme tout le monde: j’ai laissé le Raspi gérer sa SD comme un grand et j’ai balancé les roms par le WiFi, pendant des heures :tired_face:
La solution aurait peut-être été d’installer une distribution moins récente qui se contenterait d’ignorer la table ADFS mais ça me paraîssait sale…
Ceci dit j’ai peut-être loupé un truc dans l’explication de t-moreau ici: https://github.com/recalbox/recalbox-os/issues/236

Donc si tu arrives à quelque chose avec Recalbox, je suivrais volontiers ta manip si ça peut améliorer les performances de ma µSD 64 Go qui devient poussive au fur et a mesure du remplissage.

Tuto intéressant mais il y a un problème avec systemd-fsck au démarrage: celui-ci appelle fsck.f2fs avec le paramètre -y que celui-ci ne reconnaît pas.

Du coup le système de fichier n’est ni vérifié ni réparé au démarrage ce qui peut poser problème… Et comme systemd-fsck est un binaire ce n’est pas évident à corriger.

Bonjour,

le “cp -a” préserve-t-il les liens symboliques ? Perso je fais un "rsync -avx / /mnt/dest"
J’ai déjà copié “à chaud” la sd contenant le système sur une autre sur un adaptateur usb, j’avais juste stopper le max de services, sans passer par un PC externe (parce que j’en n’avais pas sous la main). Aucun soucis, aucune perte de fichier.

Et je confirme que, en moyenne, le f2fs est plus fluide sur mes raspberry (3 et zero). J’ai un jeedom sur PI3, le changement a été notable.

Et pour ceux qui ont des corruptions de carte, pensez onduleur (ou power bank, certaines peuvent être utilisée tout en étant rechargée). Les corruptions, c’est surtout en cas de coupure d’alim en pleine écriture…

Bonjour,

+/- nouveau dans le monde Linux mais surtout dans celui Raspberry Pi, j’ai essayé la méthode ci-dessus pour formater ma carte SD en F2FS.

Ca s’est bien passé… sauf qu’une fois que le Raspberry Pi a démarré, j’ai l’impression qu’il y a un problème avec les droits.

Notamment avec sudo qui me retourne invariablement :
sudo /usr/bin/sudo doit être la propriété du uid 0 et avoir le bit setuid mis
Et évidemment, sans les droits root, ça peut compliquer pas mal de choses…

La première fois, je me suis dit que j’avais dû commettre une erreur et j’ai recommencé l’install.
Même résultat.
Pourtant, je ne pense pas avoir loupé quoi que ce soit…

Quelqu’un aurait-il une idée?
De l’origine du problème et /ou d’une solution?

La machine sur laquelle j’ai exécuté les commandes est un portable tournant sous Ubuntu 16.04 (Xenial Xerus) et la version de Raspbian installée est Raspbian Stretch.
Installation de départ sur la carte SD faite via Etcher.

D’avance, merci.