Slashdot Mirror


GoboLinux Rethinks The Linux Filesystems

dolbywan_kenobi writes "GoboLinux is an alternative Linux distribution which redefines the entire filesystem hierarchy. In GoboLinux we have paths such as /Programs/XFree86/4.3/ and /System/Settings/BootScripts/Reboot." By design, GoboLinux is quite a bit different from most Linux distributions, and -- notably -- is a live ISO, always nice.

29 of 590 comments (clear)

  1. 3 comments and nearly /.ed by evilviper · · Score: 5, Informative

    First Link:

    Differences between GoboLinux and a traditional Linux system

    Once you installed GoboLinux, your experience will be greatly improved if you are aware of the following facts... :-)

    * In the GoboLinux hierarchy, files are grouped by their functional category (executables, libraries, and so on). There are links at the classic directories you are used to (/bin, /usr/bin, and so on), but remember that they all point to the same place. This is a huge advantage, as it means, for example, that you'll never have to search for a library throughout your filesystem again -- it will always be in /lib (and in /usr/lib, because they point to the same place! -- no worries about compatibility).
    * A little known UNIX rule states that what defines the superuser is its user id (which is zero), not its name. Through the years, there has been a convention to call the superuser "root". In GoboLinux, we chose to choose the superuser's name. It's called "gobo". It's fun, less ambiguous and even a bit more secure (since most crackers will try to login in your machine as root, you can setup a dummy, easy-to-break "root" account that will serve as a cracker-trap). In any case, if you wish to change the superuser's name back to "root", it is easy to do so.
    * There are symbolic links relating most of the usual UNIX directories to the GoboLinux tree. Therefore, you will find directories such as /etc, /var/log and /usr/bin in the expected places. However, some directories, such as the users' directories, didn't need to be linked to their "legacy" locations. This way, for a given user called "joe", you'll have, instead of /home/joe, /Users/joe. Notice also that the superuser's directory is no different than the ones from the other users, so, gobo's directory is at /Users/gobo. Mount points are under /Mount, not /mnt.
    * Another major difference between GoboLinux and most Linux distributions is that it does not use a BSD nor a System V initialization procedure. Instead, it has its own. At /System/Settings/BootScripts you will find a few files that command the entire boot procedure: Init and Done run at system boot and shutdown, respectively; Single and Multi are used after Init for initialization of single-user and multi-user modes. Halt and Reboot are used after Done for each specific kind of finalization. The Options file separate site-specific settings from the rest of the scripts, and Tasks serves as a function library.

    Second Link:
    Overview

    GoboLinux is an alternative Linux distribution which redefines the entire filesystem hierarchy. In GoboLinux we have paths such as /Programs/XFree86/4.3/ and /System/Settings/BootScripts/Reboot. Like it? Read more...
    News
    It's official: GoboLinux 006 is out!

    May, 9th, 2003 at 1:05

    Five months after the first alpha version, GoboLinux version 006 is now the official stable release. There are too many improvements to list here, the greatest ones being /System/Links/Shared, FiboSandbox, and last but never the least, GoboHide. As usual, the ISO is compiled for i686 and is a "live CD" so you can try out GoboLinux without actually installing it, so you have no reason not to check it out. :)

    Existing users don't need to reinstall from scratch (actually the idea is to never have to reinstall from scratch!). An upgrade mini-HOWTO will soon be posted on our mailing list.
    To-do list: ideas for the future

    May, 2nd, 2003 at 17:04

    GoboLinux is all about cool ideas. A lot of them float around in the mailing list, but end up buried in the archives. Now gobolinux.org has a place to store them, with an optimistic name of To-do List. It is part of the documentation section.
    New GoboLinux webpage u

    --
    Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
    1. Re:3 comments and nearly /.ed by sheriff_p · · Score: 4, Insightful

      "Those who don't understand UNIX are condemned to reinvent it, poorly." -- Henry Spencer

      --
      Score:-1, Funny
  2. Re:Is it just me, by Anonymous Coward · · Score: 4, Insightful

    I'm not a fan of Windows at all, as a matter of fact I can't stand it. However, it would be unwise to dismiss things purely because they are similar to how Windows implements them.

    Just my 2 cents...

  3. Finally! by TwistedSpring · · Score: 5, Insightful

    I've always held that the filesystem organisation in linux is the primary reason that new users find it hard to get to grips with. Names like etc, bin, var, usr, are meaningless to newbies, and novice users can get confused with /usr/local/share vs. /usr/share Hopefully gobo have also sorted the Installing-a-program bomb-blast, i.e. as soon as you install something it scatters a million files all over the filesystem in different directories that makes it impossible to keep track of and (sometimes) impossible to completely remove if you compiled it rather than used a package manager. It's about time this was re-vamped if linux is to become a viable desktop OS.

    1. Re:Finally! by samhalliday · · Score: 5, Insightful
      dont be ridiculous... those FS are designed with efficiency in mind, and careful refining of 30+ years of UNIX experience. just becuase the FS hierarchy is different from windows is not a good enough reason to change it. people worry too much about how these 'newbies' are goign to think about GNU/Linux, when in the end, getting used to a new filesystem is not a hard thing, with some form of "intro to GNU/Linux" book in front of you you can learn the basics in a day. add on top of that, end-users (non-root accounts) do not even NEED to see the FS hierarchy, they see /home/$USER and that is easy-peesy to understand.

      /usr and /usr/local are entirely different things, and not the worry of users. they are also very intuitive. /usr is standard system stuff, /usr/local is locally hacked stuff, so i can place 'my' hacked version of any program in /usr/local and override the system one (if i were the sysadmin).

      this whole FS reshaping is a rediculous idea and goes against everything the LSB has been tryig to fix, since there are so many deviants of GNU/Linux. i hope this distro dies off damn quickly... (how to lose all your karma in 10 seconds)

    2. Re:Finally! by Malcontent · · Score: 4, Funny

      "Hopefully gobo have also sorted the Installing-a-program bomb-blast, i.e. as soon as you install something it scatters a million files all over the filesystem in different directories that makes it impossible to keep track of and (sometimes) impossible to completely remove if you compiled it rather than used a package manager."

      Yes. Windows has this problem solved completely. For example in windows when you install a file it goes into c:\program files\progname. All the libraries go into c:\winnt\system32. The config files sometimes go into the c:\program files\progname or into c:\winnt\systems32 ir get merged into a binary file called the registry. Any files that are shared go into c:\program files\common files\progname.

      Linux will no go anywhere until program installs are as clean as windows. Look how nice the windows system is!

      --

      War is necrophilia.

  4. Re:Is it just me, by Eevee · · Score: 5, Funny

    Of course it does. Using real words for directory names instead of easy to remember abbreviations is a mark of evil.

    Remember, they did it just to piss you off.

  5. Re:Is it just me, by Blaine+Hilton · · Score: 4, Interesting

    Anything to make Linux easier is a plus, however there is one Windows and many, many Linux distros, this is like dividing the cause. However it does provide for far more flexibility and doesn't lock you into any one company.

  6. Re:Is it just me, by Epistax · · Score: 4, Insightful

    Kind of stupid that since M$ is evil, you automatically declare everything about them wrong and anything else to be better. M$ has the most understandable file system I have ever seen. Extensions are a huge plus. Drive letters instead of arcane codes specifying various IDE devices, etc. Anyone should be able to use a computer without knowing a damn thing about it, beyond the input and output.

    What I don't like about the M$ scheme is that they still wont accept "/" instead of "\", and they have a real boner for treating compressed files as directories.

  7. Bad, Terrible Idea by evilviper · · Score: 4, Insightful

    This is a terrible idea... It makes a complete mess of the Unix filesystem, just so that the distro maker doesn't need to edit /etc/ld.so.conf to include /usr/lib as well as /lib

    The only minor problems I have EVER experienced with libs/headers is that some will install themselves in a subdirectory, and software that uses it expects it to either not be in a subdirectory, or expects the subfolder to be in the LD/C/CPP path. That is easilly fixable, and this distro doesn't address that issue at all.

    Hey, why make a mess out of the Unix filesystem anyhow??? If you want is a bit less complex, throw in a few symlinks. No need to cause all sorts of #%@^ to happen with this type of hack.

    --
    Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
  8. I like it, but.. by _aa_ · · Score: 5, Interesting

    in other locales will the directory structure still be in english?

  9. For all those who ask, "Why?" by PeterClark · · Score: 5, Interesting
    I say, "Why not?" I think this is a great idea; I'm all for a better directory structure. Just because the present system has been around for 30+ years doesn't mean that we shouldn't take a second look at it and see if it can't be improved.

    Now would anyone care to guess how many knee-jerk posts there will be, like "if you like a sane directory hierarchy, use OS X, ya weenie!" or "if it's not broke, don't fix it!" To which I respond, where do you keep your Mozilla plugins?

    • /usr/share/plugins
    • /usr/share/netscape/plugins
    • /usr/share/mozilla/plugins
    • /usr/lib/mozilla/plugins
    • /usr/lib/mozilla/1.3a/plugins
    • /usr/lib/mozilla/1.3/plugins
    • /opt/netscape/plugins
    • /opt/mozilla/plugins
    • /usr/local/mozilla/plugins
    • ad naseum...
      • Much applause to the guys who were willing to think a little more critically about what we can do to make Linux just a little better.

    1. Re:For all those who ask, "Why?" by smcv · · Score: 4, Informative

      /usr/share/plugins /usr/share/netscape/plugins /usr/share/mozilla/plugins

      Well, share is for platform-independent data, so that's out. (A Mac and a PC with the same Linux distro and packages should be able to use the same NFS-mounted /usr/share tree, hence the name "share"; this matters more on traditional Unix hardware than it does now).

      The rest are all possibilities, depending on whether you or your distribution vendor installed Mozilla, and whether you or they consider Mozilla to be a monolithic "black box" (like Windows apps) or an integrated part of the system (so it's easy for Galeon or other Gecko-based browsers to embed it).

      It's valuable to have /usr/local and /usr separate - that way you, the local sysadmin (installing self-compiled stuff to /usr/local) and your package management system (installing to /usr) will never get in each others' way. /opt vs. /usr/local is a bit more subtle - you're meant to use /opt for identifiable "modules" which could be removed without side effects (I use it for games), and /usr/local for things which fit into the traditional Unix hierarchy (if you installed Mozilla in /opt the executable should be something like /opt/mozilla/mozilla or /opt/mozilla/bin/mozilla, if you installed in /usr/local it should just be /usr/local/bin/mozilla). Some distros don't have even have a /opt directory in the default install (Debian doesn't).

      I realise it's not ideal, particularly with some of the more subtle points (share vs. lib, /usr/local vs. /opt), but it's pretty much standardized by now.

      (I wish all my dotfiles followed a similar hierarchy, actually - I've started using symlinks to get the caches in ~/.tmp and the important config files in ~/.etc, so I can leave out .tmp when I do backups)

      Some of the merging Gobolinux does seems like overkill; for instance, the benefit of having the /usr hierarchy is that you can put all the critical system files (/bin, /lib, ...) on a separate, smaller partition, which can sometimes even be read-only, guaranteeing that you have a bootable system.

  10. Another article... by illsorted · · Score: 4, Informative

    Kuro5hin also has a good article on GoboLinux.

  11. root = gobo? by bazik · · Score: 5, Funny

    In GoboLinux, we chose to choose the superuser's name. It's called "gobo". It's fun, less ambiguous and even a bit more secure (since most crackers will try to login in your machine as root, you can setup a dummy, easy-to-break "root" account that will serve as a cracker-trap). Remember to set the roots prompt to PS1="C:\>" for the ultimate cracker-trap! :)

    --


    --
    One by one the penguins steal my sanity...
  12. Re:Is it just me, by Rui+del-Negro · · Score: 5, Informative

    Are there any Microsoft tools for de/compressing normal archives (like ZIP, RAR, TAR.GZ, etc.)? Maybe in XP? I just use W2K + WinRAR.

    Anyway, there's nothing wrong about treating compressed files as directories (especially if they have more than one file inside them). Technically, there isn't a big diference between, say, a ZIP file and a directory with file compression enabled.

    Windows' default directory structure is reasonable, but I find some of the names too long (you can change them, BTW; programs will still install in the right places). I don't like drive letters at all, I would prefer drive / device names. It's possible to implement it with shares (ex., "boot:\\" instead of "c:\"), but some programs have problems with it.

    On NTFS drives you can also mount volumes as directories (ex., mount your CD drive as c:\cdrom instead of e:, or whatever). NTFS is actually quite civilised.

    RMN
    ~~~

  13. Standards, standards by gallir · · Score: 5, Funny

    Yeah,, yeah, standards are good, you have many to choose from.

    --
    sgis ddo ekil t'nod i
  14. doesn't seem like a bad idea... by Vellmont · · Score: 4, Interesting

    I know the unix file hierarchy well, but I've always thought it was arranged haphazardly. Why are there six different places for system executables? (/bin, /sbin, /usr/bin,/usr/sbin, /usr/local/bin, /usr/local/sbin)? That's not even counting the alternative directories that some programs like to be installed under like /opt, or X11 programs.

    The one thing I don't like is that they renamed root to gobo. While root doesn't have much inherent meaning to it, gobo has even less. If you're going to rename root, why not pick something more meaningfull like administrator, admin, superuser, BigManWithTheTopHat, etc? I guess I haven't checked recently, but is linux still limited to 8 characters for the username?

    --
    AccountKiller
  15. Re:Is it just me, by pair-a-noyd · · Score: 5, Insightful

    "Anyone should be able to use a computer without knowing a damn thing about it"

    No. Stupid people should not be allowed to use computers. People should know how to use computers, not how to click and drool.
    Stupid people sitting at a keyboard are hazards to the rest of the computing world. They wreck data, they spread viruses, the break hardware, they waste IT support time, they cost businesses money.

    If stupid people were kept away from keyboards and stayed at home in front of a TV set where they belong and left the computing world to those that understand it, things would go smoother, there would be less computer problems,far less virus problems, much less IT support time wasted, and business would save a lot of money..

    I fail to see why computers should be dumbed down for the dumb. It makes no sense.

    Don't understand your computer?? Stick to your Playstation 2, and use your Gameboy as your PDA..

  16. Re:Close but not quite. by lokedhs · · Score: 5, Insightful
    No they shouldn't. Plain and simple. Case-insensitivity has no business in a file system.

    Allow me to expand a little on why this is the case:

    Case-insensitivity is a complicated business as soon as you leave the simple domain of the english language, and this is the reason you usually only head english-speaking people wanting case-insensitive file systems.

    An example: German has a letter ß, which in upper case becomes SS. tchüß -> TCHÜSS. Now, when lowercasing, you can't just map SS to ß, instead it becomes ss. I.e. TCHÜSS -> tschüss.

    Do you start to realise the implications this has on a case-insensitive file system? (the question to answer is: is "tchüß" and "tschüss" considered to be the same file?)

    It gets worse. In french, as spoken in france, the letter ë is converted to uppercase E. I.e. citroën -> CITROEN. But in Canadian french, it becomes Ë. I.e. citroën -> CITROËN.

    When you start to bring in other languages, for example the Japanese full-with and half-width latin characters it starts to get really messy.

    In order to handle all of this in a case-insensitive file system the file system itself needs not only to be aware of the intricate details of character encodings and casing for different languages, every single file system operation would also have to look at the currently selected locale in order to determine wether two names are equivalent or not. If you believe this is simple, read the FAQ's at the Unicode site and you will never again suggest that the file system should be case-insignificant.

    However, making a user application work independently of case in file names is a reasonable idea. However, it would have to be specified by the UI framework, for example Gnome. I'm not sure exactly if that idea would work at all since I haven't given it much thought.

    I'm so happy the Unix file system is case-significant.

  17. Explanation. by juuri · · Score: 5, Informative
    I'll help you out here.

    /sbin utilities needed to get the the system to a booted state

    /bin bare essential utilities needed to manipulate the system once booted or before multi-user mode

    /usr/sbin system control programs needed to manage or alter a system once in multi-user mode

    /usr/bin/ programs for interacting with a multi-user system

    /usr/local/sbin/ system control programs that don't come from the os/hardware vendor

    /usr/local/bin/ other programs that don't come from the os/hardware vendor

    Of course many modern lunix distributions break this by placing files wherever people think is cute, much like how the .org, .net and .com have lost their meanings.

    --
    --- I do not moderate.
    1. Re:Explanation. by bmetz · · Score: 4, Insightful

      I don't think he needs a lecture. We all know the reasons why they slowly added new directories.

      And they are all asinine.

      Users want stuff to work. They don't care that 20 years ago hard drives were too small to fit all your files or that some weirdo grouping of your programs allows you to share parts of the installation across your non-existant network of linux machines. My login script has over 60 lines dedicated to finding moron binary directories like /usr/local/X11/bin and /usr/local/java/bin. This is not acceptable.

      I'm not sure if this gobolinux stuff is the solution but at least it isn't happy with the status quo. IMHO the biggest problem with linux is that the users don't think there's anything wrong with it.

      --
      What did you eat today? http://www.atetoday.com/
  18. Re:Great Idea! by phaze3000 · · Score: 4, Funny

    Pah, you Americans and your right-angle turn streets. Come to Britain and experience true street confusion - streets that turn right/left, with 'new' streets that carry on in a straight line, streets that change their name half way along, crazy one way systems and roundabouts. Seriously, non-intuitive names are a piece of cake by comparison.

    Of course, I quite *like* the mad streets over here, it's symptomatic of the wealth of history this country has, and grid-layout streets IMO feel very very artificial by comparison. But then, I'm biased.

    --
    Blaming GW Bush for the Iraq war is like blaming Ronald McDonald for the poor quality of food.
  19. Re:Great Idea! by praksys · · Score: 4, Insightful

    Your analogy is damn near perfect, although it might not get you the conclusion you want. In "Seeing Like a State" James Scott argued that all sorts of government actions are driven by the need of government to re-shape society so that it is more comprehensible from the point of view of government beaurocrats. He gave street plans as an example. In old cities you find very complex street layouts, with lots of twists and turns, and dead ends, and different sized streets. Locals who live in these places have no problem understanding all of this and finding their way around. In fact these old disorderly layouts often make a good deal of sense given the local geogrpahy. Still, to outsiders who visit, and to the government that is trying to manage all of this, it looks like a mess. They much prefer orderly grid layouts that can be comprehended at a glance, and managed easily.

    I think the situations with the layout of Unix filesystems is very similar. "Locals" have no trouble finding their way around, and even find that the layout makes a good deal of sense. Unfortunately Unix is getting a lot more visitors than it used to, and those visitors are starting to feel like tourists in Venice (i.e. lost). If you want those visitors to find Unix "useful" rather than "quaint" you need to re-think the street plan.

  20. Oh no, it's different! Let's hate it! by Three+Letter+Acronym · · Score: 4, Insightful

    Bitch bitch bitch bitch bitch. Wow, I'm really suprised at the venemous reaction from you guys. Now, no matter what you think of this idea, some of the things I've seen posted here are disgusting.

    All this is is a different filesystem in ONE distro. It's not being federally mandated, nor is it going to become a standard that you have to deal with. It's one group's solution to what they perceive is a problem. If you don't want to use GoboLinux, then don't. There's no reason for everybody to pull out their pitchforks and torches.

    I even read some post where the guy said something along the lines of I hope they die a quick and painful death. That's fucking pathetic.

    --
    "Freedom is letting people do things that you don't like." -Linus Torvalds
  21. Re:Is it just me, by spectral · · Score: 4, Interesting

    This is, actually, C:\Documents and Settings\user

    Where the hell are you people getting this BS about it being in the windows directory?! It wasn't there in w2k. I should know, I'm running it right now. It's not there in XP (Professional). I should know, the computer next to me is running it.

    That being said, the linux file system structure SUCKS! Windows isn't much better, but christ.. especially with the distros. Where is your config file for samba? Well, I don't quite know. It's somewhere in the /etc directory I'm sure. Is it in it's own subdirectory? Possibly! Let's go and see.

    Having all the stuff AT LEAST symlinked from some common directory would be SO NICE. (cd /Programs/XFree86/4.3 .. oh look, everything X installed.) Yeah, that could get confusing. Therefore there might be a bin directory, a config directory, and a data directory. They can all be symlinks, I don't care, but if I had to come up with where KDE stores it's default menu, I would have no f*cking clue. Somewhere in /usr I guess? Might depend on the distro.. Agh.

  22. Re:Oh no, it's different! Let's hate it! by Enahs · · Score: 4, Interesting
    Amen to that! You should have read the entirely different response to this on kuro5hin.org; I think I was the one that came the closest to a dissenting opinion, and I just wanted to know why they didn't just use Encap or GNU Stow! :-D

    Personally, I think it sounds like a great idea. If you're putting together a desktop system, there's really no need to carry around the old UNIX cruft. Honestly. And as much as the fanboys jizz all over OS X, I'd think this would be a welcome change. I suppose if this came with a system capable of real translucency and drop shadows, the l33t boyz would be jizzing instead of bitching, eh?

    --
    Stating on Slashdot that I like cheese since 1997.
  23. NT and POSIX by Rui+del-Negro · · Score: 4, Interesting

    During the 80s, the UNIX with the biggest user base was... XENIX (made by none other than Microsoft), which was later sold to SCO, and which was one of the systems used as a basis for the POSIX standard. NT (and, subsequently, W2K and XP) does comply with a big chunk of the POSIX standard (I suspect one of the reasons was to make it easier to port software from Xenix to NT - Microsoft didn't want to lose market share to the other UNIXes). In some ways, though, NT is closer to VMS than to XENIX.

    Two old but interesting articles about the evolution of NT:

    http://www.winntmag.com/Articles/Index.cfm?IssueID =97&ArticleID=4500

    http://www.winntmag.com/Articles/Index.cfm?IssueID =97&ArticleID=449

    NTFS has other nice features such as symbolic links, named streams, non-continuous files, etc.. I learned a few tricks a couple of years ago in a newsgroup discussion from a guy working at Microsoft. Some of these features appear to be completely undocumented (or at least the documentation is very well hidden).

    RMN
    ~~~

  24. Blasphemy! by Rui+del-Negro · · Score: 4, Funny

    Are you suggesting that anyone needs more than 640KB...?

    RMN
    ~~~