Chrismurphy (talk | contribs) mNo edit summary |
Chrismurphy (talk | contribs) mNo edit summary |
||
Line 4: | Line 4: | ||
Btrfs is a copy-on-write filesystem for Linux aimed at implementing advanced features including error detection, fault tolerance, recovery, transparent compression, cheap snapshots, integrated volume management, and easy administration. It provides multiple device storage pooling, RAID-like functionality, fast snapshot creation, and checksumming of data and metadata. Contributors include Facebook, Fujitsu, (open)SUSE, Oracle, and Western Digital. Btrfs is licensed under the GPL and open for contribution from anyone. | Btrfs is a copy-on-write filesystem for Linux aimed at implementing advanced features including error detection, fault tolerance, recovery, transparent compression, cheap snapshots, integrated volume management, and easy administration. It provides multiple device storage pooling, RAID-like functionality, fast snapshot creation, and checksumming of data and metadata. Contributors include Facebook, Fujitsu, (open)SUSE, Oracle, and Western Digital. Btrfs is licensed under the GPL and open for contribution from anyone. | ||
===Default filesystem, on the desktop=== | ===Default filesystem, on the desktop=== | ||
* Btrfs is the default file system for desktops, starting with Fedora 33. See the [https://fedoraproject.org/wiki/Changes/BtrfsByDefault Change Proposal] | * Btrfs is the default file system for desktops, starting with Fedora 33. See the [https://fedoraproject.org/wiki/Changes/BtrfsByDefault Change Proposal] | ||
Line 25: | Line 20: | ||
* `man 5 btrfs` - info about btrfs itself: mount options, features, limits, swapfile support, the case of multiple block group profiles | * `man 5 btrfs` - info about btrfs itself: mount options, features, limits, swapfile support, the case of multiple block group profiles | ||
* `man btrfs` - btrfs user space commands overview | * `man btrfs` - btrfs user space commands overview | ||
* `man btrfs <command>` | * `man btrfs <command>` — man page for this specific btrfs command, e.g. `man btrfs device`. NOTE: Any command name can be shortened so long as the shortened form is unambiguous, e.g. `btrfs fi us` is equivalent to `btrfs filesystem usage`. | ||
* `man mkfs.btrfs` | * `man mkfs.btrfs` — man page for the mkfs command, includes info on block groups, chunks, raid, multiple device layouts, profiles, redundancy, space utilization, and minimum devices. | ||
* [https://raid.wiki.kernel.org/index.php/Timeout_Mismatch linux-raid@ list: Timeout Mismatch] | * [https://raid.wiki.kernel.org/index.php/Timeout_Mismatch linux-raid@ list: Timeout Mismatch] | ||
* [https://lore.kernel.org/linux-btrfs/20200627032414.GX10769@hungrycats.org/ linux-btrfs@ list: How to use btrfs raid5 successfully(ish)] | * [https://lore.kernel.org/linux-btrfs/20200627032414.GX10769@hungrycats.org/ linux-btrfs@ list: How to use btrfs raid5 successfully(ish)] | ||
Line 33: | Line 28: | ||
* [https://github.com/btrfs/btrfs-dev-docs Collection of documents that describe internals of the BTRFS filesystem.] | * [https://github.com/btrfs/btrfs-dev-docs Collection of documents that describe internals of the BTRFS filesystem.] | ||
* [https://btrfs.wiki.kernel.org/index.php/Developer%27s_FAQ Btrfs Wiki: Developer's FAQ, contributing to Btrfs.] | * [https://btrfs.wiki.kernel.org/index.php/Developer%27s_FAQ Btrfs Wiki: Developer's FAQ, contributing to Btrfs.] | ||
===Conversions from Ext3/Ext4 volumes to Btrfs (and back!)=== | ===Conversions from Ext3/Ext4 volumes to Btrfs (and back!)=== | ||
{{admon/important|Although Btrfs does not need LVM, if you already are using it then converting your volume does not remove LVM. It also doesn't create the subvolume layout that we're using in Anaconda, and image builders.}} | {{admon/important|Although Btrfs does not need LVM, if you already are using it then converting your volume does not remove LVM. It also doesn't create the subvolume layout that we're using in Anaconda, and image builders.}} | ||
* Btrfs Wiki has more information on [https://btrfs.wiki.kernel.org/index.php/Conversion_from_Ext3 conversion and rollback.] | * Btrfs Wiki has more information on [https://btrfs.wiki.kernel.org/index.php/Conversion_from_Ext3 conversion and rollback.] | ||
===Upstream Development=== | |||
* [https://btrfs.wiki.kernel.org/index.php/Changelog Btrfs Changelog]. | |||
* [https://btrfs.wiki.kernel.org/index.php/Status Stability status]. | |||
* [https://btrfs.wiki.kernel.org/index.php/Btrfs_mailing_list Mailing list information]. | |||
[[Category:btrfs|btrfs]] | [[Category:btrfs|btrfs]] |
Revision as of 05:12, 7 September 2020
Btrfs: the b-tree filesystem
Btrfs is a copy-on-write filesystem for Linux aimed at implementing advanced features including error detection, fault tolerance, recovery, transparent compression, cheap snapshots, integrated volume management, and easy administration. It provides multiple device storage pooling, RAID-like functionality, fast snapshot creation, and checksumming of data and metadata. Contributors include Facebook, Fujitsu, (open)SUSE, Oracle, and Western Digital. Btrfs is licensed under the GPL and open for contribution from anyone.
Default filesystem, on the desktop
- Btrfs is the default file system for desktops, starting with Fedora 33. See the Change Proposal
- Fedora Magazine: Btrfs Coming to Fedora 33
Reporting bugs
- Bugs related to
btrfs
user-space commands should be filed against the btrfs-progs component. - All other bugs should be filed against the kernel component. Following submission of the bug, please set the Assignee field to: fedora-kernel-btrfs@fedoraproject.org and Save the change.
Installer support
- The Fedora installer, Anaconda, uses Btrfs by default in desktop editions and spins; and as an option in Manual Partitioning for Server, Cloud, and IoT editions. Fedora CoreOS installer, Ignition, also supports Btrfs as an option.
- The Btrfs partition scheme preset creates an ext4 /boot, and a Btrfs pool. Two subvolumes, root and home, are created from that pool and mounted at / and /home respectively.
- Additional mount points using Btrfs will also have corresponding subvolumes created based on the Name field. Subvolumes do not have a size, so the Desired Capacity field when creating new mount points is ignored and can be left blank.
Recommended reading for users
man 5 btrfs
- info about btrfs itself: mount options, features, limits, swapfile support, the case of multiple block group profilesman btrfs
- btrfs user space commands overviewman btrfs <command>
— man page for this specific btrfs command, e.g.man btrfs device
. NOTE: Any command name can be shortened so long as the shortened form is unambiguous, e.g.btrfs fi us
is equivalent tobtrfs filesystem usage
.man mkfs.btrfs
— man page for the mkfs command, includes info on block groups, chunks, raid, multiple device layouts, profiles, redundancy, space utilization, and minimum devices.- linux-raid@ list: Timeout Mismatch
- linux-btrfs@ list: How to use btrfs raid5 successfully(ish)
- Collection of documents that describe internals of the BTRFS filesystem.
- Btrfs Wiki: Developer's FAQ, contributing to Btrfs.
Conversions from Ext3/Ext4 volumes to Btrfs (and back!)
- Btrfs Wiki has more information on conversion and rollback.