• dan@upvote.au
    link
    fedilink
    arrow-up
    174
    ·
    edit-2
    4 个月前

    and you shouldn’t be using any of those, since the order can and will change. The numbers are based on the order the devices and device drivers are initialized in, not based on physical location in the system. The modern approach (assuming you’re using udev) is to use the symlinks in /dev/disk/by-id/ or /dev/disk/by-uuid/ instead, since both are consistent across reboots (and by-id should be consistent across reinstalls, assuming the same partitioning scheme on the same physical drives)

    This is also why Ethernet devices now have names like enp0s3 - the numbers are based on physical location on the bus. The old eth0, eth1, etc. could swap positions between Linux upgrades (or even between reboots) since they were also just the order the drivers were initialized in.

    • toynbee@lemmy.world
      link
      fedilink
      arrow-up
      45
      ·
      4 个月前

      I’m sure you know this, but to to supplement your comment for future readers, UUIDs are also a good solution for partitions.

    • PsychedSy@sh.itjust.works
      link
      fedilink
      arrow-up
      17
      ·
      4 个月前

      Are UUIDs built into the hardware, or something your computer decides on based on the drive’s serial number and shit?

    • JasonDJ@lemmy.zip
      link
      fedilink
      arrow-up
      15
      ·
      edit-2
      4 个月前

      Back in my day, /dev/hda was the primary master, hdb was the primary slave, hdc was the secondary master and hdd was the secondary slave.

      Nothing ever changed between reboots. Primary/secondary depended on which port the ribbon cable connected to on the motherboard, and primary/secondary master/slave was configured by a jumper on the drive itself.

        • pascal@lemm.ee
          link
          fedilink
          arrow-up
          1
          ·
          edit-2
          4 个月前

          If you had a Sound Blaster 16, you had an extra IDE port on the board, which DOS couldn’t see and you had to load special drivers to use them. Usually it was used for the CD-ROM.

    • 🐍🩶🐢@lemmy.world
      link
      fedilink
      English
      arrow-up
      12
      arrow-down
      1
      ·
      4 个月前

      I have a hatred for the enp id thing as it isn’t any better for me. It changes on me every time I add/remove a hard drive or enable/disable the WiFi card in the BIOS. For someone who is building up a server and making changes to it, this becomes a real pain. What happens if a drive dies? Do I have to change the network config yet again over this?

      • Laser@feddit.de
        link
        fedilink
        arrow-up
        7
        ·
        edit-2
        4 个月前

        How is that happening? The number on the bus shouldn’t change from adding or removing drives. I could imagine this with disabling a card in UEFI / BIOS if that basically stops reporting the bus entry completely. But drives?

        Anyhow, if I’m not mistaken, you can assign a fixed name based on the reported MAC.

      • hperrin@lemmy.world
        link
        fedilink
        arrow-up
        4
        ·
        edit-2
        4 个月前

        Use a systems rule to give it a consistent name based on its MAC address, driver, etc. I just had this exact same problem setting up my servers.

        root@prox1:~# cat /etc/systemd/network/10-persistent-10g.link 
        [Match]
        Driver=atlantic
        
        [Link]
        Name=nic10g
        
        root@prox1:~# cat /etc/systemd/network/10-persistent-1g.link 
        [Match]
        Driver=igb
        
        [Link]
        Name=nic1g
        
        
    • mumblerfish@lemmy.world
      link
      fedilink
      arrow-up
      3
      ·
      4 个月前

      Having used gentoo for quite some time, there have been several occations where my network broke because the changing names and naming conventions of the network interfaces.