feat: Complete DOS machine deployment verification and AD2-NAS sync infrastructure
This checkpoint establishes verified deployment infrastructure for the Dataforth DOS Update System with proper file synchronization and documentation. ## Key Changes ### TS-4R Backup and Analysis - Backed up complete TS-4R machine to D:\ClaudeTools\backups\TS-4R\ - Analyzed MENUX.EXE startup menu system (758-line QuickBasic program) - Documented complete startup sequence: AUTOEXEC.BAT → STARTNET.BAT → MENUX.EXE - Found MENUX.BAS source code (Feb 2008 version) from KEPCO ABC software archive ### AD2-NAS Sync Infrastructure Fixes - Created junction: COMMON → _COMMON (single source of truth for software updates) - Verified bidirectional sync logic prevents data backflow: * Test data: DOS → NAS → AD2 → Database (one-way, deleted from NAS) * Program updates: AD2 → NAS → DOS (one-way, files remain on AD2) - Manually deployed correct BAT file versions to NAS after sync connection issues - Verified all 9 BAT files deployed correctly (5.1KB-8.8KB each) ### Deployment Scripts Created - check-junction.ps1: Verify COMMON/\_COMMON junction status - compare-common-folders.ps1: Compare folder contents - deploy-correct-bat-files.ps1: Deploy BAT files from local to AD2 - fix-common-junction.ps1: Create COMMON → _COMMON junction - verify-bat-deployment.ps1: Verify file versions on AD2 - manual-push-to-nas.sh: Manual BAT file deployment to NAS - read-sync-script.ps1: Read Sync-FromNAS.ps1 from AD2 - search-menux-ad2.ps1: Search for MENUX source files ### Documentation Updates - Updated all deployment guides with MENUX startup sequence - Added startup flow to credentials.md and session logs - Documented junction requirement for COMMON/\_COMMON - Added data flow verification confirming unidirectional sync ## Technical Details **Files Deployed to NAS (2026-01-20 09:01-09:02):** - UPDATE.BAT (5,181 bytes) - Machine backup utility - DEPLOY.BAT (5,579 bytes) - One-time deployment installer - NWTOC.BAT (6,305 bytes) - Network to Computer updates - CTONW.BAT (7,831 bytes) - Computer to Network uploads - CTONWTXT.BAT (1,504 bytes) - Text file version - CHECKUPD.BAT (6,495 bytes) - Check for updates - STAGE.BAT (8,794 bytes) - Stage system files - REBOOT.BAT (5,099 bytes) - Apply staged updates - AUTOEXEC.BAT (2,211 bytes) - DOS startup configuration **Sync Logic Verified:** - PULL: /data/test/TS-*/LOGS/*.DAT copied to AD2, then deleted from NAS - PUSH: C:\Shares\test\_COMMON\ProdSW\* copied to /data/test/COMMON/ProdSW/ - No reverse flow in either direction (test data never returns to DOS) **Junction Created:** - Target: C:\Shares\test\COMMON → C:\Shares\test\_COMMON - Eliminates duplicate file maintenance - Backup saved to C:\Shares\test\COMMON.backup ## Files Modified - DOS_DEPLOYMENT_GUIDE.md: Added automatic startup sequence - docs/DEPLOYMENT_GUIDE.md: Updated post-reboot expectations - docs/ENGINEER_HOWTO_GUIDE.md: Added MENUX menu loading step - credentials.md: Documented startup sequence and MENUX interface - session-logs/2026-01-19-session.md: Added startup documentation ## Files Added - 8 PowerShell deployment/verification scripts - 3 HTML documentation exports - TS-4R complete backup (not committed to git) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,40 +1,30 @@
|
||||
# Trigger sync on AD2 by creating and executing a remote batch file
|
||||
$password = ConvertTo-SecureString 'Paper123!@#' -AsPlainText -Force
|
||||
$cred = New-Object System.Management.Automation.PSCredential('INTRANET\sysadmin', $password)
|
||||
|
||||
$Username = "INTRANET\sysadmin"
|
||||
$Password = ConvertTo-SecureString "Paper123!@#" -AsPlainText -Force
|
||||
$Cred = New-Object System.Management.Automation.PSCredential($Username, $Password)
|
||||
|
||||
Write-Host "Connecting to AD2..."
|
||||
New-PSDrive -Name TEMP_AD2 -PSProvider FileSystem -Root "\\192.168.0.6\C$" -Credential $Cred | Out-Null
|
||||
Write-Host "[OK] Connected"
|
||||
Write-Host "================================================" -ForegroundColor Cyan
|
||||
Write-Host "Triggering Sync Script on AD2" -ForegroundColor Cyan
|
||||
Write-Host "================================================" -ForegroundColor Cyan
|
||||
Write-Host ""
|
||||
|
||||
# Create a trigger batch file on AD2
|
||||
$triggerContent = @"
|
||||
@ECHO OFF
|
||||
ECHO Running sync manually...
|
||||
powershell.exe -ExecutionPolicy Bypass -File C:\Shares\test\scripts\Sync-FromNAS.ps1 -Verbose
|
||||
ECHO Sync complete.
|
||||
"@
|
||||
Invoke-Command -ComputerName 192.168.0.6 -Credential $cred -ScriptBlock {
|
||||
Write-Host "Running Sync-FromNAS.ps1..." -ForegroundColor Yellow
|
||||
Write-Host ""
|
||||
|
||||
Set-Content -Path "TEMP_AD2:\Shares\test\scripts\run-sync-now.bat" -Value $triggerContent -Force
|
||||
Write-Host "[OK] Created trigger script on AD2"
|
||||
# Run the sync script
|
||||
& "C:\Shares\test\scripts\Sync-FromNAS.ps1"
|
||||
|
||||
# Try to execute it via PsExec-style approach
|
||||
Write-Host ""
|
||||
Write-Host "Attempting to trigger sync..."
|
||||
Write-Host ""
|
||||
Write-Host ""
|
||||
Write-Host "Sync complete!" -ForegroundColor Green
|
||||
Write-Host ""
|
||||
|
||||
# Create a scheduled task to run immediately
|
||||
$taskCmd = @"
|
||||
schtasks /create /s 192.168.0.6 /u INTRANET\sysadmin /p "Paper123!@#" /tn "TempSyncTrigger" /tr "C:\Shares\test\scripts\run-sync-now.bat" /sc once /st 00:00 /f
|
||||
schtasks /run /s 192.168.0.6 /u INTRANET\sysadmin /p "Paper123!@#" /tn "TempSyncTrigger"
|
||||
"@
|
||||
|
||||
Write-Host $taskCmd
|
||||
Invoke-Expression $taskCmd
|
||||
# Show sync status
|
||||
if (Test-Path "C:\Shares\test\_SYNC_STATUS.txt") {
|
||||
Write-Host "=== Sync Status ===" -ForegroundColor Yellow
|
||||
Get-Content "C:\Shares\test\_SYNC_STATUS.txt" | Select-Object -Last 10
|
||||
}
|
||||
}
|
||||
|
||||
Write-Host ""
|
||||
Write-Host "[INFO] Sync triggered. Check C:\Shares\test\scripts\sync-from-nas.log for results."
|
||||
|
||||
Remove-PSDrive TEMP_AD2
|
||||
Write-Host "================================================" -ForegroundColor Green
|
||||
Write-Host "Sync Triggered Successfully" -ForegroundColor Green
|
||||
Write-Host "================================================" -ForegroundColor Green
|
||||
|
||||
Reference in New Issue
Block a user