48 lines
1.8 KiB
PowerShell
48 lines
1.8 KiB
PowerShell
# Fix AD2 Sync-FromNAS.ps1 to preserve CRLF line endings
|
|
# Add -O flag to SCP commands to use legacy protocol (binary mode)
|
|
|
|
$Username = "INTRANET\sysadmin"
|
|
$Password = ConvertTo-SecureString "Paper123!@#" -AsPlainText -Force
|
|
$Cred = New-Object System.Management.Automation.PSCredential($Username, $Password)
|
|
|
|
Write-Host "[INFO] Connecting to AD2..."
|
|
|
|
# Read the current script
|
|
$ScriptContent = Invoke-Command -ComputerName 192.168.0.6 -Credential $Cred -ScriptBlock {
|
|
Get-Content 'C:\Shares\test\scripts\Sync-FromNAS.ps1' -Raw
|
|
}
|
|
|
|
Write-Host "[INFO] Current script retrieved"
|
|
|
|
# Create backup
|
|
$BackupName = "Sync-FromNAS_backup_$(Get-Date -Format 'yyyyMMdd_HHmmss').ps1"
|
|
Invoke-Command -ComputerName 192.168.0.6 -Credential $Cred -ScriptBlock {
|
|
param($Content, $Backup)
|
|
Set-Content "C:\Shares\test\scripts\$Backup" -Value $Content
|
|
} -ArgumentList $ScriptContent, $BackupName
|
|
|
|
Write-Host "[OK] Backup created: $BackupName"
|
|
|
|
# Fix the script - Add -O flag to SCP commands
|
|
$FixedContent = $ScriptContent -replace '& \$SCP -o StrictHostKeyChecking', '& $SCP -O -o StrictHostKeyChecking'
|
|
|
|
# Count changes
|
|
$Changes = ([regex]::Matches($FixedContent, '-O -o')).Count
|
|
Write-Host "[INFO] Adding -O flag to $Changes SCP commands"
|
|
|
|
# Upload fixed script
|
|
Invoke-Command -ComputerName 192.168.0.6 -Credential $Cred -ScriptBlock {
|
|
param($Content)
|
|
Set-Content 'C:\Shares\test\scripts\Sync-FromNAS.ps1' -Value $Content
|
|
} -ArgumentList $FixedContent
|
|
|
|
Write-Host "[SUCCESS] Sync-FromNAS.ps1 updated on AD2"
|
|
Write-Host ""
|
|
Write-Host "[INFO] The -O flag forces legacy SCP protocol (binary mode)"
|
|
Write-Host "[INFO] This prevents line ending conversion (CRLF preserved)"
|
|
Write-Host ""
|
|
Write-Host "Next steps:"
|
|
Write-Host " 1. Redeploy DEPLOY.BAT and UPDATE.BAT to AD2"
|
|
Write-Host " 2. Wait for next sync cycle (runs every 15 minutes)"
|
|
Write-Host " 3. Verify CRLF preserved on NAS"
|