Problems With UNIX Standards

Discussions on more advanced topics such as monolithic vs micro-kernels, transactional memory models, and paging vs segmentation should go here. Use this forum to expand and improve the wiki!
SoulofDeity
Member
Member
Posts: 193
Joined: Wed Jan 11, 2012 6:10 pm

Re: Problems With UNIX Standards

Post by SoulofDeity »

Icee wrote:
SoulofDeity wrote:That's how I learned to use everything.
It's a good thing to be self-reliant about your knowledge. If your knowledge is actually correct, that is.
You do know that the command line changed over time right? 95/98 they were still using DOS which only had a /P switch. In NT distributions like XP, Vista, and 7 they separated Windows from DOS and wrote a replacement. In the replacement, del had more options. It may have been aliased to deltree, I can't be certain about that, but I'm absolutely certain that when I had used it, there was a /Y option.

In response to the question about me wanting to break everything, yeah. I've said numerous times that I don't care. Now I'll admit, network programming has never been my forte. What I said probably sounded really dumb to other people who have more experience.
User avatar
iansjack
Member
Member
Posts: 4703
Joined: Sat Mar 31, 2012 3:07 am
Location: Chichester, UK

Re: Problems With UNIX Standards

Post by iansjack »

SoulofDeity wrote:What I said probably sounded really dumb to other people who have more experience.
To be fair, it sounded no dumber, to me, than your ideas to rename the Unix root directory.
In NT distributions like XP, Vista, and 7 they separated Windows from DOS and wrote a replacement. In the replacement, del had more options. It may have been aliased to deltree, I can't be certain about that, but I'm absolutely certain that when I had used it, there was a /Y option.
Unfortunately, your certainty is misplaced.
SoulofDeity
Member
Member
Posts: 193
Joined: Wed Jan 11, 2012 6:10 pm

Re: Problems With UNIX Standards

Post by SoulofDeity »

[url][/url]
iansjack wrote:
SoulofDeity wrote:What I said probably sounded really dumb to other people who have more experience.
To be fair, it sounded no dumber, to me, than your ideas to rename the Unix root directory.
In NT distributions like XP, Vista, and 7 they separated Windows from DOS and wrote a replacement. In the replacement, del had more options. It may have been aliased to deltree, I can't be certain about that, but I'm absolutely certain that when I had used it, there was a /Y option.
Unfortunately, your certainty is misplaced.
The name "Problem With Unix Standards" means that this topic was created to point out places where Unix could be improved. If you like it just the way it is, then that's your opinion I suppose.

Maybe my certainty is out of place. I haven't used Windows in almost 2 years and brains aren't exactly the most reliable sources of information.


EDIT:
Just disclosure, when I say "You know" I'm not meaning to sound like an arrogant prick who thinks you don't. It's a tick I picked up from someone, don't take it the wrong way.
SoulofDeity
Member
Member
Posts: 193
Joined: Wed Jan 11, 2012 6:10 pm

Re: Problems With UNIX Standards

Post by SoulofDeity »

So, just another headache regarding the filing system; /opt vs /usr. From an abstract point of view, they do the same thing. The major difference is that /opt can be used by anyone and /usr requires administrative privileges. Additionally, each package under opt has it's own directory, so removing applications is a snap.

Many people would argue that /usr should be used instead of /opt because for some reason unbeknownst to those with common sense, splattering your files across the filing system with no regard to naming conflicts is a good idea (wheeeeee! pack4g3 m4nag3rs f7w!!?!). Now, is /usr bad? Of course not. But I think that the way most people think about it or use it is bad. The /opt directory keeps your system clean by isolating your packages; the /usr directory throws everything into a hot pot, which while messy, lets the applications recognize each other's existence. You can have the best of both worlds by installing your packages in /opt and creating 'globally visible' symlinks in /usr. It's like adding directories to your PATH in Windows.


Sadly, the damage has already been done though. One cannot just redefine the use of /usr at a whim without getting viciously attacked by a mob. No, I'd much rather rid myself of it and it's misleading name. For the new cleaner layout, I want to add a /env directory.
seuti
Member
Member
Posts: 74
Joined: Tue Aug 19, 2014 1:20 pm

Re: Problems With UNIX Standards

Post by seuti »

SoulofDeity wrote:So, just another headache regarding the filing system; /opt vs /usr. From an abstract point of view, they do the same thing. The major difference is that /opt can be used by anyone and /usr requires administrative privileges. Additionally, each package under opt has it's own directory, so removing applications is a snap.

Many people would argue that /usr should be used instead of /opt because for some reason unbeknownst to those with common sense, splattering your files across the filing system with no regard to naming conflicts is a good idea (wheeeeee! pack4g3 m4nag3rs f7w!!?!). Now, is /usr bad? Of course not. But I think that the way most people think about it or use it is bad. The /opt directory keeps your system clean by isolating your packages; the /usr directory throws everything into a hot pot, which while messy, lets the applications recognize each other's existence. You can have the best of both worlds by installing your packages in /opt and creating 'globally visible' symlinks in /usr. It's like adding directories to your PATH in Windows.


Sadly, the damage has already been done though. One cannot just redefine the use of /usr at a whim without getting viciously attacked by a mob. No, I'd much rather rid myself of it and it's misleading name. For the new cleaner layout, I want to add a /env directory.
I use /opt to install software that I've built from source or software that isn't available through the package manager.
But if you don't want a /usr you shouldn't add it, as it's your operating system. However porting some software might be a pain if you deviate from the standards too much.
SoulofDeity
Member
Member
Posts: 193
Joined: Wed Jan 11, 2012 6:10 pm

Re: Problems With UNIX Standards

Post by SoulofDeity »

seuti wrote:I use /opt to install software that I've built from source or software that isn't available through the package manager.
But if you don't want a /usr you shouldn't add it, as it's your operating system. However porting some software might be a pain if you deviate from the standards too much.
That is the most typical use of /opt and /usr nowadays. I'm merely begging the point that just because we have package managers doesn't mean it's okay to toss everything in one directory. Sooner or later, you're bound to have naming conflicts. Everything should be isolated except what is explicitly stated otherwise. One clear advantage to this is that you can have multiple versions of the same programs and libraries installed side-by-side.
User avatar
iansjack
Member
Member
Posts: 4703
Joined: Sat Mar 31, 2012 3:07 am
Location: Chichester, UK

Re: Problems With UNIX Standards

Post by iansjack »

So, just another headache regarding the filing system; /opt vs /usr. From an abstract point of view, they do the same thing. The major difference is that /opt can be used by anyone and /usr requires administrative privileges.
Those latter two sentences directly contradict each other. If one directory can be written to only by the administrator and the other can be written to by anyone then they can hardly be said to do the same thing, from an abstract or practical viewpoint. Let's face it, relax your definition enough and all directories do the same thing from an abstract viewpoint - they all store files and directories.

You miss out the other very important directories in the hierarchy of executable files (assuming that by "/usr" you meant "/usr/bin") - /bin, /sbin, /usr/sbin, /usr/local/bin, and /usr/local/sbin. All of these directories serve distinct purposes and add to the flexibility of the Unix file system. Of course there is nothing to stop you using something completely different in your own OS (you could even follow the rather muddled Windows layout if you wish) but you seem again to be knocking something that works perfectly well for those users that Unix was designed for. Changing an established system just for the sake of change is rarely a good idea.

Unix users don't seem to have a problem with naming conflicts - they just give each program a unique name. Simplistic, perhaps, but it works. And in some ways it's even quite a good idea to know which program you are going to run because of what it is called.
SoulofDeity
Member
Member
Posts: 193
Joined: Wed Jan 11, 2012 6:10 pm

Re: Problems With UNIX Standards

Post by SoulofDeity »

iansjack wrote:
So, just another headache regarding the filing system; /opt vs /usr. From an abstract point of view, they do the same thing. The major difference is that /opt can be used by anyone and /usr requires administrative privileges.
Those latter two sentences directly contradict each other. If one directory can be written to only by the administrator and the other can be written to by anyone then they can hardly be said to do the same thing, from an abstract or practical viewpoint. Let's face it, relax your definition enough and all directories do the same thing from an abstract viewpoint - they all store files and directories.
No, they do the same thing; the permissions are just different. There's nothing preventing you from changing the privelege level of the /opt directory, though really you should only be concerned with the priveleges of the /opt/* directories. Each subdirectory of /opt is like a duplicate /usr directory (though without the need for conformance). As long as those have the correct priveleges and ownship, there is no loss in safety.
iansjack wrote:You miss out the other very important directories in the hierarchy of executable files (assuming that by "/usr" you meant "/usr/bin") - /bin, /sbin, /usr/sbin, /usr/local/bin, and /usr/local/sbin.
No, I didn't. I pointed out specifically the difference in the structures between /opt and /usr afterwards. If you had cared to read my entire post, you'd have seen that.

The /usr directory was orignally for user data, but now it only serves as a way to splatter files across the filing system or symlink to programs and libraries in the root directory for late mounting; kind of like how /var/run now symlinks to /run so it can be mounted earlier than /var itself. The question is, if /usr is not user specific, then why do we need a separate directory for everything? We have /bin and /sbin for differentiating system binaries from user binaries.

When I had originally written my post, I was directly comparing /opt to /usr/local (since that's more clearly analagous), but changed it to /opt vs /usr because generally the /usr directory tries to usurp the purpose of /opt (among other root directories)
User avatar
iansjack
Member
Member
Posts: 4703
Joined: Sat Mar 31, 2012 3:07 am
Location: Chichester, UK

Re: Problems With UNIX Standards

Post by iansjack »

It's quite clear that you don't understand the reasons for the layout of the Unix filesystem. You don't even grasp the reasons why there are separate /bin and /usr/bin directories. Ah well.
SoulofDeity
Member
Member
Posts: 193
Joined: Wed Jan 11, 2012 6:10 pm

Re: Problems With UNIX Standards

Post by SoulofDeity »

iansjack wrote:It's quite clear that you don't understand the reasons for the layout of the Unix filesystem. You don't even grasp the reasons why there are separate /bin and /usr/bin directories. Ah well.
No one does apparently. It was originally for user files, which is now the purpose of /home. Now, "/usr" more or less means "external filing system that I want to treat like my local environment because I have no f$^@ing clue how the 'mount' command or devices work"
HoTT
Member
Member
Posts: 56
Joined: Tue Jan 21, 2014 10:16 am

Re: Problems With UNIX Standards

Post by HoTT »

It was originally for user files, which is now the purpose of /home.
usr is no abbreviation of user and was never meant to be for “user files”.
User avatar
Brynet-Inc
Member
Member
Posts: 2426
Joined: Tue Oct 17, 2006 9:29 pm
Libera.chat IRC: brynet
Location: Canada
Contact:

Re: Problems With UNIX Standards

Post by Brynet-Inc »

I suspect "SoulofDeity" has never seen the hier(7) man page on most Unix systems.
Image
Twitter: @canadianbryan. Award by smcerm, I stole it. Original was larger.
User avatar
iansjack
Member
Member
Posts: 4703
Joined: Sat Mar 31, 2012 3:07 am
Location: Chichester, UK

Re: Problems With UNIX Standards

Post by iansjack »

SoulofDeity wrote:
iansjack wrote:It's quite clear that you don't understand the reasons for the layout of the Unix filesystem. You don't even grasp the reasons why there are separate /bin and /usr/bin directories. Ah well.
No one does apparently. It was originally for user files, which is now the purpose of /home. Now, "/usr" more or less means "external filing system that I want to treat like my local environment because I have no f$^@ing clue how the 'mount' command or devices work"
Wow! It's probably better not to project your own lack of understanding on everyone else. I should imagine that most users of Unix systems understand the distinction; those that don't can read the aforementioned man page.
User avatar
Primis
Member
Member
Posts: 62
Joined: Fri May 14, 2010 3:46 pm
Libera.chat IRC: Primis
Location: New York, NY
Contact:

Re: Problems With UNIX Standards

Post by Primis »

HoTT wrote:
It was originally for user files, which is now the purpose of /home.
usr is no abbreviation of user and was never meant to be for “user files”.
Image
Yeah it was.
"On two occasions I have been asked, 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?' I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question."
Image
SoulofDeity
Member
Member
Posts: 193
Joined: Wed Jan 11, 2012 6:10 pm

Re: Problems With UNIX Standards

Post by SoulofDeity »

@Primis, thanks for referencing that. Thats actually the exact video I originally learned that from. I love watching old stuff like this :P

Now, maybe I did go a tad overboard with the demonification of /usr...When I see ages-old mistakes going ignored, I tend to get riled up about it. But, I'm still sticking to my opinion that the current usage of /usr is very inelegant and error prone.

EDIT:
@Brynet-Inc, I have read the manpages. Also the standards. And the studies. And the specifications. Also newletters and mailing lists, irc logs, forum debates, public programing shows, etc. I follow paper trails to see how things changed over time. Usually, when I bring up something that I have a problem with, it's because I put a hell of a lot of time and effort into studying it and am not liking what I see; I dislike it because I completely understand it and don't know why people decided to make such a bad decision. But, hindsight is 20/20 they say...
Locked