Files
Windows-Server-Contabo-VPS-…/windows-install.sh
2025-12-19 03:26:10 +00:00

68 lines
2.0 KiB
Bash

#!/bin/bash
# Configuration des URLs
URL_ISO_WIN="https://bit.ly/3UGzNcB"
URL_VIRTIO="https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/stable-virtio/virtio-win.iso"
echo "--- Préparation du système ---"
apt update -y
apt install grub2 wimtools rsync ntfs-3g gdisk parted wget -y
# 1. Nettoyage et Partitionnement
DISK="/dev/sda"
parted $DISK --script mklabel gpt
# Partition 1 : L'installeur (Boot) - 15 Go
parted $DISK --script mkpart primary ntfs 1MB 15GB
# Partition 2 : La cible (Système final) - Le reste du disque
parted $DISK --script mkpart primary ntfs 15GB 100%
partprobe $DISK
sleep 5
# Formatage en NTFS
mkfs.ntfs -f ${DISK}1
mkfs.ntfs -f ${DISK}2
# 2. Montage des partitions
mkdir -p /mnt/installer
mount ${DISK}1 /mnt/installer
# 3. Préparation de l'ISO Windows
mkdir -p /root/iso_win
wget -O /root/win10.iso "$URL_ISO_WIN"
mount -o loop /root/win10.iso /root/iso_win
# Copie des fichiers d'installation vers la partition de boot
rsync -avz --progress /root/iso_win/* /mnt/installer/
# 4. Intégration des pilotes VirtIO (Crucial pour Contabo)
mkdir -p /root/iso_virtio /mnt/installer/sources/virtio
wget -O /root/virtio.iso "$URL_VIRTIO"
mount -o loop /root/virtio.iso /root/iso_virtio
# Copie des drivers dans un dossier accessible par l'installeur
rsync -avz --progress /root/iso_virtio/* /mnt/installer/sources/virtio/
# 5. Injection des drivers dans Boot.wim (pour que l'installeur voit le disque)
cd /mnt/installer/sources
echo 'add virtio /virtio' > cmd.txt
# On injecte dans l'index 2 (l'environnement de setup Windows)
wimlib-imagex update boot.wim 2 < cmd.txt
# 6. Installation de GRUB pour booter sur la partition NTFS
grub-install --root-directory=/mnt/installer $DISK
cat <<EOF > /mnt/installer/boot/grub/grub.cfg
menuentry "Install Windows 10 IoT LTSC" {
insmod ntfs
search --set=root --file /bootmgr
ntldr /bootmgr
boot
}
EOF
echo "--- Terminé ! ---"
echo "Le VPS va redémarrer sur l'installeur Windows."
echo "Utilise la console VNC de Contabo pour finaliser l'installation."
sleep 5
reboot