Snapper + ext4 filesystem?

Hi, I’ve just installed OpenSuse Leap 15.4 for the first time and I was trying to use Snapper to create some snapshots. During the installation however I chose the EXT4 file system, and from what I can see in the Snapper tutorial as well as the man pages, EXT4 seems to be discouraged… Had I know this earlier I would’ve installed it with BTRFS but I’ve always used EXT4 and had no problems with it, so I figured why change if it still works.

Is there any way to get snapshots on EXT4 using Snapper? If not, can you recommend an alternative to it? I’ve never used anything like Timeshift so I’m really not sure what options are best for my case.

Thanks!

From man snapper:

Supported filesystems are btrfs and ext4 (discontinued) as well as snapshots of LVM logical volumes with thin-provisioning. Some filesystems might not be supported depending on your installation.

No. Snapper support needed custom ext4 patches that were never upstreamed.

Well, the only one that comes close is LVM. Everything else lacks atomic creation. But for LVM you need to reinstall anyway and, in this case, why not use default btrfs?

I just never had any issues with ext4 so didn’t have a good reason to change it. Until now? :slight_smile:

But I really don’t want to re-install everything right now. I don’t know how LVM works, but I’ve heard of Timeshift. Do you think that’ll work with ext4?

Thank you both,

Why not? It just copies data around.

1 Like

Thanks! I’ll look into it for now then.

Out of curiosity, would it be possible to create a new partition on my hard drive with btrfs to store snapshots? Or is it the file system where my files are (and I want to make snapshots of) that needs to be running on btrfs?

Maybe you should explain what you want, what you want to achieve. Just mentioning all sorts of products that can be (mis)used with different goals does not help other people to give sound advice on what to use and how.

That’s actually a great observation, and the truth is that I’m not entirely sure. How to make proper backups and snapshots is something that I only recently started to care about. For now, my goal is to have a way to restore my system if I accidentally delete a file or something like that.

I do keep backups on a external hard drive, and by backups I mean that I literally copy the files from my PC to the hard drive, so it’s very much a manual process. So I’m not worried about losing data, really, I just want to learn and know more about how to use Linux more efficiently.

As I read this, you are more after backups then after snapshots (it is NOT the same).

For backups there are many tools. GUI ones are often based in CLI one like rsync.

Basically you should first find out what disaster you want be able to recover from. E.g. to be able to recover from a burnt down house, including the system, the backup systems and the off-line stored backup disks/memory sticks, requires much more then being able to restore a file that is removed/altered from it’s last week existence.

Most people stick to being able to recover individual files, including recovering all user files. And do a fresh install of the system, with restore of user file in the worst case (system mass-storage broken).

Some use so called “cloning” to copy all of the system in one big blurp. But that takes a lot of space when you want to have more then one (to be able to go back in time) and has other disadvantages.

Important in all cases is to test the recovery! When you never tested if it can be done, most likely you will fail when it comes to a real disaster.

1 Like

I think I will look into rsync first then, make sure I can easily copy my files to an external hard drive. I found this article and looks quite good as an introduction:

One comment though on the first sentence I read from the quote.

rsync does work between systems, but also inside one system. Meaning that you can store your copies on another system (same house or elsewhere), but also on e.g. a removable mass-storage device connected to the same system during backup.

Yes, possibilities are endless :wink:

Personally , I use rsync to an in house system. I have 10 instances of backup, where files are hard-linked between instances when the same. Which mean that I can recover files from 10 cycles (in my case: weeks) back in time (you really broke a file five weeks ago and only now see that). And at the same time, all files that stayed the same during those 10 weeks are only once stored.

It is based on www.rsnapshot.org

1 Like

You missed the power of btrfs. One partition suffices:

erlangen:~ # fdisk -l /dev/nvme0n1
Disk /dev/nvme0n1: 1.82 TiB, 2000398934016 bytes, 3907029168 sectors
Disk model: Samsung SSD 970 EVO Plus 2TB            
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: F5B232D0-7A67-461D-8E7D-B86A5B4C6C10

Device              Start        End    Sectors  Size Type
/dev/nvme0n1p1       2048    1050623    1048576  512M EFI System
/dev/nvme0n1p2    1050624 3804628991 3803578368  1.8T Linux filesystem
erlangen:~ # 

See also System Backup with btrfs send / receive - #3 by karlmistelberger

1 Like

That sounds like a nice setup. At the moment I have everything locally, just an external hard drive, but I’d prefer to have an additional machine elsewhere (maybe VPS?). I will look into rsnapshot as well, thanks!

Definitely, I don’t tend to look into something that I don’t have a need for but I will look into this topic soon. Thanks for the link looks like a discussion packed with useful information.