\section{btrfs}

\begin{frame}
   {btrfs}

   \begin{itemize}
      \item \textbf{B}-\textbf{TR}ee \textbf{F}ile \textbf{S}ystem
      \item Copy-on-write (\textbf{COW})
      \item Snapshots of entire filesystems or subvolumes
      \item Built in Logical Volume Management
      \item Max file size: 16 EB
      \item Max number of files: \textbf{$2 ^{64}$}
      \item Default root filesystem on the \textbf{SLES}
      and \textbf{openSUSE} distributions
   \end{itemize}
   \begin{important}[Bye Bye btrfs on RHEL]
      \textbf{btrfs} was removed in \textbf{RHEL/CentOS 8}.
      While it can be installed from upstream sources, it is
      not recommended to use an important filesystem, if it
      is unsupported by your distribution.
   \end{important}

\end{frame}

\cprotect\note{


   Both \textbf{Linux} developers and \textbf{Linux} users with
   high performance and high capacity or specialized needs are
   following the development and gradual deployment of the
   \textbf{btrfs} filesystem, which was created by Chris
   Mason. The name stands for \textbf{B-tr}ee \textbf{f}ile
   \textbf{s}ystem. Full documentation can be found at
   \url{https://btrfs.wiki.kernel.org/index.php/Main_Page}.

   \textbf{btrfs} is intended to address the lack of pooling,
   snapshots, checksums, and integral multi-device spanning in
   other \textbf{Linux} filesystems such as \textbf{ext4}. Such
   features can be crucial for \textbf{Linux} to scale into
   larger enterprise storage configurations.

   While \textbf{btrfs} has been in the mainline kernel since
   2.6.29 it was long viewed as experimental,
   although vendors have used it in new products, and is now
   the default in some distributions.

   One of the main features is the ability to take frequent
   \textbf{snapshots} of entire filesystems, or sub-volumes of
   entire filesystems in virtually no time. Because
   \textbf{btrfs} makes extensive use of \textbf{COW}
   techniques (Copy on Write), such a snapshot does not involve
   any more initial space for data blocks or any I/O activity
   except for some metadata updating.

   One can easily revert to the state described by earlier
   snapshots and even induce the kernel to reboot off an
   earlier root filesystem snapshot.

   \textbf{btrfs} maintains its own internal framework for
   adding or removing new partitions and/or physical media to
   existing filesystems, much as \textbf{LVM} (Logical Volume
   Management) does.

   Before \textbf{btrfs} becomes suitable for day-to-day use in
   critical filesystems, some tasks require finishing.  For a
   review of the development history of \textbf{btrfs} and
   expected evolution see \url{https://lwn.net/Articles/575841}.

}



