====== Create custom Win USB install ======
sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt update
sudo apt install woeusb
sudo add-apt-repository --remove ppa:nilarimogard/webupd8
sudo apt update
or build manually from git:
git clone https://github.com/slacka/WoeUSB.git
cd WoeUSB/
./setup-development-environment.bash
sudo apt-get install devscripts equivs gdebi-core
mk-build-deps
sudo gdebi woeusb-build-deps_*.deb
dpkg-buildpackage -uc -b
sudo gdebi ../woeusb*.deb
identify USB stick's device
lsblk and/or
sudo blkid
Create adjustable USB stick from Windows ISO file
sudo umount /dev/sdb1
sudo woeusb --target-filesystem NTFS --device win_10.iso /dev/sdb
or use
woeusbgui
https://www.cyberciti.biz/faq/create-a-bootable-windows-10-usb-in-linux/
====== Create bootable win7 USB drive in linux ======
https://askubuntu.com/questions/289559/how-can-i-create-a-windows-bootable-usb-stick-using-ubuntu
Plug in USB Drive
check the device name using ''dmesg | tail''
unmount the drive if it was mounted automatically while /dev/sdX is the device name shown in dmesg
sudo umount /dev/sdX1
Partition using fdisk:
sudo fdisk /dev/sdX
- Type p and Enter to print the current partition table.
- Delete all the current partitions by typing d then Enter for each partition.
- Type n and Enter. Type p and Enter. Type 1 and then type Enter three times to create one new primary partition that uses all available space.
- Type t and Enter (Partition 1 is automatically selected because it’s the only partition). Type 7 and Enter to change the type to HPFS/NTFS/exFAT.
- Type a and Enter. Type 1 and Enter to turn on the Boot flag.
- To verify everything worked, type p and Enter and make sure the Boot column has an asterisk (*) set and the Id column is set to 7.
- Finally, type w and Enter to write the changes.
sfdisk /dev/sdX <
format the first partition with ntfs:
sudo apt-get install ntfs-3g
sudo mkfs.ntfs -f /dev/sdX1
or: use gparted using GUI
Add Grub bootloader:
#MBR instructions (note: EFI does not support NTFS!)
sudo mkdir -p /mnt/usb
sudo mount /dev/sdX1 /mnt/usb
sudo grub-install --target=i386-pc --boot-directory="/mnt/usb/boot" /dev/sdX
cat </mnt/usb/boot/grub/grub.cfg
default=1
timeout=15
color_normal=light-cyan/dark-gray
menu_color_normal=black/light-cyan
menu_color_highlight=white/black
menuentry "Start Windows Installation" {
insmod ntfs
insmod search_label
search --no-floppy --set=root --label dos --hint hd0,msdos1
ntldr /bootmgr
boot
}
menuentry "Boot from the first hard drive" {
insmod ntfs
insmod chain
insmod part_msdos
insmod part_gpt
set root=(hd1)
chainloader +1
boot
}
EOF
mount usb drive
sudo mkdir -p /mnt/usb
sudo mount /dev/sdX1 /mnt/usb
mount win7 iso (iso needs to be available locally):
sudo mkdir -p /mnt/iso
sudo mount -o loop /tmp/en_windows_7_professional_x64_dvd_X15-65805.iso /mnt/iso
copy win7 iso content to usb:
sudo cp -av /mnt/iso/* /mnt/usb/
copy any additional software, drivers etc to usb drive, then unmount it.
===== Add Drivers to Boot Image =====
If specific drivers are required for the installation like USB3 Host adapter drivers, follow these steps to add them to the boot/install image:
https://wimlib.net/ \\
Download wimtools, libntfs-3g88 and libwim15 from:
https://packages.debian.org/sid/libwim15
and install them using
sudo dpkg -i x.deb
mount the windows usb stick and go to the sources directory\\
in there you'll find a boot.wim and install.wim file.\\
make a backup copy of both just in case.
use wiminfo to list the images contained in the wim file.
sudo apt-get install wimtools dos2unix
To add a folder to an image, use this command:\\
create a commands.txt file and list all directories that need to be added:
add /home/drivers /DELL_DRIVERS
wimupdate boot.wim imageno. < commands.txt
repeat with install.wim and the required image number for the windows version.
===== Unattended Windows install =====
An autoattend.xml file can be created using this website: http://www.windowsafg.com/win7x86_x64.html
Mount the USB stick, create/copy/adjust an autoattend.xml file and either copy it in the root of the usb stick in MSDOS format or embed it into the Windows boot image.
Windows setup will use the xml file in the root automatically when the setup recognises the device as a removable media. USB HDDs, redirected USB drives for VirtualBox and even some USB sticks etc are considered as fixed drives and the autoattend.xml file on those is being ignored. In this case, the only option is to embed it into the boot image:
sudo apt-get install wimtools dos2unix
sudo mkdir -p /mnt/usb /mnt/loopback
sudo mount /dev/sdX1 /mnt/usb
sudo wimmountrw /mnt/usb/sources/boot.wim 2 /mnt/loopback
sudo cp autounattend.xml /mnt/loopback
sudo unix2dos /mnt/loopback/autounattend.xml
sudo wimunmount /mnt/loopback --commit
sudo umount /mnt/usb
Example script:
Never
0
1
Never
XXXX-XXXX-XXXX-XXXX-XXXX
Information Technology Services
Amati Global Investors
true
Never
0
true
1
Primary
true
net user administrator /active:yes
1
false
High
false
true
true
true
true
http://www.google.com
true
Google
SearchProvider1
http://www.google.com/search?q={searchTerms}
1
2057:00000809
en-GB
en-GB
3
Work
true
false
password
true
UserName
Administrators
secretadminpassword
true
GMT Standard Time
PC-WULF