Difference between revisions of "Installer Windows 7 fra nettet"

From Teknologisk videncenter
Jump to: navigation, search
m (Start af Windows installer)
m (Automatisering)
Line 91: Line 91:
 
Scriptet ser sådan her ud:
 
Scriptet ser sådan her ud:
 
<source lang=bash>
 
<source lang=bash>
 
 
#! /bin/bash
 
#! /bin/bash
  
Line 113: Line 112:
  
 
# Finder instalations filer frem og kopierer dem
 
# Finder instalations filer frem og kopierer dem
 +
echo "Creating Dirs..."
 
cd /mnt
 
cd /mnt
 
mkdir win7 hdd iso
 
mkdir win7 hdd iso
mount mercstor.tekkom.local:/data/raid/iso isomount /mnt/iso/Microsoft/Windows/Windows\ 7\ Professional\ \(x64\)\ -\ DVD\ \(English\)/en_windows_7_professional_x64_dvd_X15-65805.iso win7 -o loop
+
mount mercstor.tekkom.local:/data/raid/iso iso
 +
mount /mnt/iso/Microsoft/Windows/Windows\ 7\ Professional\ \(x64\)\ -\ DVD\ \(English\)/en_windows_7_professional_x64_dvd_X15-65805.iso win7 -o loop
 
mount /dev/sda1 hdd
 
mount /dev/sda1 hdd
 +
echo "Done"
 +
echo "Copying installation files..."
 
cp -r win7/* hdd/
 
cp -r win7/* hdd/
 +
echo "Done"
  
 
#opretter grub4dos på MBR
 
#opretter grub4dos på MBR
Line 123: Line 127:
 
unzip grub4dos-0.4.4.zip
 
unzip grub4dos-0.4.4.zip
 
cd grub4dos-0.4.4
 
cd grub4dos-0.4.4
.bootlace /dev/sda
+
./bootlace.com /dev/sda
 
cp grldr /mnt/hdd
 
cp grldr /mnt/hdd
  
Line 135: Line 139:
 
echo "chainloader /bootmgr" >> /mnt/hdd/menu.lst
 
echo "chainloader /bootmgr" >> /mnt/hdd/menu.lst
 
echo "savedefault --wait=2" >> /mnt/hdd/menu.lst
 
echo "savedefault --wait=2" >> /mnt/hdd/menu.lst
 +
 +
echo "Installation Done - Please reboot"
 
</source>
 
</source>
  

Revision as of 02:35, 10 December 2011

Oprettelse af partitioner

Har bootet en maskine over netværket med en live version af ubuntu 10.10. Brugt Gparted til at oprette en partitions tabel på disken, og lavet en NTFS partition på 4,5GiB i slutningen af disken. Den skal hedde sda1.

Vil man gøre det via commandline kan man skrive[1]

echo "Sikrer sig de første 5 partitioner bliver slettet, ved ikke hvordan man sletter alt:)"
parted /dev/sda rm 1
parted /dev/sda rm 2
parted /dev/sda rm 3
parted /dev/sda rm 4
parted /dev/sda rm 5
echo "opretter en partition til installations filer"
parted /dev/sda mkpart primary 20000 24500 # opretter en partition midt i, da man ikke kan bruge -4500 -0 fra kommando linien.
mkfs.ntfs /dev/sda1

Kopiere installations filer

Har installeret nfs-common på live ubuntu. og ændret i nsswitch så den ikke bruge mDNS

sudo bash
apt-get install nfs-common
mkdir /mnt/iso
mkdir /mnt/win7
mkdir /mnt/hdd
mount mercstor.tekkom.local:/data/raid/iso /mnt/iso
mount /mnt/iso/Microsoft/Windows/Windows\ 7\ Professional\ \(x64\)\ -\ DVD\ \(English\)/en_windows_7_professional_x64_dvd_X15-65805.iso /mnt/win7 -o loop
mount /dev/sda1 /mnt/hdd
cp -r /mnt/win7/* /mnt/hdd

At Boote Grub4dos

Har fået det til at virke på 2 måder med at loade grub4dos som loader windows installeren.

Via PXE

Alle filer er kopieret genstarter man kassen og vælger boot grub4dos i FOG menu'en - Den er sat op til at starte grub4dos med hd0,1 som root.

Udsnit fra pxelinux.cfg/default

LABEL install.windows
        root (hd0,1)
        kernel InstallTest/grub.exe
        MENU LABEL Boot grub4dos
        TEXT HELP
        This will boot grub4dos to install Windows 7 from hd0,1
        ENDTEXT

Via MBR

inden man genstarter kassen skal man downloade grub4dos og pakke den ud. I zip filen ligger der et program kalder bootlace.com til at oprette en MBR.[2]

wget grub4dos.zip
unzip grub4dos.zip
cd grub4dos
./bootlace /dev/sda
cp grldr /mnt/hdd

opret en fil i /mnt/hdd der hedder menu.lst, filen skal indeholde følgende.

# This is a sample menu.lst file. You should make some changes to it.
# The old install method of booting via the stage-files has been removed.
# Please install GRLDR boot strap code to MBR with the bootlace.com
# utility under DOS/Win9x or Linux.

color blue/green yellow/red white/magenta white/magenta
timeout 5
default /default

title Install Windows 7
fallback 1
find --set-root --ignore-floppies /bootmgr
chainloader /bootmgr
savedefault --wait=2

Start af Windows installer

Indtast følgende under grup og windows installatinen vil nu starte...

grub>find --set-root /bootmgr
grub>chainloader /bootmgr
grub>boot

Man kan nu fra windows' Disk Manager slette installations partitionen og udvide sin windows partition så den også fylder de sidste 4,5 GiB.

Automatisering

Et lille script der kan klare det hele, er smidt på fog.tekkom.dk/win7/install.sh.

Kaldes med:

sudo bash
wget fog.tekkom.dk/win7/install.sh
chmod +x install.sh
./install.sh
reboot

Scriptet ser sådan her ud:

#! /bin/bash

#Nu afinstallerer vi avahi for at kunne lave opslag på .local domainer
apt-get purge avahi-daemon -y

#Opsætning af disken begynder her
echo "Sikrer sig de første 5 partitioner bliver slettet, ved ikke hvordan man sletter alt:)"
parted /dev/sda rm 1
parted /dev/sda rm 2
parted /dev/sda rm 3
parted /dev/sda rm 4
parted /dev/sda rm 5
echo "opretter en partition til installations filer"

parted /dev/sda mkpart primary 1 4500
mkfs.ntfs /dev/sda1

#installer nfs-common for at kunne mounte NFS foldere.
apt-get install nfs-common -y

# Finder instalations filer frem og kopierer dem
echo "Creating Dirs..."
cd /mnt
mkdir win7 hdd iso
mount mercstor.tekkom.local:/data/raid/iso iso
mount /mnt/iso/Microsoft/Windows/Windows\ 7\ Professional\ \(x64\)\ -\ DVD\ \(English\)/en_windows_7_professional_x64_dvd_X15-65805.iso win7 -o loop
mount /dev/sda1 hdd
echo "Done"
echo "Copying installation files..."
cp -r win7/* hdd/
echo "Done"

#opretter grub4dos på MBR
wget fog.tekkom.dk/win7/grub4dos-0.4.4.zip
unzip grub4dos-0.4.4.zip
cd grub4dos-0.4.4
./bootlace.com /dev/sda
cp grldr /mnt/hdd

#opretter boot menu
echo "color blue/green yellow/red white/magenta white/magenta" > /mnt/hdd/menu.lst
echo "timeout 5" >> /mnt/hdd/menu.lst
echo "default /default" >> /mnt/hdd/menu.lst
echo "title Install Windows 7" >> /mnt/hdd/menu.lst
echo "fallback 1" >> /mnt/hdd/menu.lst
echo "find --set-root --ignore-floppies /bootmgr" >> /mnt/hdd/menu.lst
echo "chainloader /bootmgr" >> /mnt/hdd/menu.lst
echo "savedefault --wait=2" >> /mnt/hdd/menu.lst

echo "Installation Done - Please reboot"

Boot Windows 7 from Network - PXE

References