new type of drive designation
Hey... I just got a new laptop, and I am in the process of setting up opensuse on it. For the moment it has tumbleweed, but I plan to set it up with 15.3. One thing I noticed is that the new hard drive nomenclature, or whatever you should call it, is different from what I am used to in the past. In the past the drives would be /dev/sda, /dev/sdb, etc. In this one, if I plug in a USB stick, the drive letter is /dev/sda. However, the NVMe SDD that I put in it was given the designation /dev/nvme0n1, with each partition being /dev/nvme0n1p1, /dev/nvme0n1p2, etc. This is the first time I have had an NVMe SSD, but when I set up the partitions for the install, I didn't know that it would give it these kinds of letters. I am just curious as to what the reason was behind the decision to change the way drives are designated if they are NVMe, and if any other changes like that have been made? -- George Box: 15.2 | Plasma 5 | AMD Phenom IIX4 | 64 | 32GB Laptop #1: 15.2 | Plasma 5 | AMD FX 7TH GEN | 64 | 32GB Laptop #2: 15.2 | Plasma 5 | Core i5 | 64 | 8GB
On Sat, 21 Aug 2021, George from the tribe wrote:
In the past the drives would be /dev/sda, /dev/sdb, etc.
In this one, if I plug in a USB stick, the drive letter is /dev/sda. However, the NVMe SDD that I put in it was given the designation /dev/nvme0n1, with each partition being /dev/nvme0n1p1, /dev/nvme0n1p2, etc.
When this styling of names appears in network devices, I set net.ifnames=0 in the kernel command line in file /etc/default/grub. But what is the corresponding incantation for these drives? Roger
On 8/21/21 9:36 AM, Roger Price wrote:
When this styling of names appears in network devices, I set net.ifnames=0 in the kernel command line in file /etc/default/grub. But what is the corresponding incantation for these drives?
I am not sure what you mean by "incantation"? I am not familiar with the term in how it applies to a hard drive. -- George Box: 15.2 | Plasma 5 | AMD Phenom IIX4 | 64 | 32GB Laptop #1: 15.2 | Plasma 5 | AMD FX 7TH GEN | 64 | 32GB Laptop #2: 15.2 | Plasma 5 | Core i5 | 64 | 8GB
On Sat, 21 Aug 2021, George from the tribe wrote:
On 8/21/21 9:36 AM, Roger Price wrote:
When this styling of names appears in network devices, I set net.ifnames=0 in the kernel command line in file /etc/default/grub. But what is the corresponding incantation for these drives?
I am not sure what you mean by "incantation"? I am not familiar with the term in how it applies to a hard drive.
My term was unduly obscure. I meant: "Kernel command line option net.ifnames=0 is able to suppress persistent naming of network interfaces. What is the kernel command line option which suppresses persistant names of disks?". Roger
On 8/21/21 12:09 PM, Roger Price wrote:
My term was unduly obscure. I meant: "Kernel command line option net.ifnames=0 is able to suppress persistent naming of network interfaces. What is the kernel command line option which suppresses persistant names of disks?".
The only kernel command line commands I could find in the default grub are as follows: /etc/default> cat grub | grep CMDLINE GRUB_CMDLINE_LINUX_DEFAULT="splash=silent mitigations=auto quiet" GRUB_CMDLINE_LINUX="" GRUB_CMDLINE_XEN_DEFAULT="vga=gfx-1024x768x16" I am not sure if I am looking in the right place, but I don't think there is any option to suppress the persistent naming of disks. Correct me if I am wrong or looking in the wrong place.
Am Sonntag, 22. August 2021, 21:16:02 CEST schrieb George from the tribe:
On 8/21/21 12:09 PM, Roger Price wrote:
My term was unduly obscure. I meant: "Kernel command line option net.ifnames=0 is able to suppress persistent naming of network interfaces. What is the kernel command line option which suppresses persistant names of disks?".
The only kernel command line commands I could find in the default grub are as follows:
/etc/default> cat grub | grep CMDLINE GRUB_CMDLINE_LINUX_DEFAULT="splash=silent mitigations=auto quiet" GRUB_CMDLINE_LINUX="" GRUB_CMDLINE_XEN_DEFAULT="vga=gfx-1024x768x16"
I am not sure if I am looking in the right place
you can see **ALL** kernel parameters that are currently in use by looking at the file /proc/cmdline Cheers MH -- Mathias Homann Mathias.Homann@openSUSE.org Jabber (XMPP): lemmy@tuxonline.tech IRC: [Lemmy] on freenode and ircnet (bouncer active) telegram: https://telegram.me/lemmy98 keybase: https://keybase.io/lemmy gpg key fingerprint: 8029 2240 F4DD 7776 E7D2 C042 6B8E 029E 13F2 C102
On 8/22/21 2:22 PM, Mathias Homann wrote:
you can see **ALL** kernel parameters that are currently in use by looking at the file /proc/cmdline
Ok, thanks :) Here it is: # cat /proc/cmdline BOOT_IMAGE=/boot/vmlinuz-5.13.8-1-default root=UUID=ba22e191-6161-418b-8fa4-9e9736bbaf26 splash=silent mitigations=auto quiet
On 22/08/2021 21.32, George from the tribe wrote:
On 8/22/21 2:22 PM, Mathias Homann wrote:
you can see **ALL** kernel parameters that are currently in use by looking at the file /proc/cmdline
Ok, thanks :)
Here it is:
# cat /proc/cmdline BOOT_IMAGE=/boot/vmlinuz-5.13.8-1-default root=UUID=ba22e191-6161-418b-8fa4-9e9736bbaf26 splash=silent mitigations=auto quiet
And you have all possible options here: /usr/src/linux/Documentation/admin-guide/kernel-parameters.txt However, notice that the phrase "Kernel command line option net.ifnames=0 is able to suppress persistent naming of network interfaces. What is the kernel command line option which suppresses persistant names of disks?" is a philosophical question that very probably has no answer. -- Cheers / Saludos, Carlos E. R. (from 15.2 x86_64 at Telcontar)
On 21/08/2021 16.18, George from the tribe wrote:
Hey...
I just got a new laptop, and I am in the process of setting up opensuse on it. For the moment it has tumbleweed, but I plan to set it up with 15.3.
One thing I noticed is that the new hard drive nomenclature, or whatever you should call it, is different from what I am used to in the past. In the past the drives would be /dev/sda, /dev/sdb, etc.
In this one, if I plug in a USB stick, the drive letter is /dev/sda. However, the NVMe SDD that I put in it was given the designation /dev/nvme0n1, with each partition being /dev/nvme0n1p1, /dev/nvme0n1p2, etc.
This is the first time I have had an NVMe SSD, but when I set up the partitions for the install, I didn't know that it would give it these kinds of letters.
I am just curious as to what the reason was behind the decision to change the way drives are designated if they are NVMe, and if any other changes like that have been made?
It uses a different driver that emulates a hard disk, so different name. -- Cheers / Saludos, Carlos E. R. (from 15.2 x86_64 at Telcontar)
Op zaterdag 21 augustus 2021 16:18:57 CEST schreef George from the tribe:
Hey...
I just got a new laptop, and I am in the process of setting up opensuse on it. For the moment it has tumbleweed, but I plan to set it up with 15.3.
One thing I noticed is that the new hard drive nomenclature, or whatever you should call it, is different from what I am used to in the past. In the past the drives would be /dev/sda, /dev/sdb, etc.
In this one, if I plug in a USB stick, the drive letter is /dev/sda. However, the NVMe SDD that I put in it was given the designation /dev/nvme0n1, with each partition being /dev/nvme0n1p1, /dev/nvme0n1p2, etc.
This is the first time I have had an NVMe SSD, but when I set up the partitions for the install, I didn't know that it would give it these kinds of letters.
I am just curious as to what the reason was behind the decision to change the way drives are designated if they are NVMe, and if any other changes like that have been made? AFAIK it's simply because these NVME SSDs are PCI devices, like for a while we had /dev/hda for an IDE device, /dev/sda for a SATA device.
-- Gertjan Lettink a.k.a. Knurpht openSUSE Board openSUSE Forums Team
On 8/21/21 3:05 PM, Knurpht-openSUSE wrote:
Op zaterdag 21 augustus 2021 16:18:57 CEST schreef George from the tribe:
Hey...
I just got a new laptop, and I am in the process of setting up opensuse on it. For the moment it has tumbleweed, but I plan to set it up with 15.3.
One thing I noticed is that the new hard drive nomenclature, or whatever you should call it, is different from what I am used to in the past. In the past the drives would be /dev/sda, /dev/sdb, etc.
In this one, if I plug in a USB stick, the drive letter is /dev/sda. However, the NVMe SDD that I put in it was given the designation /dev/nvme0n1, with each partition being /dev/nvme0n1p1, /dev/nvme0n1p2, etc.
This is the first time I have had an NVMe SSD, but when I set up the partitions for the install, I didn't know that it would give it these kinds of letters.
I am just curious as to what the reason was behind the decision to change the way drives are designated if they are NVMe, and if any other changes like that have been made? AFAIK it's simply because these NVME SSDs are PCI devices, like for a while we had /dev/hda for an IDE device, /dev/sda for a SATA device. This notation is clumsy. Someone should find a better notation--how about /dev/sfa where the f stands for "flat"? Or something similar. --doug
On 2021-08-21 1:27 p.m., Douglas McGarrett wrote:
On 8/21/21 3:05 PM, Knurpht-openSUSE wrote:
I am just curious as to what the reason was behind the decision to change the way drives are designated if they are NVMe, and if any other changes like that have been made?
AFAIK it's simply because these NVME SSDs are PCI devices, like for a while we had /dev/hda for an IDE device, /dev/sda for a SATA device.
This notation is clumsy. Someone should find a better notation--how about /dev/sfa where the f stands for "flat"? Or something similar.
In a rush, it might be easy to miss the difference between /dev/sda and /dev/sfa. Besides, what is wrong with naming a NVMe drive nvmenX? It's hardly difficult to type.
W dniu 21.08.2021 o 16:18, George from the tribe pisze:
Hey...
I just got a new laptop, and I am in the process of setting up opensuse on it. For the moment it has tumbleweed, but I plan to set it up with 15.3.
One thing I noticed is that the new hard drive nomenclature, or whatever you should call it, is different from what I am used to in the past. In the past the drives would be /dev/sda, /dev/sdb, etc.
In this one, if I plug in a USB stick, the drive letter is /dev/sda. However, the NVMe SDD that I put in it was given the designation /dev/nvme0n1, with each partition being /dev/nvme0n1p1, /dev/nvme0n1p2, etc.
This is the first time I have had an NVMe SSD, but when I set up the partitions for the install, I didn't know that it would give it these kinds of letters.
I am just curious as to what the reason was behind the decision to change the way drives are designated if they are NVMe, and if any other changes like that have been made?
Long answer: https://zonedstorage.io/introduction/zns/ Short answer: NVMe allows systems to use the drive in a more direct way, than old SSD drives did. One of new features are "namespaces", which allow to divide the drive into separate regions, where each namespace has it's own management of flash blocks. In the most simple (and default) case, the disk is a single namespace, used like a normal disk, with partition table. Summarizing: /dev/nvme0 represents first (zeroth?) device and allows to configure namespaces on it, /dev/nvme0n1 is a first namespace, /dev/nvme0n1p1 is a first partition.
On 08/21/21 03:18 PM, George from the tribe wrote:
One thing I noticed is that the new hard drive nomenclature, or whatever you should call it, is different from what I am used to in the past. In the past the drives would be /dev/sda, /dev/sdb, etc.
In this one, if I plug in a USB stick, the drive letter is /dev/sda. However, the NVMe SDD that I put in it was given the designation /dev/nvme0n1, with each partition being /dev/nvme0n1p1, /dev/nvme0n1p2, etc.
/dev/sd? format is normally used in unix/linux for the default disk types. when a new type of disk is added then there will be a new dev name. i expect that once nvme become standard (which can't be that far off) or it is your boot disk then it will follow the sd? format.
On Mon, Aug 23, 2021 at 11:22 AM david allan finch <david.allan@finch.org> wrote:
On 08/21/21 03:18 PM, George from the tribe wrote:
One thing I noticed is that the new hard drive nomenclature, or whatever you should call it, is different from what I am used to in the past. In the past the drives would be /dev/sda, /dev/sdb, etc.
In this one, if I plug in a USB stick, the drive letter is /dev/sda. However, the NVMe SDD that I put in it was given the designation /dev/nvme0n1, with each partition being /dev/nvme0n1p1, /dev/nvme0n1p2, etc.
/dev/sd? format is normally used in unix/linux for the default disk types.
Before this thread wanders too far in fairy land - there is no "default disk type". "sd" stays for "SCSI disk". Each block device driver enumerates supported devices and assigns devices names that are unique to this driver and all other different types of block devices.
On 08/23/21 11:11 AM, Andrei Borzenkov wrote:
Before this thread wanders too far in fairy land - there is no "default disk type". "sd" stays for "SCSI disk". Each block device driver enumerates supported devices and assigns devices names that are unique to this driver and all other different types of block devices.
Intresting I kind of remember it meaning 'standard disk' (block) and they used to be /dev/sd1 .. and partitions where sd1a ... and raw devices where rsd1a etc. But I don't think it matters as the current laptop or PC can't really have scsi disks can it, surely they must be IDE, SAS or SATA.
Am Montag, 23. August 2021, 13:12:50 CEST schrieb david allan finch:
On 08/23/21 11:11 AM, Andrei Borzenkov wrote:
Before this thread wanders too far in fairy land - there is no "default disk type". "sd" stays for "SCSI disk". Each block device driver enumerates supported devices and assigns devices names that are unique to this driver and all other different types of block devices.
Intresting I kind of remember it meaning 'standard disk' (block) and they used to be /dev/sd1 .. and partitions where sd1a ... and raw devices where rsd1a etc.
That's on netbsd - not on linux. on linux we used to have /dev/hd[a..z] für old IDE/ATA drives, and /dev/ sd[a..z][a..z] for SCSI. Later, the SATA driver adopted the SCSI naming scheme. Today, we have /dev/nvme#n#p# for NVME storage, where the name signifies the controller, the next bit signifies the storage device, and the last bit the partition on it: /dev/nvme0n1p1 would read as "first NVME controller, first storage device, first partition". And seeing how there can be multiple controllers, each with multiple devices, I'd say it is unlikely that we'll ever see a "/dev/sd[a..za..z]' scheme for nvme storage. Cheers MH -- Mathias Homann Mathias.Homann@openSUSE.org OBS: lemmy04 Jabber (XMPP): lemmy@tuxonline.tech IRC: [Lemmy] on freenode and ircnet (bouncer active) telegram: https://telegram.me/lemmy98 keybase: https://keybase.io/lemmy gpg key fingerprint: 8029 2240 F4DD 7776 E7D2 C042 6B8E 029E 13F2 C102
On 23.08.21 13:23, Mathias Homann wrote:
Am Montag, 23. August 2021, 13:12:50 CEST schrieb david allan finch:
On 08/23/21 11:11 AM, Andrei Borzenkov wrote:
Before this thread wanders too far in fairy land - there is no "default disk type". "sd" stays for "SCSI disk". Each block device driver enumerates supported devices and assigns devices names that are unique to this driver and all other different types of block devices.
Intresting I kind of remember it meaning 'standard disk' (block) and they used to be /dev/sd1 .. and partitions where sd1a ... and raw devices where rsd1a etc.
That's on netbsd - not on linux.
on linux we used to have /dev/hd[a..z] für old IDE/ATA drives, and /dev/ sd[a..z][a..z] for SCSI. Later, the SATA driver adopted the SCSI naming scheme.
Nitpicking: the SATA driver ceased to exist and was replaced by a SCSI-to-(S)ATA translation layer which, as the name implies, takes a SCSI CDB (Command Descriptor Block) and translates it into an (S)ATA command.
Today, we have /dev/nvme#n#p# for NVME storage, where the name signifies the controller, the next bit signifies the storage device, and the last bit the partition on it:
/dev/nvme0n1p1 would read as "first NVME controller, first storage device, first partition".
And seeing how there can be multiple controllers, each with multiple devices, I'd say it is unlikely that we'll ever see a "/dev/sd[a..za..z]' scheme for nvme storage.
Hm, we already can have multiple SCSI host adapters and/or (S)ATA controllers each with multiple devices. Please correct me if I'm wrong, but I see no obvious reason for the device name to describe the path. This can be (and is) done by udev and results in /dev/disk/by-path. So, IMHO, at one point we may actually see NVME devices being handled by the SCSI subsystem and then have /dev/disk/by-path/nvme#n#p# -> /dev/sdi Josef -- SUSE Software Solutions Germany GmbH Maxfeldstr. 5 90409 Nürnberg Germany (HRB 36809, AG Nürnberg) Geschäftsführer: Felix Imendörffer
On Mon, Aug 23, 2021 at 2:30 PM Josef Moellers <jmoellers@suse.de> wrote:
So, IMHO, at one point we may actually see NVME devices being handled by the SCSI subsystem
No. SCSI and NVMe are fundamentally different. The very reason for developing the NVMe protocol was to overcome SCSI limitations.
Le 23/08/2021 à 13:23, Mathias Homann a écrit :
/dev/nvme0n1p1 would read as "first NVME controller, first storage device, first partition".
also ll /dev/mm* brw-rw---- 1 root disk 179, 0 23 août 13:28 /dev/mmcblk0 brw-rw---- 1 root disk 179, 1 23 août 13:28 /dev/mmcblk0p1 for sd card reader (if not usb) jdd -- http://dodin.org
On 8/23/21 6:23 AM, Mathias Homann wrote:
Today, we have /dev/nvme#n#p# for NVME storage, where the name signifies the controller, the next bit signifies the storage device, and the last bit the partition on it:
/dev/nvme0n1p1 would read as "first NVME controller, first storage device, first partition".
Ah, ok, so for a machine that has 2 NVME controllers, with 2 storage devices on each controller, each storage device partitioned with multiple partitions, the designation would look like this: /dev/nvme0n1p1 /dev/nvme0n1p2 /dev/neme0n1p3 etc. /dev/nvme0n2p1 /dev/nvme0n2p2 /dev/neme0n2p3 etc. /dev/nvme1n1p1 /dev/nvme1n1p2 /dev/neme1n1p3 etc. /dev/nvme1n2p1 /dev/nvme1n2p2 /dev/neme1n2p3 etc. is that right? -- George Box: 15.2 | Plasma 5 | AMD Phenom IIX4 | 64 | 32GB Laptop #1: 15.2 | Plasma 5 | AMD FX 7TH GEN | 64 | 32GB Laptop #2: 15.2 | Plasma 5 | Core i5 | 64 | 8GB
On 8/23/21 4:23 AM, Mathias Homann wrote:
And seeing how there can be multiple controllers, each with multiple devices, I'd say it is unlikely that we'll ever see a "/dev/sd[a..za..z]' scheme for nvme storage.
I once had a single openSUSE host with over 200 discrete SATA disks on multiple controllers. The "/dev/sd[a..za..zz" syntax worked okay, but it would have been nice to be able to identify the individual controllers as with nvme. Regards, Lew
On Mon, Aug 23, 2021 at 2:13 PM david allan finch <david.allan@finch.org> wrote:
But I don't think it matters as the current laptop or PC can't really have scsi disks can it, surely they must be IDE, SAS or SATA.
SAS stands for Serial Attached *SCSI*. SATA was already explained in another email.
On 23.08.21 21:04, Andrei Borzenkov wrote:
On Mon, Aug 23, 2021 at 2:13 PM david allan finch <david.allan@finch.org> wrote:
But I don't think it matters as the current laptop or PC can't really have scsi disks can it, surely they must be IDE, SAS or SATA.
SAS stands for Serial Attached *SCSI*. SATA was already explained in another email.
"SCSI" usually refers to *parallel* SCSI and is, indeed, pretty unusual these days. Personally, I still have a SCSI scanner and a cartridge tape drive on my deskside machine! Thank god I am not using an OS which requires me to completely discard my entire hardware every other year. The scanner works perfectly (hence its name: PerfectScan) and is used occasionally for newspaper clippings and books and stuff that doesn't go into my Brother. Josef PS I had to install the SCSI HA (HostAdapter) upside-down and then use an adapter to connect it to a PCIex1 slot on the motherboard. -- SUSE Software Solutions Germany GmbH Maxfeldstr. 5 90409 Nürnberg Germany (HRB 36809, AG Nürnberg) Geschäftsführer: Felix Imendörffer
On 23/08/2021 10.22, david allan finch wrote:
On 08/21/21 03:18 PM, George from the tribe wrote:
One thing I noticed is that the new hard drive nomenclature, or whatever you should call it, is different from what I am used to in the past. In the past the drives would be /dev/sda, /dev/sdb, etc.
In this one, if I plug in a USB stick, the drive letter is /dev/sda. However, the NVMe SDD that I put in it was given the designation /dev/nvme0n1, with each partition being /dev/nvme0n1p1, /dev/nvme0n1p2, etc.
/dev/sd? format is normally used in unix/linux for the default disk types. when a new type of disk is added then there will be a new dev name. i expect that once nvme become standard (which can't be that far off) or it is your boot disk then it will follow the sd? format.
I expect not. Read Adam Mizerski answer which explains why. It is not a new type of disk... it is not even a disk. It emulates one, IMO. -- Cheers / Saludos, Carlos E. R. (from 15.2 x86_64 at Telcontar)
On Mon, Aug 23, 2021 at 1:11 PM Carlos E. R. <robin.listas@telefonica.net> wrote:
/dev/sd? format is normally used in unix/linux for the default disk types. when a new type of disk is added then there will be a new dev name. i expect that once nvme become standard (which can't be that far off) or it is your boot disk then it will follow the sd? format.
I expect not.
Read Adam Mizerski answer which explains why.
This answer is completely unrelated to the post you are replying to.
It is not a new type of disk...
It [NVMe] is one of the block device types supported by Linux and it is certainly newer than SCSI disk. "Disk" is the colloquial name for "block device".
it is not even a disk.
You are trying to be holier than the pope here. "NVMe disk" is a common expression in the IT industry. If you believe this is wrong, define what is "disk" before claiming that something "is not disk".
It emulates one, IMO.
What emulates what? Maybe *you* should read the answer before advising others to do it?
participants (13)
-
Adam Mizerski
-
Andrei Borzenkov
-
Carlos E. R.
-
Darryl Gregorash
-
david allan finch
-
Douglas McGarrett
-
George from the tribe
-
jdd@dodin.org
-
Josef Moellers
-
Knurpht-openSUSE
-
Lew Wolfgang
-
Mathias Homann
-
Roger Price