SCO Openserver release 5.0.7
There is a lot to like in the 5.0.7 release of SCO Openserver. Support for IDE CD-RW and DVD-RAM (you need other tools to actually write to this media, but the important kernel support is built in), more USB devices (though not printers or modems), P4, Xeon, and AMD Athlon processors, UDMA 100 and 133 hard drives, PCI serial and parallel cards, LS-120 and LS-240 IDE drives (see “man Sflp”, not “sflp” as the documentation suggests) , several Gigabit network cards, and more PCMCIA support.
The Netscape server is gone, replaced by Apache, OpenSSH is built in, sendmail is at 8.11 (which of course will need immediate updating), and you now have a choice of Mozilla or Netscape for GUI browsers and Lynx is included for character mode.
I installed this on a low end clone: A Celeron 433Mhz with a 30GB IDE drive and 128 MB of ram. The installation was fairly long, mostly because I let it do a complete badtrack of the disk – other than that, it was less than an hour. The GUI configured perfectly with defaults (I just used the VESA driver and the high resolution keyboard mouse) and after configuring the nic and gateway (/etc/default/tcp for the gateway), I was using Mozilla to browse the web in minutes.
Optional Services CD
The optional services CD includes both licensed and unlicensed products. Whatever the criteria is that determines whether something appears here or is on the base OS CD is beyond my understanding: SCO PPP and Squid are on the base CD, as are both the SCO and GNU development tools, but Netraverse’s Merge and Samba, Netscape Communicator and a whole bunch of other things are on the Optional Services CD. There were two supplements (OSS631B and OSS646A) on that CD that were not (as of this writing; March 2003) on the SCO FTP site. The 631B is the “glib” libraries that are needed for so many other Open Source/Skunkware applications. The other is the “Execution Environment Supplement” which updates libc and other important parts of the OS. You don’t need either of these: they are already part of 5.0.7, and are for 5.0.6 systems.
By the way, there’s a new icon on the Desktop called “Mount CD” that you can click on to both mount and unmount CD’s. It’s name doesn’t change when a CD is mounted, though the icon does – just click on it again to unmount.
Why can’t it just work?
I decided I’d follow what a typical Linux user might try, and installed the GNU development tools, reasoning that most people probably won’t pay for the SCO development system. The installation was simple enough, and I then wrote a simple “hello.c” program and tried “make”. Of course it said that couldn’t be found, because the GNU stuff installs in /usr/gnu/bin. I added that to my PATH and tried again. Still no luck, because GNU make thinks it should find “cc” and what’s available is “gcc”. OK, I felt that most folks could probably get around that, but no, that wasn’t enough, because gcc can’t deal with “#include “. Of course what you need is the “SCO OpenServer Linker and Application Development Libraries” as explained at http://aplawrence.com/SCOFAQ/scotec1.html#compiler. I know that, but anyone new to SCO would probably be baffled. Why not just install that with GNU automatically if it’s not already there? Why make things hard for people?
Don’t get me wrong: I applaud the fact that they now include GNU development as an option on the base CD. It’s also great that the glib libraries are included. Those things help a lot. But finish the job: make it useable by any damn fool who is NOT a developer, who probably just needs to compile an open source program now and then. Make it easy, not the big struggle it is now.
Samba replaces Visionfs which was used in previous OSR5 products. Unfortunately, for reasons I don’t yet understand, the ability to mount Windows shares to Unix is not possible. That’s a major problem. Another not so major problem with Samba is that the man pages are a mess “out of the box”. First, if all you do is install Samba, they won’t work at all because you don’t have the text processing tools those man pages need. If you happen to install the GNU develpoment tools, you’ll be a little better off, but it’s still a mess. Again, it’s great that they put this stuff in here, but don’t do half the job. Make it right. These are probably things developers never notice (because they immediately install all these tools), but they will have an adverse affect on a new user’s opinion of the product. Windows connectivity is such a normal requirement nowadays that Samba should probably just be an automatic part of a standard installation.
Enough complaining; let’s go exploring. There are new commands here, and changes to old ones. If you look at the License Manager, you’ll see that the Strong Encryption Supplement was automatically installed and licensed. Crypt is now included. The old SCOHelp is gone, replaced by Docview (it’s Apache at port 8457). The “crash” command has had TCP/IP and NFS structures added to its repertoire. FTP is updated. The wonderfully useful “lsof” command no longer has to be downloaded from Skunkware, and “truss” (like “trace”) is included without having to install development tools. Ssh and sshd are included, and for me worked with zero effort.
The korn shell has also been updated, and a blurb in the “Getting Started Guided” pointed out a new “-o danglecreate” option which supposedly has something to do with protecting the overwriting of symlinks. It’s completely undocumented, and I can’t find anything about it on the web either. I suspect that it might be related to some known security problems with ksh creating symlinks when using “here” documents, but I do not know.
Speaking of shells: I wish they’d include bash automatically. I think what OSR5 needs at this point in its life is as much comfort level is as possible for a Linux admin who has stumbled across it. Having the GNU development system available is good, but little things like shells matter too.
Docview is the new SCO help system. One of the first things you need to do is run /usr/lib/docview/conf/rundig to build its indexes. Be prepared for that to take a LONG time: on this admittedly weak machine, the process took an amazing 5.5 hours! But then everything was painfully slow with this. I finally got impatient and threw in some more memory, which helped a lot. For the heck of it, I reindexed (using -i to make it do the whole thing) after bumping the ram up to 384MB; that took just about as long. Reindexing isn’t particularly healthy for the rest of your system either: my sar %idle was at 0 throughout this process.
But the indexing wassn’t complete at all. For example, while there is a “usb” man page, Docview search turned up absolutely nothing for “usb”. I did notice that at SCO’s web site, a Docview search for “usb” did turn up the appropriate pages, so it had to be something silly that interfered with indexing on my machine. So, I did it a third time. This took an incredible 10 hours, but when it finished, Docview could find “usb” in a search.
You cannot index if you have used dhcp to get an address for this box. The supposed reason is that the machine doesn’t have a fixed ip address (see /usr/lib/docview/conf/README). Pretty silly, I think.
You may recall that in previous versions, “man” wouldn’t work if scohttp wasn’t running. In 5.0.7, “man” does not depend on Docview (/etc/docview stop|start|restart if you care).
You now get to choose between Netscape or Mozilla as your browser. By default, when you click on Help, or World Wide Web, you’ll be asked which you want to use, and also given the opportunity to set one as the default. Don’t be in a big hurry to do that: if you choose Mozilla, you may have trouble accessing the Internet Manager to manage internet services if you haven’t already gone through the initial interface testing phase with Netscape. As the Web Server part of that is now Apache, you can’t use Internet Manager for that anyway, so this may not be a terrible hardship. But if you do need to change your defaults, or set it back to asking you, the file is /etc/default/browser. Comment out the BROWSER= line.
In addition to /etc/default/browser, there’s a new “man.hdk” in /atc/default. It looks like it has to do with the UDK, which I didn’t install.
The cron file has changed, giving more control of cron’s behaviour with regard to %, and also now lets you set variables, the shell to be used, and the PATH. That’s very useful.
The lpd has a new “old_port_compatible” setting which helps it find lpd servers on older SCO systems.
The tcp file has the most new stuff. You control the startup of SSH here, and also get to specify up to 10 other daemons you want started after tcp itself. There are STARTDAEMON0 to STARTDAEMON9 and matching STOPDAEMON variables.
Other small changes include that user’s default home directory is now in /u, which is created during the install whether you made multiple filesystems or not.
System Administration Tools
A lot of changes here. First, you’ll find usb and pci choices for all kinds of things. The Hardware/Kernel manager has all sorts of new choices. You can configure Samba here, and ipfilter too (though all you get for that is an empty vi session – but see “mkfilters” below). Scsi jukeboxes, Tricord drives, LS-120 drives, even the APC ups daemon are all here. The “Terminal Emulation Control” that was introduced in 5.06 now can be controlled from here in addition to “mkdev scoansi”. Of course, “mkdev” lists many new options also.
I noticed a SCROLLSZ tunable, which says it is the number of lines in the console scrollback buffer. So how do you scroll back? Darned if I know (no, it’s not SHIFT PAGEUP). A developer tells me that they didn’t get to finish documenting this but “mapkeys” is of course how you will set it. I don’t know any more than that, but if one more person tells me about SHIFT PAGEUP (which is how Linux works), I’m going to throw a brick at them!
Listings of the PATH directories show new commands – not necessarily new to you, of course, but new to OSR5. Some new additions: bzip2, crypt and openssl, gzip, pccardslot (no man page), udisetup (installs a UDI driver). Also, “more” has become “less” (that is, they are the same binary; see the man page), and a lot of graphic manipulators/converters are included. As already mentioned, ssh and all the associated OpenSSH commands and tools are here. Ldap tools are also present, and vacation was nice to see.
I was glad to see that “mkfilters” (a Perl script that does a basic ipfilter configuration) was here (in /etc), but you need to edit it because it thinks Perl is in /usr/local/bin. Just change the first line to “#!/usr/bin/perl”.
I’m sure I’ve missed other important new or changed commands.
Prior versions left you some slack in licensing. A 5 user version would let you pass a few more users before it refused any more. That’s all gone: this system cuts you off right then and there. There are also unusual procedures for upgrading if you prefer to do a fresh install: you need both your 5.0.5/6 license and your new 5.0.7 upgrade license. That’s a change from past practice: an upgrade license was really just a normal license you paid less for because of owning the previous license. I don’t see that as great hardship, but I do wonder if it will have an affect on future upgrades: will you have to keep your 5.0.5/6 license handy forever?
Unless you are coming from 5.0.5 or 5.0.6, you cannot do an in-place upgrade. I suppose some will object to that, but really: if you’ve been running a system since 5.0.4 or before, it’s time for a fresh start
anyway. See Upgrades.
More than a few of us were surprised that SCO came out with this new release. There’s some life left in OpenServer yet.
Use Search with the key “5.0.7” to find other 5.0.7 related articles.
A.P. Lawrence provides SCO Unix and Linux consulting services http://www.pcunix.com