Hello guys,

I bought a new SSD (WD black sn770 2 TB) for my laptop and I also got a USB-C hub which includes a slot for an SSD. My old SSD is 512 GB

So here is what I want to do: I want to change to Linux from Windows 11. I want to keep my old SSD in the USB-C hub with Windows still installed in case I need it for some software/games but Linux will now be my main OS.

Are there any tips or recommendations on things I should look out for when doing this?

I also don’t know if I can just install Linux in what is ATM the external SSD and then swap it out afterwards with the SSD inside the laptop without having to do anything extra and if it will just work like that.

I plan on following this tutorial: https://www.youtube.com/watch?v=bfWdnCIrcxk.

Also any recommendations on how I can safely transfer some files? Do I need a special software?

In case interested this is the distro that I plan on using: https://garudalinux.org

As a side note, I did check that the SSD is compatible with my computer and has everything right.

  • CaptDust
    link
    fedilink
    arrow-up
    13
    ·
    6 months ago

    I wouldn’t recommend swapping afterwards, moving devices around is a good way to confuse a bootloader and run into problems.

    I think you should create your installation medium, remove the Windows SSD from laptop, install your new one, then install Linux.

    You won’t need anything special to transfer files, but keep in mind windows 11 uses bitlocker by default, you’ll probably want to disable that while windows SSD is still in the laptop, otherwise that drive will remain encrypted and inaccessible by Linux.

    Good luck!

    • schizo@forum.uncomfortable.business
      link
      fedilink
      English
      arrow-up
      7
      ·
      6 months ago

      As a side note: the grub and root filesystem issues are mostly an issue of the past. If you’re on a modern distro (and haven’t mucked with things) they no longer use device names, but rather rely on UUIDs, which is good: those don’t change even if you move the drives around.

      As long as grub is in the boot sector and you’re using UUIDs in your grub.conf and fstab, you should almost never have any issues moving drives around the same system.

      • CaptDust
        link
        fedilink
        arrow-up
        5
        ·
        edit-2
        6 months ago

        Yeah I debated mentioning it because fully agree - UUID should cover it. But idk what bootloader Garuda uses or how it configures it, and I have no experience going from an external USB-C enclosure to internal drive, is it really seamless?

        I just trying to advise on the side of cautiousness.

        • schizo@forum.uncomfortable.business
          link
          fedilink
          English
          arrow-up
          5
          ·
          6 months ago

          I’ve recently moved drives between m2 slots and usb-c enclosures and everything worked, but that’s also why I used the word ‘should’ a lot.

          I’ve had zero issues in the past few years moving drives around (even between different systems!) and my experience has been nothing but ‘shit just works’, but yeah, I know that there’s probably edge cases where that’s not true.

          For what they’re doing, though, it should be fine, since there’s a relatively low amount of complexity and grub really doesn’t care where the drive is as long as it has the UUID at this point.

    • Mexigore@lemmy.worldOP
      link
      fedilink
      arrow-up
      1
      ·
      6 months ago

      I would only be swapping once and then having the windows SSD in the USB C hub. Would you still recommend that I install the SSD straight away in the laptop and set it up from there?

      • CaptDust
        link
        fedilink
        arrow-up
        3
        ·
        6 months ago

        Well, if Garuda’s installer does what it’s supposed to do and assigns your boot drive by UUID, it really shouldn’t matter. I still think swapping before install and having the system in the planned final configuration minimizes the risk of failure.

        Some background: There was a time in history where boot devices were defined by their physical port location, so if you reordered or moved drives, it was up to the user to update the boot config to align it to the new location. If the user didn’t know to do that step, the computer would fail to boot. Modern linux distros should use the drive’s unique hardware identifier to find the device, wherever it’s plugged in.

        • rotopenguin@infosec.pub
          link
          fedilink
          English
          arrow-up
          2
          ·
          edit-2
          6 months ago

          Linux bootloaders discover the correct linux volume by UUID (which is in the filesystem), or PARTUUID (which is in the GPT table). It’ll look at every drive, and when it sees the matching one it’ll look in that partition, find the kernel & initrd, suck them into ram, and launch the kernel.

          The main problem with moving drives around is - where is the EFI firmware looking for the bootloader in the first place? If you read efibootmgr, the efi data is pretty simple and very much tied to a hardware port. The EFI takes the most preferred bootloader entry, goes to that drive, and runs a file like “\EFI\grub\grubx64.efi”. If that file isn’t right there, the EFI isn’t going to look elsewhere for it.

          There is one bootloader name that EFI will pluck out of the blue and (smash the Fx key) offer to you as a boot option - “\EFI\BOOT\BOOTX64.EFI”. Self booting usb installers use that, but you could use it too. Put all the other files that go along with the bootloader in with that boot folder, and rename the appropriate .efi to bootx64.efi.

          One thing that I’ve done on odd setups is to put rEFInd on the efi partition as the boot\bootx64.efi loader. It’ll do a pretty fancy job of detecting what’s bootable (may need an additional filesystem_driver.efi), or even chain into grub to finish the startup.

  • Telorand@reddthat.com
    link
    fedilink
    arrow-up
    4
    ·
    6 months ago

    It may work to swap drives, but you should definitely minimize physical swapping if possible. Pick where the drives will live, then try to stick with that (or be ready to do some troubleshooting). Create a Linux install media for your chosen distro, put the empty drive in the laptop, and boot from the install media. Most distros come with a graphical installer, so you should be able to navigate from there.

    Also, for the best experience, the drive inside the laptop should be your daily driver, anyway. USB-C is great, but you’ll have the best I/O with the slot on the mainboard, which is both physically closer to the CPU and likely uses NVMe. If you plan on making Linux your daily driver, that should be the drive in the laptop.

    Lastly, try booting from a live ISO where you can give it a test run before you install. Might identify any glaringly obvious issues with your hardware before you go through the trouble, though not all distros have live media.

    Good luck, OP! I’m right there with you, making the switch to Linux, though I’m just going to relegate Windows to a VM.

  • www-gem@lemmy.ml
    link
    fedilink
    arrow-up
    2
    ·
    6 months ago

    When setting up your SSD, don’t forget to use TRIM to preserve it if possible. See the Arch wiki. You can follow it even if you use another distro.

  • Cincinnatus@awful.systems
    link
    fedilink
    arrow-up
    2
    ·
    6 months ago

    I’ve got an Asus expertcenter d700sa-xb501 desktop that I bought not long ago hoping to install kubuntu on it like I had on my old Dell computer. The Asus has Windows 10, with secure boot, fast boot on it. It’s also an M.2 nvme ssd. After disabling secure boot and fast boot, I still couldn’t get it accept Kubuntu. I think its got something to do with grub from what I’ve read. Anyway, I finally had to give up and I ended up installing Kubuntu on an external ssd by first creating an installation medium on a flash drive and to use it I have to boot my windows to the login screen, then hit shutdown, turn the cpu back on and go into bios settings and change my boot order to the external ssd. Then it works fine but if I go to the bios screen the first time I power on the computer my external ssd doesn’t show up in the list. Just thought I’d let you know the trouble I had with it, but maybe you’ll have better luck.