PATCH: Adding unique hostname generation with cheatcode
Change Log:
* Version 1.0 - Fri Jan 20, 2006
Added /etc/hosts modification
* Version 1.0 - Thu Dec 01, 2005
Initial design
Disclaimer:
Always needed cause you just never know how people will interpret things. Please people, use this at your own risk. Whilst this method has and continues to work for me, I will not be held responsible for anything that might go wrong, due to an ommision or typo in this document. I too, like you, am human and do make mistakes.
Preface:
This howto assumes an intermediate level of knowledge for bash scripting and knoppix remastering. It was posted becuase a few people asked for an example. There are many ways to do this, and this for the moment satisfies my needs. Note: It may not satisfy yours.
Modification:
To achieve this I modify knoppix-autoconfig in the source directory of the remaster. By default the hostname is set to "Knoppix" by the command at line 493.
I replace this line with the following (# Heavily commented for the unsure)Code:hostname "Knoppix"
Usage:Code:# If booting live and not from an install if [ -z "$INSTALLED" ] then # Check if the hostname cheatcode was passed at the boot prompt if checkbootparam "hostname" then # Grab the value passed with the "hostname" cheatcode HN="$(getbootparam 'hostname')" # If it was auto if [ "$HN" = "auto" ] then # Generate the hostname as "Knoppix" and append the Mac Address of eth0 HN="Knoppix-$(ifconfig eth0 | grep HWaddr | awk '{print $5}' | sed s/://g)" fi # If no "hostname" cheatcode was supplied then use default "Knoppix" else HN="Knoppix" fi # If running from a HDD install then grab the hostname from the file /etc/hostname else # Get the default hostname from HDD HN="$(cat /etc/hostname)" fi # Update /etc/hostname and /etc/hosts (/etc is writeable live boot, or hdd boot) echo $HN > /etc/hostname sed -i s/^127\.0\.0\.1.*/127\.0\.0\.1\t$HN\ localhost/ /etc/hosts # Set the hostname hostname $HN
If it is not apparent this script will provide some flexability, allowing default, explicit or auto generation of the hostname.
Example of default generation (no "hostname" cheatcode supplied):
Code:boot: knoppixExample of explicit generation ("hostname" cheatcode supplied with arbitrary name)The hostname for this example is "Knoppix"
Code:boot: knoppix hostname=computer_1Example of auto generation ("hostname" cheatcode supplied with "auto" name)The hostname for this example is "computer_1"
Code:boot: knoppix hostname=autoClosing:The hostname for this example is "Knoppix-MACADDRESS"
Please feel free to use and modify this code as you see fit, it can be made more generic, which I will get around to when the need arises. Please let me know if you have any suggestions or improvements.
IBM Power S822 8284-22A 12SFF Power8 3.89GHz 6Core 64GB RAM No HDD Server System
$359.99
IBM x3650 M4 2x Xeon E5-2670 2.6ghz 16-Core / 64GB / M5110e / 2x PSU
$229.99
IBM X3850 M2 4U Rack Server BOOTS 4x Xeon MP 2.93Ghz Hot Swap 32GB RAM NO HDDs
$279.99
IBM QRadar XX28-C 2U Server BOOTS 2x Xeon E5-2650 v3 2.3GHz 128GB RAM NO HDDs
$249.99
IBM System x3550 M3 Dual Intel Xeon X5650 @2.67GHz 32GB RAM No HDD
$74.50
$16000.00
IBM Cloud Object Storage Slicestor 2448 E5-2637 3.5Ghz 128GB DDR4 - NO HDD - NEW
$399.00
1U IBM x3550 M5 4 Bay SFF SAS3 Server 2x E5-2683 V3 28 Core 128GB DDR4 2x Tray
$318.00
IBM System X 3250 M5 Single Xeon Quad Core E3-1220 v3 @3.1GHz,8GB RAM,Linux SUSE
$159.00
IBM Blade Server HS22V 6 Core Intel Xeon X5690
$250.00