Javier Barroso <javibarr...@gmail.com> wrote: > If you know which macs you will have, you can make an init script > which generate /etc/network/interface and /etc/hostname and /etc/hosts > the first boot and then remove itself.
You don't even need to know in advance the MACs as long as enough of the address is unique. > $ cat /etc/init.d/10setnetworkonlyfirstboot > #!/bin/bash # > mymac=$(ip add show dev eth0 | awk '/ether/ {print $2}') # > myhost=$(awk "/$mymac/ {print \$3}") # > myip=$(awk "/$mymac/ {print \$2}") myhex=$( ip add show dev eth0 | # Get the interface detail awk '/ether/ {print toupper($2)}' | # Extract MAC cut -d: -f6 # Get last octet (as hex) ) mydec=$( echo "16 i $myhex p" | dc ) # Convert hex to dec myip="192.168.1.$mydec" # Must guarantee not 0 or 255 > sed -i "s/IP/$myip" /etc/network/interfaces # and probably some > changes in /etc/hosts > sed -i "s/HOSTNAME/$myhost" /etc/hostname # and probably some changes > in /etc/hosts > rm -f /etc/init.d/10setnetworkonlyfirstboot Rather than removing the configuration file, you could add, say, "# Configured eth0" to /etc/network/interfaces during setup. Next time just exit if that line exists in the file. Chris -- To UNSUBSCRIBE, email to debian-user-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/8s5pl8xttd....@news.roaima.co.uk