Sitemap

Migrating from Windows 10 Pro to OpenSUSE LEAP

8 min readMar 9, 2026

--

Press enter or click to view image in full size

TL;DR Cheatsheet of how I setup openSUSE LEAP on an older laptop to do everything I was doing in Windows 10 Pro.

Welcome to Part XII of our cheatsheet series compiled from various courses, labs, stuff we did at work, Google, etc. Most of this was spread out over various howtos. This puts it all in one place. These are cheatsheets, almost no explanation is given, just commands. The links are to howtos that provide background.

Part I: Mimikatz cheatsheet

Part II: Set-Acl cheatsheet

Part III: Get-Acl cheatsheet

Part IV: Enumerating AD cheatsheet

Part V: Windows reverse shells cheatsheet

Part VI: MS Graph PowerShell cheatsheet

Part VII: Hash cracking cheatsheet

Part VIII: The Credential Theft Shuffle

Part IX: SACLs & Querying Collected Logs

Part X: Setting up a simple AD lab in Azure

Part XI: Hyper-V cheatsheet

Part XII: Migrating to openSUSE LEAP

Part XIII: Automating VM creation in ESXi with PowerCLI

Part XIV: PowerCLI cheatsheet

Part XV: Automating VM creation in ESXi with Ansible

Background

As everyone knows Windows 10 is End of Life (EOL) as of 14 Oct 2025. Microsoft Defender on Windows 10 is still getting updates until at least Oct 2028, but of course this doesn’t fix unpatched vulnerabilities in Windows 10 itself.

My ‘daily driver’ is a Dell 5580 that I got refurbished for around $550 in Dec 2020. It has a 512 GB SSD, 16 GB of RAM, and is still going strong. It has no problem running VMs for Kali and the lab’s “travel laptop”, which is essentially just a Entra ID joined and Intune managed endpoint.

Windows is telling me that the laptop doesn’t support Windows 11, and I don’t want to buy a new laptop just to upgrade Windows, especially not when the Dell still works just fine. I’m not an Apple fan boy, I don’t need the latest model. Hence I was considering migrating to a user friendly Linux.

An awesome co-worker recently gave me his old Acer laptop he wasn’t using anymore. It’s an Aspire VN7–592G and was apparently new around 2015. It was running Windows 10 no problem though. On a sidenote that’s one of the things that’s always amused me about Apple fan boys; this obsession with constantly buying the newer model. Desktops and laptops matured awhile ago. If you’re not trying to video game or do graphics work then a 5–10 year old laptop will work fine.

I realized this old Acer laptop would be the perfect test bed to see if I could do everything I do on my Windows laptop … on Linux.

Press enter or click to view image in full size

What I need my ‘daily driver’ to do

  • Chrome, logged in and syncing with other devices
  • RDP to home lab VMs
  • Office
  • PowerShell
  • Visual Studio Code
  • Smartcard reader (AVD has a browser tab option)
  • VMware Workstation, Player, VirtualBox, etc
  • Google Drive (or replacement)

I’ll elaborate on a few of the bullets in the above list. The rest are pretty self explanatory.

I know it’s not best practice to save passwords in the browser, but I can be rather lazy about some things outside of the workplace. I just want Reddit, Medium, GitHub, etc to auto login and I want to be able to easily re-open a website I was reading on my Android phone on my laptop. Signing into Chrome accomplishes this.

I can simply RDP to a lab VM and run PowerShell or VS Code there to connect to MS Graph, Azure, etc but I like being able to do that from my laptop as well.

Work gives us access to Azure Virtual Desktop (AVD). Once one logins in one can essentially work just like they are physically at work. Naturally 2FA is required for this hence the smartcard requirement.

Like I said above I’m lazy. I have been using Google Drive since shortly after it released in 2012. It’s great on these older laptops as I don’t have to worry too much about the hard drive or the entire laptop failing. Whatever I’m working on is synced to the cloud in almost real time.

I’m using the term “Office” like one says Kleenex or Duct Tape. I only need applications like Microsoft Word and Excel, I don’t need Microsoft Office specifically.

Installing openSUSE LEAP

Get Rich’s stories in your inbox

Join Medium for free to get updates from this writer.

You can download openSUSE here. I simply burned the ISO to a DVD-R and booted the Acer off it. Even a 2015 Acer didn’t have a builtin DVD drive so I used one of the USB DVD-RW drives I keep handy.

Installation itself was extremely easy and user friendly. However I hit a major issue immediately following installation; LEAP said a boot device wasn’t found. It’d boot if I kept the USB DVD-RW drive plugged in with the LEAP DVD in it … but that’s hardly sustainable.

It turns out the issue was stupid simple. I had to go into the Acer’s UEFI settings and manually select the boot loader to use.

Hold F2 and then power on the laptop.
Go into the UEFI settings -> Security Tab.
Set a supervisor password.
Add HDD0 -> EFI -> opensuse -> grubx64.efi as trusted.
Hit F10 to save and exit.
Boot normally.

Why grubx64.efi and not one of the other 3 or 4 listed options? See the part about running VMs below.

Running VMs

I am not a fan of Broadcom, but to their credit they do give away VMware Workstation and Player for Linux here. I was running a Kali VM in the free VMware Player back before Broadcom bought VMware and before I fell in love with Hyer-V. It was free, it worked, and I was able to do TryHackMe, Slayer Labs, eJPT, PJTP, test and validate Mishky’s Range, etc etc. Over the years I had added more than a few Windows/AD tools to it so I wanted to simply copy/paste the VM over. Hence I went with VMware Workstation on LEAP.

sudo zypper install -t pattern devel_basis
sudo zypper install kernel-devel
cd ~/Desktop
chmod +x VMware-Workstation-Full-25H2–24995812.x86_64.bundle
sudo ./VMware-Workstation-Full-25H2–24995812.x86_64.bundle

On the initial launch I had to run it via sudo, otherwise I got caught in an endless loop trying to agree to the terms & conditions and then actually run it.

sudo -E /usr/bin/vmware

After that simply run it from the Start Menu.

On a sidenote, I was using shim.efi originally, however VMs refused to start until I changed it to grubx64.efi in the UEFI settings.

I simply shut down my Kali VM on my Dell laptop, copied it to a share drive in the home lab, and then copied it to the Acer laptop.

sudo zypper install cifs-utils
sudo mkdir -p /mnt/VM_Stuff
sudo mount -t cifs //192.168.0.99/VM_Stuff /mnt/VM_Stuff -o username=Mishky,domain=test
#copy/paste Kali to /home/Mishka/Documents/VMware_VMs
#Unmount it once done
sudo umount /mnt/VM_Stuff

Office

LibreOffice was pre-installed on openSUSE LEAP. It’s quite user friendly and can work with the newer Microsoft Office file formats. The last time I used Open Office it only worked with *.doc and didn’t support *.docx.

PowerShell & VS Code

# Import the Microsoft GPG key
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc

# Add the Microsoft package repository
sudo zypper addrepo https://packages.microsoft.com/config/opensuse/15/prod.repo

# Refresh your repos and install
sudo zypper refresh
sudo zypper install --allow-unsigned-rpm https://github.com/PowerShell/PowerShell/releases/download/v7.4.10/powershell-7.4.10-1.rh.x86_64.rpm

# Add the VS Code repo directly
sudo zypper addrepo https://packages.microsoft.com/yumrepos/vscode vscode

# Import the key and refresh
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
sudo zypper refresh

# Install it
sudo zypper install code

Just run VS Code, hit Ctrl + Shift + X, and search for the PowerShell extension.

smartcard reader

sudo zypper install pcsc-lite pcsc-ccid pcsc-tools opensc
sudo systemctl enable --now pcscd

#verbose mode
sudo systemctl stop pcscd
sudo pcscd -f -d

#Back to normal mode
sudo systemctl start pcscd
pcsc_scan

#Link the NSS Database to the smartcard middleware
sudo zypper install mozilla-nss-tools
#Close Chrome completely.
#Run this command to add the OpenSC module to your profile:
modutil -dbdir sql:$HOME/.pki/nssdb -add "OpenSC" -libfile /usr/lib64/pkcs11/opensc-pkcs11.so
sudo systemctl stop pcscd.socket pcscd.service
sudo systemctl enable - now pcscd.socket pcscd.service

Smartcard is working and I can login to AVD.

rclone

I used rclone to replace Google Drive. I am not syncing the Stars & Stripes folder on my Google Drive to my laptop as it would take up too much HD space.

The ‘dash dash drive-acknowledge-abuse’ is required to let Google Drive know to ignore the malware warnings and sync those files. Google flags a ton of the tools I keep in a folder named CRTP like PowerView and other Red Team tools.

# Install rclone
mkdir ~/GDrive
sudo zypper install rclone

# Start the configuration (interactive)
rclone config

Select n for New Remote.
Name it gdrive.
Select "Google Drive" from the list.
Leave Client ID and Client Secret blank (just hit Enter).
Select Scope 1 (Full access).
When it asks for Auto Config, type y. It will open Chrome for you to sign in and "Allow."
sudo zypper install rclone

rclone config
n
gdrive
19
<blank> (just hit Enter)
1
<blank> (just hit Enter)
n
y
login to Google in the browser
n
<blank>
q

#Dry run
rclone sync gdrive: ~/GDrive - exclude "/Stars & Stripes/**" - dry-run

#Initial run, copy Google Drive files to the laptop
rclone copy gdrive: ~/GDrive --exclude '/Stars & Stripes/**' --drive-acknowledge-abuse --progress
#Change this to sync later once the initial download of Google Drive to the laptop is done

#This establishs the relationship
rclone bisync ~/GDrive gdrive: --exclude '/Stars & Stripes/**' --drive-acknowledge-abuse --resync --verbose

#Sync runs after that intial run
rclone bisync ~/GDrive gdrive: --exclude '/Stars & Stripes/**' --drive-acknowledge-abuse --verbose

I did this next part in order to set rclone to sync every 5 minutes automatically

nano ~/.config/systemd/user/rclone-sync.service
[Unit]
Description=Rclone Bidirectional Sync
After=network-online.target
[Service]
Type=oneshot
ExecStart=/usr/bin/rclone bisync %h/GDrive gdrive: --exclude "/Stars & Stripes/**" --drive-acknowledge-abuse
nano ~/.config/systemd/user/rclone-sync.timer
[Unit]
Description=Run Rclone Sync every 5 minutes
[Timer]
OnBootSec=2min
OnUnitActiveSec=5min
AccuracySec=1s
[Install]
WantedBy=timers.target
systemctl - user daemon-reload
systemctl - user enable - now rclone-sync.timer

VNC

Remote management isn’t required, I don’t remote into my Dell laptop, but it was nice to have while I was setting up LEAP and getting if fully functional for my use case.

sudo zypper install tigervnc-server
vncpasswd
sudo firewall-cmd --permanent --add-port=5900/tcp
sudo firewall-cmd --reload

I made a file named Start-VNC.sh

#!/bin/bash
x0vncserver -display :0 -PasswordFile ~/.vnc/passwd

Summary

That’s it. Everything I use my ‘daily driver’ to do now works on openSUSE LEAP. I even wrote this cheatsheet in LibreOffice, opened it in Office on my Dell, and posted it to Medium from there just to validate rclone syncing and LibreOffice’s compatibility.

If anyone else is considering migrating rather than buying a newer laptop then I highly recommend openSUSE LEAP. I’m a Windows Guy, run VMs, screw around in PowerShell, etc and setting up a 10 year old Acer to do all that was almost completely effortless.

If a Windows Guy can migrate to openSUSE then anyone can.

Press enter or click to view image in full size

References

Windows 10 EOL: https://support.microsoft.com/en-us/windows/windows-10-support-has-ended-on-october-14-2025-2ca8b313-1946-43d3-b55c-2b95b107f281

Defender on Windows 10: https://techcommunity.microsoft.com/blog/microsoftdefenderatpblog/end-of-windows-10-support-what-defender-customers-need-to-know/4461349

--

--

Rich
Rich

Written by Rich

I work various IT jobs & like Windows domain security as a hobby. Most of what’s here is my notes from auditing or the lab.