Ansible/Playbooks/update-pve.ps1
2024-11-27 21:58:39 +01:00

35 lines
1.4 KiB
PowerShell

# PowerShell-Skript zum Remote-Update auf Proxmox-Servern via SSH
# Server und SSH-Login-Daten
$servers = @(
@{ Host = "192.168.178.2"; User = "root"; Password = "2002Lahann1902Joaquin*+1902*" },
@{ Host = "192.168.178.3"; User = "root"; Password = "2002Lahann1902Joaquin*+1902*" }
)
# SSH-Session starten und Befehle ausführen
foreach ($server in $servers) {
Write-Host "Verbinde zu Server $($server.Host) ..."
# SSH-Verbindung aufbauen
$session = New-SSHSession -ComputerName $server.Host -Credential (New-Object System.Management.Automation.PSCredential($server.User, (ConvertTo-SecureString $server.Password -AsPlainText -Force)))
if ($session) {
Write-Host "Erfolgreich verbunden mit $($server.Host). Starte das Update und Upgrade..."
# Update der Paketliste und Upgrade
$updateCommand = "apt update && apt upgrade -y && apt dist-upgrade -y && apt autoremove -y && apt autoclean -y"
$result = Invoke-SSHCommand -SessionId $session.SessionId -Command $updateCommand
# Ausgabe der Ergebnisse
Write-Host "Befehl ausgeführt auf $($server.Host):"
Write-Host $result.Output
# Schließen der SSH-Verbindung
Remove-SSHSession -SessionId $session.SessionId
} else {
Write-Host "Verbindung zu $($server.Host) fehlgeschlagen."
}
}
Write-Host "Update, Upgrade und Bereinigung auf allen Servern abgeschlossen."