[SRSS 4.2] How to install Sunray Server 4.2 on Solaris 10?

Download
Sun Ray Server Software (SRSS) 4.2 http://wikis.sun.com/display/SRS5/Home#tab:SRS-5-Documentation
Patches for SRSS4.2 http://www.sun-rays.org/srss.html#patches

Preparation:

Solaris Version: SRSS 4.2 requires Solaris 05/09 (u7) verify you have the correct version.
#cat /etc/release
Solaris 10 5/09 s10x_u7wos_08 X86
Copyright 2009 Sun Microsystems, Inc. All Rights Reserved.
Use is subject to license terms.
Assembled 30 March 2009

Installation:

1.) Got root?
su

2.) Extract the software:
# unzip srss_4.2_solaris.zip

3.) Install Java (SRSS 4.2 needs java 1.6 or higher.)C
Check your java version with the following command:
# java -version

Install java 1.6 on your system. The script is chip dependent. Pick x64 or Sparc
# ./srss_4.2/Supplemental/Java_Runtime_Environment/Solaris/jre-6u13-solaris-i586.sh
# mv jre1.6.0_13/ /usr/jdk/
# rm /usr/java
# ln -s /usr/jdk/jre1.6.0_13/ /usr/java

4.) Install Apache Tomcat
# /usr/sfw/bin/gtar -xvz -C /opt -f srss_4.2/Supplemental/Apache_Tomcat/apache-tomcat-5.5.20.tar.gz
# ln -s /opt/apache-tomcat-5.5.20 /opt/apache-tomcat

5.) Install the Sun Ray Server Software
# ./srss_4.2/utinstall
take all of the defaults
Note: Now is when we would apply patches. Since this a new release there are not any yet.
# reboot

6.) Configure the Sun Ray Server Software:
# /opt/SUNWut/sbin/utconfig
Take all of the defaults except for:
Enable remote server administration? (y/[n])? y
Configure Sun Ray Kiosk Mode? (y/[n])? y
#reboot

7.) Configure the parms file and tell the server what firmware to offer out
# mkdir /tftpboot
# vi /tftpboot/srssconfig
The file should look like the following:
servers=
# /opt/SUNWut/sbin/utfwadm -A -a -V -i /tftpboot/srssconfig -f /opt/SUNWut/lib/firmware_gui

8.) Turn on LAN connections:
# /opt/SUNWut/sbin/utadm -L on
# /opt/SUNWut/sbin/utrestart -c

At this point you have a basic Sun Ray server up and running. Any Sun Rays on the network should be displaying the Solaris log in and you should be able to log into your Solaris server through a Sun Ray.

Personal Notes:
I did use a second NIC for the SunRay, so I did configure an pcn1 with 192.168.128.1 on static on Solaris 10 installation.
Therefore I need to reconfigure SSRSS4.2 to use that:

# /opt/SUNWut/sbin/utadm -l # show SRSS config
LAN connections: On
Sun Ray interconnect framework is not configured
# /opt/SUNWut/sbin/utadm -r # remove SRSS Network Config
Sun Ray interconnect framework is not configured
# /opt/SUNWut/sbin/utadm -a pcn1 # configure SRSS for pcn 1
#got an error here as it was already configured during Solaris 10 installation - so lets remove that:
# mv /etc/hostname.pcn1 /etc/hostname.pcn1.bak
# /opt/SUNWut/sbin/utadm -a pcn1 # try again and it works!

Taken from: http://blogs.sun.com/acworkma/entry/how_to_build_a_sun2

[SRSS 4.1+] How to use different Kiosk Sessions for different tokens

1. Create kiosk session configuration
In SRCC Web Interface

2. Back it up
# cd # Make sure your are in a reasonable directory to store your configurations
# PATH=${PATH}:/opt/SUNWut/sbin # Save yourself (and me) some typing
# utkiosk -e session -s > UserSession.conf
* If you have configured applications, also save the application list to a file:
# utkiosk -e session -a > UserSessionApps.list

3. Store your kiosk session configuration in the Sun Ray data store.
Use a name that starts with a capital letter - all-lowercase names are reserved.

* If you don't need an application list, you can simply upload your UserSession.conf file like this:
# utkiosk -i UserSession -f UserSession.conf

* If you did create an application list, the command looks like this:
# utkiosk -i UserSession -f UserSession.conf -A UserSessionApps.list

4. Configure individual tokens to use this kiosk session configuration.
Here is how to configure one of this configurations to a selected, registred (!) Token OR DTU.

* How to register:
# utuser -a "CleverCard.0123456789,localhost,0,John Doe,"

* Now you can assign the UserSession configuration to the token:
# utkioskoverride -r CleverCard.0123456789 -s kiosk -c UserSession
Note: This will enable Kiosk Mode for this token, even if it isn't enabled globally.

* If you have stored multiple session configurations, you can view them using:
# utkiosk -l
session
UserSession

The session configuration is the default kiosk configuration, which is used for all kiosk session that haven't been assigned an override.

Example UserSession.conf for Windows Connector WITH USBTool:
KIOSK_SESSION=uttsc
KIOSK_SESSION_TIMEOUT_DETACHED=12000
KIOSK_SESSION_ARGS=-r disk:USBDRVS=$HOME/USBDRVS 192.168.1.1

Taken from: http://blogs.sun.com/joergb/entry/using_different_kiosk_sessions_for

[ SRSS 4.1+] How to use SunRay USB Ports on Solaris 10?

Download this: http://blogs.sun.com/danielc/resource/usbdrived
chmod +x
./usbdrived install

Using it with Windows Connector:
The Argument is: "-r disk:USBDRVS=$HOME/USBDRVS 192.168.1.1" - where you should replace the IP Adress with your Terminal Server

Notes:
- After adding a Drive, it can take up nearly a Minute until it comes "online"!
- The SunRay 1 use USB 1.1 - so that thing is quite slowly!

Troubleshooting:
- Can you see usbdrived running in your Solaris session? (ps -ef | grep usbdrived)
- Can you see a file called "Attaching USB Drives to your Sun Ray README.txt" on your Solaris desktop?
- Did you install it properly? If so, can you see and what permissions does this have:
/usr/dt/config/Xsession.d/1350.usbdrived (It should be executable by everybody, something like rwxr-xr-x)
- When you plug in a USB drive, does it mount in /tmp/SUNWut/mnt/ under Solaris?
- Under Windows, can you see in "My Computer" a Network drive (In "Others") called "USBDRVS" and is there a file within that explains usage?
- Have you hit refresh in file manager when looking at your USBDRVS mount?
- Most important and useful of all: Do any mounts show up if on a Solaris Sun Ray session you issue: /opt/SUNWut/bin/utdiskadm -l

Taken from: http://blogs.sun.com/danielc/entry/a_usb_drive_daemon_for1

Solaris 10

To add a user in Solaris 10:
# useradd -c ‘Full Name’ -d /export/home/username -m -s /bin/bash username
(to add an admin user, add -g staff in there)

Then add a password for the user:
# passwd username

Under Solaris, there is no sudo.
Use su to become superuser.

Install SunRay Server Software 4.1 on Ubuntu JeOS Server 9.04 i386 (running under ESXi 4.0)

Hi Guys,

this Guide did cost me a lot of nerves and time, but its finally complete!
The most of this stuff is ripped from this nearly perfect guide.
But problem is, I did had some difficulties setting it up and got into serious troubles about dhcp (not working), dpkg (screwed up totaly) and other nasty things.
In the end I did this installation about 4 times, but now its working, and guess what? I did do complete notes! And I'm going to share these with you! ^^.

So, thats the end of the setup:
An Ubuntu JeOS Server 9.04 i386 with Vmware Tools, running on a ESXi 4.0 machine, with an SunRay Server Software (SRSS) Version 4.1!
Now, thats somethin' ain't it?
Ok, lets rock!

Ubuntu Setup
1) Download Ubuntu-Server 9.04 i386 image ( http://www.ubuntu.com/getubuntu/download-server )
2) Upload it onto your VMWare machine
3) Setup an new VM (Custom, Ubuntu Linux(32bit!), 2(!!) NIC Cards, Dynamic (SIZE) HDD(!!!))
4) Install Ubuntu Server with JeOS (so, boot the VM, choose your Language on the inital Ubuntu Setup Screen, press F4 and chose the "Minimal Virtual Machine" and then press Install Ubuntu)
5) Just an normal installation, you can choose the "Base System" and "OpenSSH Server" as additional "apt-get"'s.
6) After installation you need to install gdm:
sudo apt-get install ubuntu-desktop
sudo apt-get install gdm
sudo /etc/init.d/gdm start
sudo dpkg-reconfigure xserver-xorg
7) Just do an quick sudo apt-get update, sudo apt-get upgrade to see wheter everything is alright.
8) Thats it, your Ubuntu Server is working!

SRSS 4.1 Setup
0) Got root?
sudo su

1) Get the required packages
apt-get install libldap-2.4-2 libmotif3 module-assistant tk8.4 tomcat5.5 sun-java6-jre
apt-get install ldap-utils dhcp3-server nscd gawk iputils-ping pdksh unzip alien libgdbm3
apt-get install libx11-6 libfreetype6 libsasl2-2 libxt6 zlib1g gdm devscripts xkb-data-legacy
apt-get install xfonts-base atftpd xfonts-100dpi xfonts-75dpi xfonts-cyrillic wget ed

1 1/2) REBOOT!
reboot

2) Download and Unzip SRSS
cd /tmp/srss
download SRSS 4.1 package from sun.com (doesn't matter, I used the SUSE Enterprise Package, should be all the same!)
unzip srss_4.1_linux.zip

3) Convert all .rpm to .deb packages
find srss_4.1 -name "SUNW*i386.rpm" -exec alien -d {} \;

4) Install the .deb packages
find . -name "sunw*deb" -exec dpkg -i {} \;

5) Apply Patches
wget -O /tmp/srss/Patch-SUNWut41-1.txt http://wiki.sun-rays.org/images/6/67/Patch-SUNWut41-1.txt
wget -O /tmp/srss/Patch-SUNWutref.txt http://wiki.sun-rays.org/images/1/15/Patch-SUNWutref.txt
wget -O /tmp/srss/Patch-SUNWkio.txt http://wiki.sun-rays.org/images/f/ff/Patch-SUNWkio.txt
cd /opt
patch -p0 # Interface, for example eth1
/opt/SUNWut/sbin/utconfig
- if asked during utconfig make sure to answer /usr/share/tomcat5.5 for the tomcat path
- everything default EXCEPT tomcat path and remote server admin on ON

18) check dhcpd.conf (if you want DHCP)
make sure that /etc/dhcp3/dhcpd.conf contains the include statements for your added subnet/interface
try: /etc/init.d/dhcp3-server restart
If its NOT working, or you get problems with permissions, build your own dhcpd.conf a new! ;-):

mv /etc/dhcpd/dhcpd.conf /etc/dhcpd/dhcpd.bak
cat /etc/opt/SUNWut/net/dhcp/SunRay-options > /etc/dhcp3/dhcpd.conf
cat /etc/opt/SUNWut/net/dhcp/SunRay-interface-eth1 >> /etc/dhcp3/dhcpd.conf

19) patch and build the required kernel modules
a) prepare for kernel module building:
m-a -t prepare

b) download and apply patches
wget -O /tmp/utadem.patch http://wiki.sun-rays.org/images/0/0c/Utadem-4.1-50.nww.patch.txt
wget -O /tmp/utio.patch http://wiki.sun-rays.org/images/5/5d/Utio-4.1-50.nww.patch.txt
wget -O /tmp/utdisk.patch http://wiki.sun-rays.org/images/e/e0/Utdisk-4.1-50.nww.patch.txt
cd /usr/src/SUNWut
patch -p0 ${PULSECONF}

# create asoundrc for pulseaudio redirection
ASOUNDRC=${HOME}/.asoundrc
echo -n > ${ASOUNDRC}
echo "pcm.!default { " >> ${ASOUNDRC}
echo " type pulse" >> ${ASOUNDRC}
echo "}" >> ${ASOUNDRC}
echo "ctl.!default { " >> ${ASOUNDRC}
echo " type pulse" >> ${ASOUNDRC}
echo "}" >> ${ASOUNDRC}

24) link tftpd server directory
ln -s /tftpboot /var/lib

25) manually fix the Xsetup file
It seems that the /etc/opt/SUNWut/gdm/SunRayInit/helpers/Xsetup in SRSS 4.1 contains a minor,
but important bug which prevents commands like 'utwho' and 'utfwload' from working properly on some Linux distros.
To fix this script you have to manually edit it and make sure that the very first like contain the
exclamation mark (!) as shown here:

#!/bin/ksh -p

26) manually fix the finishsession file
It seems that the /opt/SUNWkio/lib/finishsession file in SRSS 4.1 contains a minor bug which prevents the
POST-execution scripts from being executed. To fix this script you have to manually edit it and make sure
that the line with the if check for "$theSessionUserDynDir" actually contains the "$" sign.

if [ -d "$theSessionUserDynDir" ]

27) finally you can start the SRSS by issuing the following commands
/etc/init.d/gdm restart
/etc/init.d/zsunray-init stop
/etc/init.d/zsunray-init start

28) get server "really" online
/opt/SUNWut/sbin/utadm -l # prints network config
/opt/SUNWut/sbin/utadm -L on # gets server online
/opt/SUNWut/sbin/utrestart # needed to get server online

29) reboot?
Can always help! You know the saying "Linux: BE ROOT! Microsoft: RE-BOOT!" ? 😉

NOTES:
17) OLD config with subnet, you should NOT use that:
/opt/SUNWut/sbin/utadm -A # Subnet for example 192.168.2.0

17) utadm working example:
/opt/SUNWut/sbin/utadm -a eth1
### Configuring /etc/nsswitch.conf
### Configuring Service information for Sun Ray
### configuring eth1 interface at subnet 192.168.128.0
Selected values for interface "eth1"
host address: 192.168.128.1
net mask: 255.255.255.0
net address: 192.168.128.0
host name: SunRayServer-eth1
net name: SunRay-eth1
first unit address: 192.168.128.16
last unit address: 192.168.128.240
auth server list: 192.168.128.1
firmware server: 192.168.128.1
router: 192.168.128.1
Accept as is? ([Y]/N): Y
### successfully setup "/etc/opt/SUNWut/net/hostname.eth1" file
Warning: IP address "192.168.128.1" appears in "/etc/hosts" with another hostname, fix? ([Y]/N): Y
### successfully setup "/etc/hosts" file
### successfully setup "/etc/opt/SUNWut/net/netmasks" file
### successfully setup "/etc/networks" file
### finished install of "eth1" interface
### Configuring firmware version for Sun Ray
All the units served by "SunRayServer" on the 192.168.128.0
network interface, running firmware other than version
"4.1_50_2008.09.25.12.37" will be upgraded at their next power-on.

### Configuring Sun Ray Logging Functions

DHCP is not currently running, should I start it? ([Y]/N): Y
### Error: unable to start dhcp services.
Please restart dhcp manually after utadm has completed.

17) working utadm example:
Configure Sun Ray Web Administration? ([y]/n)? y
Enter Apache Tomcat installation directory [/opt/apache-tomcat]: /usr/share/tomcat5.5
Enter HTTP port number [1660]: 1660
Enable secure connections? ([y]/n)? y
Enter HTTPS port number [1661]: 1661
Enter Tomcat process username [utwww]: utwww
Enable remote server administration? (y/[n])? y
Configure Sun Ray Kiosk Mode? (y/[n])? n
Configure this server for a failover group? (y/[n])? n

Update 139550-02 and 139727-01

1) download patches
cd /tmp
.... (download the patch update for the core package from [2]) http://sunsolve.sun.com/pdownload.do?target=139550-02&method=h
.... (download the uttsc update package from [3] http://sunsolve.sun.com/pdownload.do?target=139727-01&method=h
unzip 139550-02.zip
unzip 139727-01.zip

2) convert
find 139550-02 139727-01 -name "SUNW*i386.rpm" -exec alien -d {} \;

3) install
find . -name "sunw*deb" -exec dpkg -i {} \;

4) apply patches
wget -O /tmp/Patch-patch.txt http://wiki.sun-rays.org/images/6/6f/Patch-patch-139550-02.txt
wget -O /tmp/Patch-SUNWutref.txt http://wiki.sun-rays.org/images/1/15/Patch-SUNWutref.txt
cd /opt/
patch -p0 Update 139550-01

1) download patches
cd /tmp
.... (download the patch update from http://sunsolve.sun.com/pdownload.do?target=139550-01&method=h )
unzip 139550-01.zip

2) convert
find 139550-01 -name "SUNW*i386.rpm" -exec alien -d {} \;

3) install
find . -name "sunw*deb" -exec dpkg -i {} \;

4) apply patches
wget -O /tmp/Patch-patch.txt http://wiki.sun-rays.org/images/5/51/Patch-patch.txt
wget -O /tmp/Patch-SUNWutref.txt http://wiki.sun-rays.org/images/1/15/Patch-SUNWutref.txt
cd /opt/
sudo patch -p0 Installing VMWare Tools
http://chrysaor.info/?page=faq#ubuntu904_tools

Extract of the Weblog mentioned above:

Open a terminal window and execute the following command to download the script:
wget http://chrysaor.info/scripts/ubuntu904vmtools.sh
Now run the script that installs VMware Tools (Warning: it will download some files):
sudo bash ./ubuntu904vmtools.sh
When the script promps for answers, just hit Enter as defaults are OK. If you're using VMware Fusion, Server or Workstation, reboot the virtual machine and you are done.

Cleaning up

Shrink VMware Image Files on Linux Appliances
Posted in: Unix \ Linux, Vmware by Nico Maas on July 16, 2009

Works only with dynamic HDDs!

1. Backup!
2. Remove old / unused Packages
3. Remove downloaded Packages: sudo apt-get clean, Remove only old downloaded Packages: sudo apt-get autoclean
4. “ZeroOut” unused Space: cat /dev/zero > zero.dat ; sync ; sleep 1 ; sync ; rm zero.dat
5. Under GUI: “sudo vmware-toolbox” and use shrink on “/”
6. Under VIClient: Defrag

Additional:
Using Cisco Vlans and Trunks on VMWare ESXi 3.5/4

Posted in: Cisco, Network, Vmware by Nico Maas on July 24, 2009

Do you desperatly need to connect an real pc to just one VM? No problem! Here we go! All we need is an Switch with vlan Trunking. I used an Cisco c3560-poe8 for this, as it is my main work switch.

So you just need these snipets on the switch side:
( Need to do this in enable mode and conf -t! )

This is going to activate ip dhcp snooping globaly on the switch
(which means only marked ports are allowed to answer an dhcp request, thats important!)
ip dhcp snooping vlan 1-4094
no ip dhcp snooping information option
ip dhcp snooping

these are the vlans, one main, one “test” for the vm
vlan 1
name main
vlan 999
name test

normal client port
interface FastEthernet0/1
switchport access vlan 1
spanning-tree portfast

vm client port which does access vlan 999
interface FastEthernet0/3
switchport access vlan 999
spanning-tree portfast

vm server port, which does access normal vlan 1, and does trunk the rest
” ip dhcp snooping trust” means, that this port is allowed to answer dhcp requests
interface FastEthernet0/7
switchport trunk encapsulation dot1q
switchport trunk native vlan 1
switchport trunk allowed vlan 1,999
switchport mode trunk
ip dhcp snooping trust
end

Thats it!
Only thing you need to do on the vm machine is to start vi\vsphere client, go to configuration, network, create an new port group and insert the nic of the vmware machine you want to use on the switch port (here 3 on the c3560) – and set the port groups vlan id to 999. ( In my config, the eth0 is the "main" NIC and does do the normal Network Connection, eth1 is the "SUN" Port as configured above in the SRSS Part, so get the eth1 (Second NIC) into the vlan 999!)

And then, you can do pxe, dhcp, sunray, and allll you want!

So, thats it finally!
A REALLY BIG Thank you to all the authors of the howtos, guides, etc mentioned and unmentioned for helping me out. Without you, this would have been absoultly impossible! Thank you!!!

NOTES:
USB Mount:
/tmp/SUNWut/sessions/11/unit/dev/dsk/disk1 /usb

Using Cisco Vlans and Trunks on VMWare ESXi 3.5/4

Hello there,

are you one of these ppl using ESXi on a small server/pc under your desk to evaluate / develop software?
Are you one of these fitting the whole ESXi World into one machine, one one IDE / SATA drive and without any other VMWare Administrative Instances as your Vi\Vsphere Client? Are you one of these ppl that does not have one real 10 Gig Interface for each VM Machine into its server - but do desperatly need to connect an real pc to just one VM? No problem! Here we go! All we need is an Switch with vlan Trunking. I used an Cisco c3560-poe8 for this, as it is my main work switch.

So you just need these snipets on the switch side:

This is going to activate ip dhcp snooping globaly on the switch
(which means only marked ports are allowed to answer an dhcp request, thats important!)

ip dhcp snooping vlan 1-4094
no ip dhcp snooping information option
ip dhcp snooping

these are the vlans, one main, one "test" for the vm

vlan 1
name main
vlan 999
name test

normal client port

interface FastEthernet0/1
switchport access vlan 1
spanning-tree portfast

vm client port which does access vlan 999

interface FastEthernet0/3
switchport access vlan 999
spanning-tree portfast

vm server port, which does access normal vlan 1, and does trunk the rest
" ip dhcp snooping trust" means, that this port is allowed to answer dhcp requests

interface FastEthernet0/7
switchport trunk encapsulation dot1q
switchport trunk native vlan 1
switchport trunk allowed vlan 1,999
switchport mode trunk
ip dhcp snooping trust
end

Thats it!
Its that easy!
Only thing you need to do on the vm machine is to start vi\vsphere client, go to configuration, network, create an new port group and insert the nic of the vmware machine you want to use on the switch port (here 3 on the c3560) - and set the port groups vlan id to 999.

And then, you can do pxe, dhcp, sunray, and allll you want!

Cheers,

Nico

PXE Boot Bart PE

As I have been using PXE now for the last days, I wanted to build myself up some nice PXE Images to load from the Network. And the one thing I wanted for sure, was an Bart PE PXE Boot. So I searched the Net, found two really good guides ( Guide 1, Guide 2 ) and I am going to rewrite these Guides now here to set you up with an 100% working tutorial on "How to PXE Boot Bart PE".

What you need:
- tftpd32
- BartPE / PE Builder
- Windows Server 2003 CD with SP1 (IMPORTANT! WITHOUT SP1 IT WON'T WORK!)
- Syslinux (optional)

We do start with the file preparations:

- Creating the BartPE CD
Copy your Windows Server 2003 SP1 Cd onto your PC (lets say C:\win2003),
install PE Builder and start it. Enter C:\win2003 as source,
tell him to create an Iso Image called BartPE.iso and hit start.
Congrats, you just created yourself an BartPE Boot CD with an Live Windows XP!

- Preparing Boot Files
You now need to grap the needed Files like Bootloader and Stuff.
So create an new folder and go get these Files from C:\win2003\i386:
NTDETECT.COM, SETUPLDR.EX_, STARTROM.CO_, STARTROM.N1_, RAMDISK.SY_ und RAMDISK.IN_
After you copied them, you need to extract them.
Open up an cmd Shell, cd to the folder with the copied Files and extract them all with the usage of
"Expand -r Filename" (or Expand -r * should work as well)
You now need to rename some files.
- setupldr.exe should be renamed to NTLDR
- startrom.n12 should be renamed to startrom.0
Next thing is you need to create a textfile with the name winnt.sif with the following content:

[SetupData]
BootDevice = "ramdisk(0)"
BootPath = "\i386\System32\"
OsLoadOptions = "/noguiboot /fastdetect /minint /rdexportascd /rdpath=BartPE.iso"

And thats it with file preparation.
You can delete the files SETUPLDR.EX_, STARTROM.CO_, STARTROM.N1_, RAMDISK.SY_ und RAMDISK.IN_.
All the others are going into the tftboot Folder of the next step.

- Setup up the tftpd32
Easy as hell. Download, unzip.
For example C:\tftpd32
Create the folder tftpboot within that.
And now to the config. There are actually two working configurations:
One with the usage of the pxelinux.0, and one without it.
Which flavor to use is your choice.
Difference: With pxelinux.0, you can build up an boot menu, without it you just only boot BartPE.

But first basics tftp config:
- start tftpd32.exe in C:\tftpd32
- Server interfaces chose your NIC
- Press Settings

Settings:
Base Directory: C:\tftpd32\tftpboot

Global Settings:
TFTP Server [X]
TFTP Client [ ]
SNTP Server [ ]
Syslog Server [ ]
DHCP Server [X]
Syslog Server: [ ] Save syslog message

TFTPD Security: None

TFTPD configuration:
Timeout (seconds) 3
Max Retransmit 6
Tftp port 69
Local ports pool (nothing in here)

Advanced TFTPD Options:
[X] Option negotiation
[ ] PXE Compatibility
[X] Show Progress bar
[X] Translate Unix file names
[ ] Use TFTPD32 only on this interface
[ ] Use anticipation window of 0 Bytes
[X] Allow ´\´ As virtual root
[ ] Hide Window at startup
[ ] Create “dir.txt” files
[ ] Create md5 files
[ ] Beep for long transfer

Press Ok.

Go to the DHCP Server tab and enter following Details depending on your Network configuration:

IP Pool starting adress: Should be +1 of your NIC IP if you got no other PC in your network
Size of Pool: Choose yourself how many clients you want to get in there. I picked 20, get no problems with leases...
Boot File: Depends on wheter you install with or without pxelinux.0. If with, you enter there pxelinux.0, if without the right thing is startrom.0
Rest: Set it appopriate to your network - and Press the big long "SAVE" Button!

Copy the files from - Creating the BartPE CD and - Preparing Boot Files Step into the tftpboot Folder.
You should have there by now:

NTLDR, startrom.0, startrom.com, ntdetect.com, winnt.sif, ramdisk.sys, ramdisk.inf, BartPE.iso

Now lets start with the real thing, only do ONE of these both things:

- without pxelinux.0
Really Easy: Just be sure that you set DHCP Boot file to startrom.0. And thats it!

- with pxelinux.0
A little bit more challenging, but still easy:
Extract the Syslinux-3.11.zip
Get the file menu.c32 from com32/modules, copy to the tftpboot
Get the file memdisk from root Folder, copy to the tftpboot
Get the file pxelinux.0, copy to the tftpboot
Create an folder in the tftpboot with the name pxelinux.cfg
Create an file in the folder pxelinux.cfg with the name default (no File ending and such) with following content:

DEFAULT menu.c32
TIMEOUT 300
ALLOWOPTIONS 0
PROMPT 0
MENU TITLE PXE Boot System
label pebuilder
MENU LABEL ^1: BartPE starten
KERNEL startrom.0
label BootNormal
MENU LABEL ^Boot Normal
LOCALBOOT 0

Be sure that you set DHCP Boot file to pxelinux.0

And thats it.

Note that you can integrate many programs into BartPE! Check out their website.
And do also note: It takes RAM on your client PC!
Normally you should be Ok if your RAM is not smaller than the BartPE.iso + 64 MB.
So don't over do it 😉

Have fun, and thanks for the both guidelines, without them I would have never figured that all out!

Notes:
- You should be able to build BartPE also with an normal Windows XP CD (if it should be higher than SP1), but you still need the Bootfiles to come from Win XP Server SP1 Package (you can download that for free from Microsoft) (Never tested that way!)
- One did set "Anticipation window of 50000 bytes" in the Advanced Tftpd Settings and said that I would speed up tftp transfer. Well, for me, it did just kill the whole process. So I DO NOT recommend that - but maybe its only a flaw in the current tftpd version, so I keep that still in here as note.
- If you use Windows Server as DHCP, these settings has to be set for your scoop: -003 Router (gateway IP), -066 Boot Server Host name (tftp server ip) -067 Bootfile Name (pxelinux.0 or startrom.0)
- Keep an eye out for filenames upper and lowecases if you use Linux / Unix as server! (everything writen lowercase execept NTLDR and BARTPE.ISO)