Problem/Justification
Users need a GUI supported way to import a ZFS pool as “read-only”. This is needed for data verification, external backup checks, emergencies, and other reasons. (It can also be combined with the other feature request, which I did not write yet, to rewind a pool to a checkpoint in a read-only state.)
Impact
Without relying on the command-line or confusing the middleware and other services, a TrueNAS user can import a pool in read-only state. TrueNAS can then mount the datasets as “read-only”, which implies any SMB shares will be in a read-only access.
Users can verify stored files on datasets and snapshots, do emergency file retrieval, or confirm that their cold-storage backups are in working order, without putting the pool into a writable state. These verification can be done in the command-line or over SMB (without write access).
User Story
Browse through the forums. There are many instances where a user needs to (or is told to) import the pool as read-only. They must drop into the command-line via SSH, and might forget to include the -R /mnt parameter. It could possibly even confuse the middleware and other services.
A first-class “import read-only” feature would work with the middleware and do extra checks in the background.
I like this idea as the forum has been dealing with a lot of ZFS issues in recent past. I also like the “Rewind a Pool” idea. I have no idea how it works, mainly because I have not paid attention to it, but it is a recovery tool.
And now I have 4 votes left.
There have been 10 Feature Requests Approved out of 145 requests.
I think it is time to set everyone back to +10 votes otherwise the people who work these forums the most will not be able to vote for something that could be really good.
If that one is written, I’d definitely want to see it proposed exclusively as a read-only option through the webUI. Rewinding a pool using any of the special -FXT parameters inherently involves some lost data (whatever was in the newer transactions) so requiring it to be a very deliberate action (such as providing the command to be entered into a shell) makes sense.
Great news! This feature request has been transferred to our internal roadmap for detailed scoping and assessment.
What this means:
Our product and technical documentation team will now evaluate technical feasibility, resource requirements
This request is now closed for voting, and your votes have been released back to use on other requests
Please note that transfer to the roadmap doesn’t guarantee implementation - some features may not proceed based on our assessment findings, however we will update this thread once a decision has been made.
Thank you to everyone who voted and contributed to the discussion. Your input has been invaluable in helping us understand the community’s needs and use cases for this feature.