Search the Community
Showing results for tags 'diskless'.
-
Following is a procedure for setting up a PC to run Windows 10 diskless (i.e. with no local storage). This procedure should also work for setting up diskless Windows Server 2012/ Windows Server 2012 R2, though I have not tried it. This is a Windows-only procedure with no Linux involvement, so no Linux expertise is required. "Server" refers to the PC running Windows Server 2012 with iSCSI target service acting as remote disk server. "Client" refers to the diskless PC booting OS remotely over Ethernet. It is up to the individual user to decide which of their audio PCs to run diskless. In a dual PC setup it should be possible for both control PC and audio PC (using AO terminology) to run diskless, though a 3rd PC or NAS will be needed to fulfill the role of iSCSI target. The procedure below only covers setting up a PC with Windows Server 2012 R2 to act as iSCSI target. As there are many alternatives possible, please consider this procedure as a guide, as it represents just one solution. A Linux-based iSCSI target is much more cost-effective than a WS2012-based iSCSI target. ************************* Diskless Windows 10 Setup Jan 17, 2015 Sam Chau Client PC Requirements - Gigabit Ethernet NIC with PXE boot support Server PC Requirements - Gigabit Ethernet NIC, with driver for Windows Server 2012 R2 (note: some consumer class NICs lack driver for Windows Server 2012 R2 and cannot be used) Ethernet Switch - Gigabit Ethernet switch - Connection to home wireless/wired router as DHCP server - Alternative: use static IPs on the same subnet for both server and client Contents of iscsi.ipxe (text) file: #!ipxe echo iscsi.ipxe script running... ifopen net0 dhcp set net0/gateway 0.0.0.0 echo IP: ${net0/ip}, Gateway: ${net0/gateway} set keep-san 1 echo keep-san: ${keep-san} sanboot iscsi:<server IP>::::iqn.1991-05.com.microsoft:<server name>-win10-target boot Note: - replace <server IP> with server static IP address: e.g. 192.168.0.100 - replace <server name> with server name, e.g. audioserver. This name must match what the client sees within iSCSI Initiator - setting gateway address to 0.0.0.0 is a workaround to avoid Windows 10 suffering an "INACCESSIBLE BOOT DEVICE" blue screen crash during boot Setup Procedure Hardware setup: 1. Connect client PC to server PC via their NICs 2. Options for client PC IP address assignment A. Connect client PC to home wireless/wired router - use router DHCP server B. Configure DHCP server on Windows Server 2012 R2 to assign IP address to client C. Set static IP address on same subnet for client For options B & C, internet connection for client is optional 3. Enable PXE boot option in client PC BIOS setup Server: 1S. Install Windows Server 2012 R2 (Standard, Essentials, etc.) 2S. Assign static IP address to NIC 3S. Enable Remote Desktop feature ("Allow remote connections to this computer") for allow client to remote manage server running "headless" 4S. Using Server Manager, install iSCSI target feature 5S. Create a disk folder to carry VHDX files, e.g. C:\iSCSIVirtualDisks 6S. Share C:\iSCSIVirtualDisks folder with rear/write permission for client username 7S. Create C:\TFTProot folder 8S. Put ipxe-undionly.kpxe and iscsi.ipxe files in C:\TFTProot 9S. Download and set up Tiny PXE Server (Tiny PXE Server - reboot.pro) - Update config.ini: - root=C:\TFTProot - filename=ipxe.undionly.kpxe - altfilename=iscsi.ipxe - proxydhcp=1 - poolsize=0 - Click "Online" to launch pxesrv 10S. At Control Panel\System and Security\Windows Firewall\Allowed apps - Enable iSCSI Service - Add entry for pxesrv.exe Client: 1C. Connect client PC to home network via gigabit Ethernet NIC and cable 2C. Attach local storage (HDD/SSD) 3C. Install Windows 10 OS into hard disk - Copy OS install files into FAT32 formatted USB flash drive to use for OS installation 4C. Install NIC driver and other device drivers (graphics, audio, etc.) as needed 5C. Ensure client can properly browse on Internet 6C. Launch iSCSI Initiator - Type "iscsicpl" <Enter> at the Command Prompt window and answer Yes to the prompt - This will configure Win10 to auto launch the iSCSI initiator service at OS startup 7C. Launch Registry Editor (regedit.exe) to set boot flag for LAN driver - Locate the LAN driver service name under HKLM\SYSTEM\CurrentControlSet\Services - Example: for motherboards featuring Intel I217V/LM, I218V/LM, I219V/LM LAN the driver service name is: e1dexpress - Click on the driver service name, locate the Start key (REG_DWORD), double-click it and change its value to 0 - Repeat this Start key value change to 0 in HKLM\SYSTEM\ControlSet001\Services and HKLM\SYSTEM\ControlSet002\Services - Close Registry Editor 8C. Download and run Disk2VHD.exe (from Microsoft Sysinternals: https://technet.microsoft.com/en-us/sysinternals/ee656415.aspx) - Ensure "Use Vhdx" and "Use Volume Shadow Copy" checkboxes are checked - In "VHD File Name" box, enter "\\<Server IP>\<share name>\Win10.VHDX (e.g. \\192.168.0.100\c\Win10.VHDX) - Run Disk2VHD to create VHDX file on server Server: 11S. Set up iSCSI target LUN - Use "existing VHDX" option to select Win10.VHDX - Add MAC address of client to iSCSI initiator list Client: 9C. Launch "iSCSI Initiator" - On "Discovery" tab, click "Discover Portal" and enter IP address or DNS name of server - on "Targets" tab, ensure a target appears on "Discovered targets" list - target name should look like: iqn.1991-05.com.microsoft:<server name>-Win10-target 10C. Shut down Windows and detach hard disk from client 11C. Power up client and it should proceed to PXE boot - PXE boots to iPXE from server, then chains to iSCSI target LUN to start Windows 10 boot Notes: A. This procedure sets up a fixed size VHDX on the server. An alternative is to create a new dynamic VHDX (of desired max size) on the server, mount it locally (using iSCSI Initiator running on the server), connect the client disk to the server via USB-to-SATA adapter, then partition copy the client disk to the mounted VHDX. This preserves the dynamic nature of the VHDX file and helps conserve disk space on the server. -end-
- 131 replies