Hacker News new | past | comments | ask | show | jobs | submit login
Where did the wheel group get its name? (unix.stackexchange.com)
173 points by adtac on June 1, 2018 | hide | past | favorite | 46 comments



Rather famously, back when “su” was still part of GNU coreutils (in 2007 it was removed from default installations, and in 2012 the code was removed from the package, since other implementations existed in other packages), GNU su did not, contrary to Unix traditional behavior, restrict the usage of “su” to members of the wheel group:

(Written by Richard Stallman in the manual for GNU “su”)

Sometimes a few of the users try to hold total power over all the rest. For example, in 1984, a few users at the MIT AI lab decided to seize power by changing the operator password on the Twenex system and keeping it secret from everyone else. (I was able to thwart this coup and give power back to the users by patching the kernel, but I wouldn't know how to do that in Unix.)

However, occasionally the rulers do tell someone. Under the usual su mechanism, once someone learns the root password who sympathizes with the ordinary users, he or she can tell the rest. The "wheel group" feature would make this impossible, and thus cement the power of the rulers.

I'm on the side of the masses, not that of the rulers. If you are used to supporting the bosses and sysadmins in whatever they do, you might find this idea strange at first.

https://ftp.gnu.org/old-gnu/Manuals/coreutils-4.5.4/html_nod...


I can confirm that it originated in TENEX. TENEX was the first operating system that DEC did for the PDP 10 architecture (a follow on to the PDP 6 architecture). Prior to that, on the PDP 8, PDP-12, and PDP-11 the various operating systems used user identification codes (UICs) and while [0, 0] was special it wasn't named. It was the UIC reserved for the Operator.

TENEX introduced the notion that non-Operators could be empowered to do Operator type things (like load tapes, mount and unmount file systems, Etc.) and to do that they added privilege bits. These bits were associated with UICs and the bit that enabled Operator privileges was called the 'Wheel' bit. (anecdotally the 'big wheel')

UNIX, which was developed in places where there was also a large DEC presence, used group membership like DEC applied privilege bits. The group for people with operator privileges was naturally "wheel" based on the history.


> TENEX was the first operating system that DEC did for the PDP 10 architecture

No, that's TOPS-10. TENEX was TEN EXtended, the OS BBN did for the PDP-10 they extended to have paged virtual memory. TENEX is an ancestor to TOPS-20, which was a DEC product.

https://dl.acm.org/citation.cfm?id=361271

> TENEX is a new time sharing system implemented on a DEC PDP-10 augmented by special paging hardware developed at BBN.

https://github.com/PDP-10/tenex

(Lots more old -10 stuff at the user account, like WAITS and ITS.)


Oh that is awesome I stand corrected, thanks.

At USC's engineering computer laboratory (at one time in the late 70's / early 80's running 7 different 10's) the install history was TENEX (given the association with BBN I expect that was why that machine was on the ARPAnet) then came TOPS-10 for some of the undergraduate accessible machines and then the TENEX machines got TOPS-20 as an upgrade.

Clearly the lore as passed along to me when I was an systems programmer in one of the sister labs was incorrect. Now I have to figure out how to erase these cuniform tablets! :-)


Its origins are with TENEX and from there TOPS-20. TOPS-20 was ubiquitous in computer science departments in the early 80s when I worked at DEC.

The release of TENEX precedes the release of Unix by a year or so and the release of the first BSD by seven years. If you want the etymological roots for this, you would need to ask Dan Murphy or one of his contemporaries: https://en.m.wikipedia.org/wiki/Daniel_Murphy_(computer_scie...


The term was common at CMU in the TOPS-20 days, as a synonym for "superuser". I remember office doors with names and designations like "big wheel" and "training wheel", etc.


I have always wondered why the admin user is named "root". It makes sense for the "root" filesystem as filesystems are structured as a tree. But the set of users is flat. Even considering groups, there is no tree structure to group membership.


People learning Linux find it confusing. They ask what root is and understand the concept of root of the file system. Then I say there is a user called root which confuses them. Then a group root only root is in it when the user root is created. But the two root words are not two groups one is the owner root (who is user root) it isn't the group.


I've been doing linux for awhile and that explanation is confusing to me, so I see where they're coming from.

I usually oversimplify: "root" is a keyword typically used to be all incompacing. The system root contains all files in the system. The user root is a super-admin that has all user rights in the system. The group root is a super-admin group the root user is assigned to and has all group rights.


"encompassing"


> The system root contains all files in the system.

Note that, strictly speaking, this is a misconception. The root file system is the one which is at the root of the hierarchy of mounted file systems.

Even the notion of something being (or not being) "in the system" can be misleading, because today's systems, including storage devices, can be distributed in various ways.


Or annoying, apparently. A good friend of mine’s father, having recently acquired a unix based POS system for his retail store, decided he’d prefer a nicer name than ‘root’. Apparently, ca. 1984 unix was rather particular about names (instead of uid) and didn’t take kindly to such. Much pain ensued.


Perhaps because you get write access to the root directory (and from there on down the whole tree), while normal users are kept within their respective home directories?


That means sense as user directories used to be kept in /usr.


The root user is the root of the permission tree. All power comes from and can be taken back by the root user. Everyone else has less power.

The first program was also traditionally executed under a root user. You can see this carry forward with init scripts running as root by default.


Root runs the root process. Processes form a tree.

There are no root "permissions", because permissions are not a tree structure. Users can't give permissions to other users, recursively.


They can in the temporal sense, the tree isn't tracked by software but it still originates that way. As the first account root creates the second and may decide to delegate other permissions. Given sufficient permission that account may too decide to create others and so on. If root rescinds permissions its not recursive which I think is what you are getting at.


Well, maybe not group membership, but certainly there is a 'root' to the tree of permissions and capabilities, and I think it's true that some of them derive from more basic capabilities.

If each capability (cross the namespace or object to which it is applied, for non-global capabilities) is a leaf, then the global capability itself is a branch from which all of those leaves have sprouted, and the set of all capabilities live in a tree...

There is Root at the base of the trunk uniting all of the branches.


Think about it like this, who owns the root of the file system? Someone has to own it so they named that user root. Though, I have also thought, well then why not have another user who owns all the administrative directories? I suppose it makes root redundant if all root does is own/manage the root of the file system. So root it is.


In Unix Version 7 (and it might also have been like this in previous versions), the home directory for each user was in /usr, so the home directory for a user named "david" would be /usr/david. The home directory for the "root" user was /.


In old Unix systems the home directory of UID 0 was effectively / so it made sense to call this user root.


I can't remember which BSD book it was in, but one of them mentioned that 'wheel' was reference to the Knights of the Round Table i.e not a single admin user, but a shared, equal privilege.

... my childhood was a lie


Huh. And here I always thought it's because these users are allowed to "take the wheel".


I had to stop and ponder the number of layers of humor intended when, in the movie WALL-E, the captain’s interface to the ship is a robot that resembles a ship’s helm. Yes, there’s a naval metaphor... but it’s also an example of a root user acting not through root privilege, but through wheel privilege. :)


It's certainly possible. The Pixar folks had a lot of interaction with the BSD folks early on.

John Lasseter, who headed up Pixar, drew the most widely known BSD Daemon, after all.


And then the wheel is threatened when a actual root (ie: the plant) shows up.


For some reason, I have of memory of reading that `wheel` was from `wheelhouse` (https://en.wiktionary.org/wiki/wheelhouse), as in the place where only navigators would have access. And I do see that in one of the downvoted stackexchange answers.


Even if this turns out to be false, I find it a more satisfying answer. "Big-wheel" as a source for the term seems quite colloquial, whereas "wheel-house" indicates a bit of underlying culture -- it's the slightly more sophisticated metaphor.


Unfortunately the general rule with word etymology is the most sensible answer is usually wrong.


Sometimes they're fun though: e.g. derring-do is the result of misunderstandings and misprinting.


I'm not sure so much about colloquial vs sophisticated, but "wheelhouse" feels more sensible than "big-wheel" as a source. That doesn't seem to be the received wisdom at this point though.

One 'non-etymology' I regret is that Linux _isn't_ a recursive acronym for "Linux Is Not UniX".


Funny, I'm partial to the (patently ahistorical) idea that the song "I'm Gonna be a Wheel Someday"[1] was about the Unix group. Could always have roots (heh) in the opposite direction I guess.

  I'm gonna be a wheel one day
  I'm gonna be somebody
  I'm gonna be a real gone cat
  Then I won't want you

  Everything gonna go my way
  And I won't need nobody
  I'm gonna be a real gone cat
  Then I won't want you
One wonders what it was they wanted to `cat`.

1: lyrics https://www.azlyrics.com/lyrics/fatsdomino/imgonnabeawheelso...


It is a metaphor that related to the technical aspects, instead of adhering to a social hierarchy.


Wheel-house would relate, presumably, also to social hierarchies of who is allowed into the wheel-house (to pilot the ship).


Etymology is such a strange thing. This isn't a word from the mists of history and this thread already has four different proposed origins.


It's mostly that folk etymology is very common. The etymology of this term is not exactly mysterious.


I always thought it had the same meaning as in poker, i.e. the best possible low hand in a high / low game[1] and came about because the root user has id zero.

[1]: http://www.poker-vibe.com/poker/terms/wheel/


My favorite piece of Unix curiosa to add in this thread is that there was once, briefly, a Unix where the root user was called "avatar".

This amused me when I found out about it so I started using it as my username on IRC. Meaning the name that shows up in your vhost when you join channels, back in the days people who joined with root@host would be yelled at for using IRC as root. So I joined with avatar@host and no one cared. :)


Yeah, I used Windows NT for a while in the late 90's and named my user account "root" just for cognitive dissonnace. But then when I'd launch an IRC client, it would put that in my identification string and I'd get kicked off of channels (or whole servers) with the message, "Don't IRC as root."


"My dad's a pretty big wheel down at the cracker factory." -- Milhouse Van Houten


Hah. Interesting. All along I thought it was the group for the poor bastards who had to share the UNIX chore wheel.


Huh, I'd always assumed it referred to the wheel on a ship. Learn something new every day.


Me too. I think it makes more sense that way.


wheel is turning and you can't slow down?


Jesus take the wheel.


Please don't do this here.




Consider applying for YC's Summer 2025 batch! Applications are open till May 13

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: