URGENT! 'root filesystem is not BTRFS. During Rockstor installation, you must select BTRFS instead of LVM and other options for root filesystem. Please re-install Rockstor properly.'

[Please complete the below template with details of the problem reported on your Web-UI. Be as detailed as possible. Community members, including developers, shall try and help. Thanks for your time in reporting this issue! We recommend purchasing commercial support for expedited support directly from the developers.]

Brief description of the problem

It gives me this error for no reason on the web config.

Detailed step by step instructions to reproduce the problem

I set up the system correctly for the drives and specs.

Web-UI screenshot

I have no screenshot availabl.

Error Traceback provided on the Web-UI

Traceback (most recent call last): File "/opt/rockstor/src/rockstor/rest_framework_custom/generic_view.py", line 41, in _handle_exception yield File "/opt/rockstor/src/rockstor/storageadmin/views/disk.py", line 377, in post return self._update_disk_state() File "/opt/rockstor/eggs/Django-1.8.16-py2.7.egg/django/utils/decorators.py", line 145, in inner return func(*args, **kwargs) File "/opt/rockstor/src/rockstor/storageadmin/views/disk.py", line 75, in _update_disk_state disks = scan_disks(settings.MIN_DISK_SIZE) File "/opt/rockstor/src/rockstor/system/osi.py", line 131, in scan_disks base_root_disk = root_disk() File "/opt/rockstor/src/rockstor/system/osi.py", line 908, in root_disk raise NonBTRFSRootException(msg) NonBTRFSRootException: 'root filesystem is not BTRFS. During Rockstor installation, you must select BTRFS instead of LVM and other options for root filesystem. Please re-install Rockstor properly.'

If you get back to me fast enough and this works, then I’ll think about paying for support, but if the product does not even install and run, then it is a useless product.


That error happens when the root filesystem of RockStor is not BTRFS. Did you go through an advanced installation? From the sounds of it, you did and partitioned the drive the drive you installed Rockstor on an carved it up with LVM. I’d suggest doing a reinstall and wiping the drive you installed Rockstor on and allowing Rockstor to format the entire drive as BTRFS.

Hope this helps,


I don’t use LVM, I use EXT2.
I don’t want BTRFS, I use a standard file system.
Why restrict me from using the filesystem that I want on the operating system drive?
The O/S isn’t the important part, the data is.


LVM isn’t a file system, but a volume manager. Ext2 file systems can exist within an LVM volume group.

You will have to use BTRFS for the system drive if you want to use Rockstor.

As to why it’s required for the root filesystem, it’s because Rockstor treats all filesystems as pools. Even the root filesystem. You can carve shares out of that pool for use with Rock-Ons for example.

I know LVM is a volume manager, I was merely stating that I don’t use it, and that I use EXT2.
So can you explain to me why BTRFS is better than EXT2?
And why do you want to control my hardware and what filesystem I use?
Why don’t you just have BTRFS as a recommended instead of a forced?

From your description of your system it was said that BTRFS was the filesystem for the NAS, not the OS.
If you aren’t having it for the NAS, then your description of your product is wrong and false advertising.

If I have to change it myself, then I will, but I would rather you change it to be a recommended and something to say that the person understands and proceeds at their own risk.

That is all you have to do. Not try to fully control the person system when it isn’t needed.

Hope to hear from you sometime.

Rockstor is a Linux and BTRFS powered storage operating system with advanced NAS and Cloud Storage features.

Source: http://rockstor.com/features.html

Build and manage your own Linux & BTRFS powered advanced NAS and Cloud storage with ease.>

Source: http://rockstor.com/

If you are an advanced user, you can go with a custom partitioning scheme. However, note that Rockstor only supports BTRFS for its root filesystem.

Source: http://rockstor.com/docs/quickstart.html#minimum-system-requirements

How is any of that false advertising or misleading?

As to why it is a requirement, @suman or @phillxnet would probably be able to answer that.

Rockstor is a Linux and BTRFS powered storage operating system with advanced NAS and Cloud Storage features.

Meaning that the storage engine is for NAS is powered by BTRFS.

Build and manage your own Linux & BTRFS powered advanced NAS and Cloud storage with ease.

In my reading, that means that the storage is BTRFS, not the OS which is not storage.

If you are an advanced user, you can go with a custom partitioning scheme. However, note that Rockstor only supports BTRFS for its root filesystem.

SUPPORT and REQUIRE are 2 completely different things.

Well I would like to know from them then please, If BTRFS is not going to do what it says it will do, then I can use it, but if it works the way it says it does, then I can’t use it on the drive that will hold the O/S.

From my reading, BTRFS was used for the NAS, not the O/S that runs the NAS.

I AM NOT A ROCKSTOR DEVELOPER, just an avid user. These opinions are my own, and do not reflect the community as a whole.

Short and simple - Rockstor requires all disks managed by Rockstor (OS disk included!) to be BTRFS.

If this isn’t what you want, then Rockstor may not be for you.

I do wonder why you’re so heavily against using BTRFS for the root OS.
I understand that some people have misgivings about BTRFS (Primarily due to the RAID5/6 instability, and the non-backwards compatible changes made early in the development cycle), however in this day and age, it is inherently stable for anything but RAID5/6 installations.

As a side not, I also fail to understand why in the absence of using BTRFS you would choose EXT2 instead of other far more capable filesystems (EXT3/4, XFS)

How is BTRFS better than EXT2 then?
They are both just holding an operating system, nothing more.
Doesn’t need anything fancy since it’s read only and only write when updates.

Is there an impact on speed for BTRFS?

I did not state this, you’re taking statements out of context for the sake of argument, however, to name a few things…

  • Replication
  • Snapshots
  • Grow/Shrink/Add or remove disks without hassle
  • Larger maximum filesizes
  • Better space efficiency for small (stored straight into metadata, removing the need for a whole extent)
  • Reflinks - Better solution than hardlinks
  • Subvolumes for slicing up your disk without space constraints
  • Built in compression / encryption
  • Incremental backup capability without additional software

BTRFS is slower on some operations, faster on others - that said, I really doubt you’ll be maxing the IO throughput of your FS on your boot drive, so this is a moot argument.

When this is all said and done though, the simple fact of the matter, is that whether you understood it from the documentation or not, the root filesystem must be btrfs for Rockstor to function correctly.

If you ignore the warnings, you may be able to get some limited functionality for it, however the developers (and likely the forum members) will be unlikely to help you solve issues when deliberately ignoring the correct installation procedure.

I won’t argue this further - My recommendation - either use Rockstor with it’s recommended, or don’t use it.
There are plenty of alternatives for those not wanting the capabilities of BTRFS, whereas Rockstor is build with only BTRFS in mind.

I was merely asking why BTRFS is better than EXT, that is all.
I was not stating that that is what you are stating, but it was because there has to be a reason that BTRFS is REQUIRED so that it will work.
So with BTRFS that means I’m being forced to use an HDD instead of an SSD?
I do not know therefore I am asking. I’m not argueing anything I’m just trying to understand what the documentation does not say. If the documentation stated it all then it would be there and I would not be asking.

I use EXT2 on SSDs. This is doe to the fact that there is no journaling thus excess overhead from it and so it extends the life of the SSD due to less writes.
My whole premise is based around not shortenning the life of an SSD for no reason at all other than to have a filesystem on there that is not actually needed.

Thus I’m trying to understand why it is REQUIRED to have BTRFS on there for the operating system which in all scenarios has no need to have replication or snapshots or alter it’s size or have a large filesystem, it isn’t small nor needing things stored into “metadata”, (because it should all be stored on the disk anyway), reflinks I have no idea about as I normally use softlinks and hardlinks because I control the system and nothing can change in that regard. Subvolumes aren’t needed because the disk for the OS is already the way it is and uses that drive so it can’t grow or need to be shrunken.
It doesn’t need compression as it is the operating system, and all it needs to handle are the logs. Incrimental backups, all it needs to backup is the configuration files.

So as far as I can see, the only real reason for having BTRFS on the main drive is RefLinks. I will have to investigate those to see why Reflinks on the OS drive are so important.

(This is all just my personal opinion as a guy that has been using Unix based systems for many years and never been FORCED to have something that is NOT needed there that creates overhead on the system that just isn’t needed.

BTRFS for the data drives, that I can completely 100% agree with and understand. Because data is important. But the OS doesn’t need to have all that stuff done to it all the time. There is simply no need for it as a NAS server.

It depends on the usage. It isn’t necessarily better, it’s different.
That said, as stated previously, there are many things BTRFS is better at, whether you use those features is up to you.

Because that’s the way the Rockstor software has been designed. It only understands how to manage BTRFS disks. Not using BTRFS breaks it’s way of handling things. You can probably coax some functionality out of it, but why bother for something that works well anyway?

I don’t understand why you would think this. My primary is a 2.5" SATA SSD, working fine since install, ~1.5 years ago.

You’re correct in that EXT2 has no journalling, and this does potentially reduce the life of an SSD a bit. I think you’d have trouble measuring the lifespan difference though, especially as (by your statement) it shouldn’t be written to very much anyway, meaning the journal will also remain largely untouched.

It is needed, because the software has been designed around it.

The short answer here is that it’s a shorter development cycle to only support limited configurations.

Allowing for filesystems other than BTRFS means writing interface and management code for different sets of tools, and modularizing the disk management system to allow for it.

This means longer between releases, more things that can break and more code overhead to manage for a very small team of developers.

Speak for yourself. I have my Rockon root on the system drive, and would be quite upset if I couldn’t snapshot it.
I’m also using BTRFS replication to mirror the system disk offsite in case something blows up.

Metadata is on the disk as well, but storage of small files inside the metadata is more space and seek efficient than storing on the filesystem itself. This can keep things very speedy for groups of small files (such as the contents of “/run”

The advantage here is that to store a file, you need to allocate a whole filesystem block (or BTRFS extent) for it. If that block is larger than the file you’ve stuck in it, you have a chunk of wasted space.

If your EXT2 block is 4K and you have a large amount of 512 byte files, you’re using 8x the amount of space required for your files.

BTRFS can store these in the smaller metadata blocks, meaning less space wastage. The internal btree algo can also pack multiple small files into a single metadata block, further saving space.

Actually, BTRFS can grow/shrink a filesystem in use by the OS, as well as add/remove disks.
This is fantastic if your limited lifespan SSD starts showing signs of failure, you can add a new disk to the pool as a RAID1, pull the other disk out, and perform a btrfs device delete missing

And databases, updates, system state management files, FIFO sockets…

This is a very opinionated statement from a very narrow point of view.

There are many reasons (some of which I’ve already outlined for you) that BTRFS can be useful on the primary disk. Again, whether you use them or not is your own choice, but that doesn’t make them not valid reasons.

Also, a perfectly good reason for having BTRFS on the main drive is because that’s how the software is designed. When you’re building the software yourself, you can make all sorts of design decisions, like the Rockstor team has.

Reflinks are a fantastic idea. I look forward to the day Rockstor and other software starts using them efficiently.

These allow you to copy an existing file as a reflink to the original. The copy can be modified without altering the original (such as what you get with soft/hard links), and instead of two whole copies of the file, the only space used is the space required to store the changes.

It’s based on the same concept (CoW) BTRFS uses for it’s snapshots.

[EDIT] Deleted some argumentative crap, didn’t need to be there.