Hyper-V Virtuelle Maschine per Script erstellen; mein Lösungsansatz

Deine Frage passt nicht in die anderen Bereiche, dann stelle sie hier.
Benutzeravatar
DK2000
Legende
Legende
Beiträge: 9604
Registriert: 03.04.2018, 00:07
Hat sich bedankt: 187 Mal
Danke erhalten: 602 Mal
Gender:

Re: Hyper-V Virtuelle Maschine per Script erstellen; mein Lösungsansatz

Beitrag von DK2000 » 28.02.2023, 18:52

Das sind halt Skripte, welche im PowerShell Terminal oder Konsole ausgeführt werden sollten. Wenn Du die durch anklicken, erscheint nur für die Dauer der Laufzeit ein PowerShell Fenster und beendet sich dann wieder. Es hat ja keinen Grund, geöffnet zu bleiben, wenn der Skript nicht mehr läuft.

Tante Google

Re: Hyper-V Virtuelle Maschine per Script erstellen; mein Lösungsansatz

Beitrag von Tante Google » 28.02.2023, 18:52


Benutzeravatar
g-force
Elite
Elite
Beiträge: 2380
Registriert: 07.10.2016, 19:30
Hat sich bedankt: 353 Mal
Danke erhalten: 355 Mal
Gender:

Re: Hyper-V Virtuelle Maschine per Script erstellen; mein Lösungsansatz

Beitrag von g-force » 28.02.2023, 19:00

Windows-Explorer biete mir bei PS-Scripten per Rechtsklick "Öffnen" an: Es öffnet sich "Notepad"
Windows-Explorer biete mir bei PS-Scripten per Rechtsklick "Bearbeiten" an: Es öffnet sich (nach kurzer Ladezeit) ein PS-Editor
Windows-Explorer biete mir bei PS-Scripten per Rechtsklick "Mit PS ausführen" an: PS-Fenster (blau) öffnet sich kurz und schließt wieder

Wenn ich "Ausführen" wähle, sollte das Script doch abgearbeitet werden, oder nicht?
Ich hatte so auch mal das ursprüngliche Script von Holgi gestartet, das blieb mit vielen Fehlermeldungen offen. Ich vermute also einen Fehler in meinem Script.
Windows VISTA x64 - Integration ALLER Updates: viewtopic.php?t=29624
Windows 7 x86/x64 - Integration ALLER Updates: viewtopic.php?t=26485
Windows 8.1 x86/x64 - Integration ALLER Updates: viewtopic.php?t=28193
Windows XP x86/x64 ISO mit allen Updates: viewtopic.php?t=28348
Mein Home-Server: http://gofile.me/7psKS/mVZltKndw

Benutzeravatar
DK2000
Legende
Legende
Beiträge: 9604
Registriert: 03.04.2018, 00:07
Hat sich bedankt: 187 Mal
Danke erhalten: 602 Mal
Gender:

Re: Hyper-V Virtuelle Maschine per Script erstellen; mein Lösungsansatz

Beitrag von DK2000 » 28.02.2023, 19:07

Nein, Du muss die PowerShell direkt im Startmenü öffnen und dann zum Ordner mit dem Skript wechseln und dann in diesem Fenster das Skript ausführen. Dann bleibt es geöffnet und Du kannst die Fehler sehen.

Benutzeravatar
g-force
Elite
Elite
Beiträge: 2380
Registriert: 07.10.2016, 19:30
Hat sich bedankt: 353 Mal
Danke erhalten: 355 Mal
Gender:

Re: Hyper-V Virtuelle Maschine per Script erstellen; mein Lösungsansatz

Beitrag von g-force » 28.02.2023, 19:33

@DK2000
Habe ich so gemacht, nun kommt auch eine Fehlermeldung:
PS-Fehler_1.JPG
Nun ist die Frage, wie ich weitermachen muß?
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Windows VISTA x64 - Integration ALLER Updates: viewtopic.php?t=29624
Windows 7 x86/x64 - Integration ALLER Updates: viewtopic.php?t=26485
Windows 8.1 x86/x64 - Integration ALLER Updates: viewtopic.php?t=28193
Windows XP x86/x64 ISO mit allen Updates: viewtopic.php?t=28348
Mein Home-Server: http://gofile.me/7psKS/mVZltKndw

Benutzeravatar
Holgi
Elite
Elite
Beiträge: 2663
Registriert: 12.05.2018, 12:33
Hat sich bedankt: 324 Mal
Danke erhalten: 410 Mal
Gender:

Re: Hyper-V Virtuelle Maschine per Script erstellen; mein Lösungsansatz

Beitrag von Holgi » 28.02.2023, 19:48

ich glaube es gab/gibt ein Problem mit dem Netzwerk Switch. Habe ich zur Zeit auch, seit dem ich diesen VLAN Switch aus dem WDS-Server Projekt drin habe. Mit einer kleinen Anpassung ging es jetzt mit deinem Script bei mir.
Ggf. also den Switch Namen im Script anpassen!!
Wichtig: alle Ordner bereits vorhanden? Leerzeichen?

1. g-force_VM_Script.bat

Code: Alles auswählen

@ECHO OFF
PowerShell.exe -NoProfile -Command "& {Start-Process PowerShell.exe -ArgumentList '-NoProfile -ExecutionPolicy Bypass -File ""%~dpn0.ps1""' -Verb RunAs}"
2. g-force_VM_Script.ps1

Code: Alles auswählen

$VMName="TESTVM"
$VMPath="C:\NTLITE\VM"
$ISOPath="C:\NTLITE\ISO"
$ISOName="WINDOWS11_22H2.iso"
# $PCName="Win10-WORK"
$PCName="DARKSTAR"


Get-VM "$VMName" | select -Property VMName, State

Stop-VM -Name "$VMName" -Force | out-null
Remove-VM -Name "$VMName" -Force | out-null
Remove-Item "$VMPath\$VMName.vhdx" -Force | out-null

cls

# Switch is nothing but network adapter
# $Switch = (Get-VMSwitch).Name
$Switch = "Default Switch"
# OS Iso file should be assigned to InstallMedia
# $InstallMedia = §ISOName

# Create New Virtual Machine
# MemoryStartupBytes contents the RAM size of VM.
# NewVHDSizeBytes contents the size of HD.


New-VM -Name $VMName -MemoryStartupBytes 4GB -Generation 2 -NewVHDPath "$VMName.vhdx" -NewVHDSizeBytes 50GB -SwitchName $Switch

# Add DVD Drive to Virtual Machine
Add-VMScsiController -VMName $VMName

Add-VMDvdDrive -VMName $VMName -Path $ISOPath\$ISOName

# Mount Installation Media
$DVDDrive = Get-VMDvdDrive -VMName $VMName

# Configure Virtual Machine to Boot from DVD
Set-VMFirmware -VMName $VMName -FirstBootDevice $DVDDrive

# Die VM bekommt 2 virtuelle Prozessoren
Set-VMProcessor -VMName $VMName -Count 2

# Checkpoints nicht automatisch erstellen
Set-VM -VMName $VMName -AutomaticCheckpointsEnabled $false
Set-VM -VMName $VMName -CheckpointType Disabled

# Gastdienste aktivieren (WINDOWS English, WINDOWS German)
# Enable-VMIntegrationService -VMName $VMName -Name 'Guest Service Interface'
Enable-VMIntegrationService -VMName $VMName -Name 'Gastdienstschnittstelle'

# Zeitsynchronisation (WINDOWS English, WINDOWS German)
# Disable-VMIntegrationService -VMName $VMName -Name "Time Synchronization"
# Disable-VMIntegrationService -VMName $VMName -Name "Zeitsynchronistation"

# Videoauflösung einstellen
set-vmvideo -VMName $VMName -ResolutionType Maximum -HorizontalResolution 1366 -VerticalResolution 768

# Dynamischen Arbeitsspeicher einrichten
Set-VM -VMName $VMName -DynamicMemory -MemoryMinimumBytes 1024mb -MemoryMaximumBytes 4GB -Confirm:$false

# automatische Start-/StoppAktionen einrichten
Set-VM -VMName $VMName -AutomaticStartAction StartIfRunning -AutomaticStopAction Save -Confirm:$false

# ExposeVirtualizationExtensions
# Set-VMProcessor -VMName $VMName -ExposeVirtualizationExtensions $true

# TPM aktivieren
$owner = Get-HgsGuardian UntrustedGuardian
$kp = New-HgsKeyProtector -Owner $owner -AllowUntrustedRoot
Set-VMMemory -DynamicMemoryEnabled $false -VMName $VMName

Set-VMKeyProtector -VMName $VMName -KeyProtector $kp.RawData
# Set-VMSecurityPolicy -VMName $VMName -Shielded $true
Enable-VMTPM -VMName $VMName

Set-VMSecurity -VMName $VMName -EncryptStateAndVmMigrationTraffic $true


# Start the VM and connect to it
Start-VM -Name $VMName
vmconnect $env:COMPUTERNAME $VMName
beide scripte im gleichen Ordner und bat starten
wenn es Probleme gibt, mit dem PS Script, dann einfach mal "pause" zwischen den Schritten einsetzen.
Dann kann man schauen, wie/ob die Befehle verarbeitet wurden. So bin ich jetzt auch drauf gekommen.
Ansonsten gerne noch mal fragen.
PS: die Variablen noch mal nach deinen Gegebenheiten anpassen! Computername, ISO-Name etc.
PDF24 angepasste Installation (nur PDF Druckertreiber) per Script: viewtopic.php?t=30284
Winget (Desktop App Installer) für Windows Versionen ohne Store installieren (HowTo): viewtopic.php?t=26214
Vorstellung: tiny11builder; Script zur Verschlankung von Windows 11: viewtopic.php?t=30134
Windows StartMenü Empfohlen (Recommended Section) komplett ausblenden: viewtopic.php?t=30574
Hyper-V VM per Script erstellen viewtopic.php?t=25114

Benutzeravatar
g-force
Elite
Elite
Beiträge: 2380
Registriert: 07.10.2016, 19:30
Hat sich bedankt: 353 Mal
Danke erhalten: 355 Mal
Gender:

Re: Hyper-V Virtuelle Maschine per Script erstellen; mein Lösungsansatz

Beitrag von g-force » 28.02.2023, 20:35

"Diese App kann auf deinen PC nicht ausgeführt werden" - großer blauer Hinweis. Mein PC mag kein PS - wie kann ich das ändern?
Windows VISTA x64 - Integration ALLER Updates: viewtopic.php?t=29624
Windows 7 x86/x64 - Integration ALLER Updates: viewtopic.php?t=26485
Windows 8.1 x86/x64 - Integration ALLER Updates: viewtopic.php?t=28193
Windows XP x86/x64 ISO mit allen Updates: viewtopic.php?t=28348
Mein Home-Server: http://gofile.me/7psKS/mVZltKndw

Benutzeravatar
DK2000
Legende
Legende
Beiträge: 9604
Registriert: 03.04.2018, 00:07
Hat sich bedankt: 187 Mal
Danke erhalten: 602 Mal
Gender:

Re: Hyper-V Virtuelle Maschine per Script erstellen; mein Lösungsansatz

Beitrag von DK2000 » 28.02.2023, 20:37

Das hatte ich noch nicht. PowerShell 5.1 gehört ja zu Windows. PowerShell 7 gibt es extra.

Aber wie auch immer. Im Moment wirklich keine Ahnung, warum PowerShell bei Dir nicht ausgeführt werden kann, aber die SKripte anscheinen starten. Das ist ein Wiederspruch in sich.

Benutzeravatar
g-force
Elite
Elite
Beiträge: 2380
Registriert: 07.10.2016, 19:30
Hat sich bedankt: 353 Mal
Danke erhalten: 355 Mal
Gender:

Re: Hyper-V Virtuelle Maschine per Script erstellen; mein Lösungsansatz

Beitrag von g-force » 28.02.2023, 20:41

Mein "Arbeits-Windows" (Win10-WORK) ist natürlich auch nicht ganz original, das ist auch etwas reduziert mit NTlite und DISM++.
Ich habe aber nie aktiv irgendwelche Sperren gesetzt, eher im Gegenteil (kein Defender).
Windows VISTA x64 - Integration ALLER Updates: viewtopic.php?t=29624
Windows 7 x86/x64 - Integration ALLER Updates: viewtopic.php?t=26485
Windows 8.1 x86/x64 - Integration ALLER Updates: viewtopic.php?t=28193
Windows XP x86/x64 ISO mit allen Updates: viewtopic.php?t=28348
Mein Home-Server: http://gofile.me/7psKS/mVZltKndw

Benutzeravatar
DK2000
Legende
Legende
Beiträge: 9604
Registriert: 03.04.2018, 00:07
Hat sich bedankt: 187 Mal
Danke erhalten: 602 Mal
Gender:

Re: Hyper-V Virtuelle Maschine per Script erstellen; mein Lösungsansatz

Beitrag von DK2000 » 28.02.2023, 21:02

Ist schwer zu sagen. Eventuell mit DISM++ und NTlite irgendetwas beschädigt, so das PowerShell 5.1 nicht mehr ausgeführt werden kann. Aber kann ich im Moment wirklich nichts weiter zu sagen. Eventuell würde ein Inplace Upgrade mit einer modifizierten ISO funktionieren.

Was passiert eigentlich, wenn Du in der Eingabeaufforderung mal "powershell" eingibst. Das sollte in der Eingabeaufforderung zu PowerShell wechseln. Falls Du PowerShell 7 installiert hast, wäre das "pwsh". Aber "powershell" sollte immer starten, da es zu Windows gehört. Oder hast Du diese in den optionalen Features deinstalliert?

Benutzeravatar
g-force
Elite
Elite
Beiträge: 2380
Registriert: 07.10.2016, 19:30
Hat sich bedankt: 353 Mal
Danke erhalten: 355 Mal
Gender:

Re: Hyper-V Virtuelle Maschine per Script erstellen; mein Lösungsansatz

Beitrag von g-force » 28.02.2023, 21:21

Ich kann PS über Startmenü aufrufen (auch als Administrator), hatte ich ja schon in einem obigen Post beschrieben (wo ich dann den Pfad zum PS-Script eingegeben habe): viewtopic.php?p=405547#p405547
Windows VISTA x64 - Integration ALLER Updates: viewtopic.php?t=29624
Windows 7 x86/x64 - Integration ALLER Updates: viewtopic.php?t=26485
Windows 8.1 x86/x64 - Integration ALLER Updates: viewtopic.php?t=28193
Windows XP x86/x64 ISO mit allen Updates: viewtopic.php?t=28348
Mein Home-Server: http://gofile.me/7psKS/mVZltKndw

Benutzeravatar
DK2000
Legende
Legende
Beiträge: 9604
Registriert: 03.04.2018, 00:07
Hat sich bedankt: 187 Mal
Danke erhalten: 602 Mal
Gender:

Re: Hyper-V Virtuelle Maschine per Script erstellen; mein Lösungsansatz

Beitrag von DK2000 » 28.02.2023, 22:06

Ach so, Missverständnis. Dachte es geht um die PowerShell an sich und nicht nur um den Skript. Ja, solange die nicht signiert sind, muss man das Ausführen erst erlauben (als Admin ausführen in der PowerShell ausführen).

Code: Alles auswählen

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
Das schaltet das für den gerade angemeldeten Benutzer frei. Für alle Benutzer, also systemweit wäre das:

Code: Alles auswählen

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine
Danach sollte sich die Skripte ausführen lassen. Sorry, das hatte ich ganz übersehen.

Benutzeravatar
Holgi
Elite
Elite
Beiträge: 2663
Registriert: 12.05.2018, 12:33
Hat sich bedankt: 324 Mal
Danke erhalten: 410 Mal
Gender:

Re: Hyper-V Virtuelle Maschine per Script erstellen; mein Lösungsansatz

Beitrag von Holgi » 28.02.2023, 23:18

mit meiner Batch

Code: Alles auswählen

@ECHO OFF
PowerShell.exe -NoProfile -Command "& {Start-Process PowerShell.exe -ArgumentList '-NoProfile -ExecutionPolicy Bypass -File ""%~dpn0.ps1""' -Verb RunAs}"
erübrigt sich aber das vorherige signieren.
Gerade mal in einer VM ausprobiert:
get-ExecutionPolicy zeigt "Restricted" auf.
Dann das Doppel aus .bat und .ps1 Script ausgeführt > läuft!
PDF24 angepasste Installation (nur PDF Druckertreiber) per Script: viewtopic.php?t=30284
Winget (Desktop App Installer) für Windows Versionen ohne Store installieren (HowTo): viewtopic.php?t=26214
Vorstellung: tiny11builder; Script zur Verschlankung von Windows 11: viewtopic.php?t=30134
Windows StartMenü Empfohlen (Recommended Section) komplett ausblenden: viewtopic.php?t=30574
Hyper-V VM per Script erstellen viewtopic.php?t=25114

Benutzeravatar
DK2000
Legende
Legende
Beiträge: 9604
Registriert: 03.04.2018, 00:07
Hat sich bedankt: 187 Mal
Danke erhalten: 602 Mal
Gender:

Re: Hyper-V Virtuelle Maschine per Script erstellen; mein Lösungsansatz

Beitrag von DK2000 » 28.02.2023, 23:32

In der Batch hast Du auch "-ExecutionPolicy Bypass". Da wird die ebenfalls Signierung umgangen. Das kann man halt auch Permanent für den Benutzer/System setzen. Habe das bei mir hat auf "-ExecutionPolicy RemoteSigned" eingestellt. Da kann ich die Skripte auch direkt in der PowerShell ausführen. Ansonsten wäre mein Profil auch blockiert.
Screenshot 2023-02-28 233321.png
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Benutzeravatar
Holgi
Elite
Elite
Beiträge: 2663
Registriert: 12.05.2018, 12:33
Hat sich bedankt: 324 Mal
Danke erhalten: 410 Mal
Gender:

Re: Hyper-V Virtuelle Maschine per Script erstellen; mein Lösungsansatz

Beitrag von Holgi » 28.02.2023, 23:44

ja, muss eben jeder wissen, was für ihn passt. Viele Wege führen nach ROM.
Mal sehen, ob wir @g-force irgendwie helfen können, das PS Script zum Laufen zu bekommen.
PDF24 angepasste Installation (nur PDF Druckertreiber) per Script: viewtopic.php?t=30284
Winget (Desktop App Installer) für Windows Versionen ohne Store installieren (HowTo): viewtopic.php?t=26214
Vorstellung: tiny11builder; Script zur Verschlankung von Windows 11: viewtopic.php?t=30134
Windows StartMenü Empfohlen (Recommended Section) komplett ausblenden: viewtopic.php?t=30574
Hyper-V VM per Script erstellen viewtopic.php?t=25114

Benutzeravatar
g-force
Elite
Elite
Beiträge: 2380
Registriert: 07.10.2016, 19:30
Hat sich bedankt: 353 Mal
Danke erhalten: 355 Mal
Gender:

Re: Hyper-V Virtuelle Maschine per Script erstellen; mein Lösungsansatz

Beitrag von g-force » 01.03.2023, 00:43

Lässt sich das nicht auch komplett über CMD lösen? Geht bei VirtualBox doch auch?
Windows VISTA x64 - Integration ALLER Updates: viewtopic.php?t=29624
Windows 7 x86/x64 - Integration ALLER Updates: viewtopic.php?t=26485
Windows 8.1 x86/x64 - Integration ALLER Updates: viewtopic.php?t=28193
Windows XP x86/x64 ISO mit allen Updates: viewtopic.php?t=28348
Mein Home-Server: http://gofile.me/7psKS/mVZltKndw

Antworten