Subvolume layout for snapper

Good morning,

I would like to know if standard layout after fresh manjaro install with BTRFS is ok for Snapper.

I want remove timeshift and install btrfs-assistant & co.

Thanks since now

btrfs-assitannt is an excellent tool - I’d recommend you keep timeshift installed due to the default snapshot done before pacman is run.

yes but btrfs-assistant is more versatile than timeshift

For pacman there’s also snap-pac that make it’s work.

Unfortunately I don’t find nowhere information about subvolume and manjaro, I don’t find any new information on this matter, only tutorial from two years ago made with Manjaro Architect, but also this has gone to good life…

1 Like

Timeshift is a snapshot application originally created for use with ext4 - btrfs-assistant can do specific filesystem maintenance which was never the intention of Timeshift.

The default btrfs layout created by the installer works fine - what should make snapper choke on it?

nvme0n1     259:0    0 476,9G  0 disk 
├─nvme0n1p1 259:1    0   300M  0 part /boot/efi
├─nvme0n1p2 259:2    0 467,8G  0 part /var/log
│                                     /var/cache
│                                     /home
│                                     /
└─nvme0n1p3 259:3    0   8,8G  0 part [SWAP]

So should be fine?

I am a novice with btrfs.

I don’t see why one layout should be better than another. Unless you want to fine tune the filesystem a lot - I see the Manjaro default as a reasonable middle ground.

Test it and draw your conclusions from your test.

Everyone has their own way of doing things.

If i remember right. snapper is from suse :wink:

I do use btrfs and snapper with my own layout.

  1. I made subvolumes
  • @
  • @snapshots
  • @home
  • @home.snapshots
  1. I made a config file for every subvolume in /etc/snapper/configs/
  • root
    containing all lines from the example including:
# subvolume to snapshot
SUBVOLUME="/"
  • home
    with change to subvolume:
# subvolume to snapshot
SUBVOLUME="/home"
  1. I extended fstab
PARTUUID=3ee1dfe1-19af-4102-945d-90d957d3c199	/			btrfs	rw,noatime,compress=zstd:9,commit=300,subvol=@			0 0
PARTUUID=3ee1dfe1-19af-4102-945d-90d957d3c199	/.snapshots		btrfs	rw,noatime,compress=zstd:9,commit=300,subvol=@snapshots		0 0
PARTUUID=3ee1dfe1-19af-4102-945d-90d957d3c199	/home			btrfs	rw,noatime,compress=zstd:9,commit=300,subvol=@home		0 0
PARTUUID=3ee1dfe1-19af-4102-945d-90d957d3c199	/home/.snapshots	btrfs	rw,noatime,compress=zstd:9,commit=300,subvol=@home.snapshots	0 0
PARTUUID=3ee1dfe1-19af-4102-945d-90d957d3c199	/var/nosnap		btrfs	rw,noatime,compress=zstd:9,commit=300,subvol=@nosnap		0 0
  1. I aktivated the configs in /etc/conf.d/snapper
## Path: System/Snapper

## Type:        string
## Default:     ""
# List of snapper configurations.
SNAPPER_CONFIGS="root home"

I do use snapper & snap-pac :smiling_face_with_three_hearts:

By default snapper will create a nested layout (which i do not like, because it is not as easy to manage manualy as a flat layout)

You can find good Information about Btrfs in the wiki