PwshTips / field notes for admins

PowerShell for real administration

Practical scripts, troubleshooting notes, and repeatable workflows for Windows administrators who live in PowerShell.

This site covers the full arc of Windows automation: from one-liner fixes for cryptic error codes (4294967295, 1618, “the handle is invalid”) to production-grade patterns for error handling, logging, scheduled tasks, and remote management. Every script here has been tested in real environments, not just pasted from documentation.

What you will find:

  • Troubleshooting guides – step-by-step fixes for Windows errors, application failures, and system misconfigurations, with the exact commands to run and what each one does.
  • PowerShell patterns – try/catch/finally done right, handling non-terminating errors, working with native executables and $LASTEXITCODE, building reusable logging and transcript workflows.
  • Remote administration – WinRM, PowerShell remoting over SSH, managing fleets with scheduled tasks, and inventory scripts that query hundreds of machines.
  • Homelab and infrastructure – Proxmox VE migrations, Tailscale for secure remote access, WSL integration, and turning a home server into a mobile-accessible terminal.
  • Windows internals – event log recovery, taskbar management, RDP configuration, firewall rules, and the registry tweaks that actually matter.

How to use this site: start with a focused guide that matches your problem, copy the tested command, and adapt it to your environment. The search box covers every article. Categories and tags in the sidebar help you browse by topic.

New articles are published regularly. If you manage Windows systems and want practical automation that works the first time, you are in the right place.

PwshTips PowerShell and Windows administration

Clear commands. Real constraints. Fewer surprises.

Proxmox VE web interface showing a migrated virtual machine
MISC-VM

ESXi Is Dead: Migrating Your Homelab to Proxmox VE

Broadcom killed the free ESXi license. How to move a homelab to Proxmox VE: installation, honest pros and cons, and VM migration without rebuilding everything.

October 3, 2026 · 9 min · Mimi
Terminal showing tailscale status with the home server on the same tailnet
Networking

Tailscale: Your Phone Is a Terminal

Put Tailscale on your Android phone and your home server is one tap away: SSH, web UIs, and dev previews from anywhere.

October 3, 2026 · 8 min · Mimi
PowerShell terminal showing a function leaking extra output
Windows

PowerShell Has No Return Values

return $x is just $x plus an exit. Everything your function did not swallow becomes the return value, and that breaks scripts.

October 2, 2026 · 7 min · Mimi
PowerShell terminal showing try/catch missing a non-terminating error
Windows

try/catch Is Blind to Half Your Errors

try/catch only sees terminating errors. Non-terminating errors and native exit codes sail past it. The mechanism and the decision tree.

October 2, 2026 · 5 min · Mimi
PowerShell terminal showing WSL failing to configure mirrored networking
Windows

WSL Mirrored Networking and Tailscale Do Not Mix

Mirrored networking promised to expose WSL services on the tailnet. Instead it hid the Tailscale interface, then killed WSL networking entirely.

October 2, 2026 · 8 min · Mimi
Diagram of the blog publishing pipeline from WSL to Cloudflare Pages
Blogging

From WSL to the World: How This Blog Gets Published

The full publishing pipeline behind pwshtips.com: write in WSL, preview with local Hugo, push to GitHub, and let Cloudflare Pages deploy it live in under two minutes.

October 1, 2026 · 6 min · Mimi
Diagram of a 4-node Tailscale tailnet
Networking

I Replaced Port Forwarding with Tailscale Across 4 Machines (and What Broke)

No open ports, no DDNS, no router config. How I built a private tailnet across a Windows laptop, a Fedora VM, an Oracle VPS, and an ephemeral cloud VM — and the failures that taught me how it really works.

October 1, 2026 · 6 min · Mimi
Terminal showing winget installing WSL
Windows

Install and Configure WSL: From Zero to Productive

A practical guide to installing WSL on Windows, configuring your Linux user, moving files between Windows and Linux, and going further with web servers, PowerShell, and VS Code.

October 1, 2026 · 9 min · Mimi
Terminal showing a zombie job re-executing a deploy on every relay restart
Linux

Zero-Byte Deploys and Zombie Jobs: A Failover War Story

Building a 60-second failover standby for my dev environment — and the two outages that taught me to never trust an all-green deploy chain.

October 1, 2026 · 9 min · Mimi
Message flow diagram of commands relayed from AI agent through VPS to WSL
Linux

Three Machines, One Shell: Relaying Commands from an AI Agent to WSL via a VPS

A persistent, bidirectional command channel between an AI agent VM, a small VPS relay, and a Windows laptop's WSL — what each piece does, how to set it up, and the dozen pitfalls I actually hit.

September 30, 2026 · 9 min · Mimi