Přechod na f2fs. Přechod z HDD na SSD a F2FS

Na 250Gb a začal přemýšlet, jak na něj přenést systém.

V první řadě jsem byl zmatený výběrem souborového systému nejvhodnějšího pro SSD. Po krátkém googlování jsem se rozhodl nasadit relativně čerstvý FS vyvinutý Samsungem speciálně pro flash média F2FS (Flash Friendly File System).

F2FS je poměrně mladý FS, ale přesto je podporován linuxovým jádrem od verze 3.8

Úkol vyzněl takto:

  1. Naučte systém rozumět F2FS
  2. Rozdělit a naformátovat SSD na F2FS
  3. Zkopírujte data
  4. Nakonfigurujte fstab a grub

Povolení podpory F2FS v Kubuntu

V kubuntu 14.04 a 14.10 je modul podpory f2fs přítomen, ale není součástí. Chcete-li tedy povolit podporu, stačí vytočit:

sudo modprobe f2fs

Kontrola, zda je modul připojen

sudo lsmod | grep f2fs

Systém nyní může pracovat s f2fs, ale pouze do restartu. Aby se modul načetl automaticky při každém spuštění, přidejte na konec souboru /etc/modules položku f2fs

sudo -i
echo f2fs >> / etc / moduly

Učíme také initramfs na podporu f2fs. Chcete-li to provést, přidejte f2fs na konec souboru a aktualizujte.

V kubuntu 16.10 kernel 4.8 je také nutné přidat modul dodatečně crc32 jinak se systém nespustí.

sudo -i
echo f2fs >> / etc / initramfs-tools / moduly
echo crc32 >> / etc / initramfs-tools / moduly
update-initramfs -u

Chcete-li vytvořit f2fs, nainstalujte balíčky f2fs-tools a gparted

sudo apt-get install f2fs-tools gparted

Správce oddílů KDE nemůže vytvořit f2fs, ale gparted ano.

Pro podporu 14.04 je také potřeba aktualizovat balíček util-linux na verzi 2.25 nebo vyšší.

sudo add-apt-repository ppa: xeron-oskom / util-linux && sudo apt-get update && sudo apt-get dist-upgrade -f

Připojíme SSD, vytvoříme oddíly a naformátujeme ve F2FS

Vzhledem k tomu, že jsem měl pouze notebook bez stacionárního počítač SSD Připojil jsem to jako externí disk přes USB. K tomu jsem vzal starý externí HDD, rozebral a zapojil místo obvyklého externí disk můj SSD a připojil jsem to celé k usb.
Kupodivu to neviděl ani systém, ani správce diskových oddílů. Ale po nabootování z instalačního flash disku s kubuntu 14.04 byl disk vidět a úspěšně jsem vytvořil prázdný oddíl, po kterém se disk zviditelnil v hlavním systému, ve kterém jsem se rozdělil a naformátoval.

Rozdělení bylo provedeno v gparted, protože správce oddílů KDE f2fs ještě nerozumí.

Osobně jsem to označil takto:
/ Boot ext2 768 Mb
/ Root f2fs 20Gb
/ Home f2fs 210Gb

Swap bude v souboru pod kontrolou.

Kopírování dat z HDD na SSD

Přenos dat z / domů

Na SSD v sekci / home vytvořte složku se svým uživatelským jménem, ​​označte se jako její vlastník

sudo mkdir $ USER && chown "$ USER": "$ USER" $ USER

a zkopírujte vše, co potřebujeme, a nezapomeňte zkopírovat hlavní konfigurační soubory a složky, jako například:
.kde
.místní
.config
.mozilla

Pro přenos dat z domovského adresáře můžete použít jednoduché kopírování se zachováním atributů a práv k souborům. Provedl jsem selektivní kopírování z domovské složky, jelikož můj HDD byl přesně dvojnásobný oproti novému SSD a všechno se tam prostě nevešlo a hromadilo se tam hodně "smetí".

Zkopíroval jsem takto:

sudo cp -ar /home/dm/.kde/* / media / f2fs / home / dm

Kopírování / root a / boot

Chcete-li kopírovat data z / root, nabootujte z liveusb kubuntu, povolte podporu f2fs, připojte potřebné oddíly a zkopírujte data z oddílů.

Zapněte podporu f2fs
sudo modprobe f2fs

Vytvořte složku, do které se budeme připojovat
sudo mkdir / media / f2fs_root

Podíváme se, jaké disky máme k dispozici
sudo fdisk -l

Připojte kořenový oddíl f2fs. Nahraďte svůj oddíl místo sdx.
sudo mount / dev / sdx / media / f2fs_root

Kopírování / root z HDD na SSD
sudo cp -ar / media / kubuntu / root / * / media / f2fs_root

Totéž uděláme s oddílem / boot.

Konfigurace fstab a grub

Restartujeme do našeho systému.

Konfigurace fstab

Zjistěte UUID oddílů na SSD
sudo blkid

A spusťte fstab na SSD

sudo nano / media / f2fs / root / etc / fstab

Teď mi to přijde takto:

UUID = xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxxx / f2fs rw, noatime, zahodit 0 2
UUID = xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxxx / home f2fs rw, noatime, zahodit 0 2
UUID = xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxxx / boot ext2 auto, noatime 1 2

Chroot SSD pro nastavení grub

sudo mount / dev / sdx / media / f2fs / root / boot
sudo mount / dev / sdx / media / f2fs / root / boot / efi
sudo mount --bind / dev / media / f2fs / root / dev
sudo mount --bind / proc / media / f2fs / root / proc
sudo mount --bind / sys / media / f2fs / root / sys
sudo chroot / media / f2fs / root

Poté nainstalujte bootloader

sudo grub-install / dev / sdx
sudo update-grub

Kde sdX- název SSD zařízení (např / dev / sdb)

Aniž byste opustili chroot, upravte soubor grub.cfg na SSD
Otevřete /boot/grub/grub.cfg

sudo nano /boot/grub/grub.cfg

A hledáme záznamy jako:
linux /vmlinuz-3.16.0-25-generic root = / dev / sdb2

ve kterém se měníme / dev / sdb2 na / dev / sda2

To je vše, odpojte HDD a připojte SSD.

Použité materiály:

Mezi moddery a nadšenci pro Android, stejně jako v každé sektě, existuje několik svatyní, které jsou obvykle uctívány bez ohledu na to, co. Jedná se o optimalizovaná vlastní jádra, skripty a aplikace pro optimalizaci systému, vylepšení zvuku a mnoho dalšího. Nově k nim přibyl souborový systém F2FS, který podle mnoha svědectví výrazně zvyšuje výkon práce s pamětí NADN a chrání ji před opotřebením. Ale je tomu skutečně tak?

Start

Poprvé se F2FS (Flash Friendly File System) objevil lidskému oku v říjnu 2012, kdy Samsung zveřejnil patche s jeho implementací pro linuxové jádro. Podle vývojářů byl FS navržen od nuly speciálně pro flash paměti a umožnil zvýšit výkon čtení/zápisu takových disků a využít jejich funkce pro určité optimalizace a ochranu proti opotřebení.

Do konce roku se F2FS stal oficiální součástí Linuxu 3.8 a po chvíli se jeho podpora objevila v CyanogenModu 10.2 a custom TWRP recovery. Od té doby jej moddéři a optimalizátori zahrnuli do všech svých castome kernelů, píší spoustu chvály, publikují snímky obrazovky dokazující fenomenální výkon souborového systému.

Zvenčí to vše vypadá více než povzbudivě, takže nováčci Androidu se připojují k těm, kteří se dotkli toho krásného a zmocnili se toho krásného ve svém smartphonu. Málokdo se ale zamyslí nad tím, proč Samsung, který zrodil zázrak, sám F2FS nepoužívá ani ve svých nejnovějších vlajkových lodích.

A důvod je jednoduchý: F2FS není téměř o nic lepší než souborový systém ext4 používaný Androidem ve výchozím nastavení. Abych nebyl neopodstatněný, rozeberu dva hlavní mýty o F2FS: výkon a respekt k flash diskům.

Výkon

Na webu je mnoho příkladů srovnání výkonu ext4 versus F2FS. Jsou velmi podobné a velmi často vykazují obrovský zisk druhého v rychlosti zápisu dat. Zde jsou například výsledky srovnání AndroBench pro smartphone Sony Experia Z1:

Vypadá to divně, že? Rychlost náhodného zápisu je 150krát vyšší než rychlost ext4 a šestkrát vyšší než rychlost čtení. Poprvé si takové anomálie všimli novináři Phoronix, když testovali F2FS na začátku roku 2013:


Pak rozumně navrhli, že ve skutečnosti F2FS nezapisuje data na disk okamžitě, ale místo toho je ukládá do mezipaměti pro další zápis. Když se podíváte na architekturu F2FS, je zřejmé, že tomu tak skutečně je. F2FS pracuje se 4 KB bloky dat, sdružuje je do 2 MB segmentů a ty se zase spojují do sekcí, které mohou mít až šest kusů.

Proč je takový systém potřeba, si povíme později, ale zatím se zdržíme pouze u toho, že sekce musí být před zápisem do paměti vyplněny bloky. Jinými slovy, F2FS sestavuje zapisovatelné 4K bloky dat do bloků. větší velikost a poté je zároveň uloží na disk. To je důvodem abnormálně vysokého výkonu F2FS v rychlosti zápisu náhodného bloku 4K a výkonu sekvenčního zápisu mnoha bloků zcela srovnatelných s ext4.

Nejnovější benchmarky Phoronix také potvrzují téměř stejný výkon pro oba souborové systémy. F2FS se znatelně prosadil pouze v testu pro současnou práci s tisíci soubory, což je dáno jeho vnitřními optimalizacemi. Žádný smartphone však nepracuje současně s tolika soubory. Tato situace je vzácná i na desktopu a specifickém serveru.

Respekt k vaší jízdě

Druhá mylná představa o F2FS souvisí s větší opatrností s flash pamětí. Všichni víme, že flash paměť je křehká a vydrží jen několik tisíc cyklů zápisu/mazání. Z tohoto důvodu se doporučuje umístit data na flash disk ve formátu protokolu, kdy nové bloky nepřepisují staré, ale místo toho se zapisují do nepřidělené oblasti, po které starý blok je označen jako nepoužitý a následně vyčištěn, aby se uvolnilo místo.

Takto F2FS funguje a proč to mnoho lidí považuje Nejlepší volba pro flash versus ext4, který funguje klasickým způsobem, který zahrnuje změnu dat na místě. Ale je tu jedno upozornění. Faktem je, že absolutně každá moderní flash paměť, od USB flash disků po serverové SSD disky, obsahuje FTL (Flash Translation Layer) řadič, který je zodpovědný za prezentaci něčeho úplně jiného než magnetické disky jako flash paměť běžný disk, do kterého můžete zapisovat určitý počet datových bloků.

Kromě věcí, jako je kombinování více flash paměťových čipů na jeden „disk“ a provádění operace TRIM, která vyprázdní bloky, které se již nepoužívají, je FTL také zodpovědná za výběr fyzického umístění bloku pro zápis do paměti. A zde používá (překvapení!) log-strukturovaný mini-FS. Jinými slovy, každá moderní flash paměť sama o sobě zvyšuje svou životnost, bez ohledu na to, co souborový systém vytvoříte na něm: F2FS, ext4, FAT32 nebo jakýkoli jiný, - výsledek bude stejný.

Ve skutečnosti důvod, proč se F2FS nazývá „Flash Friendly“, není vůbec šetrný k paměti, ale protože ví, jak vzít v úvahu některé jeho vlastnosti, aby byla práce s pamětí efektivnější. Jedním z příkladů zvýšení efektivity je samotný mechanismus spojování dat do sekcí.

Faktem je, že mnoho paměťových čipů flash neobsahuje jednu, ale několik nezávislých jednotek. A zápis do každého z nich může probíhat současně. Kombinací dat do oddílů je F2FS může poslat k zápisu současně, což teoreticky zvýší výkon zápisu o násobek počtu jednotek.

Ale ani zde není vše tak jednoduché. Všechny optimalizace F2FS vyžadují individuální přizpůsobení souborový systém pro každý model paměti flash. Systém souborů bude tak efektivní, jak je přesně nakonfigurován. A to by neměl dělat uživatel vlastního firmwaru, ale samotný výrobce paměti, protože jakmile může znát všechny nuance jeho zařízení.

Celkový

F2FS je skvělý souborový systém. Svědčí o tom alespoň to, že teprve po narození je již schopen úspěšně konkurovat léty a stovkami lidí olizovanému ext4. Nečekejte od ní však zázraky a běžte si zařízení zformátovat. Ano, mnoho lidí tvrdí znatelný nárůst výkonu i bez testů, ale opět s největší pravděpodobností tyto efekty způsobuje velmi líný mechanismus zápisu a ve skutečnosti k žádnému výraznému nárůstu rychlosti nedochází.

Alexej Fedorčuk
Vášně Ubuntu, 06/12/2013

Souborový systém f2fs (Flash-Friendly File System) je navržen speciálně pro ukládání na SSD a podobná média SSD. Je nativně podporován jádrem Linuxu, počínaje verzí 3.8.0 – stejnou, která je součástí Ubuntu 13.04.

Základní podporu f2fs lze snadno ověřit pomocí příkazu

$ ls /lib/modules/3.8.0-23-generic/kernel/fs/f2fs

v jehož výstupu modul uvidíme

Ve výchozím nastavení však není povolena. Proto jej můžete zkusit načíst obvyklým způsobem:

$ sudo modprobe f2fs

Pokus bude úspěšný, jak nás tým bude informovat

$ lsmod | grep f2fs f2fs 109 231 0

Zajímavé je, že při tom je výstup příkazu

Dmesg | grep -i f2fs

bude stále prázdný. A po restartu nebude nalezen žádný náznak tohoto modulu. Musíte se tedy ujistit, že se načte ručně při startu systému. Chcete-li to provést, přidejte řádek do souboru / etc / modules

Co lze udělat jménem superuživatele nebo v textový editor, nebo posloupnost příkazů jako

$ sudo -i $ echo f2fs >> / etc / moduly $ exit

Jak asi tušíte, je to povinné načíst odpovídající modul ve fázi inicializace systému.

Samotná podpora jakéhokoli souborového systému je však malá radost, pokud neexistují vhodné nástroje pro práci s ním. A pro práci s f2fs je zatím v Ubuntu nemáme.

Získání této sady nástrojů však není skvělá práce. A spočívá v kontrole dostupnosti vesmírného úložiště, po které následuje příkaz

Sudo apt-get install f2fs-tools

Celá sada nástrojů pro práci s f2fs je však v současnosti zredukována na jediný příkaz - /sbin/mkfs.f2fs a související dokumentaci - man (8) mkfs.f2fs.

Vytváření f2fs na oddílu nebo raw zařízení se provádí obvyklým způsobem:

Mkfs.f2fs / dev / sdf1

v reakci na to bude následovat následující výstup:

F2FS-tools: Ver: 1.1.0 (29-Nov-2012) Info: velikost sektoru = 512 Info: celkový počet sektorů = 30308319 (v 512 bytech) Info: zóna zarovnaný segment0 blkaddr: 256 Info: Toto zařízení nepodporuje TRIM Info : formátování bylo úspěšné

Výše uvedený příklad se týká flash disku, proto vidíme hlášku o chybějící podpoře TRIM – ta evidentně nebude na žádném moderním SSD.

Příkaz mkfs.f2fs má několik možností. Jeden z nich -l nastavuje štítek pro odpovídající oddíl nebo zařízení, což je velmi užitečné při použití f2fs na vyměnitelných médiích, jako jsou flash disky. Zbytek určuje politiku alokace bloků (-a), velikost oblasti poskytování (-o), počet segmentů na sekci (-s) a sekce na zónu (-z). Jejich účinek však není nikde doložen a neměl jsem možnost experimentovat. Zbývá tedy spolehnout se na výchozí hodnoty, které lze kromě tety Mani také zobrazit zadáním příkazu mkfs.f2fs bez argumentu:

Alokace na základě haldy -o poměr overprovision -s # segmentů na sekci -z # sekcí na zónu

Po vytvoření souborového systému f2fs existuje přirozená touha jej vyzkoušet v akci. Proč je žádoucí jej někam montovat. Není systémem automaticky rozpoznána, a to i přes zajištění načítání požadovaný modul... To znamená, že na rozdíl od jiných souborových systémů na externích médiích ve výchozím nastavení není vidět správce souborů jako Nautilus nebo Thunar.

To však neznamená, že se oddíly nebo zařízení s f2fs musí připojovat ručně a ještě více z rootu. Stačí vytvořit přípojný bod v domovském adresáři uživatele (například $ HOME / test) a zadat řádek do / etc / fstab

/ dev / sdb1 $ HOME / test uživatele f2fs, noauto 0 0

Samozřejmě nesmíme zapomenout dosadit hodnotu proměnné $ HOME a uvést název stávajícího zařízení. Poté se zařízení s f2fs objeví mezi vstupními body Nautilus nebo Thunar, když je připojeno (jako štítek - pokud byl nastaven). To platí pro vyměnitelná média, jako jsou flash disky nebo SD karty. Interní zařízení ( SSD disky) je vhodné montovat běžným způsobem "trvale".

Bohužel umístěte kořen hierarchie souborů na f2fs at v současné době je to zakázáno. Instalační program Ubuntu tuto možnost neposkytuje. A „zástupná řešení“, jako jsou ta, která se používají pro instalace root na ZFS, narážejí na skutečnost, že grub-probe nerozpozná f2fs a zatím neexistují žádní „spotterové“ jako GRUB pro Native ZFS (?).

Výkon souborového systému je velmi důležitá věc, v tomto článku zjistíme, na kterém souborovém systému je rychlejší tento moment a také to, jak závisí výkon na verzi linuxového jádra. Budeme porovnávat výkon Ext4 vs F2FS vs Btrfs na SSD a použijeme jádra 4.4, 4.5, 4.6 a 4.7.

Všechny tři souborové systémy byly testovány proti každému z nejnovějších stabilních jader. Všechny testy byly provedeny na SSD Samsung 950 PRO M.2 NVM Express.

Jako operační systém pro testování jsme použili noční sestavení Ubuntu 16.10 a také jádra převzatá z Ubuntu Mainline Kernel PPA. Testy byly prováděny plně automatizovaným a reprodukovatelným způsobem pomocí software Testovací sada Phoronix. Aby bylo možné otestovat každý ze souborových systémů, byl oddíl čistě naformátován. Také bylo provedeno formátování pro každou verzi jádra. K připojení každého systému souborů byly použity výchozí možnosti připojení.

První test byl benchmarking výkonu databáze SQLite. Rychlost kopírování/zápisu v Btrfs je o něco nižší než v Ext4 a F2FS. Ext4 ukázal nejlepší výsledek v tomto testu. Výkon Btrfs se skutečně výrazně zlepšil v jádrech Linux 4.5 a Linux 4.6, zatímco pro zbytek souborových systémů zůstal na stejné úrovni.

V testu náhodného čtení FIO všechny tři souborové systémy od linuxového jádra 4.4 ustoupily.

Výsledky sekvenčního čtení mají velmi odlišný výsledek ve srovnání se zpomalením rychlosti čtení na novějších jádrech.

Test náhodného zápisu není tak zajímavý.

FS-Mark F2FS dopadl v testu na jedničku. Testovali jsme práci s 1000 soubory po 1 MB. Výkon Ext4 a Btrfs je přibližně stejný.

Flash-Friendly File-System nadále poskytuje skvělé výsledky. Tentokrát 4000 souborů, 32 podadresářů, velikost 1 MB.

Ve vícevláknovém testu FS-Mark neodhalil velký rozdíl ve výkonu souborových systémů Ext4 vs F2FS vs Btrfs.

F2FS opět zaujímá první místo v rychlosti čtení v benchmarku BlogBench. Na druhém místě je Btrfs.

Nejlepší rychlost zápisu BlogBench v ext4.

F2FS se vrací na vrchol v benchmarku Dbench.

EXT4 a F2FS si vedly lépe pro Btrfs v benchmarku PostgreSQL.

závěry

To jsou všechny výsledky testů Ext4 vs F2FS vs Btrfs, na které se dnes podíváme. Jak můžete vidět, F2FS je docela slibný souborový systém, ale Ext4 a Btrfs se drží docela dobře. Co se týče jader, celkový výkon se zlepšuje, ale tento nárůst není příliš velký.

Dobré odpoledne. Nejprve si ujasněme, co je F2FS a k čemu slouží.

F2FS (anglicky Flash-Friendly File System) je souborový systém, představený v roce 2013, optimalizovaný pro použití na flash discích, včetně SSD, paměťových karet a vestavěných různá zařízení paměťové čipy. Obecně se jedná o souborový systém, který zpočátku počítá s konstantní přístupovou dobou a omezeným počtem cyklů přepisování paměťových buněk, proto je jeho použití žádoucí.

Příprava zařízení na instalaci souborového systému

Podpora tohoto souborového systému je zahrnuta v Linuxové jádro od verze 3.8. Ve své surové podobě CyanogenMOD neumožňuje použití tohoto souborového systému, takže je třeba jej dokončit. Ale naštěstí už za nás soudruh dimfish udělal všechno a teď už jen musíme správně nainstalovat operační systém... Hned upozorňuji, že z telefonu budou vymazána naprosto všechna data, takže je lepší myslet na všemožné zálohy předem (Google účet pro kontakty, Titanium záloha pro aplikaci a ruce pro vytahování důležitých fotek). Pokud jsme již vše důležité zachovali a jsme si jistí přímostí rukou, pak pokračujme. Připomínám ale, že firmware telefonu je do jisté míry vždy loterie a za svůj telefon zodpovídáte pouze vy. Můžete to zlomit!

Při psaní návodu jsem měl Paranoidní Android a F2FS se mi nepodařilo nainstalovat napoprvé, udělal jsem tovární reset a po něm se firmware zvedl jako doma. Jediný způsob, jak uložit data, je, pokud aktuálně máte běžný CM11. PROTI v tomto případě musíte provést zálohu / data přes TWRP, který je k dispozici níže, a obnovit po instalaci. Pokud máte jakoukoli jinou ROM, včetně zásob, nedoporučuje se obnovovat / data.