Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
#p = p + chr(252) + chr(len('boot\\bcd')) + 'boot\\bcd'
mymac=[ord(x) for x in info['mac']]
mymacstr = ':'.join(['%02x' % x for x in mymac])
commandline='/work/bin/getbcdlocation.sh ' + addr[0] + ' ' + mymacstr
f = popen(commandline)
templateinfo = f.readline().rstrip().split(' ')
f.close
bootfile = 'pxelinux.cfg\\pxeboot.com'
bcdpath='pxelinux.cfg\\templates\\' + templateinfo[0] + '\\' + templateinfo[1] + '\\bcd'
hostname = myhostname + (NULL * (64 - len(myhostname)))
p = p + hostname # hostname
bf = bootfile + (NULL * (128 - len(bootfile)))
p = p + bf # Boot File
p = p + MAGIC_COOKIE
p = p + '\x35\x01\x05' # DHCP ACK
p = p + chr(54) + chr(4) + ip2byte(hostip) # Server ID
p = p + chr(97) + chr(len(info['guid'])) + info['guid']
p = p + chr(60) + chr(9) + 'PXEClient'
p = p + chr(252) + chr(len(bcdpath)) + bcdpath
p = p + chr(0xff)
decode_bootp('[S]', p)
#open('out', 'wb').write(p)
if s != -1: s.sendto(p, addr)
#!/bin/sh
IPADDR=$1
MACADDR=$2
LOGFILE=/work/log/tftpd.log
tail -1000 $LOGFILE | \
grep "RRQ from $IPADDR " | \
grep wdsnbp.0 | \
tail -1 | \
awk '{print $2 }' FS=\/
Создаем универсальный Install Server для автоматической сетевой инсталляции Linux и Windows на основе Cobbler