49 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
		
		
			
		
	
	
			49 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
| 
								 | 
							
								<section xmlns="http://docbook.org/ns/docbook"
							 | 
						|||
| 
								 | 
							
								         xmlns:xlink="http://www.w3.org/1999/xlink"
							 | 
						|||
| 
								 | 
							
								         xmlns:xi="http://www.w3.org/2001/XInclude"
							 | 
						|||
| 
								 | 
							
								         version="5.0"
							 | 
						|||
| 
								 | 
							
								         xml:id="sec-booting-from-pxe">
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								<title>Booting from the <quote>netboot</quote> media (PXE)</title>
							 | 
						|||
| 
								 | 
							
								<para>
							 | 
						|||
| 
								 | 
							
								  Advanced users may wish to install NixOS using an existing PXE or
							 | 
						|||
| 
								 | 
							
								  iPXE setup.
							 | 
						|||
| 
								 | 
							
								</para>
							 | 
						|||
| 
								 | 
							
								<para>
							 | 
						|||
| 
								 | 
							
								  These instructions assume that you have an existing PXE or iPXE
							 | 
						|||
| 
								 | 
							
								  infrastructure and simply want to add the NixOS installer as another
							 | 
						|||
| 
								 | 
							
								  option. To build the necessary files from a recent version of
							 | 
						|||
| 
								 | 
							
								  nixpkgs, you can run:
							 | 
						|||
| 
								 | 
							
								</para>
							 | 
						|||
| 
								 | 
							
								<programlisting>
							 | 
						|||
| 
								 | 
							
								nix-build -A netboot nixos/release.nix
							 | 
						|||
| 
								 | 
							
								</programlisting>
							 | 
						|||
| 
								 | 
							
								<para>
							 | 
						|||
| 
								 | 
							
								  This will create a <literal>result</literal> directory containing: *
							 | 
						|||
| 
								 | 
							
								  <literal>bzImage</literal> – the Linux kernel *
							 | 
						|||
| 
								 | 
							
								  <literal>initrd</literal> – the initrd file *
							 | 
						|||
| 
								 | 
							
								  <literal>netboot.ipxe</literal> – an example ipxe script
							 | 
						|||
| 
								 | 
							
								  demonstrating the appropriate kernel command line arguments for this
							 | 
						|||
| 
								 | 
							
								  image
							 | 
						|||
| 
								 | 
							
								</para>
							 | 
						|||
| 
								 | 
							
								<para>
							 | 
						|||
| 
								 | 
							
								  If you’re using plain PXE, configure your boot loader to use the
							 | 
						|||
| 
								 | 
							
								  <literal>bzImage</literal> and <literal>initrd</literal> files and
							 | 
						|||
| 
								 | 
							
								  have it provide the same kernel command line arguments found in
							 | 
						|||
| 
								 | 
							
								  <literal>netboot.ipxe</literal>.
							 | 
						|||
| 
								 | 
							
								</para>
							 | 
						|||
| 
								 | 
							
								<para>
							 | 
						|||
| 
								 | 
							
								  If you’re using iPXE, depending on how your HTTP/FTP/etc. server is
							 | 
						|||
| 
								 | 
							
								  configured you may be able to use <literal>netboot.ipxe</literal>
							 | 
						|||
| 
								 | 
							
								  unmodified, or you may need to update the paths to the files to
							 | 
						|||
| 
								 | 
							
								  match your server’s directory layout
							 | 
						|||
| 
								 | 
							
								</para>
							 | 
						|||
| 
								 | 
							
								<para>
							 | 
						|||
| 
								 | 
							
								  In the future we may begin making these files available as build
							 | 
						|||
| 
								 | 
							
								  products from hydra at which point we will update this documentation
							 | 
						|||
| 
								 | 
							
								  with instructions on how to obtain them either for placing on a
							 | 
						|||
| 
								 | 
							
								  dedicated TFTP server or to boot them directly over the internet.
							 | 
						|||
| 
								 | 
							
								</para>
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								</section>
							 |