Files
claudetools/projects/community-forum/forum-posts/esxi8-evaluation-license-reset.md
Mike Swanson 5cbd49ce24 Reorganize repo: compartmentalize scripts by client/project
Move 150+ scripts from root and scripts/ into client/project directories:
- clients/dataforth/scripts/ (110 files: AD2, sync, SSH, DB, DOS scripts)
- clients/bg-builders/scripts/ (14 files: Lesley mgmt, Exchange, termination)
- clients/internal-infrastructure/scripts/ (10 files: GDAP, Gitea, backups)
- projects/msp-tools/scripts/ (9 files: CIPP, MSP onboarding, Datto)
- projects/gururmm-agent/scripts/ (3 files: API test, JWT, record counts)
- clients/glaztech/scripts/ (1 file: CentraStage removal)

Also reorganized:
- VPN scripts → infrastructure/vpn-configs/
- Retrieved API/JS files → api/
- Forum posts → projects/community-forum/forum-posts/
- SSH docs → clients/internal-infrastructure/docs/
- NWTOC/CTONW docs → projects/wrightstown-smarthome/docs/
- ACG website files → projects/internal/acg-website-2025/
- Dataforth docs → clients/dataforth/docs/
- schema-retrieved.sql → docs/database/

Deleted 24 tmp_*.ps1 one-off debug scripts (preserved in git history).
Root reduced from 220+ files to 62 items (docs + directories only).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-20 17:15:07 -07:00

2.5 KiB

Fix: Reset Expired ESXi 8 Evaluation License via SSH

Environment

  • VMware ESXi 8 (two hosts)
  • License: Evaluation mode (60-day trial expired)

Problem

ESXi evaluation period expired. The web UI shows license warnings and functionality is restricted. VMs may not auto-start after host reboots.

vim-cmd vimsvc/license --show
# diagnostic = Evaluation period has expired, please install license.
# expirationHours = 0
# expirationMinutes = 0

Fix

Step 1: Enable SSH (if not already)

In ESXi web UI: HostActionsServicesEnable SSH

Step 2: SSH in and Reset

ssh root@<esxi-host-ip>

# Remove current license config and restore default
rm -r /etc/vmware/license.cfg
cp /etc/vmware/.#license.cfg /etc/vmware/license.cfg

# Restart services to pick up the change
/etc/init.d/vpxa restart
/etc/init.d/hostd restart

Note: After restarting hostd, the web UI will be unavailable for 15-30 seconds while it comes back up.

Step 3: Verify

Wait ~15 seconds for hostd to fully start, then:

vim-cmd vimsvc/license --show

Expected output:

serial: 00000-00000-00000-00000-00000
vmodl key: eval
name: Evaluation Mode
total: 1
used: 1
[evaluation] = License has not been set, evaluation Period in effect.
[expirationHours] = 1440
[expirationMinutes] = 0
[expirationDate] = <60 days from now>

Automation via Expect (for remote execution)

If you need to script this from a Linux workstation and sshpass doesn't work with ESXi's keyboard-interactive auth (common issue), use expect:

# Install expect (Arch)
sudo pacman -S expect

# Run reset
expect -c '
spawn ssh -o StrictHostKeyChecking=no -o PubkeyAuthentication=no root@192.168.0.122 \
  "rm -r /etc/vmware/license.cfg && cp /etc/vmware/.#license.cfg /etc/vmware/license.cfg && /etc/init.d/vpxa restart && /etc/init.d/hostd restart"
expect "Password:"
send "your_password_here\r"
expect eof
'

Note on sshpass: ESXi 8 uses keyboard-interactive authentication, not password auth. sshpass fails with exit code 5 even with correct credentials. expect handles keyboard-interactive properly.

Important Notes

  • This resets the 60-day evaluation timer — it does not provide a permanent license
  • The reset can be repeated when the evaluation expires again
  • VMs configured to auto-start should resume normal operation after the license is active
  • If you have a legitimate license key, apply it via the web UI instead: ManageLicensingAssign license