moving osx leopard server users

So we needed to move a bunch of users from an OSX Leopard Server to a normal OSX machine (as a backup / test bed)

using the normal ‘migration assistant’ didn’t work, so we had to do it manually. Possibly due to moving from a Intel based OSX-Server machine to a PPC based non-Server?

All user details are kept in

/private/var/db/dslocal/nodes/Default/users

in .plist files (XML, human readable).

and all passwords are kept in hash files in

/private/var/db/shadow/hash

The hash files are named after the “generateduid” found inside the users .plist file.

If you’re using home directories on the computer, you’d need to move them across too.

Ditto for user groups. User groups are kept in

/private/var/db/dslocal/nodes/Default/groups

Move the files across to the new machine, and it all just works.

if you use cp -n on the command line, it won’t write over the top of files already there, so shouldn’t muck anything up (hopefully!)

NOTE: One weird thing was that a bunch of the users didn’t appear in the Accounts Preference Panel. This seems to be linked whether or not the account .plist file has a default shell set up:

it goes after the “realname” key/array pair.

There is a reason...

There is a reason why I prefer text based / commandline / unix interfaces.

“Why?” You may ask?

So I had to update a website – basically changing from ‘2011’ to ‘2012’ – for someone.  Once I got in to the file manager (web based) I could find the graphics files to replace, reasonably easily, and upload new ones.

But I needed to update the text of the banner.  No .html files, or .inc or anything to edit.

So I went to the “WYSIWYG” editor section of the site.  I could edit everything, except that part.  And the footer.  And the page title. So, I could edit the “articles”, but not much else.

After hunting around for a while, I decided to try the “Website Management” area.  Total different interface again, loads of settings boxes and tabs.  I found there on different pages where I could set the page title, and so on.  But I couldn’t find the banner! Anywhere!

Eventually, this morning, I found it.

In “Website Management” -> “Structure” -> “Website Settings” -> “Code Injection” -> “Advanced” -> “Site Banner HTML Override – Edited”

I hadn’t found it before, because the section I needed was “Site Banner HTML Override”, and to find that, I needed to look through a drop-down box which was displaying “Extra Header Code (within )” with some javascript includes.

SERIOUSLY.

What is wrong with just having a bunch of text files, and then letting me type

“grep 2011 *”

And it giving me a list of files to edit?  HOW is this graphical interface any easier?

OK.  So ‘grep’ isn’t common English, I know.  Learning basic unix does have a steep looking learning curve.  At first.

In case you’re interested, I started, months and months ago, writing an “English-like” command shell.

So you could type commands like:

“list all files which contain 2011”

and it should tell you.

It’s on sourceforge, the first alpha versions of the code.


http://sourceforge.net/projects/daftshell/

The whole idea of ’natural language’ interfaces fascinates me.  I should work on daftshell again, one of these days.

So. Yeah.  Graphical “easy” systems aren’t always easy.

The Abomination is Dead.

I don’t like Mobile Phones.

I was somewhat forced by various parents (well, mine, actually) to take one with me, when I first went off to Doulos, 5 years ago.

Here it is:

I named it “The Abomination”.

5 years later, I have conceded that they are somewhat useful. Alas, I dropped it this week. It now only does this:

So it is deceased. Good bye Abomination.

Rest in Pieces.