Deploy Vista using WindowsPE and linux as RIS

++++++++++++++++++++++++++++++++++++++++
1. Install Windows Vista WAIK ( c:\waik)
++++++++++++++++++++++++++++++++++++++++
cd \waik\tools\petools\
copype.cmd x86 c:\vistape
cd \vistape
c:\waik\tools\x86\imagex /mountrw winpe.wim 1 mount
mkdir c:\pxe\Boot
cd \vistape\mount\windows\boot\pxe
copy * \pxe
cd \vistape\mount\windows\boot\fonts
copy wgl4_boot.ttf \pxe\Boot
cd \waik\tools\petools\x86\boot
copy boot.sdi \pxe
cd \vistape
copy winpe.wim \pxe
cd vistape\mount\windows\system32
bcdedit /createstore \pxe\BCD
bcdedit /store \pxe\bcd /create {ramdiskoptions} /d “Ramdisk options”
bcdedit /store \pxe\bcd /set {ramdiskoptions} ramdisksdidevice boot
bcdedit /store \pxe\BCD /set {ramdiskoptions} ramdisksdipath \Boot\boot.sdi
bcdedit /store \pxe\BCD /create /d “WinPE Boot Image” /application osloader
You should get a GUID returned! Replace the GUIDs below with the GUID you get back
<<<<<<<<  The entry {ed26a7d4-0ed5-11dc-9d1a-000c29ea1605} was successfully created. >>>>>>>>
bcdedit /store \pxe\BCD / _GUID_ systemroot \Windows
bcdedit /store \pxe\BCD / _GUID_ detecthal Yes
bcdedit /store \pxe\BCD / _GUID_ winpe Yes
bcdedit /store \pxe\BCD / _GUID_ osdevice ramdisk=[boot]\Boot\WinPE.wim,{ramdiskoptions}
bcdedit /store \pxe\BCD / _GUID_ device ramdisk=[boot]\Boot\WinPE.wim,{ramdiskoptions}
bcdedit /store \pxe\BCD /create {bootmgr} /d “Windows VISTA BootManager”
bcdedit /store \pxe\BCD /set {bootmgr} timeout 30
bcdedit /store \pxe\BCD /displayorder _GUID_
c:\WAIK\Tools\PETools\peimg /install=WinPE-Scripting-Package \vistape\mount
c:\WAIK\Tools\PETools\peimg /install=WinPE-HTA-Package \vistape\mount
c:\WAIK\Tools\PETools\peimg /install=WinPE-XML-Package \vistape\mount
create file install.cmd
@echo off
net use y: \\10.10.10.4\vista
net use z: \\10.10.10.4\configs
y:
setup.exe /unattend:z:\vista-unatt.xml
copy install.cmd vista\mount\windows\system32
c:\waik\tools\x86\imagex /unmount /commit \vistape\mount
copy c:\vistape\winpe.vim c:\pxe
++++++++++++++++++++++++++++++++++++++++
2. Now on linux side
++++++++++++++++++++++++++++++++++++++++
mkdir /tftpboot/Boot
use winSCP to copy content of pxe to Boot
mv pxeboot.n12 winpe.0
mv bootmgr.exe ..
mv winpe.wim WinPE.wim
++++++++++++++++++++++++++++++++++++++++
3.tftp configs
++++++++++++++++++++++++++++++++++++++++
cat /etc/tftp.rules
rg \\ /
cat /tftpboot/pxelinux.cfg/default
default local
timeout 0
prompt 1

label local
localboot 1
label 0
localboot 1
label RHEL5_x32
kernel linux-install/RHEL5_x32/vmlinuz
append initrd=linux-install/RHEL5_x32/initrd.img ramdisk_size=9071 ks=nfs:10.10.10.4:/home/installs/ks.cfg
label WinXp Sp3 (Unattended)
kernel winxp.0
label Windows Vista (Unattended)
kernel Boot/vista.0
4. Samba config
++++++++++++++++++++++++++++++++++++++++
smb.conf
++++++++++++++++++++++++++++++++++++++++
[global]
workgroup = WORKGROUP
server string = Samba Server
netbios name = samba1
log file =/var/log/samba/%m.log
security = share
max log size = 50
local master = yes
passdb backend = tdbsam
null passwords = yes
bind interfaces only = yes
interfaces = eth1 lo
[vista]
path = /path_to_vista_source_dvd
browseable = yes
guest ok = yes
read only = no
[configs]
path = /path_to_config_files
browseable = yes
guest ok = yes read only = no
5. Unattend answer file ( might work also for Win 7 )
++++++++++++++++++++++++++++++++++++++++
vista-unatt.xml target disk:-> Disk 0 ; size 40 gb, pr part = 20gb, sec part = 20gb
++++++++++++++++++++++++++++++++++++++++
<?xml version=”1.0″ encoding=”utf-8″?> <unattend xmlns=”urn:schemas-microsoft-com:unattend”>
< servicing>
< package action=”configure”>
< assemblyIdentity name=”Microsoft-Windows-Foundation-Package” version=”6.0.6000.16386″ processorArchitecture=”x86″ publicKeyToken=”31bf3856ad364e35″ language=”” />
<selection name=”TabletPCOC” state=”true” />
< selection name=”TelnetClient” state=”true” />
< selection name=”TelnetServer” state=”false” />
< selection name=”Windows-Ultimate-Extras” state=”true” />
< selection name=”AxInstallService” state=”false” />
< selection name=”FaxServicesUltimate” state=”true” />
< selection name=”IIS-WebServerRole” state=”false” />
< selection name=”InboxGames” state=”true” />
< selection name=”Indexing-Service-Package” state=”false” />
< selection name=”Microsoft-Windows-RemovableStorageManagement” state=”false” />
< selection name=”XPS-Viewer” state=”true” />
< selection name=”Printing-Foundation-Features” state=”true” />
< selection name=”SUA” state=”false” />
< selection name=”NetFx3″ state=”true” />
</package>
< /servicing>
< settings pass=”windowsPE”>
< component name=”Microsoft-Windows-Setup” processorArchitecture=”x86″ publicKeyToken=”31bf3856ad364e35″ language=”neutral” versionScope=”nonSxS” xmlns:wcm=”http://schemas.microsoft.com/WMIConfig/2002/State&#8221; xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”&gt;
< DiskConfiguration>
< Disk>
< DiskID>0</DiskID>
< WillWipeDisk>false</WillWipeDisk>
< CreatePartitions>
< !– Create Primary Partition –>
< CreatePartition>
< Order>1</Order>
< Type>Primary</Type>
< Size>20000</Size>
< /CreatePartition>
< !– Create Extended Partition –>
< CreatePartition>
< Order>2</Order>
< Type>Extended</Type>
< Extend>true</Extend>
< /CreatePartition>
< !– Create Logical Drive –>
< CreatePartition>
< Order>3</Order>
< Type>Logical</Type>
< Size>20000</Size>
< /CreatePartition>
< /CreatePartitions>
< ModifyPartitions>
< ModifyPartition>
< Order>1</Order>
< PartitionID>1</PartitionID>
< Active>true</Active>
< Format>NTFS</Format>
< Label>System</Label>
< Letter>C</Letter>
< /ModifyPartition>
< ModifyPartition>
< Order>2</Order>
< PartitionID>2</PartitionID>
< Label>Data</Label>
< Format>NTFS</Format>
< Extend>true</Extend>
< Letter>D</Letter>
< /ModifyPartition>
< /ModifyPartitions>
< /Disk>
< WillShowUI>OnError</WillShowUI>
</DiskConfiguration>
<ImageInstall>
< OSImage>
< InstallTo>
< DiskID>0</DiskID>
< PartitionID>1</PartitionID>
< /InstallTo>
< WillShowUI>OnError</WillShowUI>
< /OSImage>
< /ImageInstall>
< UserData>
< ProductKey>
< WillShowUI>OnError</WillShowUI>
< Key>Insert_productkey_here</Key>
< /ProductKey>
< AcceptEula>true</AcceptEula>
< Organization>IBM</Organization>
< /UserData>
<UseConfigurationSet>true</UseConfigurationSet>
</component>
<component name=”Microsoft-Windows-International-Core-WinPE” processorArchitecture=”x86″ publicKeyToken=”31bf3856ad364e35″ language=”neutral” versionScope=”nonSxS” xmlns:wcm=”http://schemas.microsoft.com/WMIConfig/2002/State&#8221; xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”&gt;
<SetupUILanguage>
<UILanguage>en-US</UILanguage>
</SetupUILanguage>
<InputLocale>en-US</InputLocale>
<SystemLocale>en-US</SystemLocale>
<UILanguage>en-US</UILanguage>
<UILanguageFallback>en-US</UILanguageFallback>
<UserLocale>en-US</UserLocale>
</component>
<component name=”Microsoft-Windows-PnpCustomizationsWinPE” processorArchitecture=”x86″ publicKeyToken=”31bf3856ad364e35″ language=”neutral” versionScope=”nonSxS” xmlns:wcm=”http://schemas.microsoft.com/WMIConfig/2002/State&#8221; xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”&gt;
</component>
</settings>
<settings pass=”specialize”>
<component name=”Microsoft-Windows-IE-InternetExplorer” processorArchitecture=”x86″ publicKeyToken=”31bf3856ad364e35″ language=”neutral” versionScope=”nonSxS” xmlns:wcm=”http://schemas.microsoft.com/WMIConfig/2002/State&#8221; xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”&gt;
<Home_Page>http://www.google.com</Home_Page&gt;
<FilterLevel>Medium</FilterLevel>
<BlockPopups>yes</BlockPopups>
<ShowInformationBar>true</ShowInformationBar>
<FavoritesDelete>false</FavoritesDelete>
<IEWelcomeMsg>true</IEWelcomeMsg>
<PlaySound>true</PlaySound>
</component>
<component name=”Microsoft-Windows-Shell-Setup” processorArchitecture=”x86″ publicKeyToken=”31bf3856ad364e35″ language=”neutral” versionScope=”nonSxS” xmlns:wcm=”http://schemas.microsoft.com/WMIConfig/2002/State&#8221; xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”&gt;
<OEMInformation>
<Manufacturer>IBM</Manufacturer>
<HelpCustomized>false</HelpCustomized>
<SupportPhone>123-456-789</SupportPhone>
</OEMInformation>
<ComputerName>VistaCLI</ComputerName>
<RegisteredOwner>IBM</RegisteredOwner>
<TimeZone>Eastern Standard Time</TimeZone>
</component>
<component name=”Microsoft-Windows-International-Core” processorArchitecture=”x86″ publicKeyToken=”31bf3856ad364e35″ language=”neutral” versionScope=”nonSxS” xmlns:wcm=”http://schemas.microsoft.com/WMIConfig/2002/State&#8221; xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”&gt;
<InputLocale>en-US</InputLocale>
<SystemLocale>en-US</SystemLocale>
<UILanguage>en-US</UILanguage>
<UILanguageFallback>en-US</UILanguageFallback>
<UserLocale>en-US</UserLocale>
</component>
<component name=”Microsoft-Windows-TCPIP” processorArchitecture=”x86″ publicKeyToken=”31bf3856ad364e35″ language=”neutral” versionScope=”nonSxS” xmlns:wcm=”http://schemas.microsoft.com/WMIConfig/2002/State&#8221; xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”&gt;
<Interfaces>
<Interface wcm:action=”add”>
<Ipv4Settings>
<DhcpEnabled>true</DhcpEnabled>
<RouterDiscoveryEnabled>true</RouterDiscoveryEnabled>
</Ipv4Settings>
<!–                    <Identifier>Local Area Connection</Identifier>
<UnicastIpAddresses>
<IpAddress wcm:action=”add” wcm:keyValue=”1″>_STATIC_IP_/_SHORT_MASK_</IpAddress>
</UnicastIpAddresses>
<Routes>
<Route wcm:action=”add”>
<Identifier>0</Identifier>
<Prefix>0.0.0.0/0</Prefix>
<NextHopAddress>_GATEWAY_</NextHopAddress>
<Metric>20</Metric>
</Route>
</Routes> –>
</Interface>
</Interfaces>
</component>
<!—        <component name=”Microsoft-Windows-DNS-Client” processorArchitecture=”x86″ publicKeyToken=”31bf3856ad364e35″ language=”neutral” versionScope=”nonSxS” xmlns:wcm=”http://schemas.microsoft.com/WMIConfig/2002/State&#8221; xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”&gt;
<DNSSuffixSearchOrder>
<DomainName wcm:action=”add” wcm:keyValue=”key”>_DNS_SEARCH1_</DomainName>
</DNSSuffixSearchOrder>
<Interfaces>
<Interface wcm:action=”add”>
<DNSServerSearchOrder>
<IpAddress wcm:action=”add” wcm:keyValue=”dnsip”>9.48.142.252</IpAddress>
</DNSServerSearchOrder>
<Identifier>Local Area Connection</Identifier>
</Interface>
</Interfaces>
<UseDomainNameDevolution>false</UseDomainNameDevolution>
</component> –>
</settings>
<settings pass=”oobeSystem”>
<component name=”Microsoft-Windows-Shell-Setup” processorArchitecture=”x86″ publicKeyToken=”31bf3856ad364e35″ language=”neutral” versionScope=”nonSxS” xmlns:wcm=”http://schemas.microsoft.com/WMIConfig/2002/State&#8221; xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”&gt;
<OOBE>
<HideEULAPage>true</HideEULAPage>
<NetworkLocation>Work</NetworkLocation>
<ProtectYourPC>1</ProtectYourPC>
<SkipMachineOOBE>true</SkipMachineOOBE>
<SkipUserOOBE>true</SkipUserOOBE>
</OOBE>
<AutoLogon>
<Password>
<Value>Temp123</Value>
</Password>
<Username>Administrator</Username>
<Enabled>true</Enabled>
<LogonCount>3</LogonCount>
</AutoLogon>
<UserAccounts>
<AdministratorPassword>
<Value>Temp123</Value>
<PlainText>true</PlainText>
</AdministratorPassword>
<LocalAccounts>
<LocalAccount wcm:action=”add”>
<Name>root</Name>
<Password>
<Value>Temp123</Value>
<PlainText>true</PlainText>
</Password>
</LocalAccount>
</LocalAccounts>
</UserAccounts>
<FirstLogonCommands>
<SynchronousCommand wcm:action=”add”>
<CommandLine>c:\ospm\post_install.cmd</CommandLine>
<Order>1</Order>
<Description>OSPM Post install</Description>
</SynchronousCommand>
</FirstLogonCommands>
<RegisteredOrganization>IBM</RegisteredOrganization>
<RegisteredOwner>IBM</RegisteredOwner>
</component>
<component name=”Microsoft-Windows-Sidebar” processorArchitecture=”x86″ publicKeyToken=”31bf3856ad364e35″ language=”neutral” versionScope=”nonSxS” xmlns:wcm=”http://schemas.microsoft.com/WMIConfig/2002/State” xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
<Gadget1>%PROGRAMFILES%\windows sidebar\gadgets\Clock.Gadget,true</Gadget1>
< Gadget2>%PROGRAMFILES%\windows sidebar\gadgets\RSSFeed.Gadget,false</Gadget2>
< Gadget3>%PROGRAMFILES%\windows sidebar\gadgets\SlideShow.gadget,false</Gadget3>
</component>
< /settings>
< settings pass=”generalize”>
<component name=”Microsoft-Windows-TerminalServices-LocalSessionManager” processorArchitecture=”x86″ publicKeyToken=”31bf3856ad364e35″ language=”neutral”
versionScope=”nonSxS” xmlns:wcm=”http://schemas.microsoft.com/WMIConfig/2002/State” xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”>
<fDenyTSConnections>false</fDenyTSConnections>
</component>
< /settings>
</unattend>
Here is the original XML file <vista-unatt.xml>
Now, boot target computer, select network boot, select Windows Vista and wait…..
After successful boot a command prompt will be showed: just type install.cmd and….. nothing else
Advertisements

One response to “Deploy Vista using WindowsPE and linux as RIS

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s