EauFroide : révision n°9 (28 février 2017 22:58:40)
## Introduction ##
* [F2FS](https://fr.wikipedia.org/wiki/F2FS) ("flash-friendly file system") est un [système de fichiers (filesystem)](https://fr.wikipedia.org/wiki/Syst%C3%A8me_de_fichiers) conçu pour les mémoires Flash. Sa conception lui permet d'être réputé plus rapide en écriture que les autres systèmes de fichiers (NTFS, ext4, zfs) sur les mémoires flash ([SSD](https://fr.wikipedia.org/wiki/Solid-state_drive), [eMMC](https://fr.wikipedia.org/wiki/Carte_MMC), etc).
La différence est significative sur raspberry pi (ndlr: ajouter benchmark).
**Note :** je vous conseil de d'abord tester sur une seconde carte mémoire
**Note Bis :** vous pouvez suivre exactement la même procédure pour formater la carte mémoire de votre appareil Android, arrêtez-vous juste après "Injection des fichiers précédemment sauvegardé"
**Résumé de la procédure :**
1. Copie sur PC (Linux) de TOUS les fichiers de la carte SD/microSD du Raspberry Pi
1. Formatage de la carte SD/microSD en F2FS
1. Ré-injection des fichiers précédemment sauvegardés
1. Édition des fichiers de démarrage du système
## Farm Link ##
- [Wikipedia EN - F2FS](https://en.wikipedia.org/wiki/F2FS)
- [F2FS : un système de fichiers pour NAND](http://www.tomshardware.fr/articles/F2FS,1-44984.html)
- [developpez.com - Samsung crée F2FS](https://www.developpez.com/actu/48394/Samsung-cree-F2FS-un-nouveau-systeme-de- * remplacez ~~ext4~~ par **f2fs** en minusculefichiers-open-source-pour-memoire-Flash-qui-sera-integre-au-noyau-Linux/)
- [raspberrypi.org - [HOWTO] F2FS](https://www.raspberrypi.org/forums/viewtopic.php?f=29&t=47769)
- [[Tuto/HowTo] [GNU/Linux] Raspberry Pi installer F2FS comme filesystem](https://www.0rion.netlib.re/forum4/viewtopic.php?f=71&p=1146#p1146)
## Mise en place en ligne de commande ##
**Note :** la carte mémoire du Raspberry Pi est divisée en deux partitions, une pour le boot (dont nous éditerons juste un fichier) et la seconde qui est celle que nous allons formater en F2FS et qui contient le [Système de Fichier](https://fr.wikipedia.org/wiki/Syst%C3%A8me_de_fichiers).
1. ### Branchez votre carte mémoire à votre ordinateur ###
1. ### Ouvrez un [Terminal de commande (shell)](https://doc.ubuntu-fr.org/terminal) ###
1. ### Créez le dossier où ranger les fichiers du Raspberry Pi pendant le formatage ###
```mkdir /tmp/backup_sd```
* Ici j'ai choisi de créer un dossier dans _/tmp/_ ainsi le dossier et son contenu seront supprimés au redémarrage de la machine.
1. ### Copiez les fichiers de votre carte mémoire vers un dossier sur votre ordinateur ###
```sudo cp -v -a /mnt/cartememoire/* /tmp/backup_sd```
* Où _/mnt/cartememoire/_ est le path du point de montage de votre carte mémoire (l'option **-a** est nécessaire). Sur Ubuntu par défaut le montage s'effectue dans _/media/$USER/identifiant-partition-sur-carte-memoire/_
1. ### Installez le package [f2fs-tools](http://www.smokey01.com/coolpup/f2fs-tools.html) ###
```sudo apt-get install f2fs-tools```
1. ### Récupérez le path de la partition à formater. (par exemple _/dev/sdf2_) ###
```df -h```
1. ### Démontez la partition que nous allons formater ###
```sudo umount /media/$USER/identifiant-partition-sur-carte-memoire```
1. ### Formatage de la partition root de la carte mémoire ###
```sudo mkfs.f2fs /dev/sdf2```
1. ### Montage de la partition créée (sur ubuntu la partition s'auto-monte automatiquement) ###
```sudo mount -t f2fs /dev/sdf2 /media/raspberrypi```
1. ### Injection des fichiers précédemment sauvegardé ###
```sudo cp -v -a /tmp/backup_sd/* /mnt/cartememoire```
1. ### Éditez le fichier _/etc/fstab_ sur la partition précédemment formatée de notre carte mémoire. La ligne correspondant à **/** (la racine) doit ressembler à quelque chose du style : ###
```/dev/mmcblk0p2 / f2fs defaults,noatime,discard 0 0```
1. ### Enfin remplacez _rootfstype=ext4_ par _rootfstype=f2fs_ (en minuscule) dans le fichier _cmdline.txt_ lui-même dans la partition intitulée "boot" de votre carte mémoire ###
1. ### Démontez la carte SD ###
```sudo umount /dev/sdf1 & sudo umount /dev/sdf2```
1. ### C'est terminé ! ###