SlideShare a Scribd company logo
LinuxCon_2013_NA_Eckermann_Filesystems_btrfs.pdf
2
Isn't one type of car enough?
C. Nocke
MgE
3
Isn't one type of car enough?
C. Nocke
MgE
4
Isn't one type of car enough?
C. Nocke
MgE
• Old – Basic Functionality
• Small – Space efficient
• Slow – low risk
• Charged with emotions
5
Isn't one type of car enough?
C. Nocke
MgE
• New – Fancy Functions
• Large – less space
efficient
• Fast – high risk
• Charged with emotions
• Old – Basic Functionality
• Small – Space efficient
• Slow – low risk
• Charged with emotions
6
Isn't one type of filesystem enough?
C. Nocke
MgE
• Functionality
• Efficiency
• Performance
• Reliability
• Charged with Emotions
Why btrfs is the Bread and
Butter of Filesystems
… and why you may need other Filesystems as well ...
LinuxCon 2013 NA
2013-09-12 21:15 UTC
Matthias G. Eckermann
Senior Product Manager
mge@suse.com
8
Agenda
• Local Linux Filesystems
• Copy on Write
• Filesystem recommendations
• CoW – and what to do with it
‒ Using “snapper”
to manage Operating System activities
‒ Snapshotting on the Desktop
‒ Server Side Snapshots
‒ Other features – Future
Linux (Local) Filesystems
10
Major Linux (local) Filesystems
Feature ext 2/3 reiserfs xfs ext4 btrfs
Data/Metadata Journaling •/• •/• CoW
Journal internal/external •/• •/• •/• •/• CoW
Offline extend/shrink •/• •/• •/• •/•
Online extend/shrink •/•
Inode-Allocation-Map table u.B*-tree B+-tree table B-tree
Sparse Files • • • • •
Tail Packing ○ • ○ ○ •
Defrag ○ ○ • • •
ExtAttr / ACLs •/• •/• •/• •/• •/•
Quotas • • • • Subvol.
max. Filesystemsize 16 TiB 16 TiB 8 EiB 1 EiB 16 EiB
max. Filesize 2 TiB 1 EiB 8 EiB 1 EiB 16 EiB
•/• ○/•
○/○
•/○ •/○ •/○ •/○
11
Major Linux (local) Filesystems
Feature ext 2/3 reiserfs xfs ext4 btrfs
Data/Metadata Journaling •/• •/• CoW
Journal internal/external •/• •/• •/• •/• CoW
Offline extend/shrink •/• •/• •/• •/•
Online extend/shrink •/•
Inode-Allocation-Map table u.B*-tree B+-tree table B-tree
Sparse Files • • • • •
Tail Packing ○ • ○ ○ •
Defrag ○ ○ • • •
ExtAttr / ACLs •/• •/• •/• •/• •/•
Quotas • • • • Subvol.
max. Filesystemsize 16 TiB 16 TiB 8 EiB 1 EiB 16 EiB
max. Filesize 2 TiB 1 EiB 8 EiB 1 EiB 16 EiB
•/• ○/•
○/○
•/○ •/○ •/○ •/○
12
Copy on Write (1)
“Normal” Write
• Existing blocks of a file are
overwritten, when
the content changes
Copy on Write
• If content of a block
changes, the changed block
is put besides the
non-changed block
• Instead the metadata
(block-list) changes
Benefit
• Implementation of
“transactions” in the
filesystem is easy, as old
content is still available
13
Copy on Write (2)
“Normal” Write Copy on Write
Sun
is
shining
FREE
Sun
is
shining
FREE
Sun
was
shining
FREE
Sun
is
shining
was
14
Copy on Write (3)
Disadvantages Advantages
Performance impact on Efficient Storage
specific workloads, such Deduplication
as storing VMs Snapshots
Integrity beyond Journalling
15
Btrfs
Main features and concepts
Features
• Extents
‒ Use only what's needed
‒ Contiguous runs of disk
blocks
• Copy-on-write
‒ Never overwrite data!
‒ Similar to CoW in VM
• Snapshots
‒ Light weight
‒ At filesystem level
Concepts
• B-Tree
‒ Index data structure
‒ Fast search, insert, delete
• Subvolume
‒ Filesystem inside the
filesystem
• Metadata
‒ “normal” metadata
‒ B-Tree structures
• Raw data
‒ Actual content of files
16
Major Linux (local) Filesystems
Feature ext 2/3 reiserfs xfs ext4 btrfs
Data/Metadata Journaling •/• •/• CoW
Journal internal/external •/• •/• •/• •/• CoW
Offline extend/shrink •/• •/• •/• •/•
Online extend/shrink •/•
Inode-Allocation-Map table u.B*-tree B+-tree table B-tree
Sparse Files • • • • •
Tail Packing ○ • ○ ○ •
Defrag ○ ○ • • •
ExtAttr / ACLs •/• •/• •/• •/• •/•
Quotas • • • • Subvol.
max. Filesystemsize 16 TiB 16 TiB 8 EiB 1 EiB 16 EiB
max. Filesize 2 TiB 1 EiB 8 EiB 1 EiB 16 EiB
•/• ○/•
○/○
•/○ •/○ •/○ •/○
17
Filesystem recommendations
Type?
New Filesystem?
Purpose?
Snapshots?Snapshots?
ext4xfs
btrfs
OS Data
No
Yes Yes
Convert
No
ext2/3/4
xfs reiserfs
Yes No
18
Why xfs?
• Maturity
‒ comes from IRIX
‒ ported to Linux > 10 years ago
• Track record for
‒ Performance
‒ Scalability
‒ Stability
• Active Development community
‒ Checksums
‒ Self-identifying metadata
CoW – and what to do with it
20
btrfs Maturity
Mature / “Enterprise ready” Not (yet) mature
Copy on Write Inode Cache
Snapshots Auto Defrag
Subvolumes RAID
Metadata Integrity Compression
Data Integrity Send / Receive
Online metadata scrubbing Hot add / remove
Manual Defragmentation Seeding devices
Manual Deduplication Multiple Devices
Quota Groups “Big” Metadata
Using “snapper”
to manage Operating System activities
22
What is snapper?
• Tool to manage btrfs snapshots
• Functions:
‒ create, modify, delete
‒ status (=compare), diff
‒ undochange
‒ cleanup
• Integration with
‒ Package management stack (SUSE: zypper, yum)
‒ Systems management stack (SUSE: YaST)
• DBUS service
23
http://www.snapper.io/
24
snapper demonstration
for administrative tasks
Snapshotting on the Desktop
/home/$USER
26
Using snapper for User data
Requirements
• /home/$USER is a btrfs subvolume
• “snapperd” with DBUS interface
• snapper configuration per user
Additional options
• Automated snapshotting on login/logout
‒ Requires pam-snapper
• Automated snapshotting on Suspend
27
snapper demonstration for a user
Server Side Snapshots
Btrfs as a Samba backend
Server Side Copy
29
Traditional File Copy
• File data takes disk and
network round-trips
• Duplicate data stored
on disk
Read
Write
Read
Write
30
Server-Side Copy
• Network round-trip
avoided
• Server copies file data
locally
• Duplicate data stored
on disk
Server-Side
Copy
Read
Write
31
Btrfs Enhanced Server-Side Copy
• Data avoids network
and disk round-trips
• No duplication of file
data
Server-Side
Copy
Clone
Range
Server Side Snapshots
Btrfs as a Samba backend
“Recovery Point”
33
Samba4 and btrfs, snapper
Prototype Samba implementation of
“Recovery Point”
File
share
Linux + Samba 4
Windows 7,
Vista or XP
Samba4
service
File “test.txt” is changed
Automatic snapshots by Snapper
File “test.txt” is created
Network
share
Now
Previous versions of “test.txt” in Explorer
Automated
snapshots
Other features – Future
35
Conversion to btrfs
• btrfs-convert
• offline in-place migration from
‒ ext2/3/4
and
‒ reiserfs
• Keeps metadata of the old filesystem for a roll-back
demonstration: convert reiserfs to btrfs
36
Continuously Running Systems
Snapshot / Rollback for full system – Based on
• btrfs
• Snapper
• Bootloader integration
‒ Booting directly from a btrfs snapshot
‒ Jump back to a former status of the OS,
including kernel / initrd
37
Btrfs – Planned features
• Data de-duplication:
– De-duplication during writes
– Manual De-duplication
• Tiered storage
– e.g.: combine SSD and HDD
Summary
39
Filesystem recommendations
Type?
New Filesystem?
Purpose?
Snapshots?Snapshots?
ext4xfs
btrfs
OS Data
No
Yes Yes
Convert
No
ext2/3/4
xfs reiserfs
Yes No
Thank you.
40
Go ahead, try btrfs and snapper
today!
Your questions!?
Corporate Headquarters
Maxfeldstrasse 5
90409 Nuremberg
Germany
+49 911 740 53 0 (Worldwide)
www.suse.com
Join us on:
www.opensuse.org
41
Unpublished Work of SUSE. All Rights Reserved.
This work is an unpublished work and contains confidential, proprietary and trade secret information of SUSE.
Access to this work is restricted to SUSE employees who have a need to know to perform tasks within the scope of
their assignments. No part of this work may be practiced, performed, copied, distributed, revised, modified, translated,
abridged, condensed, expanded, collected, or adapted without the prior written consent of SUSE.
Any use or exploitation of this work without authorization could subject the perpetrator to criminal and civil liability.
General Disclaimer
This document is not to be construed as a promise by any participating company to develop, deliver, or market a
product. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making
purchasing decisions. SUSE makes no representations or warranties with respect to the contents of this document,
and specifically disclaims any express or implied warranties of merchantability or fitness for any particular purpose. The
development, release, and timing of features or functionality described for SUSE products remains at the sole
discretion of SUSE. Further, SUSE reserves the right to revise this document and to make changes to its content, at
any time, without obligation to notify any person or entity of such revisions or changes. All SUSE marks referenced in
this presentation are trademarks or registered trademarks of Novell, Inc. in the United States and other countries. All
third-party trademarks are the property of their respective owners.

More Related Content

PDF
Btrfs: Design, Implementation and the Current Status
PDF
LUG-BG 2017 - Rangel Ivanov - Spread some butter - BTRFS
PDF
Feature rich BTRFS is Getting Richer with Encryption
ODP
RAID, Replication, and You
PDF
Building Mini Embedded Linux System for X86 Arch
PPTX
File systems for mobile phones or handheld devices
PPT
001 linux revision
Btrfs: Design, Implementation and the Current Status
LUG-BG 2017 - Rangel Ivanov - Spread some butter - BTRFS
Feature rich BTRFS is Getting Richer with Encryption
RAID, Replication, and You
Building Mini Embedded Linux System for X86 Arch
File systems for mobile phones or handheld devices
001 linux revision

What's hot (20)

PDF
I can\'t believe this is butter - A Tour of btrfs
PDF
Embedded Systems: Lecture 7: Lab 1: Preparing the Raspberry Pi
PDF
How to Install Gluster Storage Platform
PPT
Unix memory management
PDF
Ibm db2 10.5 for linux, unix, and windows getting started with db2 installa...
PDF
Olf2013
PDF
IBM System Storage LTO Ultrium 6 Tape Drive Performance White Paper
PPT
PDF
Boot process: BIOS vs UEFI
PDF
Asiabsdcon14
PDF
Embedded Linux Basics
PDF
Linux basics 1/2
ODP
Description of GRUB 2
PDF
Scale9x sun
PPT
Linux操作系统01 简介
PDF
Tlf2014
PDF
Embedded Systems: Lecture 7: Unwrapping the Raspberry Pi
PDF
Course 102: Lecture 25: Devices and Device Drivers
PDF
[Ubisoft] Perforce Integration in a AAA Game Engine
I can\'t believe this is butter - A Tour of btrfs
Embedded Systems: Lecture 7: Lab 1: Preparing the Raspberry Pi
How to Install Gluster Storage Platform
Unix memory management
Ibm db2 10.5 for linux, unix, and windows getting started with db2 installa...
Olf2013
IBM System Storage LTO Ultrium 6 Tape Drive Performance White Paper
Boot process: BIOS vs UEFI
Asiabsdcon14
Embedded Linux Basics
Linux basics 1/2
Description of GRUB 2
Scale9x sun
Linux操作系统01 简介
Tlf2014
Embedded Systems: Lecture 7: Unwrapping the Raspberry Pi
Course 102: Lecture 25: Devices and Device Drivers
[Ubisoft] Perforce Integration in a AAA Game Engine
Ad

Similar to LinuxCon_2013_NA_Eckermann_Filesystems_btrfs.pdf (20)

KEY
Deployment Strategies (Mongo Austin)
PDF
Btrfs and Snapper - The Next Steps from Pure Filesystem Features to Integrati...
PDF
LAS16-400: Mini Conference 3 AOSP (Session 1)
PPTX
Introduction to DRBD
PPTX
Taking Splunk to the Next Level - Architecture Breakout Session
PPTX
Alfresco tuning part1
PPTX
Alfresco tuning part1
PPTX
Leveraging Structured Data To Reduce Disk, IO & Network Bandwidth
ODP
Case study of BtrFS: A fault tolerant File system
PDF
Back from the Dead: When Bad Code Kills a Good Server
KEY
Deployment Strategy
PDF
Still All on One Server: Perforce at Scale
PPTX
Taking Splunk to the Next Level - Architecture
PPTX
Taking Splunk to the Next Level - Architecture Breakout Session
PPTX
Backups.pptx
KEY
Deployment Strategies
PDF
ABS 2014 - Android Kit Kat Internals
PPTX
EMBEDDED KERNEL and its COMPONENTS.pptx
PPTX
10 Tips for AIX Security
Deployment Strategies (Mongo Austin)
Btrfs and Snapper - The Next Steps from Pure Filesystem Features to Integrati...
LAS16-400: Mini Conference 3 AOSP (Session 1)
Introduction to DRBD
Taking Splunk to the Next Level - Architecture Breakout Session
Alfresco tuning part1
Alfresco tuning part1
Leveraging Structured Data To Reduce Disk, IO & Network Bandwidth
Case study of BtrFS: A fault tolerant File system
Back from the Dead: When Bad Code Kills a Good Server
Deployment Strategy
Still All on One Server: Perforce at Scale
Taking Splunk to the Next Level - Architecture
Taking Splunk to the Next Level - Architecture Breakout Session
Backups.pptx
Deployment Strategies
ABS 2014 - Android Kit Kat Internals
EMBEDDED KERNEL and its COMPONENTS.pptx
10 Tips for AIX Security
Ad

More from degarden (20)

PDF
MICHELIN_-AGILIS-CrossClimate_GB
PDF
ABC 2021 Guia del vino
PDF
Audi-A3-Sportback-catalogo-es-1146
PDF
Why btrfs is the Bread and Butter of Filesystems
PDF
Toshiba X300 salessheet english-web_r2
PDF
Toshiba N300 salessheet english-web_r2
PDF
The 20 maps that will help you understand Spain - The Local
PDF
Toshiba X300 Performance Internal Hard Drive
PDF
Bronces
PDF
Sper Food Safety Thermometer with IR
PDF
Plarad Torque and tension systems
PDF
Plarad Hydraulikaggregate Hydraulic Power Packs
PDF
Hands-Free Profile 1.7
PDF
Fingerprinting Bluetooth-Low-Energy Devices Based on the Generic Attribute Pr...
PDF
Reverse Engineering BLE Devices Documentation
PDF
pWeb: A P2P Web Hosting Framework
PDF
¿Qué esconde tu teléfono? Adquisición forense de dispositivos Android
PDF
Bose NC 700 - User manual English
PDF
MICHELIN CrossCLIMATE+
PDF
Catálogo-Producto-Familia-A3-PI_MY17_Medidas-Semana-9_2017
MICHELIN_-AGILIS-CrossClimate_GB
ABC 2021 Guia del vino
Audi-A3-Sportback-catalogo-es-1146
Why btrfs is the Bread and Butter of Filesystems
Toshiba X300 salessheet english-web_r2
Toshiba N300 salessheet english-web_r2
The 20 maps that will help you understand Spain - The Local
Toshiba X300 Performance Internal Hard Drive
Bronces
Sper Food Safety Thermometer with IR
Plarad Torque and tension systems
Plarad Hydraulikaggregate Hydraulic Power Packs
Hands-Free Profile 1.7
Fingerprinting Bluetooth-Low-Energy Devices Based on the Generic Attribute Pr...
Reverse Engineering BLE Devices Documentation
pWeb: A P2P Web Hosting Framework
¿Qué esconde tu teléfono? Adquisición forense de dispositivos Android
Bose NC 700 - User manual English
MICHELIN CrossCLIMATE+
Catálogo-Producto-Familia-A3-PI_MY17_Medidas-Semana-9_2017

Recently uploaded (20)

PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PPTX
ManageIQ - Sprint 268 Review - Slide Deck
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PDF
top salesforce developer skills in 2025.pdf
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
System and Network Administration Chapter 2
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
Nekopoi APK 2025 free lastest update
PDF
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PPTX
Introduction to Artificial Intelligence
PDF
medical staffing services at VALiNTRY
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
System and Network Administraation Chapter 3
PPTX
CHAPTER 2 - PM Management and IT Context
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
ManageIQ - Sprint 268 Review - Slide Deck
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
top salesforce developer skills in 2025.pdf
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
System and Network Administration Chapter 2
Design an Analysis of Algorithms I-SECS-1021-03
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Nekopoi APK 2025 free lastest update
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
Internet Downloader Manager (IDM) Crack 6.42 Build 41
Introduction to Artificial Intelligence
medical staffing services at VALiNTRY
Upgrade and Innovation Strategies for SAP ERP Customers
Operating system designcfffgfgggggggvggggggggg
System and Network Administraation Chapter 3
CHAPTER 2 - PM Management and IT Context

LinuxCon_2013_NA_Eckermann_Filesystems_btrfs.pdf

  • 2. 2 Isn't one type of car enough? C. Nocke MgE
  • 3. 3 Isn't one type of car enough? C. Nocke MgE
  • 4. 4 Isn't one type of car enough? C. Nocke MgE • Old – Basic Functionality • Small – Space efficient • Slow – low risk • Charged with emotions
  • 5. 5 Isn't one type of car enough? C. Nocke MgE • New – Fancy Functions • Large – less space efficient • Fast – high risk • Charged with emotions • Old – Basic Functionality • Small – Space efficient • Slow – low risk • Charged with emotions
  • 6. 6 Isn't one type of filesystem enough? C. Nocke MgE • Functionality • Efficiency • Performance • Reliability • Charged with Emotions
  • 7. Why btrfs is the Bread and Butter of Filesystems … and why you may need other Filesystems as well ... LinuxCon 2013 NA 2013-09-12 21:15 UTC Matthias G. Eckermann Senior Product Manager mge@suse.com
  • 8. 8 Agenda • Local Linux Filesystems • Copy on Write • Filesystem recommendations • CoW – and what to do with it ‒ Using “snapper” to manage Operating System activities ‒ Snapshotting on the Desktop ‒ Server Side Snapshots ‒ Other features – Future
  • 10. 10 Major Linux (local) Filesystems Feature ext 2/3 reiserfs xfs ext4 btrfs Data/Metadata Journaling •/• •/• CoW Journal internal/external •/• •/• •/• •/• CoW Offline extend/shrink •/• •/• •/• •/• Online extend/shrink •/• Inode-Allocation-Map table u.B*-tree B+-tree table B-tree Sparse Files • • • • • Tail Packing ○ • ○ ○ • Defrag ○ ○ • • • ExtAttr / ACLs •/• •/• •/• •/• •/• Quotas • • • • Subvol. max. Filesystemsize 16 TiB 16 TiB 8 EiB 1 EiB 16 EiB max. Filesize 2 TiB 1 EiB 8 EiB 1 EiB 16 EiB •/• ○/• ○/○ •/○ •/○ •/○ •/○
  • 11. 11 Major Linux (local) Filesystems Feature ext 2/3 reiserfs xfs ext4 btrfs Data/Metadata Journaling •/• •/• CoW Journal internal/external •/• •/• •/• •/• CoW Offline extend/shrink •/• •/• •/• •/• Online extend/shrink •/• Inode-Allocation-Map table u.B*-tree B+-tree table B-tree Sparse Files • • • • • Tail Packing ○ • ○ ○ • Defrag ○ ○ • • • ExtAttr / ACLs •/• •/• •/• •/• •/• Quotas • • • • Subvol. max. Filesystemsize 16 TiB 16 TiB 8 EiB 1 EiB 16 EiB max. Filesize 2 TiB 1 EiB 8 EiB 1 EiB 16 EiB •/• ○/• ○/○ •/○ •/○ •/○ •/○
  • 12. 12 Copy on Write (1) “Normal” Write • Existing blocks of a file are overwritten, when the content changes Copy on Write • If content of a block changes, the changed block is put besides the non-changed block • Instead the metadata (block-list) changes Benefit • Implementation of “transactions” in the filesystem is easy, as old content is still available
  • 13. 13 Copy on Write (2) “Normal” Write Copy on Write Sun is shining FREE Sun is shining FREE Sun was shining FREE Sun is shining was
  • 14. 14 Copy on Write (3) Disadvantages Advantages Performance impact on Efficient Storage specific workloads, such Deduplication as storing VMs Snapshots Integrity beyond Journalling
  • 15. 15 Btrfs Main features and concepts Features • Extents ‒ Use only what's needed ‒ Contiguous runs of disk blocks • Copy-on-write ‒ Never overwrite data! ‒ Similar to CoW in VM • Snapshots ‒ Light weight ‒ At filesystem level Concepts • B-Tree ‒ Index data structure ‒ Fast search, insert, delete • Subvolume ‒ Filesystem inside the filesystem • Metadata ‒ “normal” metadata ‒ B-Tree structures • Raw data ‒ Actual content of files
  • 16. 16 Major Linux (local) Filesystems Feature ext 2/3 reiserfs xfs ext4 btrfs Data/Metadata Journaling •/• •/• CoW Journal internal/external •/• •/• •/• •/• CoW Offline extend/shrink •/• •/• •/• •/• Online extend/shrink •/• Inode-Allocation-Map table u.B*-tree B+-tree table B-tree Sparse Files • • • • • Tail Packing ○ • ○ ○ • Defrag ○ ○ • • • ExtAttr / ACLs •/• •/• •/• •/• •/• Quotas • • • • Subvol. max. Filesystemsize 16 TiB 16 TiB 8 EiB 1 EiB 16 EiB max. Filesize 2 TiB 1 EiB 8 EiB 1 EiB 16 EiB •/• ○/• ○/○ •/○ •/○ •/○ •/○
  • 18. 18 Why xfs? • Maturity ‒ comes from IRIX ‒ ported to Linux > 10 years ago • Track record for ‒ Performance ‒ Scalability ‒ Stability • Active Development community ‒ Checksums ‒ Self-identifying metadata
  • 19. CoW – and what to do with it
  • 20. 20 btrfs Maturity Mature / “Enterprise ready” Not (yet) mature Copy on Write Inode Cache Snapshots Auto Defrag Subvolumes RAID Metadata Integrity Compression Data Integrity Send / Receive Online metadata scrubbing Hot add / remove Manual Defragmentation Seeding devices Manual Deduplication Multiple Devices Quota Groups “Big” Metadata
  • 21. Using “snapper” to manage Operating System activities
  • 22. 22 What is snapper? • Tool to manage btrfs snapshots • Functions: ‒ create, modify, delete ‒ status (=compare), diff ‒ undochange ‒ cleanup • Integration with ‒ Package management stack (SUSE: zypper, yum) ‒ Systems management stack (SUSE: YaST) • DBUS service
  • 25. Snapshotting on the Desktop /home/$USER
  • 26. 26 Using snapper for User data Requirements • /home/$USER is a btrfs subvolume • “snapperd” with DBUS interface • snapper configuration per user Additional options • Automated snapshotting on login/logout ‒ Requires pam-snapper • Automated snapshotting on Suspend
  • 28. Server Side Snapshots Btrfs as a Samba backend Server Side Copy
  • 29. 29 Traditional File Copy • File data takes disk and network round-trips • Duplicate data stored on disk Read Write Read Write
  • 30. 30 Server-Side Copy • Network round-trip avoided • Server copies file data locally • Duplicate data stored on disk Server-Side Copy Read Write
  • 31. 31 Btrfs Enhanced Server-Side Copy • Data avoids network and disk round-trips • No duplication of file data Server-Side Copy Clone Range
  • 32. Server Side Snapshots Btrfs as a Samba backend “Recovery Point”
  • 33. 33 Samba4 and btrfs, snapper Prototype Samba implementation of “Recovery Point” File share Linux + Samba 4 Windows 7, Vista or XP Samba4 service File “test.txt” is changed Automatic snapshots by Snapper File “test.txt” is created Network share Now Previous versions of “test.txt” in Explorer Automated snapshots
  • 35. 35 Conversion to btrfs • btrfs-convert • offline in-place migration from ‒ ext2/3/4 and ‒ reiserfs • Keeps metadata of the old filesystem for a roll-back demonstration: convert reiserfs to btrfs
  • 36. 36 Continuously Running Systems Snapshot / Rollback for full system – Based on • btrfs • Snapper • Bootloader integration ‒ Booting directly from a btrfs snapshot ‒ Jump back to a former status of the OS, including kernel / initrd
  • 37. 37 Btrfs – Planned features • Data de-duplication: – De-duplication during writes – Manual De-duplication • Tiered storage – e.g.: combine SSD and HDD
  • 40. Thank you. 40 Go ahead, try btrfs and snapper today! Your questions!?
  • 41. Corporate Headquarters Maxfeldstrasse 5 90409 Nuremberg Germany +49 911 740 53 0 (Worldwide) www.suse.com Join us on: www.opensuse.org 41
  • 42. Unpublished Work of SUSE. All Rights Reserved. This work is an unpublished work and contains confidential, proprietary and trade secret information of SUSE. Access to this work is restricted to SUSE employees who have a need to know to perform tasks within the scope of their assignments. No part of this work may be practiced, performed, copied, distributed, revised, modified, translated, abridged, condensed, expanded, collected, or adapted without the prior written consent of SUSE. Any use or exploitation of this work without authorization could subject the perpetrator to criminal and civil liability. General Disclaimer This document is not to be construed as a promise by any participating company to develop, deliver, or market a product. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. SUSE makes no representations or warranties with respect to the contents of this document, and specifically disclaims any express or implied warranties of merchantability or fitness for any particular purpose. The development, release, and timing of features or functionality described for SUSE products remains at the sole discretion of SUSE. Further, SUSE reserves the right to revise this document and to make changes to its content, at any time, without obligation to notify any person or entity of such revisions or changes. All SUSE marks referenced in this presentation are trademarks or registered trademarks of Novell, Inc. in the United States and other countries. All third-party trademarks are the property of their respective owners.