Manjaro-architect, testers wanted

manjaro-architect
zfs

#1

I’m getting ready to release the new version of manjaro-architect, and some testing is needed. I uploaded manjaro-architect-dev for testing in unstable repos.

Some changes:

  • Ukrainian translation
  • zfs support
  • zstd compression for btrfs
  • Startup performance
  • Bugfixes for lvm
  • silent grub (disable fsck hook for grub)
  • Added git to dependencies to prevent issues on live isos

Coming changes, not implemented in the first testing release:

  • support for microcode in refind and systemd-boot

Please post any new bugs you find!

@dalto @sueridgepipe @oberon


Installing Manjaro into an existing ZFS pool
#2

I might have a look at it


#3

Will architect remove fsck from hook even if installation is not done on btrfs root (which I assume will be the majority of installations)? And will systemd-fsck-silent be installed? For btrfs installs too?


#4

As already said in PM, I’m available.
Will test btrfs+zstd - I assume you’ve got a fixed GRUB then?

Suggestion: use systemd hooks in /etc/mkinitcpio.conf.


#5

ZFS support is dependent on having an ISO with the appropriate modules. Namely, you need to add linux*-zpl and linux*-zfs.

This requires a custom ISO most of the time.


#6

No, zstd currently requires separate /boot. I will make it the default option once grub supports it.

That is a good idea, but

  • it requires rewriting encryption parts, which is time consuming
  • I’d rather do it once the rest of distro moves to it. Currently the main functionality of m-a is to faithfully reproduce manjaro editions, so I can’t deviate too far from calamares

If grub is chosen, yes. I would keep fsck for bootloaders for now.

It should be enabled in iso-profiles, but yes.


#7

Good idea, thanks. Maybe I’ll try with a patched GRUB for /.

I will also try to see whether it’s possible to use btrfs RAID for non-root partitions. It should work if partitions are set up prior to installation.


#8

Just to say, you do not have a easy job trying to accommodate various filesystems, bootloaders to handle ucode and this silent-grub to make all work well in architect.

I was thinking that for specialized situations, for example for btrfs installs, a wiki to guide users after installation will be reasonable. like removing fsck from hooks line, clearing safedefault in grub…torvic can write it out very nicely, if he volunteers.

I agree with tovic’s suggestion to use systemd hook. We can remove udev and resume from it.

@torvic, I understand fsck “btrfs check --repair” is now quite safe for versions 4.0 and later. Is that true?

Good luck everybody.


#9

It’s still marked as dangerous in the manpage and on Btrfs wiki, but I don’t know whether they are 100% up to date.
I think it’a last resort option:

btrfs check --repair, aka btrfsck is your last option if the ones above have not worked


#10

Thanks. I had a btrfs OS a while back and I keep hearing horror stories (broken, lost data…) about it. I ‘btrfsck’ all the time to test but I have nothing that’s broken. I removed that OS because I do not like the idea of separate /boot (no longer necessary).

I now have a btrfs (and f2fs) but to test out ‘silent-grub’ {not that I need btrfs and f2fs, but I need 3 OS’s to test, so why not} but I intend to remove them anyway.

Thought I share with you. Cheers.


#11

m-a does these things for you already. Comments out SAVE_DEFAULT for various “sparse” filesystems including btrfs, remove fsck HOOKS when appropriate.

btrfs permanent data corruption is still a real problem. Anyone who uses btrfs absolutely needs a non-btrfs backup/recovery strategy if the data isn’t replaceable. On the other hand, I think everyone should have a offline recovery/backup regardless of the filesystem.


#12

Another suggestion:

ext4 supports transparent file-based encryption since kernel 4.1.
It’s not enabled by default, has to be enabled explicitly with tune2fs -O encrypt /dev/sdX.

Problem: it only works if ext4 block size is equal to system page size.
So it would need a check function in architect.
For block size:
# tune2fs -l /dev/sda4 | awk -F: '{if ($1 == "Block size") print $2}' | tail -c5

For page size:
getconf PAGESIZE

I used m-a only today, and no, it doesn’t comment out save_default when using btrfs. But it’s the “stable” version I have used.


#13

If btrfs is root it should definitely do it. I copied the brtfs SAVE_DEFAULT code when I was implementing zfs support.

I will take a look at it if Chrysostomus doesn’t get to it first.

EDIT: @torvic, were you using an existing btrfs filesystem or did you create the subvols outside of m-a?


#14

No, I created the partitions before launching m-a, but the formatting and subvols were done inside m-a.


#15

A bug discovered! Commenting out that option has been a feature for some two years now.

Thank you for noticing :slightly_smiling_face:
All of your help and ideas are much appreciated!


#16

I took a quick look at it, there is at least one issue I see so far with the way that tmp file is being set. Do you want me to fix it and submit a MR, or are you already working on it?


#17

I’m currently keeping three small persons busy, so if you can do it, it is much appreciated


#18

This should be done. I did some basic testing and it seems to resolve the issue.


#19

Merged


#20

I’m super new to Manjaro (and Arch too), but I’ve deployed a few Linux Mint systems to ZFS root.
How can I test this?

I don’t know how could I build a custom ISO with the appropriate modules.
Couldn’t I boot the ISO from a USB, install needed modules, modproble them and proceed like that?

I’d be happy to test this, as I want to install Manjaro in a ZFS-root dual-boot with my current Linux Mint 18.3 system - but I’d need some more guidance.