{"id":12582,"date":"2025-11-20T01:03:00","date_gmt":"2025-11-20T06:03:00","guid":{"rendered":"https:\/\/www.both.org\/?p=12582"},"modified":"2026-01-20T13:27:53","modified_gmt":"2026-01-20T18:27:53","slug":"converting-to-btrfs-episode-2","status":"publish","type":"post","link":"https:\/\/www.both.org\/?p=12582","title":{"rendered":"Converting to BtrFS &#8212; Episode 2"},"content":{"rendered":"<div class=\"pld-like-dislike-wrap pld-template-1\">\r\n    <div class=\"pld-like-wrap  pld-common-wrap\">\r\n    <a href=\"javascript:void(0)\" class=\"pld-like-trigger pld-like-dislike-trigger  \" title=\"\" data-post-id=\"12582\" data-trigger-type=\"like\" data-restriction=\"cookie\" data-already-liked=\"0\">\r\n                        <i class=\"fas fa-thumbs-up\"><\/i>\r\n                <\/a>\r\n    <span class=\"pld-like-count-wrap pld-count-wrap\">    <\/span>\r\n<\/div><\/div>\n<p class=\"wp-block-paragraph\">I mentioned in <a href=\"https:\/\/www.both.org\/?p=12499\" data-type=\"link\" data-id=\"https:\/\/www.both.org\/?p=12499\" target=\"_blank\" rel=\"noreferrer noopener\">Episode 1<\/a>, that I was going to start my conversion of at least a few of my physical systems to BtrFS by testing on a VM, but I decided there&#8217;s not really any point to that. A simple VM with no real work to do is a crap test. Besides, I do have a system sitting there, doing almost nothing. Well, except for serving our family pictures to the other systems on my network. That&#8217;s <a href=\"https:\/\/www.both.org\/?p=4407\" data-type=\"link\" data-id=\"https:\/\/www.both.org\/?p=4407\" target=\"_blank\" rel=\"noreferrer noopener\">another story<\/a>, but it&#8217;s part of my long-term testing strategy.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The system I chose is bunkerhill and it has a decent set of specs as you can see in Figure 1. With an Intel i9, 8 core and 16 CPUs at nearly 5GHz, and 32GB of RAM. It&#8217;s a fast system with lots of resources.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#######################################################################\n# MOTD for Tue Nov 18 05:24:03 PM EST 2025\n# HOST NAME:            bunkerhill.both.org\n# Machine Type:         physical machine.\n# Host architecture:    X86_64\n#----------------------------------------------------------------------\n# System Serial No.:    Default string\n# System UUID:          3b702977-a782-a01e-a08f-2cf05d26c209\n# Motherboard Mfr:      Micro-Star International Co., Ltd.\n# Motherboard Model:    Z390-A PRO (MS-7B98)\n# Motherboard Serial:   K316882609\n# BIOS Release Date:    12\/25\/2019\n#----------------------------------------------------------------------\n# CPU Model:            Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz\n# CPU Data:             1 Eight Core package with 16 CPUs\n# CPU Architecture:     x86_64\n# HyperThreading:       Yes\n# Max CPU MHz:          5000.0000\n# Current CPU MHz:      4699.956\n# Min CPU MHz:          800.0000\n#----------------------------------------------------------------------\n# RAM:                  31.209 GB\n# SWAP:                 7.999 GB\n#----------------------------------------------------------------------\n# Install Date:         Wed 22 Oct 2025 11:50:12 PM EDT\n# Linux Distribution:   Fedora 43 (Forty Three) X86_64\n# Kernel Version:       6.17.7-300.fc43.x86_64\n#----------------------------------------------------------------------\n# Disk Partition Info\n# Filesystem      Size  Used Avail Use% Mounted on\n# \/dev\/nvme0n1p3  475G   10G  464G   3% \/\n# \/dev\/nvme0n1p3  475G   10G  464G   3% \/home\n# \/dev\/nvme0n1p2  2.0G  450M  1.4G  25% \/boot\n#----------------------------------------------------------------------\n# LVM Physical Volume Info\n# PV            VG              Fmt     Attr    PSize   PFree\n# \/dev\/sda      vg02    lvm2    a--     &lt;465.76g        56.00m\n#######################################################################\n# Note: This MOTD file gets updated automatically every day.\n#       Changes to this file will be automatically overwritten!\n#######################################################################<\/code><\/pre>\n\n\n\n<p class=\"has-text-align-center has-small-font-size wp-block-paragraph\">Figure 1: My BtrFS test system has an excellent set of specs for this project.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This system also has a hard drive that I use for storing and serving my family pictures. It will make a good test bed.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The current test<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">I recently found a new way to stress-test my Linux hosts and this is a perfect example of how the <a href=\"https:\/\/www.both.org\/?p=7839\" data-type=\"link\" data-id=\"https:\/\/www.both.org\/?p=7839\" target=\"_blank\" rel=\"noreferrer noopener\">stress<\/a> command can be used. I wanted to make this test realistic while concentrating on I\/O and the storage device, in this case, a 500GB NVMe device. In addition to the I\/O test, I&#8217;m also stressing the CPUs to about 67%. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I used the command in Figure 2 to launch <strong>stress<\/strong>. The -c option specifies 10 CPU worker threads, -i spawns 8 I\/O threads which simply flush the buffers to disk, and -d launches 15 disk worker threads to maintain a high level of activity. Overall disk I\/O is running at about 95 percent. <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># <strong>stress -c 10 -i 8 -d 15 -v<\/strong><\/code><\/pre>\n\n\n\n<p class=\"has-text-align-center has-small-font-size wp-block-paragraph\">Figure 2: The command I used for stress testing BtrFS on my system.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The -v (verbose) option causes <strong>stress<\/strong> to display the status messages seen in the right pane of the <a href=\"https:\/\/www.both.org\/?p=6672\" data-type=\"link\" data-id=\"https:\/\/www.both.org\/?p=6672\" target=\"_blank\" rel=\"noreferrer noopener\">Konsole<\/a> window in Figure 3. The left pane in Figure 3 is the system monitor btop, which I like because it shows a graphical representation of the system resource usage over time. This gives an excellent picture of recent events in the system. <\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full is-resized\"><a href=\"https:\/\/www.both.org\/wp-content\/uploads\/2025\/11\/BtrFS-Episode-02.png\" target=\"_blank\" rel=\" noreferrer noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"2560\" height=\"1354\" src=\"http:\/\/www.both.org\/wp-content\/uploads\/2025\/11\/BtrFS-Episode-02.png\" alt=\"\" class=\"wp-image-12593\" style=\"width:968px;height:auto\"\/><\/a><figcaption class=\"wp-element-caption\">Figure 3: Testing my BtrFS system using the <strong>stress<\/strong> command line utility. Click the image to enlarge for more detail.<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">You can see in Figure 3, the CPU and disk I\/O loads in more detail if you click on the image to enlarge it. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I plan to continue this stress test for about a week.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Next steps in the test plan<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">You may notice the LVM data for \/dev\/sda near the bottom of Figure 1. That&#8217;s the device that contains my pictures. After I&#8217;ve run this basic test for a few more days, I&#8217;ll convert it to BtrFS using the <strong>btrfs-convert<\/strong> tool. Then after a few more days of heavy testing, I&#8217;ll wipe out that sda device, convert it to BtrFS on a Linux type 83 partition, and test some more. I&#8217;m already keeping a good set of multiple backups of my data so I can revert to LVM\/EXT4 and restore at any time.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Then I&#8217;ll move on to creating subvolumes. One step at a time for critical new things like filesystems.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">The Full Series<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.both.org\/?p=12499\" target=\"_blank\" rel=\"noreferrer noopener\">Converting to BtrFS \u2014 Episode 1<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.both.org\/?p=12582\" target=\"_blank\" rel=\"noreferrer noopener\">Converting to BtrFS \u2014 Episode 2<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.both.org\/?p=12635\" target=\"_blank\" rel=\"noreferrer noopener\">Converting to BtrFS \u2014 Episode 3<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.both.org\/?p=12873\">Converting to Btr<\/a><a href=\"https:\/\/www.both.org\/?p=12873\" target=\"_blank\" rel=\"noreferrer noopener\">F<\/a><a href=\"https:\/\/www.both.org\/?p=12873\">S \u2014 Episode 4<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.both.org\/?p=13137\" target=\"_blank\" rel=\"noreferrer noopener\">Converting to BtrFS \u2014 Episode 5<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;ve started testing.<\/p>\n","protected":false},"author":2,"featured_media":12596,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_lmt_disableupdate":"","_lmt_disable":"","footnotes":""},"categories":[866,169,5],"tags":[880,163],"class_list":["post-12582","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-btrfs","category-filesystems","category-linux","tag-btrfs","tag-filesystem"],"modified_by":"David Both","_links":{"self":[{"href":"https:\/\/www.both.org\/index.php?rest_route=\/wp\/v2\/posts\/12582","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.both.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.both.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.both.org\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.both.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=12582"}],"version-history":[{"count":15,"href":"https:\/\/www.both.org\/index.php?rest_route=\/wp\/v2\/posts\/12582\/revisions"}],"predecessor-version":[{"id":13358,"href":"https:\/\/www.both.org\/index.php?rest_route=\/wp\/v2\/posts\/12582\/revisions\/13358"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.both.org\/index.php?rest_route=\/wp\/v2\/media\/12596"}],"wp:attachment":[{"href":"https:\/\/www.both.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=12582"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.both.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=12582"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.both.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=12582"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}