What is the current recommendation for Linux filesystem?

It’s a little more complicated on my end than just having everything in the root partition. :wink:

Filesystem     Type      Size  Used  Free    % Mountpoint
/dev/sda1      vfat      511M  544K  511M   1% /boot/efi
/dev/sda2      ext4      488M   60M  393M  14% /boot
/dev/sda3      btrfs     1.0G   22M  884M   3% /
/dev/sda4      btrfs      22G  7.9G   14G  37% /usr
/dev/sda5      btrfs     512M  3.4M  499M   1% /usr/local
/dev/sda6      btrfs     2.0G  145M  1.7G   8% /opt
/dev/sda8      btrfs     400G   84G  316G  21% /srv
/dev/sda9      btrfs     450G  2.2G  447G   1% /home
/dev/sda11     btrfs      20G  2.9G   17G  15% /var

Those are all on an SATA3-connected SSD. My backups are stored on /dev/sdb2, which resides on an SATA2-connected HDD and which is also a btrfspartition.

Why only /dev/sda2 is using EXT4?

Because GRUB had a problem with btrfs when I installed this system back in April 2019. :wink:

Do you know if the issue was fixed for new installations using latest Manjaro ISO file?

I believe so, yes.

1 Like

Any additional recommendation or experience are welcome mainly related to EXT4 / BTRFS / openZFS

For other mate that ready this thread I’d like to mention that the new NTFS drive was big performance improvement, but in my case, once my PC has some GPU issue that makes it crash requiring reset and the new drive generates some small issue in the HD, as windows does, it prevent my system to boot requiring me to boot on windows to check and fix the disk and back again to Linux, this is the reason I will replace the NTFS used in my data files and let it just with back-up driver and so I have a good interchangeable file system, otherwise we always need a dual boot for safety reason.

More details here: NTFS issue

I thanked BTRFS because it informed me the error of data transfer or copy earlier after the first installing BTRFS. After my research, that was my defective RAM (9 months old) . Then I stopped using this RAM. memtest can not detect the error of this RAM because it is very rare.
Otherwise I would get several wrong data if I use EXT4 too long.
Useless, you don’t even notice defective storage when using non-CoW Filesystem e.g. EXT4.


I watched this video and am surprised that openZFS is the fastest CoW filesystem in the average.

Yes, this results is very tempting to use openZFS as he does, but he shown nothing related to memory, it’s sad that openZFS consumes more RAM memory.

The driver to use openZFS is already present in the kernel 5.15 and above?

I think, openZFS is not integrated into the kernel or newer. You can only manually install the driver openZFS.


It could happen, when new version of kernel will not be compatible with ZFS in the future.

Thank you, now makes more sense the reason why BTRFS has been more used from Linux distros, it “works out of the box”, so in this case i will wait kernel integration to consider openZFS in the future.

The conclusion is converging to:

use EXT4 when speed is important, because currently it is faster then BTRFS in average
use BTRFS when data protection is more important, but considering it’s not mature as ext4 is up to the user to take the risk.

So in my case would be:

New PC

  1. SSD NVMe BTRFS for root and swap
  2. SSD sata EXT4 dedicated for games
  3. HD sata BTRFS personal data files shared with windows

Also, because I use a seperate NTFS data storage partition, I can freely uninstall and reinstall OS without backup my data. Thus you can see I make a clean install of Windows and Manjaro for at least every 6 months.

1 Like

BTRFS for Windows? What?

Sorry for this intermediate question: why is grub-btrfs installed even though NO btrfs filesystem was installed on the machine? At least it is the case with my ext4 system.

I also wonder why, but this package is just made to add scripts used when doing update-grub command when you have BTRFS file system. But I agree this shouldn’t be installed by default in a non BTRFS installation. I also agree this is off-topic and shouldn’t be in this thread.

2 Likes

as recommended here in case you are allocating a new partition to use in-between windows and linux, exfat seems to be the best option with least fuss. however if you are using existing NTFS partitions with data in them to avoid the hassle you can keep them as NTFS.

while ntfsfix is no chkdsk, it does basic repair. what most people forgo is that ntfsfix also marks every partition it checks as “dirty” irrespective of state of partition, to be cleared by an actual check with chkdsk later. ntfs3 is extra sensitive to NTFS status and does not mount “dirty” partitions. however you can avoid this using “-d” switch of ntfsfix.

i’ve resorted to using ntfs3 driver (mostly for less resource usage) with udisk2 so my NTFS partitions are auto-mounted on demand. i keep ntfs-3g driver as a backup driver to manually mount when i run into issues mounting with ntfs3.

I guess you want to use this driver: GitHub - maharmstone/btrfs: WinBtrfs - an open-source btrfs driver for Windows

Well I used it and it works, but it shouldn’t be used for critical data and in case of failures, you have to use Linux anyway. I also saw complete crashes, when using Win10 with this driver.

1 Like

I think it is a bad idea to share a partition with this kind of custom driver. NTFS to me is the way to go for a share with Windows. NTFS is well supported now in kernel 5.15+ with the NTFS3 driver (which requires only proper mount options to work), and perfectly suitable to share data. Create the partition from Windows, and use it on both Windows and Linux without issue.

For ntfs-3g it is the same, while it is well tested and has less bugs :slight_smile: However I still expect bugs in NTFS3 and therefore ntfs-3g is just the default. This btrfs driver is not custom, but rather a port to ReactOS, which as been adopted to real windows platforms.

If I have to choose, I would prefer an ext4 or btrfs driver for windows and not the way around. Windows drivers for both filesystems work, but they are far from being rock stable. At least for game data I would use these drivers.

To me it is by definition a custom driver, from the link you posted:

WinBtrfs is a Windows driver for the next-generation Linux filesystem Btrfs. A reimplementation from scratch, it contains no code from the Linux kernel

Also you can note I didn’t recommend using ntfs-3g implementation I specifically talked about NTFS3, which indeed may have bugs, but I disagree on your position.

I wouldn’t work on Linux file systems from Windows, and I would trust more the NTFS3 driver by a corporation that made working on file systems for almost 30 years its core business, than a driver rewritten from scratch on a GitHub project by one man. At the end of the day you do what you want but I don’t see how that makes more sense “the other way around”.

exFAT is the better choice for sharing with all OS without complication and access limitation.