Because of a incomptability between the boot ROM on the shipping OS X Server 10.2.0, and the latest G4 FW800, I was facing serious problems trying to install or even boot from the install CD. The following information is a combination of two Apple KBase articles: 107496 and 107124.
First install an OS X Client (minimum version 10.2.3). Be careful to choose a login name no longer than eight characters, because that is the maximum OS X Server allows. Then follow these steps to enable an install of an older OS X Server over a newer OS X Client. Start up normally from the target computer's Mac OS X startup disk, and log in as an Admin user. Then open Terminal (in /Applications/Utilities/) and type:
Just setting up a new Xserve with four 180GB drives headlessly (no monitor or keyboard attached). All the drives (other than the boot volume) were named the same from apple (ServerHD). In WGM, the drives would just show up as one drive. Also, if I tried to connect via AFP, only one drive would show up. I called Apple and they offered little help to configure it headless, since they don't support CLI tools.
The only work around is to attach a monitor and keyboard and rename the drives the old fashion way.
Just a heads up for anyone who wants to configure a headless Xserve with more than two factory installed drives.
The permissions on OS X Server home directories can get screwed up during reinstalls, hard drive swapping, or by users who know enough to be dangerous. This shell script goes through and corrects the permissions and owners on all user folders so you don't have to do it manually. Just put this in a text file (without any extension), name it something like "resetusers," and drop it in a command folder like /sbin. Then type sudo resetusers to run it.
set full=`nireport -t my_server/network /users name | egrep -v '(root|user1|user2)'`
chmod -R 700 $full
foreach current ($full)
chmod 755 $current
chmod -R 755 $current/Public
chmod -R 755 $current/Sites
chown -R $current $current
The way this works is:
Switch to the Users folder.
Use nireport -t my_server/network /users name to get a list of the users on the server. If you are not running a NetInfo domain, use nireport . /users name instead.
Use egrep to subtract any users who either have home directories in a different location (like root) or don't have home directories at all.
Make every folder of every user private.
For each user, allow public access to the Public and Sites folders and the top-level user folder.
Make sure the user is the owner of all files in their folder.
If you run into "Operation not permitted" errors on certain files, those files are probably locked. If you want to unlock them, run sudo chflags nouchg filename or sudo chflags -R nouchg foldername.
Ever tried to remotely restart your Server when there is no monitor attached? OS X automatically defaults to 800x600 on restart, and if you're running OS X Server on a G4 tower, it can be a royal pain in the butt - especially because once it's restarted, you don't get any choices for different resolutions ... and Workgroup Manager requires 1024x768 to run!
Here's a simple solution ... with your display attached, set your preffered resolution using the System Preferences pane. Once that's done, open the Terminal and lock the preference file (com.apple.windowserver.plist file) by typing:
When installing an OSX Server at client locations that required serving to PC's as well as Macs, I ran into problems with PC's winning the browser election instead of the server. Now traditional SAMBA expertise would say that setting the OS level high (like 65 or so) would cause the machine to win the election. But this is no longer true with Win2000 and XP. A Win2000 machine will trump Samba or Win98 regardless of OS level. An XP machine will trump everything else too.
So to solve this you need to edit the registry on the PC's. Here is how I solved it.
My OS X Server 10.2.3 system went through a power outage a few days ago. I rebooted it this morning and it dumped me into the console login just before showing the normal login screen. A look at system.log shows the following:
loginwindow: AuthorizationRef doesn't have a userID
loginwindow: exiting to console
WindowServer: loginwindow connection closed; closing server.
I tried a couple of things (fsck, diskutil repairPermissions) before looking at the system log. After that I tried deleting these two files:
With the Help of several people in the Forums (and other sources), I've come up with these directions to install MovableType (a blogging system) on OS X Server so that MovableType uses MySQL as its databasing system.
In "Connect To Server...", all AFP servers show up in the "Local" SLP scope unless the network has been divided into scopes. Here is a method to do this without Mac OS X Server (based on a French Usenet article by Patrick Stadelmann). Just open /etc/slpsa.conf with a text editor and add the following line:
The name of the scope may contain spaces. After restart, the scope will show up in Connect To Server..., with your computer in it. If there is already an AppleTalk zone with the same name, the list of AFP and Appletalk servers will be merged.
afp548.com published my article on how to replace the Apple-supplied FTP server with ProFTPd, with authentication through users and groups kept in MySQL instead of NetInfo or a simple passwd file. This is a nice tip if you're looking to serve up a lot of different users on a system without wanting them to be able to login via SSH and such. Read "ProFTPd, for the pro?" for the how-to.
[Editor's note: The article discusses the installation on OS X Server; I don't know for sure, but I suspect it would work as described for OS X Client as well.]