Headless Xserve G5 installation instructions
2 May 2004
Abstract
Apple’s newest Xserve G5’s do not ship with graphics-cards installed by default. You can purchase an add-on card as a “Build to Order” option. Apple has improved the command line tools tremendously with the release of Panther and connecting a keyboard and monitor could be un-necessary.
Setup: These instructions will identify one way to create and enable RAID 1 between two drives; install English Mac OS X Server 10.3; enable Apple Remote Desktop for the root account; run Softwareupdate; and finish up with the configuration. It is assumed that you know how get to the Terminal application and how to establish an SSH session.
Disclaimer: The information in this document is a condensed version of information available from Apple. This info is found either through various man pages, Apple’s Knowledgebase, the excellent Panther server manuals or in the Xserve manuals. Of course, I am not responsible if you hose your server, delete files or in other ways make life miserable for your clients. Always work on a server that’s not in a production environment and expect to redo it if something goes wrong.
Please contact me with suggestions or comments.
Create and Enable RAID 1
You have boot to Install CD 1 and create the RAID in order to do this. By default, Apple does not have RAID 0 or 1 configured when you receive your Xserve and the drives must be reformatted.
With the server powered off, hold down the system identifier button (next to FireWire port) on the front of the server and press the power button to turn it on. Keep holding the system identifier button until the top row of processor lights blink sequentially. Release the system identifier button. Press the system identifier button to move the bottom light from right to left. The server will boot from optical media when the far right light is lit. Hold down the system identifier button for about two seconds until all lights on top row is lit. Release the button.† Now insert Install CD 1.
Note: The following assumes you’re on a computer on the same subnet as the server that is being installed; or that you are connected to a computer on the same subnet over SSH.
The server will boot to the CD. After a couple of minutes, type in the following in the terminal window
/system/library/serversetup/sa_srchr 224.0.0.1
sa_srcher will search your local subnet for servers waiting to be configured or booted to a server install cd. You should see output similar to this:
localhost#unknown#10.192.2.58#00:0d:93:9b:a7:5c#Mac OS X Server
10.3.2#RDY4PkgInstall#2.0#512
The output shows us the IP address pulled over DHCP as well as a server status report. The server shows it is ready for package installation.
Establish an SSH session with root user to the server ip address listed in the output you received. The password will be the first eight characters of the server serial number. Look for the serial number on the back of the Xserve or on the box it shipped in. You have to connect with root user because no other users exist.
After you have established an SSH session, type in:
diskutil list
You will see output like the following:
/dev/disk0 #: type name size identifier 0: *76.7 GB disk0 /dev/disk1 #: type name size identifier 0: *76.7 GB disk1 /dev/disk3 #: type name size identifier 0: CD_partition_scheme *739.6 MB disk3 1: Apple_partition_scheme 644.0 MB disk3s1 2: Apple_partition_map 31.5 KB disk3s1s1 3: Apple_HFS Mac OS X Server Install Disc 1 643.9 MB disk3s1s2
We want to create a RAID 1 (mirror) with the disks listed in /dev/disk0 and /dev/disk1. We will use the diskutil command to accomplish this.
The command is as follows:
diskutil createraid mirror nameofnewvolume "journaled hfs+" disk0 disk1
createraid: the command to create the raid
mirror: switch to decide if you want to mirror or stripe the drives
nameofnewvolume: enter the name of the new volume name.
journaled hfs+: volume format. You can use hfs+, ufs or ms-dos here as well
disk0/disk1: The two disks you want to mirror from the output listed above.
Note: Creating a RAID will destroy everything on the drives.
After the process is finished, enter the following command to make sure everything is ok:
diskutil checkraid
You should get output similar to this:
-sh-2.05b# diskutil checkraid RAID SETS --------- Name: SteinerHD Unique ID: SteinerHDde9728f28e5f11d8b4ad000d939ba75c Type: Mirror Status: Running Device Node: disk2 ------------------------------------------------------------- # Device Node Status ------------------------------------------------------------- 0 disk0 OK 1 disk1 OK
Installing Mac OS X Server 10.3
Type in the following command in the terminal window
/usr/sbin/installer –volinfo –pkg \ /Volumes/”Mac OS X Server Install Disc 1”/system/installation/packages/osinstall.mpkg
The output you receive will tell you on to which volumes in /Volumes you can install the OS. In my case, I received the following output:
/Volumes/volumename
Install the OS on the drive listed in the output you received. The command is as follows:
/usr/sbin/installer –verboseR –lang English –pkg \ /Volumes/"Mac OS X Server Install Disc 1"/system/installation/packages/osinstall.mpkg –target "/volumes/volumename"
This is what it all means:
/usr/sbin/installer: The location of the installer program
-verboseR: Tells the installer we want feedback on the screen during installation
-lang English: Specifies English as the server language
-pkg /Volumes/"Mac OS X Server Install Disc 1"/system/installation/packages/osinstall.mpkg: The location of the package containing the OS we’re installing
-target "/Volumes/volumename": The target harddrive to install the OS on.
The installer will locate the Package and start the installation. The progress will display in your terminal window. When finished, you will get a message saying the installation was successful.
Restart the server by issuing the following command:
shutdown –r now
The server will now restart.
Give the server a couple of minutes to restart, then issue the following command in your terminal window:
/system/library/serversetup/sa_srchr <ipaddress>
<ipaddress> is the IP address you used earlier to connect to the server.
You will receive output similar to this:
localhost#unknown#10.192.2.65#00:0d:93:9b:a7:5c#Mac OS X Server 10.3.2#InstallInProgress#2.0#1056
The output indicates that there is an installation in progress.
On the server, insert Mac OS X Server Install CD 2 to complete the installation. The remaining installation will take approximately ten minutes to complete. The server will eject CD 2 upon completion.
Run the sa_srchr command again as listed above in #5, and you should receive the following output:
localhost#unknown#10.192.2.65#00:0d:93:9b:a7:5c#Mac OS X Server 10.3.2#RDY4Setup#2.0#0
This output indicates that your server has been successfully installed. You can easily use the Server Assistant at this point to continue in the GUI. However, there are a couple of things to watch out for:
- I have had the Server Assistant accidentally quit on me when running it on my local computer. Re-running the program and trying to continue won’t work because the server still thinks it is being setup remotely from the previous session. I haven’t found a way to start over a broken configuration, short of reformat/reinstall.
- Running Server Assistant to set up a remote system will not give you feedback for when the application is finished applying the settings. The reason is that Server Assistant will loose its connection when the new TCP/IP settings are applied. The server will restart automatically after two minutes after the settings have been applied; the progress bar in Server Assistant will spin for days because the connection been lost to the server.
The most foolproof solution I have found is to enable Apple Remote Desktop (ARD) on the server, and running Server Assistant on the server itself. Enabling ARD is crucial for when you run software update. QuickTime still requires someone to hit “Continue” on the QuickTime registration box that pops up on the screen. Here’s how to do it:
Enable ARD for root user. Type (or copy) the following:
'/System/Library/CoreServices/ARD Agent.app/Contents/Resources/kickstart' \ -activate -configure -access -on -users root -privs -all -restart -agent –menu
Open ARD on your computer and add the server to a list. If your computer is on the same subnet as the server, you should see it in the network computers list. If not, you need to add it manually but either search the range of IP addresses or use the Add by Name option.
You should see Server Assistant now being open on your server. Connect and configure the server.
When you configure the services you want enabled on startup, you have to make sure you select ARD as one of them. You just enabled it using the command above. However, if you don’t select it here it will be disabled upon completion of the configuration.
You will loose connection to the server in ARD when the new TCP/IP settings are applied; however, the server will reboot itself after two minutes after the configuration is finished.
Running Software update
Apple has improved software update quite a bit in Panther, and getting it done is a breeze. Connect to your server using SSH in a terminal window and type in the following:
sudo softwareupdate –i –r
sudo: tells the OS to run the command as super user (requires a password)
softwareupdate: the name of the command.
-i: install
-r: required updates.
Essentially, you’re telling the server to install the updates Apple has flagged as required. Run the following command if you want to see what those are before you install them:
sudo softwareupdate –l
After the Software Update is complete, restart using the shutdown –r now command. Re-run softwareupdate until all required updates have been installed. Reboot one last time and you are good to go. Once you get the process down, a server setup like this takes me roughly 15–20 minutes.