Linked by Amjith Ramanujam on Mon 15th Dec 2008 21:48 UTC
Sun Solaris, OpenSolaris Even the most experienced Linux admin can sometimes feel frustrated trying to do a simple task in a new *nix environment like Solaris or BSD. This quick tutorial should ease the transition and clarify the most common terminologies in Solaris 10.
Order by: Score:
+1 for benr
by chekr on Tue 16th Dec 2008 02:11 UTC
chekr
Member since:
2005-11-05

A fantastic piece, expecially for those just trying the latest OpenSolaris release...

Ben Rockwood is one of the people in the OpenSolaris community who I have a lot of respect for

Reply Score: 1

Mechanical teletype origins
by Zenja on Tue 16th Dec 2008 02:15 UTC
Zenja
Member since:
2005-07-06

Looking at the directory and utility filenames, you can clearly see the old mechanical teletype origins of BSD systems. Back then, pressing each key required quite a bit of physical effort, which is why the commands and directory names were so short. The shell back then obviously didn't have auto-completion like modern shells do today.

And this silly legacy lives on, confusing all new users with arcane syntax.

Reply Score: 0

RE: Mechanical teletype origins
by chekr on Tue 16th Dec 2008 03:17 UTC in reply to "Mechanical teletype origins"
chekr Member since:
2005-11-05

I would consider myself a "casual" unixer at best and I don't have too much trouble understanding what you describe as "arcane syntax"...

Yeah it would be nice if we could rename "src" to "Source" and "tmp" to "Temporary" but losing the backwards compatability that this brings would not be worth it. Perhaps some sort of abstraction within gnome/kde to hide the dark art you speak of would be more appropriate. anyone playing in the shell should at least have a basic understanding of the FHS.

Reply Score: 2

RE: Mechanical teletype origins
by binarycrusader on Tue 16th Dec 2008 08:36 UTC in reply to "Mechanical teletype origins"
binarycrusader Member since:
2005-07-06

And this silly legacy lives on, confusing all new users with arcane syntax.


It's not completely silly; most people aren't fast typers, and giving them long, wordy commands while easier to understand is going to slow them down quite a bit.

With that said, it's also a compatibility issue. Those short, terse commands are coded in hundreds of thousands of programs across the software spectrum.

Changing any of them will break a lot of software.

Finally, most users that would have problems with these commands are going to be more comfortable with a GUI anyway, so I don't see the concern...

Reply Score: 5

darknexus Member since:
2008-07-15

And don't forget about specifying paths in configuration files or environment variables. I'd much rather have /usr/lib rather than /user/libraries, or whatever it would become. The FHS may look arcane, but it does have a method to its madness. True, it is a hold over from the beginning days of UNIX but I wouldn't call that a bad thing. Not all thirty-year-old concepts are bad ;) .

Reply Score: 3

Doc Pain Member since:
2006-10-08

I'd much rather have /usr/lib rather than /user/libraries, or whatever it would become.


NB: usr != user; usr = UNIX system resources, so the path would be /UNIX_System_Resources/Libraries. You may add spaces and uppercase letters because it's possible. :-)

Reply Score: 4

loftyhauser Member since:
2006-12-18

No, no, no... /usr is (or was) an abbreviation for /user as it was the location for home directories. The silly Unix System Resources thing is fairly recent.

Reply Score: 1

Doc Pain Member since:
2006-10-08

No, no, no... /usr is (or was) an abbreviation for /user as it was the location for home directories. The silly Unix System Resources thing is fairly recent.


Yes, I admit it's a valid interpretation. Some UNIX documentation mentions /usr as being the place for "user binaries (and libraries)". Maybe you could give an evidence (from a publication or a manual) where your interpretation is stated?

For example, it's common on FreeBSD to have the home directories in /usr/home (with a symlink /home@ -> usr/home). On Solaris, as mentioned, you will usually find /export/home instead.

Furthermore: http://www.osnews.com/thread?37861

Reply Score: 2

darknexus Member since:
2008-07-15

What /usr stands for seems to have been argued for ages now. Does it really matter in the long haul? I've always interpreted it as "user" for a few reasons:
1. It's where non-essential binaries are placed, i.e. user binaries, though that's not strictly literal anymore. The unix system resources would be in / (/bin, /etc, /lib, /sbin). Without them, you don't have a UNIX system. Therefore, they are the UNIX system resources. /usr was meant to be nonessential, though most Linux distros do not hold to this any longer. BSD and Solaris do, however.
2. /usr/home was once a very common place to store user data, rather than simply /home. This was particularly common with dial-up ISPs' shell accounts running BSD/OS.
So, that's why I've always seen it as "user."

Reply Score: 3

Doc Pain Member since:
2006-10-08

Thank you for this explaination.

I've always interpreted it as "user" for a few reasons:
1. It's where non-essential binaries are placed, i.e. user binaries, though that's not strictly literal anymore. The unix system resources would be in / (/bin, /etc, /lib, /sbin). Without them, you don't have a UNIX system. Therefore, they are the UNIX system resources. /usr was meant to be nonessential, though most Linux distros do not hold to this any longer. BSD and Solaris do, however.


The system resources of the UNIX operating system usually are located on the root partition, so they are availabe under conditions where only / is mounted ro and no other partitions can be accessed, still leaving the operator with a functional system for diagnostics, repair and maintenance.

When you extend what the UNIX system should be, you could consider the content of /usr to belong to it, too.

2. /usr/home was once a very common place to store user data, rather than simply /home. This was particularly common with dial-up ISPs' shell accounts running BSD/OS.


I see, interesting. Out of curiosity, I'll see how other UNIX OSes keep this.

So, that's why I've always seen it as "user."


As I said, completely valid, but finally, I think both interpretations are understandable and okay. Even from the point of the vendor's documentation of different UNIX systems, it seems that there are both points of view available.

I don't know how it is in other countries, but at least in Germany it's common to pronounce /usr as "user" (as in "usr local lib X elf").

Finally, it doesn't matter because in the past, there were different explainations, and in present, there are different interpretations.

Reply Score: 2

UltraZelda64 Member since:
2006-12-05

It's not completely silly; most people aren't fast typers, and giving them long, wordy commands while easier to understand is going to slow them down quite a bit.

Even if you are a fast typer, simple, short directory names have advantages--especially when going to a directory that's buried pretty deep within the filesystem. I cringe at the thought of having to type a typical Windows directory out vs. a typical UNIX counterpart.

C:\Documents and Settings\User Name\Application Data
vs...
/home/username (dot files and dot directories within usually)

C:\Documents and Settings\User Name\My Documents
vs...
/home/username

Seriously, couldn't they just keep C:\My Documents (which is where it was in win9x)?!?

Plus numerous other "My" folders (Music, Pictures, Videos, etc.) which are subdirectories in the My Documents folder, as if that one wasn't long enough already... and as if such media are actually some form of "document" in the first place.

And, just gotta love how they chose "Program Files" instead of the much simpler and more to-the-point "Programs." And how they moved C:\Windows\TEMP (which was a decent location) to C:\Documents and Settings\User Name\Local Settings\Temp (come on!).

But possibly nothing beats... drumroll...
C:\WINDOWS\system32\drivers\etc\HOSTS (huh? drivers? a system folder within a system folder? it almost seems like they're trying to *hide* this file!)
I preferred its original location in win9x as well, C:\WINDOWS\HOSTS, but /etc/hosts above all.

I'll take my /bin, /sbin, /tmp, /etc any day over the longer Windows ones (which, in many ways, make no sense). Especially over some of those rearrangements in newer, NT-based Windows versions.

Plus... if there's one thing I absolutely HATE when it comes to filesystem locations, it's spaces. And Windows' filesystem is full of them.

Reply Score: 5

darknexus Member since:
2008-07-15

Well, they couldn't very well keep it c:\My Documents if they wanted to have separate user accounts with separate documents folders. Bare in mind that 9x was not multi-user at all, where as NT, and consequently all current versions of Windows, are.
That being said, I agree completely with the rest of your post. Long paths can be an absolute nightmare, especially in the windows style--and that's leaving out drive letters, don't even get me started on those (although that's not something MS can be blaimed for). What really gets me is when you need to run POSIX-compliant software under Windows, and it doesn't understand windows paths. Very annoying, thank you for that Windows.
I don't mind the way OS X does it. The path names are a bit long, but they are straight to the point. /Applications, /System, /Users/$NAME/Documents, etc. Of course, these are on top of the FHS, which for some people might be confusing. I just look at it like this: the FHS for the UNIX underpinnings and software, and the OS X folder names for the GUI and everything related to it. This is not to say it's the cleanest way of organizing the filesystem, it isn't. But at least it does make sense, unlike some of the Windows file locations, and any software--be it command-line or GUI, POSIX or OS X-specific, can open whatever path is needed. No fiddling about like there is on Windows.
There are much cleaner ways of organizing the filesystem. Trouble is, they inevitably lead to longer paths, though not necessarily long directory names.

Reply Score: 4

UltraZelda64 Member since:
2006-12-05

Well, they couldn't very well keep it c:\My Documents if they wanted to have separate user accounts with separate documents folders. Bare in mind that 9x was not multi-user at all, where as NT, and consequently all current versions of Windows, are.

True, for whatever reason that didn't even go through my head. However, I still think that "Documents and Settings" is overkill.

I don't mind the way OS X does it. The path names are a bit long, but they are straight to the point. /Applications, /System, /Users/$NAME/Documents, etc. Of course, these are on top of the FHS, which for some people might be confusing.


I don't have much experience with Mac OS X, which is why I said nothing about it. However, from what I've read about its filesystem, I would have to agree that it's not that bad of a layout. I have tried GoboLinux though (very briefly), which attempts to do similar things to the filesystem as Apple did with OS X, and while I wouldn't want it to be adopted by all distros, it *is* nice that it's being worked on as a potential alternative for anyone who wants it.

Reply Score: 2

glarepate Member since:
2006-01-04

Symbolic links may solve that "problem".

<========[[[){)o.;[>~

Reply Score: 2

RE: Mechanical teletype origins
by steogede2 on Tue 16th Dec 2008 15:17 UTC in reply to "Mechanical teletype origins"
steogede2 Member since:
2007-08-17

Zenja, it comes back to the old story of 'easy to use at first' vs 'easy to use'. Sure long verbose names might help new users to get to grips with the system, but would you really want to be forced to use them everyday. Personally I would rather invest a little mental effort into remembering the short mnemonic directory and command names - you don't even need to know what they mean just what they are likely to contain.

Sure keystrokes may come cheap now that we aren't using teletypes and and have shell completion, however that isn't the only benefit of short mnemonic names. What about screen space and readability (i.e. being able to quickly read the screen). Take the following that I might use on my SUSE webserver (using Plesk):

/srv/www/vhosts/domain.name/conf/vhost.conf

Now compare it a with a more verbose equivalent:

/Server_Files/Web_Server/Virtual_Hosts/domain.name/Configuration_Files /Plesk_Virtual_Host_Apache_Configuration_Override_File

Sure the second one is more descriptive, however it isn't a great deal more meaningful. The amount of time it will take you to read and comprehend is much greater (IMHO). Also if you are on a small terminal, every command you type will be spread across several lines.

Reply Score: 2

RE: Mechanical teletype origins
by davidl on Tue 16th Dec 2008 15:25 UTC in reply to "Mechanical teletype origins"
davidl Member since:
2006-01-04

You might want to review your history. BSD was much, much more verbose than SYSV and was the first time I remember seeing command-line options having more than one character.

Reply Score: 1

RE: Mechanical teletype origins
by sigzero on Tue 16th Dec 2008 19:11 UTC in reply to "Mechanical teletype origins"
sigzero Member since:
2006-01-03

I have never heard that. I thought I read it was because they had to send them over 300 Baud modem lines or whatever they had back then.

Reply Score: 2

Just a note
by mdoverkil on Tue 16th Dec 2008 14:18 UTC
mdoverkil
Member since:
2005-09-30

Be aware that some of this information is out of date. This information was posted on Ben's site over two years ago.

That being said I've always enjoyed Ben's site, lots of useful info there.

Reply Score: 1

phoenix Member since:
2005-07-11



Here, here! Why, oh why, oh why, couldn't the Linux folks pick up where BSD left off, instead of trying to (poorly) emulate SysV? The FHS would be so much simpler to understand.

/ is the OS

/usr is apps shipped with the OS

/usr/local is for apps installed via the package manager

/opt is everything else, if you don't want to pollute /usr/local

/home is for user directories

Does it get any simpler?

Reply Score: 2

darknexus Member since:
2008-07-15

Just one of the many reasons I always choose *BSD over Linux where possible, and only choose Linux if *BSD is lacking an essential driver or application. I've always found BSD to be clean, and not just in the filesystem aspect. The overall system is just much better integrated and gives the feel of a well-crafted piece of work. But we don't need anymore *BSD vs Linux vs SysV vs Solaris flame wars. BSD is what _I_ prefer, that's all.

Reply Score: 2

Kebabbert Member since:
2007-07-27

But BSD doesnt have a good ZFS implementation yet. Nor DTrace. :o)

Reply Score: 2

phoenix Member since:
2005-07-11

But BSD doesnt have a good ZFS implementation yet. Nor DTrace. :o)


ZFS is available in FreeBSD 7.0, is improved in 7.1, and almost equal to OpenSolaris in 8-CURRENT. And DTrace is available in 7.1.

We're even using ZFS in production on our backup server, which does an rsync of 82 Linux and FreeBSD servers every night, using snapshots for daily backups, and zfs send/recv to create an off-site replica. ;)

Reply Score: 3

Welcome to 2006
by lcube on Tue 16th Dec 2008 16:14 UTC
lcube
Member since:
2008-12-05

Article is dated 06 Mar '06 and anybody interested in a transition to (Open)Solaris has already read it.

This site should be renamed to "OS olds".

Reply Score: 3