Systemback recognising nvme0n1 ssd

Bug #1649056 reported by John
This bug affects 1 person
Affects Status Importance Assigned to Milestone

Bug Description

I have built a systemback image 3-4 times now on Ubuntu 16.04LTS and after creating a LiveUSB, when I boot to the drive (either direct to install or use first and then attempt install), systemback does not recognise the M.2 SSD (nvme0n1) to install.

I have attempted to boot the system in Legacy and UEFI modes with no difference. I have also repartitioned the drive and formatted to NTFS, ext4 and exFAT with the drive still not being detected.

Any suggestions?

Revision history for this message
Kendek (nemh) wrote :

Currently the Systemback does not support the M.2 SSDs. This is not a bug, but a missing feature.
Please note that, at the moment the Systemback development is suspended.

Revision history for this message
Thomas Weissel (xapient) wrote :

Hello Kendek, i'm sorry to hear that you suspended the development of this great tool. I strongly depend on it for my project "life" (linux for education) and i ran into the same problem as the topic starter..

could you probably give me a tip what the problem with systemback and these devices actually is? the system finds it and it is listed under /dev/disks/by-uuid for example.. so why does systemback not find it.. where is the problem? can i fix it ?

and more important: will you continue to work on systemback so its usable on ubuntu 18.04 ? this would be very much appreciated.

if i could help somehow - let me know

Revision history for this message
Thomas Weissel (xapient) wrote :

i'm currently working on your code.. i cloned the repository and started reading the source files.

i'm almost certain that "libsystemback/sblib.cpp" is the correct file.

you hardcoded the devicenames so i extended the list in order to cover "_/dev/nvme*" devices too.
systemback is now seeing the nvme device and listing it in the UI.

sb:gdetect() needs to be altered too - since you use some sort of string manipulation in order to get the right device i used the same technique you used for "mmcblk" - now i can also delete partitions on the device..

unfortunately i'm stuck now.. creating a new partition does not work.. it just refreshes the UI without an error message. it's probably because i cut of the wrong amount of letters..

this is the first time ever i'm reading c++ code (python programmer) and i have absolutely no idea what i'm doing so i could really use your help ;-)

thx in advance!

Revision history for this message
Kendek (nemh) wrote :

Yes, the current code is using its hard-coded solution, not a external general library. The big problem is the different character number (naming scheme). This should be handled everywhere, just like the mmcblk.
The Systemback development is stopped, because of my other things. And I do not have any nvme storage. I suggest, search for the "mmc" string in the code (sblib.ccp and systemback.cpp). Check the solution and try to add the nvme.
Device string length (/dev/nvme0):
mmcblk - 12
sdX - 8
nvme - 10
Partition string length (/dev/nvme0n1):
mmcblk - 14
sdX - 9
nvme - 12

Revision history for this message
Julian (lytex) wrote :

I found a fix for this problem:

1. Enter live mode
2. Unmount all partitions on media with umount /media/*
3. Make a ext4 partition named SB@ with label also SB@. Set the boot flag of that partition with GParted, for example.
4. Recreate the structure of the disk using hard links with a device name that systemback recognizes, as /dev/sdd. I have /dev/nvme0n1 as the actual disk and 7 partitions nvme0n1p1, nvme0n1p2, ... so the commands are:
ln /dev/nvme0n1 /dev/sdd; for((i=1;i<=7;i++)) do ln /dev/nvme0n1p$i /dev/sdd$i; done
5. Then run systemback. You should be able to select the new ext4 partition to install the system.

Step 3 may not be needed, but Systemback didn't see the free space on the disk so I made the SB@ partition

Revision history for this message
Kendek (nemh) wrote :

You mean, you found a workaround. But very clever! :-)

Revision history for this message
korakios (korakios667) wrote :

I tried the workaround on a virtual machine and it works :)
There is a catch though , Systemback can't format the linked partitions ,so make sure that they are preformatted (if needed).
I don't know if it messes with the boot partition. Will test it soon on real hardware.
Thanks Julian (and all SystemBack folks !)

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.