Store logs on System Dataset

SCALE removed the ability to store logs within the System Dataset. (Core retains this option, if the user so chooses.)

Can the option (even if it’s hidden as “advanced”) be brought back to SCALE?

There’s two main reasons for this:

  1. It’s possible to encrypt the System Dataset (.system) if it’s nested under an encrypted root dataset. Depending on your logs, they can contain identifiable or sensitive information.
  2. For those who install the OS to a USB, moving the System Dataset and logs to a dedicated SSD pool alleviates the biggest hurdle for USB installations.[1] (The bonus is you can create usable datasets on this dedicated SSD pool, leaving the USB for the OS only. Less of a waste.)

I understand the decision in SCALE as the “default”, but to entirely remove the option to change this?


  1. My boot-pool is extremely quiet on Core. It sees almost no I/O whatsoever. The System Dataset, logs, and swap exist on a dedicated SSD-only pool, which also houses other datasets, such as for temporary storage, incoming torrents, and staging data. ↩︎

2 Likes

Although this is not going to make any difference for me for my own TN SCALE system, I do agree with @winnielinnie on this.

1 Like

The full text in release notes was:

  • As part of the system reporting and debug improvements, system logs now exclusively write to the TrueNAS boot device.

For the reasons you mentioned, it was probably preferable to allow choice, but it also created problems.

We can review, but I doubt it will be easy.

This would make TrueNAS much more eMMC-friendly.
If the System Dataset pool is configured to use a data pool pool00 (as opposed to boot-pool),
I see that the Netdata storage is on the data pool:
$ grep netdata /proc/mounts pool00/.system/netdata-ae32... /var/db/system/netdata zfs rw,noatime,xattr,noacl,casesensitive 0 0
Can the same be done for journald logs?
I know various things in /var/log may need to be written during the early boot process, but I think for journald specifically (/var/log/journal) it should work with a systemd mount unit that has Before=systemd-journald.service and WantedBy=local-fs.target ?

Since this is an old thread. I am removing the Feature Requests tag and editing the title. If you want to create a new Feature Request, you can do so in that category and it will allow voting.

I don’t think this issue will change since this was an intentional design change and the thread discussion was from 2024.