Wednesday, June 21, 2006

Solaris Install

Mark Mayo lists his top 10 Solaris Installation Annoyances.

I'm not going to try and pretend that the Solaris installer isn't anything other than bad, but consider the following:

I've done thousands of Solaris installs over the last decade or so. I can probably count the number of times I've used the interactive installer on the fingers of one hand. No, I didn't like it much either.

The fact that most admins with a clue use jumpstart means that the interactive installer has received precious little attention. Even if the interactive installer was the best thing since sliced bread, I would never use it at work. That's not to say that the interactive installer can't be improved - it can, and must be.

I've not used a modern Linux installer (say, Ubuntu) but have used RedHat, Mandrake, Suse, Fedora. And I wouldn't necessarily say they're actually much better. Sure, they might look prettier, and feel slicker, but were often fragile (installer just bombs out) and unreliable (system all messed up afterwards). The Solaris installer might be butt-ugly and dog-slow, but produced working systems if you were prepared to suffer to the end. And if people are using interactive installers professionally, they need to get with the program and adopt some automatic provisioning scheme.

1. As for why it's slow, some work has been done on this. The biggest problem is that the distribution is compressed with bzip2. It goes way quicker if you swap out bzip2 for gzip.

2,3,4. Never happen if you use jumpstart.

5. I would argue against any attempt to change the default shell to bash. (Now, if they suggested tcsh, that might be received more favourably.)

6. Err, who on earth logs in as root?

7,8. We ought to chuck vi and vim and replace 'em with emacs...

9. Urrgh. Sendmail.....

10. Secure by default has finally made it into Nevada. But automation under jumpstart would normally knock out services you don't need.


darkjoker said...

unfortunately jumpstart doesnt solve the problem of those of us who only have one computer. While is is a great tool for admins who need to install lots and lots of servers that is not the case at home.
installing solaris is very easy once you read the documentation and even easier if it's not the first time you do it, i must admit it scared me a bit the first few times

Peter Tribble said...

Oh, I agree. Let me try and put it another way: very little pressure has been applied from the traditional Solaris user base for improvements in the interactive installer. In fact, attempts to build a fancy installer have largely been condemned. And that's because fancy installers are counterproductive in an enterprise environment.

I don't actually think that blindly following the path that other OSes have taken with regards to installation is a good idea. I think we have an opportunity to completely rethink the whole subject.

(I'm not sure that, while such radical change may be necessary, it will ever be accepted by a fairly conservative Solaris establishment. But that makes it even more important that we actually come up with something that is better in all respects rather than merely being a change in emphasis.)

Mark Mayo said...

Of course I use jumpstart as well. In fact, the last time I used the interactive installer was to setup the jumpstart server.. :)

The idea with my post was to look at what the experience really feels like to someone new to Solaris, who are not going to be using a jumpstart server. I decided to try this after I recommended to a fairly technically proficient user at the office that he give Solaris a try on his workstation. He was encountering bugs in the Linux JVM and figured since he was in Java anyways he'd might as well try Solaris. Surely it would work great for his Java program! He came back two days later frustrated and defeated, complaining to me that he just couldn't figure *anything* out, and gave up and installed the latest SuSE. I thought, man, it can't be that bad... And off I went to burn the CDs to bring up a new database server..

Outside of "first timers", there are a lot of cases where Linux (or Windows Server) is in use today where there are only a few servers and in those situations jumpstart is never goint to be used. People will use the CD/DVD. Not everyone is going to install Solaris on dozens or hundreds of servers.

So yeah, clearly the installer hasn't been a priority for Sun, but if Solaris is going to spread out and expand it's user base it's going to have to be re-thought.

Dan Miner's proposal actually looks pretty good (I'm half way through it).

Point 6. Imagine you just installed Solaris from CD. The fact that it brings up a GUI is going to be *completely* normal to you. It only asked you to enter a root password and never offered to create a non-root user. When it's all done and the login screen comes up, what would you do? I'd login. As root (what other choice do I have?). That's what.


Peter Tribble said...

Well yes, but one point I'm trying to make here is that the traditional Solaris user (and I count myself in that category) is really unlikely to be able to help build the required next-generation installer. We'll just use jumpstart.

And jumpstart is a better way to do it, as long as the number of machines doesn't go down to one. (Yup, the last time I did an interactive install was on the first day at my current job, to build the first machine.) I've got two machines in the office, and jumpstart each off the other; I jumpstart my home workstations. While I do want a better installer, I don't want jumpstart to be treated as a second class citizen.

Kint said...

"6. Err, who on earth logs in as root?"

Considering I still havn't found a way to create a non-root user during the install phrase (non-jumpstart), I'd say everyone?!