Cant see nvme0n1 during installer

_spOOn

Member
Joined
Feb 23, 2015
Messages
52
Reaction score
0
Hi guys,

I’ve just got a new PC, which has come with the m2 ssd on board.

I can see this disk from the live installer environment, but it is not a selectable option during the linstaller process.

Am wondering if it’s just not set to expose /dev/nvme* devices…

Screenshot of fdisk and linstaller attached.

Cheers,
 
Last edited:

Dragan

Well-known member
Staff member
Joined
Jan 13, 2012
Messages
6,371
Reaction score
65
_spOOn_:
Am wondering if it’s just not set to expose /dev/nvme* devices…
Tnx for reporting this…I will try to solve the problem and I’ll report the result here.
 
Last edited:

Commander

Well-known member
Staff member
Joined
Jan 13, 2012
Messages
9,235
Reaction score
530
Perhaps the problem is to trim enable (for ssd’s) somewhere in kernel loading ?

Unfortunately I do not have any ssd to reproduce the problem…
 
Last edited:

_spOOn

Member
Joined
Feb 23, 2015
Messages
52
Reaction score
0
Vladimir:
Perhaps the problem is to trim enable (for ssd’s) somewhere in kernel loading ?

Unfortunately I do not have any ssd to reproduce the problem…
Hmm, given I can see the disk, partition it using fdisk, and format it (all from outside the installer) I’m not sure that its anything to do with TRIM or the kernel.

Is there any way to run linstaller in some sort of debug mode, or is strace my best bet?

Or, is there a way to complete the install without using linstaller (ie, can I dd an image over my ssd or something similar?)

Keen to get this working so I can get out of the live environment 🙂
 
Last edited:

_spOOn

Member
Joined
Feb 23, 2015
Messages
52
Reaction score
0
So, I’m about 99% sure my problem is in /usr/share/linstaller/linstaller/core/libmodules/partdisks/library.py

It seems from:

84 def is_disk(dsk):
85 “”" Checks if dsk is a disk. Returns True if so.
86
87 It does perform checks only on the string passed, so it may not
88 be accurate. “”"
89
90 if not dsk[-1] in ("-",“1”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”,“0”):
91 # Is a disk
92 return True
93 else:
94 return False

That it’s looking in /proc/partitions for disks with a device name excluding devices with numbers (as these are normally partitions).

In my case, the device is nvme0n1 (and partitions then become nvme0n1p1 etc), and I suspect this is why the disk is not showing up during the install.

Python really isn’t my native tongue 🙂 so I’ll see if I can come up with a dirty hack to get around this, but I’d love any python gurus out there to weigh in 🙂

Cheers,
 
Last edited:

_spOOn

Member
Joined
Feb 23, 2015
Messages
52
Reaction score
0
OK, so removing “1” from line 90 allows the disk to be detected, but once I create the first partition (which results in a nvme0n1p1), the installer mounts this partition, and we’re unable to progress.

So, I guess I need to find a way to exclude devices including numbers, except for nvme0n* devices…
 
Last edited:

Dragan

Well-known member
Staff member
Joined
Jan 13, 2012
Messages
6,371
Reaction score
65
DISCLAIMER:
This procedure is highly experimental and risky! disconnect all of your hard disks witch contain maybe important data, except SSD!
  1. Boot live TRIOS
  2. Open as root /etc/apt/sources.list.d/trios.list, add test component at the end of each deb line, and save list
  3. apt update && apt purge linstaller-* && apt install live-installer-3
  4. open Menu/system/Install (operating system) and start new installer
View attachment 4165

View attachment 4166

View attachment 4167

View attachment 4169

Only manual partitioning is enabled…there are more steps after installation, in next post.
 
Last edited:

Dragan

Well-known member
Staff member
Joined
Jan 13, 2012
Messages
6,371
Reaction score
65
Last edited:

_spOOn

Member
Joined
Feb 23, 2015
Messages
52
Reaction score
0
Hi Dragan,

Thanks for that.

Have followed the instructions above, but it appears the install of live-installer-3 didn’t deploy menu entries.

After running manually from a terminal, installer seems to see the disk OK, but I don’t seem to be able to create an encrypted VG (probably just need to work out how to do it in the new installer).

I’ll have a bit more of a play today, and report back.

I take it from this that linstaller is being deprecated?

Makes sense seeing that it appears to no longer be under development…

FYI, if people want to test with ssd in virtualbox, as of virtualbox 5.1, you can add an nvme controller, but it requires the virtualbox extension pack.

Finally, I’ve got a dodgy hack that allows me to install Trios via linstaller with the nvme controller (see comments 5 and 6 above for the python library that needs editing), but as I said, python is not my native tongue, so I won’t paste the workaround here as I’m sure you guys will come up with something far tidier.
 
Last edited:

Dragan

Well-known member
Staff member
Joined
Jan 13, 2012
Messages
6,371
Reaction score
65
_spOOn_:
I take it from this that linstaller is being deprecated?
Not for now…it seems that every installer have some drawbacks, and need comprehensive testing.
This is only ugly hack to enable installation to SSD 🙂
Anyway, next TRIOS release, Kata (testing) will almost certainly come with Calamares instaler.
 
Last edited:

_spOOn

Member
Joined
Feb 23, 2015
Messages
52
Reaction score
0
For those that are interested, my “dirty hack” consisted of:

Update /usr/share/linstaller/linstaller/core/libmodules/partdisks/library.py and change this:

90 if not dsk[-1] in ("-",“1”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”,“0”):
91 # Is a disk
92 return True

To :

90 if dsk == ‘nvme0n1’:
91 return True
92 elif not dsk[-1] in ("-",“1”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”,“0”):
93 # Is a disk

Again, this is a very dirty hack, and a python dev could do a lot better, but this got me up and running 🙂

Thanks again for the help guys.

Cheers,
 
Last edited:
Top