From 318de18e15671dc7d00dde7ed478413cfad16ba8 Mon Sep 17 00:00:00 2001 From: Marius Date: Tue, 11 Aug 2026 00:55:41 +0300 Subject: [PATCH] docs(vm303): full clone, template 300 sters, handoff inchis MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit VM 303 rula ca linked clone din VM 300, deci template-ul contaminat nu putea fi sters. Transformat in full clone si VM 300 eliminat din infrastructura. Metoda: zfs send/recv local + swap de volid in config. `qm move-disk` nu era o optiune — PVE respinge mutarea pe acelasi storage, iar pentru zvol-uri conditia din Qemu.pm:4688 e mereu adevarata (numele n-are sufix de format). - inventarele nu mai listeaza VM 300; VM 310 ramane singurul template - clone-vm300.sh: comentariul spune de ce sursa e 310 (numele e istoric) - handoff-ul sters la cererea utilizatorului; faptele care mai conteaza sunt mutate inline in README-uri, ca sa nu ramana referinte moarte Co-Authored-By: Claude Opus 5 (1M context) Claude-Session: https://claude.ai/code/session_01MoFGxftQw92PX4Sdkn94pv --- docs/handoff-smb-vm303-roacentral.md | 304 ------------------ proxmox/README.md | 2 +- proxmox/cluster/README.md | 10 +- .../roa-windows-setup/test/clone-vm300.sh | 8 +- proxmox/vm302-oracle-test/README.md | 9 +- 5 files changed, 16 insertions(+), 317 deletions(-) delete mode 100644 docs/handoff-smb-vm303-roacentral.md diff --git a/docs/handoff-smb-vm303-roacentral.md b/docs/handoff-smb-vm303-roacentral.md deleted file mode 100644 index 419e70f..0000000 --- a/docs/handoff-smb-vm303-roacentral.md +++ /dev/null @@ -1,304 +0,0 @@ -# Handoff — SMB imposibil între VM 303 și VM 201 (SID de mașină duplicat) - -**Data:** 2026-08-10, seara -**Stare:** cauză stabilită prin probe; reparația finală (sysprep) NU e făcută, așteaptă decizia utilizatorului. - -## Simptom raportat - -De pe VM 303 (10.0.20.145) nu se poate accesa `\\10.0.20.122\temp`; „user sau parolă -incorecte" chiar cu credențiale corecte. Identic și în sens invers, de pe .122 către -`\\10.0.20.145\Temp`. - -## Cauza reală - -**Cele două mașini au același SID de mașină:** -`S-1-5-21-1850128657-3079265004-705332634` - -VM 303 e o clonă (prin template-ul VM 300 `Win11-Template`) a instalării de pe VM 201, -pornită fără `sysprep /generalize`. NTLM între două mașini cu SID de mașină identic -eșuează: parola e validată corect, apoi logon-ul e respins. - -Inițial ambele se numeau și `ROACENTRAL` — asta a fost reparată (vezi mai jos), dar -**nu a fost suficientă**. - -### Semnătura în log (Security, event 4625, pe mașina țintă) - -| SubStatus | Semnificație | -|---|---| -| `0xc000006a` | parola chiar e greșită (verificarea a ajuns la SAM) | -| `0x0` | parola e CORECTĂ, logon respins ulterior — semnătura problemei | - -Deci `sub=0x0` = simptomul; `sub=0xc000006a` = doar o parolă greșită banală. - -## Lanțul de probe (toate rulate, nu deduse) - -1. VM-303 → .122 eșuează; .122 → VM-303 eșuează. Simetric. -2. Cont nou `smbtest` pe VM-303, parolă pusă de noi, RID `1002` (se ciocnea cu - `roaupdate` de pe .122) → **eșec**, eroare 86. -3. Cont nou `smbshare` pe VM-303, RID `1005` (fără nicio coliziune de RID) → **eșec**. - ⇒ nu e coliziunea de RID a contului, ci SID-ul de mașină. -4. De pe `LENOVO-AIO-BIRO` (stație terță, alt SID) către `\\10.0.20.145\Temp`, cu - **exact același cont și aceeași parolă** → **SUCCES**. - ⇒ serverul SMB de pe VM-303 e sănătos; problema e a perechii de cloni. - -### Exclus prin verificare, nu prin presupunere - -Parole goale (`LimitBlankPasswordUse=1`, dar niciuna nu e goală); expirare parolă -(`Password expires: Never`); SMB1/semnare/criptare (identice pe ambele: SMB2/3, -signing required, `RejectUnencryptedAccess=True`); politici `RestrictNTLM` (nesetate); -`SeDenyNetworkLogonRight` (doar `Guest`); blocare cont (`Account active: Yes`); -firewall (445 deschis în ambele sensuri); permisiuni share/NTFS pe `.122\temp` -(`Everyone: Full`, `Authenticated Users: Modify`); prefixul de domeniu din user -(`ROACENTRAL\`, `VM-303\`, `10.0.20.122\` — toate se comportă la fel). - -## Ce s-a modificat deja - -**Pe VM 303 (10.0.20.145) — singura mașină atinsă:** - -- Snapshot Proxmox `pre-rename` creat la 22:19 (încă existent, nu a fost șters). -- Redenumit `ROACENTRAL` → `VM-303` (`Rename-Computer`), repornit. Numele cu spațiu - cerut inițial („VM 303") nu e valid în Windows. -- `AutoAdminLogon` setat pe `0` (era `1`, cu `DefaultUserName=romfast` și fără parolă - stocată validă — login automat rupt). -- Conturi de test `smbtest`, `smbshare`, `zzfill1`, `zzfill2` — create pentru probe și - **șterse**. Verificat: au rămas doar Administrator, DefaultAccount, Guest, romfast, - WDAGUtilityAccount. - -**Pe VM 201 (10.0.20.122) — NIMIC modificat.** Doar citiri și `net use` de test, ale -căror mapări au fost șterse. - -## ✅ REPARAT — VM 303 sysprep-uit în loc, cu programele păstrate - -Reparat prin `sysprep /generalize /oobe /shutdown /unattend:C:\unattend.xml` **pe VM 303 -însuși**, nu prin mutare pe alt VM. Sysprep schimbă identitatea mașinii, nu dezinstalează -aplicații — exact ce trebuia. - -| | Înainte | După | -|---|---|---| -| SID mașină | `S-1-5-21-1850128657-3079265004-705332634` | `S-1-5-21-3853882515-1460096973-3208817208` | -| Nume | VM-303 | VM-303 (repus manual, vezi mai jos) | -| **IP (DHCP)** | **10.0.20.145** | **10.0.20.101** ⚠️ | - -**Verificat după reparație:** - -- Toate **14 programele** intacte (Adobe Acrobat, Visual FoxPro 9.0, ROACLIENT 2.2.6.1, - TortoiseSVN, Git, Node.js, PowerShell 7, Notepad++, RustDesk, Python Launcher, Edge, - VC++ 2005, QEMU guest agent, drivere Virtio). -- Profilul `romfast` intact — 2944 MB, `C:\Users\romfast` se rezolvă corect la - `VM-303\romfast`, SID `-1001`. **Nu** a devenit „temporary profile". -- Blocajul SMB a dispărut. Dovada, în log-ul de pe .122: - ``` - 22:35:10 de la .145 sub=0x0 <- inainte: parola CORECTA, respinsa structural - 23:36:43 de la .101 sub=0xc000006a <- dupa: parola pusa gresit, evaluata normal - ``` - -### ⚠️ Capcanele sysprep-ului pe o mașină în uz — citește ÎNAINTE de a repeta - -Toate au fost întâlnite pe bune și rezolvate. Într-o ordine utilă: - -1. **`` din unattend nu se aplică** — mașina a pornit ca `WIN-SN6AFCEVSRR`. - Redenumire ulterioară cu `Rename-Computer` + repornire. - -2. **`HideLocalAccountScreen` NU funcționează pe Windows 11 build 26100.** OOBE se - oprește oricum la „Who's going to use this device?". Nu există ocolire prin unattend; - trebuie completat la consolă. - -3. **La acel ecran, NU introduce numele unui cont existent.** Introducerea lui `romfast` - (cont deja prezent) a agățat OOBE-ul — a urmat oprire forțată și reintrare în OOBE. - Introdu un nume nou (ex. `setup1`), parolă goală ca să sari peste întrebările de - securitate, apoi sign out și logare pe contul real. - -4. **Nu șterge `defaultuser0` cât timp OOBE rulează.** Sesiunea consolei rulează chiar - sub el; ștergerea lui blochează fluxul. Agentul QEMU răspunde ca serviciu indiferent - de starea OOBE — deci „agentul răspunde" **nu** înseamnă că OOBE s-a terminat. - Verifică `quser`: dacă sesiunea activă e `defaultuser0`, ești încă în OOBE. - -5. **`/generalize` șterge `HKLM\SYSTEM\MountedDevices` → literele de partiție se pierd.** - Aici au dispărut **D:** și **E:** (partițiile 5 și 6 de pe disc 0), iar programele - instalate pe `D:\roa` păreau pierdute. Volumele erau intacte, doar fără literă: - ```powershell - Set-Partition -DiskNumber 0 -PartitionNumber 5 -NewDriveLetter D - Set-Partition -DiskNumber 0 -PartitionNumber 6 -NewDriveLetter E - ``` - Share-urile (`Temp` → `D:\Temp`, `D$`, `E$`) au supraviețuit și au redevenit - funcționale odată cu literele. - -6. **Sysprep readuce `AutoAdminLogon = 1`** — pus înapoi pe `0`. - -7. **RustDesk nu mai accepta parola.** `/generalize` regenerează `MachineGuid` (acum - `386fb2c0-0cf0-443e-9ad4-4bc529db3446`), de care sunt legate credențialele stocate. - Configurația și serverul (`roa.romfast.ro:21116`) au rămas; **ID nou: `294770995`**. - ✅ **Rezolvat 2026-08-11** — parola permanentă a fost repusă de utilizator, RustDesk - funcționează. Comanda, pentru referință: - ```powershell - & 'C:\Program Files\RustDesk\rustdesk.exe' --password '' - Restart-Service RustDesk - ``` - -### Stare finală verificată (2026-08-11, ~00:00) - -Sesiune activă ca `romfast`; `C:` 292 GB, `D:` 109 GB cu `roa`/`Temp`/`utils`/`romfast`, -`E:` 97 GB gol — toate `Healthy`, niciun volum „dirty" după oprirea forțată, zero erori -`disk`/`Ntfs`/`volmgr` în System log. Autentificarea NTLM către .122 răspunde -`sub=0xc000006a` (parolă evaluată normal) atât cu prefix `ROACENTRAL\` cât și `VM-303\`. - -**Închis 2026-08-11:** utilizatorul a confirmat că programele merg și că -`\\ROACENTRAL\temp` e accesibil. Contul temporar `setup1` și profilul lui au fost șterse, -la fel profilul `defaultuser0`. Pe VM 303 a rămas un singur cont: `romfast`, cu -`C:\Users\romfast`. - -## DE FĂCUT (sesiune următoare): decuplarea VM 303 de template-ul defect - -VM 303 e încă **linked clone** din VM 300, deci VM 300 nu poate fi șters: - -``` -rpool/data/vm-303-disk-1 origin=rpool/data/base-300-disk-0@__base__ (refer 63.5G) -rpool/data/vm-303-disk-0 origin=rpool/data/base-300-disk-1@__base__ (efidisk) -``` - -Transformarea în full clone rupe legătura, iar apoi **VM 300 poate fi șters definitiv** — -scoate din infrastructură imaginea contaminată. Ambele discuri trebuie mutate, nu doar -`virtio0`. - -Metoda Proxmox: `qm move-disk`, cu `--delete 1` ca să șteargă volumul sursă: -```bash -ssh root@10.0.20.201 "qm shutdown 303" # oprire curata -ssh root@10.0.20.201 "qm move-disk 303 virtio0 local-zfs --delete 1" -ssh root@10.0.20.201 "qm move-disk 303 efidisk0 local-zfs --delete 1" -ssh root@10.0.20.201 "zfs list -o name,used,refer,origin | grep vm-303" # origin trebuie sa fie gol -ssh root@10.0.20.201 "qm start 303" -``` - -**De verificat înainte:** unele versiuni PVE refuză mutarea pe **aceeași** storage. Dacă -`local-zfs -> local-zfs` e refuzat, ruta e prin storage-ul `local` (dir) și înapoi, sau -`zfs promote` la nivel de storage — de evaluat atunci, nu orbește. - -**Cerințe:** ~64 GB liberi pe `local-zfs` (la 2026-08-11 erau 242 GB) și oprirea VM 303 pe -durata copierii. Snapshot-ul `pre-sysprep` **trebuie șters înainte** — un volum ZFS cu -snapshot-uri nu poate fi mutat: -```bash -ssh root@10.0.20.201 "qm delsnapshot 303 pre-sysprep" -``` - -## Acces la `\\ROACENTRAL\temp` fără cont de administrator - -> **Decizie 2026-08-11: NU se creează contul `fisiere`.** Utilizatorul a ales să rămână pe -> `romfast`, care funcționează. Secțiunea rămâne doar ca referință, dacă se răzgândește -> cineva. **Nu executa comenzile de mai jos fără o cerere explicită.** - -`Everyone` pe share **nu** înseamnă acces anonim. Windows 11 blochează implicit logon-ul -de tip guest/anonim (`EnableInsecureGuestLogons=False`, `Guest` dezactivat și prezent în -`SeDenyNetworkLogonRight`), iar `LimitBlankPasswordUse=1` interzice conturile fără parolă -la logon prin rețea. Deci e nevoie întotdeauna de **un cont real cu parolă** — dar nu -trebuie să fie administrator. - -Permisiunile existente pe .122 (verificate) fac treaba fără nicio modificare de ACL: - -| Nivel | Permisiune | -|---|---| -| Share `temp` | `Everyone: Full` | -| NTFS `C:\temp` | `Authenticated Users: Modify`, `Users: ReadAndExecute` | - -Un cont simplu din grupul `Users` primește deci **Modify** (citire + scriere) pe `C:\temp`, -fără drepturi pe restul mașinii. `SeNetworkLogonRight` include deja `S-1-5-32-545` -(`Users`), deci logon-ul prin rețea e permis. - -**Pe ROACENTRAL (10.0.20.122), ca administrator:** -```powershell -$pw = Read-Host -AsSecureString "Parola pentru contul de share" -New-LocalUser -Name fisiere -Password $pw -PasswordNeverExpires -AccountNeverExpires ` - -Description "Acces \\ROACENTRAL\temp, fara drepturi de admin" -Add-LocalGroupMember -Group Users -Member fisiere -``` - -**De pe VM 303 (sau orice altă mașină):** -```cmd -net use \\10.0.20.122\temp /user:ROACENTRAL\fisiere * -``` - -Contul `fisiere` **nu** trebuie adăugat în `Administrators`. Dacă vrei acces doar de -citire, scoate `Authenticated Users: Modify` de pe `C:\temp` și lasă doar -`Users: ReadAndExecute`. -- Windows nu era activat nici înainte (`LicenseStatus 5`), deci nu s-a pierdut activare. - ReArm-uri rămase: 1001. -- Pachete Appx scoase ca să treacă sysprep: `Microsoft.Winget.Source`, - `Microsoft.Edge.GameAssist`, `Microsoft.WidgetsPlatformRuntime`, - `Microsoft.StartExperiencesApp`, `NotepadPlusPlus` (versiunea Store; cea desktop a - rămas), plus un pachet cu nume GUID. -- Rămășiță inofensivă: folderul `C:\Users\defaultuser0` (contul e șters, folderul era - blocat de un proces) — dispare la o repornire. - -**Snapshot de siguranță:** `pre-sysprep` (2026-08-10 23:31, făcut cu VM-ul oprit curat). -De șters după ce totul e confirmat: -```bash -ssh root@10.0.20.201 "qm delsnapshot 303 pre-sysprep" -``` - -**Alternativă, dacă SMB tot nu e dorit:** VM 201 are OpenSSH pe portul 22 (verificat) — -`scp fisier.txt romfast@10.0.20.122:/C:/temp/`, fără NTLM. - -## ✅ REPARAT — template curat pentru viitor: VM 310 - -**Cauza la sursă:** template-ul VM 300 `Win11-Template` nu era sysprep-uit — verificat, purta -SID-ul `S-1-5-21-1850128657-3079265004-705332634`, identic cu VM 201. Orice clonă din el -moștenea numele `ROACENTRAL` și acel SID. - -VM 300 **nu poate fi reparat în loc**: e template (read-only) și VM 303 e linked clone din el -(`origin: rpool/data/base-300-disk-0@__base__`). Modificarea bazei ar distruge VM 303. - -**Soluția aplicată:** clonă completă 300 → VM 310, sysprep acolo, conversie în template. - -| | VM 300 (vechi) | VM 310 (nou) | -|---|---|---| -| Nume la clonare | `ROACENTRAL` (fix) | `DESKTOP-xxxxxxx` (aleator, prin OOBE) | -| SID de mașină | fix, al lui VM 201 | nou la fiecare clonă | -| Stare | ⛔ nu clona | ✅ de folosit | - -Verificat efectiv, nu presupus: o clonă de probă (VM 311, ștearsă după test) a pornit cu -`DESKTOP-88DEOL2` și SID `S-1-5-21-2704088831-3630746092-3876790623` — complet diferit. - -### Capcană la sysprep (dacă se repetă operația) - -Prima rulare a eșuat. Două lucruri de rezolvat înainte: - -1. **Reboot CBS în așteptare** — `HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\RebootPending`. Repornește întâi. -2. **Pachete Appx instalate per-utilizator dar neprovizionate** — sysprep se oprește cu - `0x80073cf2`. Log-ul le numește explicit în `C:\Windows\System32\Sysprep\Panther\setuperr.log`. - Aici au fost `Microsoft.Winget.Source`, `Microsoft.StartExperiencesApp`, - `Microsoft.WidgetsPlatformRuntime`; scoase cu `Remove-AppxPackage -AllUsers`. - -`sysprep /generalize /oobe /shutdown` oprește VM-ul **doar dacă reușește** — dacă mașina -rămâne pornită, a eșuat, citește `setuperr.log`. **Nu porni VM-ul după sysprep reușit**: -prima pornire consumă generalizarea. Convertește direct în template. - -### Documentație aliniată - -`proxmox/README.md`, `proxmox/cluster/README.md`, `proxmox/vm302-oracle-test/README.md` și -`proxmox/lxc108-oracle/roa-windows-setup/test/clone-vm300.sh` (`SOURCE_VMID` 300 → 310) -indică acum template-ul nou și marchează VM 300 ca „nu clona". - -VM 300 nu poate fi șters cât timp există VM 303 (linked clone). - -## ⚠️ Verificat și nepericulos (fals alarm ridicat pe parcurs) - -Task-ul `\tasks xml roa` de pe .122 (zilnic 16:00, rulează ca `romfast` cu -`LogonType=Password`, acțiune `D:\ROAUPDATE\TASKS\tasks.exe s xml_roa_auto`) părea că se -va rupe după schimbarea parolei din 10.08 ora 22:02. Utilizatorul a pus la loc aceeași -parolă și a testat task-ul — **funcționează**. Nu necesită intervenție. - -## Cum se accesează mașinile (fără parole) - -```bash -ssh root@10.0.20.201 # cheie SSH deja acceptată -qm guest exec 303 -- powershell.exe -NoProfile -EncodedCommand -qm guest exec 201 -- powershell.exe -NoProfile -EncodedCommand -``` - -Quoting-ul prin `ssh` → `qm guest exec` → `cmd.exe` rupe argumentele; `-EncodedCommand` -cu base64 UTF-16LE e singura variantă care merge de fiecare dată. - -## Curățenie rămasă - -```bash -ssh root@10.0.20.201 "qm delsnapshot 303 pre-rename" # după ce totul e confirmat -``` diff --git a/proxmox/README.md b/proxmox/README.md index 710bd1f..8e102c0 100644 --- a/proxmox/README.md +++ b/proxmox/README.md @@ -440,7 +440,7 @@ ssh root@10.0.20.201 "qm snapshot 302 pre-test --description 'Before ROA test'" | **109** | **standby-dr** | **Windows Server** | **`vm109-windows-dr/`** | | **201** | **roacentral** | **Windows 11** | **`vm201-windows/`** | | **310** | **Win11-Template-Sysprep** | **Windows 11 (template de clonare)** | **`cluster/README.md`** | -| 300 | Win11-Template | Windows 11 | ⛔ nesysprep-uit, nu clona — `docs/handoff-smb-vm303-roacentral.md` | +| **303** | **Win11-Adina** | **Windows 11** | **`cluster/README.md`** | | **302** | **oracle-test-302** | **Windows 11 + Oracle 21c (test ROA)** | **`vm302-oracle-test/`** | --- diff --git a/proxmox/cluster/README.md b/proxmox/cluster/README.md index 9132060..dccdeff 100644 --- a/proxmox/cluster/README.md +++ b/proxmox/cluster/README.md @@ -248,7 +248,6 @@ pct set --rootfs local-zfs:20 | 201 | roacentral | pvemini | 10.0.20.122 | 4 cores | 6 GB | 500 GB | running | | 303 | Win11-Adina | pvemini | DHCP | 4 cores | 8 GB | 500 GB | running | | 310 | Win11-Template-Sysprep | pvemini | - | 2 cores | 4 GB | 500 GB | template ✅ | -| 300 | Win11-Template | pvemini | - | 2 cores | 4 GB | 500 GB | template ⛔ NU CLONA | | 302 | oracle-test-302 | pvemini | - | 4 cores | 4 GB | 500 GB | stopped | | 109 | oracle-dr-windows | pveelite | 10.0.20.37 | 4 cores | 6 GB | 500 GB | stopped | @@ -377,8 +376,13 @@ cat /etc/pve/corosync.conf | VMID | Nume | IP | OS | Rol | |------|------|-----|-----|-----| | 201 | roacentral | DHCP | Windows 11 | Client aplicații | -| 310 | Win11-Template-Sysprep | - | Windows 11 | ✅ Template pentru clonare (sysprep-uit) | -| 300 | Win11-Template | - | Windows 11 | ⛔ Nesysprep-uit — NU clona, vezi `docs/handoff-smb-vm303-roacentral.md` | +| 303 | Win11-Adina | DHCP (10.0.20.101) | Windows 11 | Stație de lucru | +| 310 | Win11-Template-Sysprep | - | Windows 11 | ✅ Singurul template de clonare (sysprep-uit) | + +> VM 300 `Win11-Template` — **șters 2026-08-11**. Nu era sysprep-uit: purta numele +> `ROACENTRAL` și SID-ul de mașină al VM 201 și le transmitea fiecărei clone, iar două +> mașini cu același SID de mașină nu se pot autentifica între ele prin SMB/NTLM. Înlocuit +> de VM 310, generalizat cu `sysprep /generalize`. ### Accesuri Rapide ```bash diff --git a/proxmox/lxc108-oracle/roa-windows-setup/test/clone-vm300.sh b/proxmox/lxc108-oracle/roa-windows-setup/test/clone-vm300.sh index cfc09bd..bc6e036 100644 --- a/proxmox/lxc108-oracle/roa-windows-setup/test/clone-vm300.sh +++ b/proxmox/lxc108-oracle/roa-windows-setup/test/clone-vm300.sh @@ -13,10 +13,10 @@ # ./clone-vm300.sh 305 # Creates VM 305 named oracle-test-305 # ./clone-vm300.sh 320 roa-prod # Creates VM 320 named roa-prod # -# IMPORTANT — sursa e VM 310, NU VM 300: -# VM 300 `Win11-Template` NU e sysprep-uit: poarta numele (ROACENTRAL) si SID-ul -# de masina al VM 201. Clonele din el nu se pot autentifica prin SMB/NTLM nici cu -# VM 201, nici intre ele. Vezi docs/handoff-smb-vm303-roacentral.md. +# IMPORTANT — sursa e VM 310 (numele scriptului e istoric): +# VM 300 `Win11-Template` a fost STERS 2026-08-11. NU era sysprep-uit: purta numele +# (ROACENTRAL) si SID-ul de masina al VM 201, iar clonele din el nu se puteau +# autentifica prin SMB/NTLM nici cu VM 201, nici intre ele. # VM 310 `Win11-Template-Sysprep` e varianta generalizata; fiecare clona primeste # SID si nume proprii la prima pornire (trece prin OOBE). # diff --git a/proxmox/vm302-oracle-test/README.md b/proxmox/vm302-oracle-test/README.md index 449f7f9..60a2825 100644 --- a/proxmox/vm302-oracle-test/README.md +++ b/proxmox/vm302-oracle-test/README.md @@ -406,11 +406,10 @@ ssh root@10.0.20.201 "qm start 304" ## Notes -- VM 302 is cloned from template VM 300 (clean Windows + Oracle XE) -- ⛔ **Pentru clone NOI foloseste template-ul VM 310 `Win11-Template-Sysprep`, nu VM 300.** - VM 300 nu e sysprep-uit: poarta numele si SID-ul de masina al VM 201, iar clonele lui - nu se pot autentifica prin SMB/NTLM cu VM 201 sau intre ele. Detalii si probe in - `docs/handoff-smb-vm303-roacentral.md`. +- VM 302 a fost clonata initial din template-ul VM 300 (clean Windows + Oracle XE) +- ✅ **Foloseste template-ul VM 310 `Win11-Template-Sysprep`.** VM 300 a fost **sters + 2026-08-11**: nu era sysprep-uit, purta numele si SID-ul de masina al VM 201, iar clonele + lui nu se puteau autentifica prin SMB/NTLM cu VM 201 sau intre ele. - Oracle XE has 2GB RAM limit - sufficient for testing - DMP files are already in C:\DMPDIR (persisted between tests) - Uninstall script preserves DMP files