Status
all OK

1. Description

The unattended module is to manage harddisks and os installations through templates.

2. Installation

Simple install the module via settings->modules.

2.1. Get harddisk and os templates

You can import the os templates and harddisk templates from a local file, or from the sourceforge.net side.
Local import:
import_en_local.png
Remote import:
import_en_remote.png

2.2. Prepare Operating system

After importing the templates you can configure the operating systems you want:

2.2.1. Create os

create_os_en_part1.png
  • Name: The name of the operating system.
  • OS temapltes: The template you want to use (e.g for windows XP chooce "Windows - XP")
  • Comment: An optional comment to identify the configured tempalte.

  • 2.2.2. Configure os

    After you have create an os you can configure it and make your settings. The settings you made here will override the default settings from the template.
    configure_os_en_part1.png
    Press Content to get to the settings of this os.
    configure_os_en_part2.png
    On the left side you can go to each section. On the right side you can set the values of the differnt keys. If you chooce Dont use this key via the checkbox right of the key value this key will not be used. If all keys from one section will be disabled the section will not appear in later settings. You can use the following placeholders which will be replaced by the specified key from the inventory information of a system:
  • ###MAC### first macaddress
  • ###MAC2### second macaddress
  • ###MAC3### third macaddress
  • ###MAC4### fourth macaddress
  • ###WLAN### first wlan macaddress
  • ###WLAN2### second wlan macaddress
  • ###BLUETOOTH### bluetooth macaddress
  • ###IP### first IP address
  • ###IP2### second IP address
  • ###COMPUTERNAME### the computer name
  • ###MAIN_USER### the uid from the main user
  • ###SUPPLIER### the supplier
  • ###SUPPLYDATE### the supplydate
  • ###SERIAL### the serial number
  • ###PRODUCER### the producer
  • ###DESCRIPTION### the desription
  • ###SERVICETAG### the servicetag
  • ###INVENTORY### the inventory number
  • ###WARRENTY### the warrentydate
  • ###ROOM### the room number
  • ###COMMENT### the comment

  • 2.3. info.txt

    In each folder in z/os/ you should hold an info.txt:
    PRODUCT: The name of the product (e.g. Windows7|Vista|XP|...)
    SERVICEPACK: The servcie pack (e.g. 2)
    PRODUCTLANG: The main language of the product (e.g. en-EN)
    ARCH: The architekture (x86 or x86_64)
    ISO: If you want to use an iso file (only valid for FILETYPE=0 and FILETYPE=wim) set the filename here.
    	You have to create an iso directory in the same directory where the iso file is located, e.g. /z/os/winxp/iso.
    	You also have to set the FILE to the correct filename - e.g. iso/sources/install.wim.
    ISOTYPE: udf|iso9660 the filesystem on the ISO file, normaly udf for DVDs and iso9660 for CDs
    FILE: The complete path to the file, or if FILETYPE=0 you can leave this empty or if FILELOC=0 
    	only the filename (e.g. xp.tar.bz2 or vista.dd.bz2 or http://example.com/file.bz2)
    FILELOC: Filelocation can be 0 for this directory or 1 for http/ftp 2 for multicast
    FILESIZE: The original size of the Disk/Partition, this is only (optional) needed for images, 
    	clones and partimages. A suffix of "k", "m", "g", or "t" can be added to denote kilobytes (*1024), 
    	megabytes, and so on.
    FILETYPE: Filetype can be:
    	0 = standard installation files
    	tar.gz = tar.gz compressed install files
    	tar.bz2 = tar.bz2 compressed install files	
    	tar.7z = tar install files compressed with 7z
    	7z = install files packed and compressed with 7z
    	wim = default windows image format
    	image = uncompressed dd image
    	image.gz = gzipped dd image
    	image.bz2 = bziped dd image
    	image.7z = dd image compressed with 7z
    	partimage = partition dd image
    	partimage.gz = gzipped partition dd image
    	partimage.bz2 = bziped partition dd image
    	partimage.7z = partition dd image compressed with 7z
    	clone.TYPE = filesystem-clone
    	clone.TYPE.gz = gzipped filesystem-clone
    	clone.TYPE.bz2 = bziped filesystem-clone
    	clone.TYPE.7z = filesystem-clone compressed with 7z
    DRIVERDIR: The directory which holds the dirvers for the os. This directory will be copied 
    	to the root of the operating system. This only affect to Windows operating systems.
    DRIVERDIR_SCANDRIVERS: Scan DRIVERDIR for *.inf files which contain the following:
    	 -> if DRIVERDIR_SCANDRIVERS: VENDORID -> copy only directories which contains *.inf files 
    	 that matches the vendorid
    	 -> if DRIVERDIR_SCANDRIVERS: DEVICEID -> copy only directories which contains *.inf files 
    	 that matches the vendorid and the deviceid
     	For Windows XP the OEM_PNP_DRIVERPATH will be set automatically via the script.
     	In Windows Vista, 7 and 2008 you have to set the DRIVERPATH to %SystemDrive%drv_s
    DRIVERDIR_SCANDRIVERS_COPY_SUBDIRS: If this option is set also the Subdirectories from a matched DRIVERDIR
    	is copied. This can be helpful if the inf files are not in the same directory like the driver files.
    DRIVERPACKSDIR: (normaly /z/drivers/driverpacks/) The directory which holds the compressed 
    	(currently only 7z is implemented) dirvers for the os. 
    	This files will be extract to the root of the operating system to the directory D/. 
    	This only affect to Windows operating systems.
     	You can place your own files there with the following limitations:
     		Directory: /z/drivers/driverpacks/xp is for os W2000,W2003 and XP
     					/z/drivers/driverpacks/vista ist for Vista, 2008 and 7 (each ARCH)
     		ARCH: The files in the directory must conatin the ARCH e.g. DP_Chipset_wnt6-x64_10071.7z 
     			(here the x64 will match)
     	For Windows XP the OEM_PNP_DRIVERPATH will be set automatically via the script and are extracted 
     	to %SystemDrive%D.
     	In Windows Vista, 7 and 2008 you have to set the DRIVERPATH to %SystemDrive%Driverpacks see: 
     	http://technet.microsoft.com/en-us/library/cc766485%28WS.10%29.aspx.
    DRIVER_PATH_TO_LONG_QUESTION: Specify the answer to the question when the path of the OEM_PNP_DRIVER_PATH 
    	is to long when installing W2K, XP or 2003
    UDPRECEIVEROPTS: The options passed to udp-reciever, you can specify:
    
  • log file
  • Logs some stuff into file.
  • nokbd
  • Do not read start signal from keyboard, and do not display any message telling the user to press any key to start.
  • start-timeout sec
  • receiver aborts at start if it doesn't see a sender within this many seconds. Furthermore, the sender needs to start transmission of data within this delay. Once transmission is started, the timeout no longer applies.
  • portbase portbase
  • Default ports to use for udpcast. Two ports are used: portbase and portbase+1 . Thus, Portbase must be even. Default is 9000. The same portbase must be specified for both udp-sender and udp-receiver.
  • ttl ttl
  • Time to live for connection request packet (by default connection request is broadcast to the LAN's broadcast address. If ttl is set, the connection request is multicast instead to 224.0.0.1 with the given ttl, which should enable udpcast to work between LANs. Not tested though.
  • mcast-rdv-address address
  • Uses a non-standard multicast address for the control connection (which is used by the sender and receivers to "find" each other). This is not the address that is used to transfer the data. By default mcast-rdv-address is the Ethernet broadcast address if ttl is 1, and 224.0.0.1 otherwise. This setting should not be used except in very special situations, such as when 224.0.0.1 cannot be used for policy reasons.
  • exit-wait milliseconds
  • When transmission is over, receiver will wait for this time after receiving the final REQACK. This is done in order to guard against loss of the final ACK. Is 500 milliseconds by default.
  • nosync
  • Do not open target in synchronous mode. This is the default when writing to a file or a pipe.
  • sync
  • Write to target in synchronous mode. This is the default when writing to a device (character or block)

    3. Operating systems

    3.1. Install methods

    3.1.1. Directly

    Installing directly from source you only have to copy the install files to z/os.
    You should have there always an info.txt in the directory. For example here is one for windows XP:
    PRODUCT: XP
    SERVICEPACK: 3
    PRODUCTLANG: en-EN 
    ARCH: x86
    FILELOC: 0

    For all linux distributions you can use your own mirror or an mirror outside. This depends on the distribution. In most cases you can specify the location of your source in the answer file.
    If you have problems to mount the z share case insensitiv you have to rename all the files in i386/ to lowercase.
    Here is an example for an folder structure:
  • z/os/xpdesp3/i386 <- this is the directory which contains the contents of the installation CD
  • z/os/xpdesp3/info.txt <- the info file

  • z/os/xpdesp3-packed/xpdesp3.tar.bz2 <- this is the file which contains the contents of the installation CD
  • z/os/xpdesp3-packed/info.txt <- the info file

  • z/os/xpensp1x64/amd64 <- this is the directory which contains the contents of the installation CD
  • z/os/xpensp1x64/i386 <- this is the directory which contains the contents of the installation CD
  • z/os/xpensp1x64/info.txt <- the info file

  • It is possible to hold the contents of the cd in a compressed form. The following archives are supported:
  • tar.gz = tar.gz compressed install files
  • tar.bz2 = tar.bz2 compressed install files

  • 3.1.2. Image

    Installing/publish an image gives you the possibility to install/restore nearly all operating systems you want. Simple place the image in an extra folder in z/os. See the section info.txt for setting up the info.txt file.

    3.1.3. Transfermodes

    There are different transfer modes for the installationfiles which are specified by "FILELOC". FILELOC can be 0 for standard installation files, these files will be transfered directly from the mounted volume (normaly cifs).
  • Example:
  • FILE: file.tar.bz2
    FILELOC: 0
    If you want to transfer the files from ftp/http you have to set FILELOC: 1 and give the url in FILE parameter.
  • Example:
  • FILE: http://example.com/file.tar.bz2
    FILELOC: 1
    If you set FILELOC to 2, multicast is used to transfer the file. If you have specified more than one sender, you have to set the correct UDPRECEIVEROPTS.
  • Example:
  • FILE: file.tar.bz2
    FILELOC: 2
    UDPRECEIVEROPTS: --log /var/log/udp-receiver.log --portbase 8500 --nokbd --sync
    On the server side the udp-sender have to run. For more informations take a look into the command line description of udpcast.

    3.2. Windows

    You can access the unattended.[txt|xml] file via this http://YOURSERVER/external.php?function=install_os&computer=COMPUTERNAME side with the browser, or:
    wget -O unattend.txt http://YOURSERVER/external.php?function=install_os&computer=COMPUTERNAME
    to save the informations to a file. The boot-cd contains a script which controls the complete setup for windows include getting this file.

    3.2.1. Windows 2000/XP/2003

    For this versions you can use both install methods. Simple copy the content of your installation CD into an folder in z/os:
  • z/os/xpdesp3/i386 <- this is the directory which contains the contents of the installation CD
  • z/os/xpdesp3/info.txt <- the info file

  • You can also pack the i386 [and amd64 for XP-64bit] directory to speed up the installation over slow networks:
  • z/os/xpdesp3-packed/xpdesp3.tar.bz2 <- this is the file which contains the contents of the installation CD
  • z/os/xpdesp3-packed/info.txt <- the info file
  • This can be done by running the command:
    tar cjpf xpdesp3.tar.bz2 i386/

    3.2.2. Windows Vista/2008/Windows7

    3.2.2.1. Install method wim file

    You can use your prepared install file or the original from the install DVD. Simple place the file into a subdirectory in z/os:
  • z/os/win7-de-x86/install.wim <- this is the wim file from the DVD
  • z/os/win7-de-x86/info.txt <- the info file
  • The info file should contain at least:
    PRODUCT: Windows7
    SERVICEPACK: 0
    PRODUCTLANG: de-DE
    ARCH: x86
    FILE: install.wim
    FILELOC: 0
    FILETYPE: wim
  • set the wim_index in your answer file (_meta section).
  • The wim_index will indicate what product you want to install from the wim.
    You dont need to add drivers to the wim, check out the info.txt how to add drivers during the installation. If you have an audit section in your answer file (uranos default) the audit mode (with is searching for and install drivers) will run first. Read more here: http://technet.microsoft.com/en-us/library/hh824920.aspx#bkmk_4
    Here are some links to add drivers to the wim (if you want to do so):
  • http://technet.microsoft.com/en-us/library/cc766141%28WS.10%29.aspx
  • http://superuser.com/questions/63773/how-to-add-drivers-to-windows-7-installation-dvd

  • You can also build a new wim file from a pre configured machine. See section 3.2.2.2. for prepartion and run after that (from the boot environment)
     imagex capture /dev/hda1 (chooce the right partition where your installation is located) /z/os/MYWINXXX/install.wim IMAGE_NAME DESCRIPTION --compress=maximum

    3.2.2.2. Install method ntfsclone

    The installation proccess of this versions is always an image installation. For installing this versions via unattended and the ntfsclone method you have to prepare it in the following way:
  • Make a clean vista/7/2008 installation (we suggest to use a 15-20GB partition) - install servicepacks and / or updates if you want.
  • Activate the administrator account.
  • Log off if you are not in the administartor account.
  • Log in as administrator.
  • Delete the files from the user and the user account itself.
  • Install ServicePacks (optional). (USE c:\Windows\System32\vsp1cln.exe /verbose for cleaning up SP1 installation backup files and c:\Windows\System32\compcln.exe for cleaning up SP2 installation backup files and DISM.exe /online /Cleanup-Image /spsuperseded /hidesp on W2k8 R2 SP1)
  • Install software (optional). This is not recommended because of to stay up to date with the programs.
  • Personalize the administrators desktop (optional).
  • Install your MAK (optional).
  • Set the IDE controller driver to \"Standard IDE Controller\" - this is normaly done by the /generalize pass, but we need the generalize pass later (see "How it works")
  • Check if the Start Reg_Word in HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Msahci is set to 0 http://support.microsoft.com/kb/922976/en-us
  • At last run the command: %WINDIR%\system32\sysprep\sysprep.exe /audit /shutdown

  • 3.2.2.2.1. Save a ntfsclone
  • Boot into boot-cd
  • Save the image to an mounted volume:
  •  ntfsclone -s -o /z/os/vista-x86-SP2/vista-x86-SP2-de.clone.ntfs /dev/hda1
  • Optional you can zip or bzip it
  • bzip2 /z/os/vista-x86-SP2/vista-x86-SP2-de.clone.ntfs
  • At last create the info.txt. For this example:
  • PRODUCT: Vista
    SERVICEPACK: 1
    PRODUCTLANG: de-DE
    ARCH: x86
    FILE: vista-x86-SP2-de.clone.ntfs.bz2
    FILELOC: 0
    FILETYPE: clone.ntfs.bz2
    FILESIZE: 11000m
    3.2.2.2.2. Save a partimage via dd
  • Boot into boot-cd
  • Save the image to an mounted volume:
  • dd if=/dev/hda1 of=/z/os/vista-x86-SP2/vista-x86-SP2-de.partimage
  • Optional you can zip or bzip it
  • bzip2 /z/os/vista-x86-SP2/vista-x86-SP2-de.partimage
  • or run it as one command:
  • dd if=/dev/hda1 | bzip2 - > /z/os/vista-x86-SP2/vista-x86-SP2-de.partimage.bz2
  • At last create the info.txt. For this example:
  • PRODUCT: Vista
    SERVICEPACK: 1
    PRODUCTLANG: de-DE
    ARCH: x86
    FILE: vista-x86-SP2-de.partimage.bz2
    FILELOC: 0
    FILETYPE: partimage.bz2
    FILESIZE: 15000m

    3.2.2.2.3. How it works:
  • next time the machine boots into the auditSystem pass of windows setup to set the admin password, enable autologon and to add drivers
  • after that the auditUser pass runs sysprep /generalize /oobe /reboot command to go to the specialize and oobe part of the answer file
  • the specialize part is to activate the admin account, set computer name, ProductKey and JoinDomain or JoinWorkgroup
  • at last the oobeSystem part sets all other infos, install software via postinst.js and activate Windows
  • 3.2.2.3. Windows error codes

    http://msdn.microsoft.com/en-us/library/ms681381%28v=VS.85%29.aspx

    3.3. Kickstart

    Uranos can also produce kickstart files. The following distribution use kickstart and there is a template for each. To use the answer file you can add this line to the kernel append to boot the installation:
    ks=http://YOURSERVER/external.php?function=install_os

    3.3.1. CentOS

  • Web: http://www.centos.org/

  • 3.3.2. Fedora

  • Web: http://fedoraproject.org/

  • 3.3.3. RHEL

  • Web: http://www.redhat.com/rhel/

  • 3.3.4. ScientificLinux

  • Web: https://www.scientificlinux.org/

  • 3.3.5. ESX

  • Web: http://www.vmware.com/
  • You should add also the ksdevice and ip:
    ksdevice=eth0 ip=dhcp ks=http://YOURSERVER/external.php?function=install_os
    You could also specify a static ip configuration: [[code#:mem=512M quiet ksdevice=eth0 ip=10.0.0.10 netmask=255.255.255.0 gateway=10.0.0.1 nameserver=10.10.0.2]]

    3.4. Presseed

    Uranos can also produce presseed files. The following distribution use presseeding and there is a template for each. To use the answer file you can add this line to the kernel append to boot the installation:
    auto=true priority=critical console-setup/layoutcode=de  locale=de_DE url=http://YOURSERVER/external.php?function=install_os --

    3.4.1. Debian

  • Web: http://www.debian.org/

  • 3.4.2. Ubuntu

  • Web: http://www.ubuntu.com/

  • To get use of the partition settings you have to disable the following entries in the template:
  • Auto partitioning
  • Auto partitioning device
  • Auto partitioning recipes
  • Auto partitioning own recipes

  • If you use a stitic ip configuration you have to add:
    killall.sh; netcfg
    in the early script.

    3.5. openSuSE/SLES

  • Web (SLES): http://www.novell.com/de-de/products/server/
  • Web (openSuSE): http://opensuse.org/

  • Uranos can also produce xml files for SLES and OpenSuSE. To use the answer file you can add this line to the kernel append to boot the installation:
    autoyast=http://YOURSERVER/external.php?function=install_os