Jakie są zalety Btrfs dla użytkowników końcowych?

22

Btrfs zaczął nabierać rozpędu, zastępując ext4 jako domyślny system plików dla kilku dystrybucji, takich jak Fedora Core 16 . Jest eksperymentalnie dostępny w wielu innych dystrybucjach ( z Wikipedii: openSUSE 11.3, SLES 11 SP1, Ubuntu 10.10, Sabayon Linux, RHEL6, MeeGo, Debian 6.0 i Slackware 13.37). Na pewno nie jestem gotowy na konwersję wszystkich moich serwerów w miejscu pracy (mój wybór systemu plików jest na ogół konserwatywny), rozważam użycie go w domu i na wybranych maszynach produkcyjnych o znaczeniu krytycznym.

Btrfs oferuje zestaw funkcji podobny do ZFS na wiele sposobów. Rozumiem, dlaczego byłoby to pożądane w środowisku „korporacyjnym”, szczególnie w systemach skupiających się na dostarczaniu pamięci masowej. Ale w jaki sposób ten sam zestaw funkcji jest przydatny dla użytkowników końcowych? Jakie zalety daje mi lista funkcji Btrfs na komputerach, których podstawową funkcją nie jest prezentacja pamięci? Jakie zalety daje mi na moim laptopie?

Poza pamięcią masową dla przedsiębiorstw, dlaczego miałbym zawracać sobie głowę przełączaniem się na Btrfs ze sprawdzonego i prawdziwego systemu plików Ext?


źródło
2
Czy mógłbyś rozwinąć kwestię „domyślnego systemu plików dla kilku dystrybucji” (mam na myśli linki?) - to jest najbardziej interesujące.
rozcietrzewiacz
2
Afaik, format dysku nie jest jeszcze stabilny. Nie użyję tego, dopóki nie będzie. A jeśli nie potrafisz odpowiedzieć, dlaczego jesteś, nie powinieneś.
ksenoterrakid
2
Dużym problemem przy podejmowaniu decyzji Fedory jest brak fsck thread.gmane.org/gmane.linux.redhat.fedora.devel/152285 . fedoraproject.org/wiki/Features/F16BtrfsDefaultFs .
Rufo El Magufo
2
Proces funkcji zawsze ma plan awaryjny, jeśli proponowana funkcja nie jest gotowa. Na szczęście w tym przypadku jest to łatwe - zachowaj status quo. Szczegóły w tym przypadku tutaj .
mattdm,
1
„Btrfs oferuje zestaw funkcji, który pod wieloma względami jest podobny do ZFS.” Rzeczywiście, ale nie na wszystkie sposoby. Na przykład ZFS nie potrzebuje fsck i jest to zgodne z projektem. ZFS nie jest uszkodzony przez panikę systemu operacyjnego lub awarie zasilania dysku.
jlliagre,

Odpowiedzi:

21

Z wiki :

Extent based file storage
2^64 byte == 16 EiB maximum file size
Space-efficient packing of small files
Space-efficient indexed directories
Dynamic inode allocation
Writable snapshots, read-only snapshots
Subvolumes (separate internal filesystem roots)
Checksums on data and metadata
Compression (gzip and LZO)
Integrated multiple device support 
    RAID-0, RAID-1 and RAID-10 implementations 
Efficient incremental backup
Background scrub process for finding and fixing errors on files with redundant copies
Online filesystem defragmentation 

Objaśnienie dla użytkowników komputerów stacjonarnych:

  • Kompaktowe pakowanie małych plików: ważne dla komputerów z dziesiątkami tysięcy plików (katalogi pocztowe, repozytorium z kodem itp.).
  • Dynamiczny przydział i-węzłów: Unikaj ograniczeń Ext2 / 3/4 w liczbie i-węzłów. Limity i-węzłów Btrfs należą do zupełnie innej ligi (podczas gdy i-węzły ext4 są przydzielane w czasie tworzenia systemu plików i nie można ich zmienić po utworzeniu, zwykle na 1-2 miliony, z twardym limitem 4 miliardów, i-węzły btrfs są przydzielane dynamicznie w razie potrzeby, i twardy limit wynosi 2 ^ 64, około 18,4 kwintylionów, czyli około 4,6 miliarda razy więcej niż twardy limit ext4).
  • Migawki tylko do odczytu: szybkie kopie zapasowe.
  • Sumy kontrolne danych i metadanych: niezbędne dla integralności danych. Ext4 ma tylko integralność metadanych.
  • Kompresja: Kompresja LZO jest bardzo szybka.
  • Proces czyszczenia w tle w celu znalezienia i naprawy błędów w plikach z nadmiarowymi kopiami: integralność danych.
  • Defragmentacja systemu plików online: autodefrag w wersji 3.0 defragmentuje niektóre typy plików, takie jak bazy danych (np. Profile firefox lub pamięć akonadi).

Polecam jądro 3.0. Również btrfs jest dobrym FS dla SSD.

Rufo El Magufo
źródło
4
Szybkie kopie zapasowe i pełne wycofywanie systemu
psusi
11

Korzyści: uważam, że będą to głównie funkcje tworzenia kopii zapasowych i kopii lustrzanych.

Ale dlaczego miałbyś tak pochopnie myśleć o btrfs jako systemie plików gotowym do zastąpienia dowolnego z obecnych? Zarówno wiki, do których się odwołujesz:

(...) it is currently possible to corrupt a filesystem irrecoverably if your 
machine crashes or loses power on disks that don't handle flush requests
correctly. This will be fixed when the fsck tool is ready.

oraz dokumentacja jądra 3.0

  Btrfs filesystem (EXPERIMENTAL) Unstable disk format
  (...)
  Btrfs is highly experimental, and THE DISK FORMAT IS NOT FINALIZED. 
  You should say N here unless you are interested in testing Btrfs 
  with non-critical data.

wyraźnie zniechęcaj do korzystania z btrfs do celów innych niż testowanie.

Ale jeśli chodzi o formę, wierzę, że dla użytkownika końcowego będzie on miał wartość tylko dla prywatnych danych, takich jak rzeczy w katalogu domowym. Siatka zabezpieczająca przed przenoszeniem rzeczy do śmieci nie będzie potrzebna - w rzeczywistości będzie potrzeba przedefiniowania „kosza” w środowiskach stacjonarnych. Reszta funkcji prawdopodobnie po prostu skończy się (dla użytkownika) jako uczucie szybsze (jeśli w ogóle), ale szybsze pochłanianie miejsca na dysku.

rozcietrzewiacz
źródło
5

BTRFS dojrzał znacznie przez lata (odkąd zadano to pytanie). Jest teraz dość stabilny w przypadku najprostszych przypadków użycia, nawet dla różnych poziomów RAID (np. RAID-1 - stabilny i łatwy w konfiguracji). Biorąc pod uwagę fakt, że BTRFS przechowuje sumy kontrolne, jest w stanie niezawodnie wykryć uszkodzenia (w przeciwieństwie do klasycznych systemów RAID, w których dostępna jest tylko parzystość).
Obecne wersje potrafią nawet naprawić typowe błędy w systemie plików BTRFS RAID-5 (na przykład poprzez wymianę uszkodzonego dysku) (chociaż raid56 nadal wymaga poprawy, patrz aktualizacja poniżej ).
Jeśli wystąpi awaria operacji naprawy / zamiany, najpierw zaktualizuj jądro (co prawdopodobnie rozwiązuje ten problem) - a jeśli to konieczne, BTRFS ma pewne funkcje odzyskiwania. Nawet w najgorszym przypadku (np. Awaria wielu dysków) często będziesz w stanie skopiować pliki, które są nadal w porządku i będziesz wiedzieć, które pliki są uszkodzone. Dlatego ignorując wszystkie inne funkcje (takie jak migawki, kopie CoW, podwoluminy), BTRFS może być użyty, jeśli wykrycie uszkodzenia danych / plików jest głównym priorytetem.

Aktualizacja: w czerwcu 2016 r. Odkryto, że implementacja RAID-5/6 w BTRFS jest wadliwa. BTRFS ogólnie jest stabilny - ale implementacja raid56 jest bardzo nowa, i tak była uważana za eksperymentalną i powinna być teraz używana tylko do testowania, dopóki nie zostanie naprawiona. Jeśli używasz RAID-5/6, możesz chcieć przekonwertować na RAID-1. Nadal oferuje korzyści dla użytkowników końcowych, takie jak sumowanie kontrolne (inne systemy plików mogą w ogóle nie wiedzieć o uszkodzonych plikach) i ochronę w przypadku awarii dysku.

Odniesienie: BTRFS czasami oblicza nieprawidłową parzystość

podstawowy 6
źródło
RAID 5 i 6 są obecnie całkowicie uszkodzone w BTRFS i powodują utratę danych. Uniknąć!
Gareth Davidson
1
RAID-5 był złym przykładem w tej odpowiedzi. Zaktualizowano
basic6