Volker has stepped in to clarify some of the confusion within the FreeNAS / NAS community with regards to the future of FreeNAS.
Most of the questions are related to:
- Will CoreNAS be the end of FreeNAS developement
- What to do with data on a FreeNAS server, when updating to CoreNAS. FreeBSD ‘upgrade’ to Linux is impossible
- Will the project be called CoreNAS (to indicate a moving away from FreeBSD) or will the next version be called FreeNAS 0.8
This is Volker’s clarification:
Since long time many users want to see more and more features in FreeNAS. But this is not possible as it is designed at the moment. The intention of FreeNAS was to be smart and simple. Because the roots of FreeNAS is m0n0 the complete design is to be compact. But for a NAS and all it’s features we come to a situation that the complete core of FreeNAs is not able to meet that requirements anymore. It is really a pain to add new features and i’m not willing anymore to deny every request. It is hard to tell someone that it is not possible to add these or those features because of technical reasons if you do not have an overview of how FreeNAS works internally.
Some months ago i started to upgrade FreeNAS to FBSD8.0. I also thought about how to remove all these limitations of the previous versions to make it more enhanceable. The more i thought about it the more i came to the conclusion that it will be necessary to reimplement everything to get rid of these limitations.
The first is there will be no difference between ’embedded’ and ‘full’ anymore. This is one of the reason why FreeNAS is so complex. Every script needs to ensure that the requirements are fullfilled to run without problems. Also the complete build scripts need to reimplemented because i do not want to go the same way as in the current versions. Right at the moment only the required files (binaries and libs) are copied. This is another reason why the maintenance and implementation of new features is hard to do.
To make it short, i was not willing to reinvent the wheel to get a simple build environment. TinyBSD and all the other build envs for FreeBSD does not meet the requirements needed.
Debian LiveHelper was to solution i was searching for. Also the complete Debian infrastructure seems to reduce the work to get a new FreeNAS to a minimum. The FreeBSD ports system is great, but i do not want to waste my time by fixing build problems, i only want to install and use software. Implemenmting the services and WebGUI is time consuming enough.
My decision to use Linux for the next version was because there are too much bugs in the core FreeBSD system. Simply have a look into the bug tracker. FreeNAS does not run on many systems, mainly new hardware makes trouble. The main reason is the driver problem with FreeBSD which seems to be no problem with Linux because there are great companies in the back that support it. Also the Linux developer community is much greater than the FBSD one.
Finally i have to say that the decision was not easy, but if you have to reimplement something from the beginning (and THIS IS NECESSARY to get rid of all the limitations), then you also use the latest technology that is available at the moment. And at the moment this is Debian/Linux (better driver support/maintenance/package system/docs/FUTURE-PROOF). The only limitation is the missing of ZFS, but i think there will be some equal filesystem available in Linux soon.
The main aim of the next generation is to make it as much as possible enhanceable. This does not mean that FreeNAS will include anything out-of-the-box (i plan to reimplement all the services that are available right at the moment), but it can be enhanced easily by the user via interfaces and scripts that can be copied to the system.