Slashdot Mirror


Fedora Aims To Simplify Linux Filesystem

jfruhlinger writes "Even Linux's most passionate partisans will admit that its filesystem, which stashes vital files in a variety of arcane directories, can be baffling to users. The developers at the Fedora project want to cut the Gordian knot and consolidate all executables into /usr/bin and all libraries into /usr/lib or /usr/lib64. One downside: this system would conflict with the standards developed by the Linux Standard Base, or the (rarely used) Filesystem Hierarchy Standard."

803 comments

  1. When do we get compression? by SharkLaser · · Score: 2, Insightful

    The one thing that baffles my mind is that Linux filesystems still don't offer compression of specific folders or files. Seriously, Windows has had this for over a decade. There's a few experiemental filesystems that can compress the whole partition, but still not individual files. Why doesn't Linux have such a simple but important filesystem feature? And no, I don't want to make an archive file, because I want to access those files and folders while they are compressed.

    1. Re:When do we get compression? by royallthefourth · · Score: 3, Informative

      Make the directories you want compressed into mountpoints on the compressed partition.

    2. Re:When do we get compression? by Shikaku · · Score: 2

      It's still possible with squashfs and aufs, but squashfs is readonly so aufs is so you can still write to the directory.

      It's not very user friendly obviously however.

    3. Re:When do we get compression? by billcopc · · Score: 2, Interesting

      How important is that, really ? The only times I've used NTFS compression were for freeing up temp space on ancient servers, back when 9gb and 18gb SCSI drives were the norm. Seems like a throwaway feature to me.

      For portable usage like CD/DVD and USB flash, a full-disk compressor like squashfs is just fine.

      --
      -Billco, Fnarg.com
    4. Re:When do we get compression? by Anonymous Coward · · Score: 1

      You might wanna upgrade that 20megabyte hard disk to something more modern, like maybe 100.

    5. Re:When do we get compression? by Arker · · Score: 2

      And no, I don't want to make an archive file, because I want to access those files and folders while they are compressed.

      Yes, actually you do, because once you do you can.

      Anyhow back towards the 'article' such as it is, conflicting the the LSB is no reason not to do something, the LSB has never been relevant to anything. If you want a standard file layout just copy Slackware's - it's the most sensible and broadly compatible.

      --
      =-=-=-=-=-=-=-=-=-=-=-=-=-=-
      Friends don't let friends enable ecmascript.
    6. Re:When do we get compression? by blair1q · · Score: 1

      True dat. There isn't a space-saving methodology in the world that's more cost effective than slapping another terabyte into the rack.

    7. Re:When do we get compression? by SuperQ · · Score: 3, Funny

      This isn't 1995. Nobody cares about filesystem level compression anymore. Go buy a 2T drive.

    8. Re:When do we get compression? by Anonymous Coward · · Score: 3, Insightful

      And no, I don't want to make an archive file, because I want to access those files and folders while they are compressed.

      The way I understand it, there's really no good generic way to handle file compression at the FS level.

      Even the way NTFS does it is to create a compressed file to hold the contents of the original file, like an archive. But if you'll notice, whenever you open the compressed file, NTFS will expand the whole compressed data into another special file until you close it. Watch the disk space usage change and you'll see. You can easily set up a situation where you do not have enough free disk space to open a compressed file, and that is not intuitive for a user.

      What you want is an ability to compress small individual blocks of the file that can be accessed separately without having to decompress the entire file. But doing that creates all sorts of other problems such as how to efficiently allocate the space for the compressed contents which might change over time (and change size) without causing a great deal of additional fragmentation. This is rather harder to do.

    9. Re:When do we get compression? by SharkLaser · · Score: 1

      It can be really important if you're storing thousands of files (text, or anything that compresses well) and still need fast direct access to them. I just had a need for it this weekend (and still do), but the only solution was a stupid workaround and create and mount compressed partition to what files and folders I wanted compressed and then move them there. In Windows this would had just been a case of ticking the compression option in folder options dialog.

      I've used it on Windows sometimes too, it's a simple yet important feature. There are times where it can save you thousands of MB's.

    10. Re:When do we get compression? by jd · · Score: 5, Interesting

      They don't need to. Linux has the ability to read/write compressed files directly (zclib?) and doesn't need the filesystems to support this. Which is great because it means compressed files will work under ALL filesystems ALL of the time (if you have the library installed) and you don't have to wait for each filesystem maintainer to add it. You also have no risks of one FS maintainer deciding another's implementation sucks and not being compatible with it. Which is very likely under Windows.

      --
      It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
    11. Re:When do we get compression? by GioMac · · Score: 1

      It's out of the Subj.

      Use BTRFS, which is available in Fedora too. BTRFS is aimed to be default in version 17.

      --
      "It feels like I'm at the Zoo when reading this thread - I'm frightened, but it's interesting" (c)
    12. Re:When do we get compression? by SharkLaser · · Score: 1

      It's not a matter of that, I have TB's of space. But if my files compress up to 90% and they take 1TB, isn't it much better if they only take 100GB? Otherwise it's just stupid waste.

    13. Re:When do we get compression? by c2me2 · · Score: 2

      It's not your business to tell people what they should want. And not every machine or situation is right for a 2TB drive. Flash drives, laptops, tablets, etc.

    14. Re:When do we get compression? by mysidia · · Score: 2

      The one thing that baffles my mind is that Linux filesystems still don't offer compression of specific folders or files. Seriously, Windows has had this for over a decade.

      It sounds like you want ZFS. ZFS has supported compression for a long time LZJB compression since early on, GZIP compression since pool version 5, ZLE compression since pool version 20...

      The only problem is.... well, on Linux it's mostly available only using FUSE. There is the ZFS On linux port mentioned, but I suppose that's really not "production quality" yet.

      Compression seems to be one of those things that Solaris excels at.

      Of course this is useless if your storage hardware is low-end or you lack CPU, since while compression increases capacity, it doesn't increase how much of that storage you can have live data on at average activity

    15. Re:When do we get compression? by antifoidulus · · Score: 5, Insightful

      Actually there are valid reasons to compress at least some of your files beyond the need for saving space, namely that the speed differential between I/O(esp. platter drives) and CPUs is continuing to grow incredibly fast. The performance gap is getting to the point that for files that tend to compress(executables and libraries are among them), the time it takes to read the compressed file off the disk and then decompress it in memory may be less than the time it takes to read the entire uncompressed file from disk.

      Now there are tools that allow you to do this just for executables, but since they don't run on all platforms you can be in kind of a bind. By putting your executables and libraries in their own file compressed file system, you can gain a lot of the advantages of executable compression while still being able to use it on pretty much any platform.

    16. Re:When do we get compression? by morcego · · Score: 0

      Filesystem level compression is something very dangerous. It is very easy to end up with corrupted files, not to mention the processing and memory cost of these operations. Because of that, you will also never have optimum compression, not to mention that if you store a compressed file inside a compressed filesystem, you might end up using more disk space than storing the raw (uncompressed file). And yes, the compression layer might be smart enough to not try compressing in those cases - another layer of complexity.

      Several of these things are far from intuitive, causing plenty of grief for both the user and the support department.

      --
      morcego
    17. Re:When do we get compression? by 0123456 · · Score: 1

      What the heck kind of files do you have that take up 10TB and aren't compressed? Video, images, audio, all of those are already compressed in the vast majority of uses.

    18. Re:When do we get compression? by peppepz · · Score: 1

      Seriously, Windows has had this for over a decade.

      You mean, since the last time Microsoft updated Windows' file system? I can't believe they're still using the aging NTFS when other operating systems have advanced file systems such as ZFS and BTRFS.

      There's a few experiemental filesystems that can compress the whole partition, but still not individual files.

      Correction: there's a next-generation, not experimental file system, BTRFS, that does that and also sports features that Windows 8 is missing. You can compress individual files or folders using the "btrfs filesystem defragment -c" command.

      On top of that, if you want, you can use NTFS-3G which will allow you to use the legacy file system of Windows, NTFS, with all of its '90s features *including transparent compression of individual folders*.

    19. Re:When do we get compression? by barrkel · · Score: 1

      SSD = very expensive small storage; mobility = no space for extra storage

    20. Re:When do we get compression? by Anonymous Coward · · Score: 1

      File system compression is not of much use these days. Big files, such as video and audio data, are already compressed and cannot be compressed further (at lest not by much). Same applies to docx or odf files, which are actually zip archives of XML files. Images are also compressed. Leaving only normal text files and some executables to be uncompressed. AS these files are very small compared to the other data, it is not of much use to implement or use an compression system for files or the whole volume.

    21. Re:When do we get compression? by skids · · Score: 4, Insightful

      Add to that, in network attached storage solutions, every file you read is squeezed through something as small as a 1GBbps pipe.

    22. Re:When do we get compression? by barrkel · · Score: 1

      How will I get that into my Macbook Air?

    23. Re:When do we get compression? by 0123456 · · Score: 1

      There are times where it can save you thousands of MB's.

      Like, wow. THOUSANDS of megabytes.

      Given my ~$1000 home server has around ten million megabytes of disk space, I'm totally worried about saving a few thousand.

    24. Re:When do we get compression? by CjKing2k · · Score: 1

      Simply put, it's not that important anymore. If you're talking about a decade ago, when your typical desktop drive was 20 gigs, then sure it made a difference. Now that sub-terabyte drives are on the way out, the added cost associated with transparent compression makes it almost completely useless.

    25. Re:When do we get compression? by Anonymous Coward · · Score: 0

      SSD = very expensive small storage; mobility = no space for extra storage

      What about a 500 GB 2.5" hard drive ? Not good enough for mobility ?

    26. Re:When do we get compression? by Anonymous Coward · · Score: 0

      May not be all that useful in some cases, but I find it useful. I'm on a laptop with a 250GB drive and only 32GB of free space. I have all my applications and files compressed, saving me 35GB of space. Without this compression, I'd either have files I couldn't open when I need them or 0 free space. The latter means I need to spend money I don't have for a new HDD, the former is impractical.

    27. Re:When do we get compression? by SuperQ · · Score: 5, Insightful

      Sounds like you have a problem with file formats, not filesystems. Filesystem level compression is a stupid idea since it doesn't have any way to apply appropriate compression methods to the files. Should I apply zlib to uncompressed audio? No, use FLAC. Should I apply zlib to logs files? No, I should probably use something like LZO or Snappy that have block seeking.

    28. Re:When do we get compression? by Gumber · · Score: 1

      Well, putting aside the fact that you are talking about filesystem internals, and the OP is talking about conventions for filesystem layout:

      Disks are really big these days. The things people tend to fill them with are images, video and audio that is already in a compressed format. So, for the average user, directory compression isn't going to be a big win.

      To put it more succinctly, this isn't an important filesystem feature.

    29. Re:When do we get compression? by dmitrygr · · Score: 4, Informative

      wrong wrong wrong wrong wrong wrong wrong wrong just tried it. NTFS FS, 2GB free, file on there 30GB full size, compressed to 15GB. opens juts fine even though there isn't 30GB free there. also opens instantly (does NOT decompress 30GB anywhere)

      --
      -------
      1. Enjoy your job
      2. Make lots of money
      3. Work within the law

      Choose any two.
    30. Re:When do we get compression? by fuzzyfuzzyfungus · · Score: 2

      The difficulty is that(while most compressed archives are supported) you run into the situation where either the tool you are using has to have the ad-hoc ability to operate on the contents of a given archive type, or you need to decompress somewhere temporary, operate, and then compress it back up. That is sort of annoying.

      What you really want is something like http://code.google.com/p/fuse-zip/ Fuse-zip(ideally one with support for all common archives you are going to run into; but if this is just for your use it doesn't much matter: Because the zip archive becomes a FUSE-mounted filesystem location, all non-zip-aware programs will transparently operate on the contents of the archive without even knowing anything is different.

    31. Re:When do we get compression? by cmdr_tofu · · Score: 2

      Bzip2. Vim, bzcat, bzdiff can give you direct access. If you *need* the filesystem to do this and not userspace well there is probably a fuse plugin, but I believe btrfs has this feature as well.

    32. Re:When do we get compression? by fuzzyfuzzyfungus · · Score: 2

      My understanding is that btrfs has something in that vein. In the meantime, the ability to use FUSE opens some convenient options for special-case compression of specific areas of your system:

      fuse-zip, as its name suggests, lets you mount a zip archive as though it were a filesystem, giving arbitrary programs the ability to interact with the contents as though it were an ordinary FS, so no need for tool-specific zip support. The .zip still has to go somewhere, so this isn't really an FS for /; but if you have a giant pit of highly compressible material in a directory somewhere, replacing it with a fuse-zip is pretty simple.

      There is alse FuseCompress, about which I know less...

    33. Re:When do we get compression? by PrimaryConsult · · Score: 2, Insightful

      NTFS has been updated pretty consistently actually (the last being Windows XP with NTFS 3.1). Since then the Windows OS on top of it has evolved to actually take advantage of the features of 3.1.

      What you said is akin to, "You mean, since the last time the default *nix file system was updated? I can't believe they're still using the aging ext file system, with all of it's 90s features like 'symbolic links' ".

    34. Re:When do we get compression? by DrXym · · Score: 2

      I've used compression on laptops which are running tight on space, especially when a folder contains hundreds or thousands of infrequently but still useful files. e.g. documentation & samples folders, apps I still need but don't run too often and so on.

    35. Re:When do we get compression? by Anonymous Coward · · Score: 0

      Thousands of MBs is only a few GB, rarely even 1% of a modern HDD.
      If its an older PC I think i'd rather not waste CPU cycles on compression.

      Either was its a feature that is mostly obsolete now.

    36. Re:When do we get compression? by somersault · · Score: 1

      Not if you want to it to be reliable while you're enjoying your mobility

      --
      which is totally what she said
    37. Re:When do we get compression? by Roger+W+Moore · · Score: 1

      via the USB port.

    38. Re:When do we get compression? by RichMan · · Score: 1

      What do you have to store that is that big? Why do you want to compress ?

      Most user data is games or songs and vids.
      Songs and videos are already compressed, attempting to recompress them with a filesystem filter is a waste of everyones time.
      Most games also have some form of compression on their data. So no gains expected on most of your data.

      If you are talking enterprise data then access speed is an issue so you are not looking at compressing anyways.

    39. Re:When do we get compression? by jd · · Score: 1

      That would work too. In the end, it doesn't matter if it's done through FUSE or a glibc extension - the fact is that it can be done and has been possible for a long time by one or both methods.

      --
      It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
    40. Re:When do we get compression? by ThatsMyNick · · Score: 0, Offtopic

      Replying to undo wrong moderation!

    41. Re:When do we get compression? by Rutulian · · Score: 2

      No, I think you are confusing the compressed files/folders function (right-click, send to compressed folder) with the compression filesystem property (right-click, Properties, Advanced). The former is just a userspace program, like Winzip, that makes archives. The latter is exactly what you described in your second paragraph. The filesystem transparently compresses files in small clusters, and it suffers from fragmentation problems, like you also mention.

    42. Re:When do we get compression? by peppepz · · Score: 0
      You can't believe that "*nix are using the aging ext file system", because they're using much more advanced file systems such as BTRFS ad ZFS, which are not present on Windows, and won't be there soon.

      Even your own example is flawed: "symbolic links" aren't a 90s feature, they were in UNIX in 1978, and were added to Windows only in 2009 (and most Windows userspace software still doesn't support them properly). Talk about file system innovation.

      The post I was responding to was falsely assuming that the file system support of Linux was antiquated because it didn't support a Windows feature, when in reality that feature is supported, even the native Windows file system is supported including that feature, and a lot of nice features of Linux's file systems aren't available on Windows.

    43. Re:When do we get compression? by thehodapp · · Score: 1

      I tried compressing most of my old files in my home directory into mp3 with LAME but nothing worked after!!

    44. Re:When do we get compression? by smash · · Score: 2

      What you probably really want is de-dupe. Run ZFS. ohwait...

      IMHO, this effort is pointless. If you're poking around in the file system you want it to be like any other Linux so that you don't piss off admins any more than redhat already does due to being different. If you're an idiot who can't RTFM to find out where files are, then you probably shouldn't be poking around the filesystem outside of ~/.

      If you want to make linux user friendly, get rid of the need for users to go poking around in the filesystem.

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
    45. Re:When do we get compression? by shibashaba · · Score: 1

      Just make sure you dry it out first.

      --
      ---------- Open Source is capitalism applied to IP.
    46. Re:When do we get compression? by Barsteward · · Score: 2

      If its in an office environment they could probably save a lot of space/bandwidth by using a by junking DOC/XLS formats and go to ODF files. they are massively smaller

      --
      "The hands that help are better far than lips that pray." - Robert Ingersoll (1833-1899)
    47. Re:When do we get compression? by smash · · Score: 2

      Yup. Its all about de-dupe. Files are already compressed as CPU speed has outstripped IO by a large margin - compressing your file format gets you better IO speed. Thus, having the FS try and compress your already compressed data with some generic algorithm = LOSE.

      Block level de-dupe on the other hand, can save you HEAPS of space on a typical system. Like, cut your disk utilization by 50-60% on a typical file share storing end-user files.

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
    48. Re:When do we get compression? by smash · · Score: 1

      No, what you really want is block level de-dupe. Having your FS randomly try to guess at how to best compress your files, when they are typically already compressed using highly specialized codecs = fail.

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
    49. Re:When do we get compression? by smash · · Score: 0

      Newsflash: XP (and thus, the version of NTFS with it) came out 10 years ago.

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
    50. Re:When do we get compression? by leenks · · Score: 0

      Why drag his parents into this? I'm a developer, I bought my own.

      Oh, my bad, I forgot there are very few grown ups here. Maybe you should ask Santa?

    51. Re:When do we get compression? by Larryish · · Score: 1

      All config in /etc, all binaries in /usr/bin and /usr/sbin, all libs in /usr/lib.

      That is completely made of win.

    52. Re:When do we get compression? by barrkel · · Score: 1

      Riiiight, so I drag around an ugly mechanical drive every time I need to use my laptop, sure. That's exactly why I spent extra money on getting a small and light machine.

      I mean, I even have ZFS compression enabled on my NAS - saves me a good 30%, which turns out to be a fair amount of money when you have 8 drives in a redundant configuration. Going above 8 drives is an expensive proposition, needing a new SATA controller, a new case, etc. Going with bigger drives, to get the benefit, will mean buying 8 new drives. Either way, you're looking at 500-1000 USD to add decent performing redundant storage.

    53. Re:When do we get compression? by mattack2 · · Score: 1

      Filesystem level compression is a stupid idea since it doesn't have any way to apply appropriate compression methods to the files.

      When the filesystem has typing built into it, it can.

      Heck, even just basing it on the file extension would work.

    54. Re:When do we get compression? by Millennium · · Score: 1

      Largely because it isn't an important feature. The case can be made for FS-level encryption, but FS-level compression is pure bloat.

    55. Re:When do we get compression? by SharkLaser · · Score: 0
      I'm talking about data on a server. And no, access speed isn't such an issue because the files aren't accessed that often. And compressing back and forth with external program all the time is just stupid.

      If you are talking enterprise data then access speed is an issue so you are not looking at compressing anyways.

      This is another case of ignorant Linux users answering with an "you don't want to do that anyway", when I perfectly know I do.

    56. Re:When do we get compression? by Anonymous Coward · · Score: 0

      It's not your business to tell people what they should want. And not every machine or situation is right for a 2TB drive. Flash drives, laptops, tablets, etc.

      But what if he wants it to be his business? Would you want him not to want that? I want you to stop telling people what they should want.

    57. Re:When do we get compression? by SharkLaser · · Score: 1, Insightful

      Text files. They don't take 10TB, they take 1TB but it's growing. So Slashdot Linux users suggestion to this is to get new 10x 1TB drives instead of just compressing the data and keep using the same 10TB?

      This is the reason why most sane people avoid OSS. No one listens to feature requests, but only tells you "you don't want to that anyway, do this instead" while I perfectly good know compressing them is exactly what I want to do.

    58. Re:When do we get compression? by Bob9113 · · Score: 1

      Nice post. There's a lot of info packed in those few sentences. It made me think through how filesystems and compression work, and I learned from the experience. Thanks!

    59. Re:When do we get compression? by Korin43 · · Score: 1

      Text files. They don't take 10TB, they take 1TB but it's growing. So Slashdot Linux users suggestion to this is to get new 10x 1TB drives instead of just compressing the data and keep using the same 10TB?

      This is the reason why most sane people avoid OSS. No one listens to feature requests, but only tells you "you don't want to that anyway, do this instead" while I perfectly good know compressing them is exactly what I want to do.

      Or maybe no one thinks its worth their time to make a feature that only one user has a real need for. Most people don't have 10 TB of text files. In fact, most people I know never use more than 30 GB total unless they have (a) an insane amount of music or (b) a reasonable amount of videos.

    60. Re:When do we get compression? by sortius_nod · · Score: 2

      my 10TB server I bought & built with my fiancee disagrees with your narrow view of the world. Just because you're not capable of planning ahead doesn't mean others aren't. More astroturfing from Microsoft's elite!

    61. Re:When do we get compression? by EvanED · · Score: 2

      Fortunately, he's also wrong about the last time NTFS was updated: it got some significant updates with Vista. An admittedly sucky and long-overdue symlink feature, but also the very intriguing transactional NTFS.

      The latter is the sort of thing I'd actually love to see more of in the Linux world, but the Linux folks are too busy spouting off about how MS never innovates.

    62. Re:When do we get compression? by soundguy · · Score: 1

      I slapped a 750 gig drive in my Lenovo over a year ago for about 80 bucks (Newegg). There's really no excuse to be running out of space when you could triple your storage for the equivalent of a week's worth of Lattes and junk food lunches. If even that pittance is out of reach, you need to think about the wisdom of your past career choices and maybe rethink your future plans.

      --
      Nothing worthwhile ever happens before noon
    63. Re:When do we get compression? by Anonymous Coward · · Score: 1

      Of course the irony of that is that in some ways it's almost as important as it was a decade ago. Sure, we've got hugeass magnetic media, but look at the trends in storage: it's to things like SSDs for a lot of applications. The cheapest Macbook Air has a 64 GB SSD. That is really not very much. Even 128 GB would look very small to lots of people. And of course then you have all the mobile stuff like phones.

      Is FS compression worth it? I don't know. If it only got 1 GB or something in a 64 GB drive, probably not. If it got really good compression but at the cost of slowing access by 50%, probably not. But if you'd pick up 5 or 10 GB on a 64 GB drive for a 10% performance loss or something like that... then it starts to look really attractive. From most accounts, you'll still be winning out performancewise by going for a SSD, while being a little less crunched for space.

    64. Re:When do we get compression? by Anonymous Coward · · Score: 1

      You have an unfair amount of storage - we need to redistribute some to those less fortunate. I don't care you have have fancy finance degrees!

    65. Re:When do we get compression? by GigaplexNZ · · Score: 1

      In fact, most people I know never use more than 30 GB total unless they have (a) an insane amount of music or (b) a reasonable amount of videos.

      Or more than 2 modern AAA video games installed.

    66. Re:When do we get compression? by Capt.+Skinny · · Score: 2

      No one listens to feature requests

      Why should they? OSS devs aren't a group of altruistic folks just waiting around to fulfill arbitrary feature requests from end users. They, like the rest of us, need some incentive to implement a new feature. If a dev on the project finds your proposed feature useful, or sees it as an interesting technical challenge, or has some other (possibly financial) incentive to implement it, then he'll listen. Otherwise it's up to you to either implement it yourself or hire someone to do so.

      It's not sane people that avoid OSS; it's the people who expect a typical customer/vendor relationship with a software publisher who are turned off by (or just don't realize) the fact that OSS doesn't work quite the same way.

    67. Re:When do we get compression? by Anonymous Coward · · Score: 0

      compression isn't only about saving space. These days it's about reducing the amount of data that needs to be read and written to harddrive which is orders of magnitudes lower than the cpu.

    68. Re:When do we get compression? by myzz · · Score: 1

      The btrfs actually has compression (although I think you can't switch it on/off per-directory in single btrfs filesystem). http://blogs.oracle.com/wim/entry/btrfs_compression

    69. Re:When do we get compression? by Anonymous Coward · · Score: 0

      Which is very likely under Windows.

      Yep, very likely under Windows, where there is only one file system that matters. What the fuck are you kids smoking?

    70. Re:When do we get compression? by Anonymous Coward · · Score: 0

      Not if you want to it to be reliable while you're enjoying your mobility

      Maybe you should send a memo to laptop users.

    71. Re:When do we get compression? by f16c · · Score: 1

      "I slapped a 750 gig drive in my Lenovo over a year ago for about 80 bucks (Newegg)."

      I bought a 3.5" 320 GB hard drive three weeks ago from there. The drive was roughly $42 shipped to my home. I'm using it now. Due to the recent flooding in Southeast Asia recently the same drive is priced at $85 or thereabouts now. My advice would be that unless you have an absolute immediate need for more space to wait a few months before even considering buying a new hard disk.

      --
      bob@Osprey:~>
    72. Re:When do we get compression? by grumbel · · Score: 1

      The main benefit in compression I see isn't in reducing file size, but in increasing access speed. Dealing with source trees for example is extremely slow, they contain plenty of small files and the overhead when traversing them is enormous. They could be much better handled when there would be a way to tell the filesystem that a directory is static and should be compressed. It would also avoid such ugly hackery you will find in Debian and Ubuntu in the form of: /usr/share/doc/*/*.gz

    73. Re:When do we get compression? by Anonymous Coward · · Score: 0

      What the?
      Congratulations, you might have beaten the "movie in zipfile in rarsplit over torrent"-wtf.

      Why would anyone want to first spend the extra money to get fast storage and then throw speed and power away by using filesystem compression?

      And for that matter, what compression algorithm works well for things that already have been compressed with jpeg or mpeg? (Or pretty much any media format out there that isn't bmp.)
      Good luck filling a 64GB SSD without using files that filesystem compression actually manages to compress.
      Heck, even .docx is already zipped and will not be significantly compressed by the filesystem.

      I guess it would make sense to use filesystem compression on a boot from a 2GB USB-stick where you mainly have executables.

    74. Re:When do we get compression? by Anonymous Coward · · Score: 0

      The way I understand it, there's really no good generic way to handle file compression at the FS level.

      Even the way NTFS does it is to create a compressed file to hold the contents of the original file, like an archive.

      You don't understand it correctly then.

      NTFS is implemented that way to support file-level compression. File system level compression is not impossible or hard, just inconvenient for most users.

      What you want is an ability to compress small individual blocks of the file that can be accessed separately without having to decompress the entire file. But doing that creates all sorts of other problems such as how to efficiently allocate the space for the compressed contents which might change over time (and change size) without causing a great deal of additional fragmentation. This is rather harder to do.

      So... file systems fragment. ... So?

    75. Re:When do we get compression? by PaladinAlpha · · Score: 1

      And compressing back and forth with external program all the time is just stupid.

      What's an external program? What makes code in a separate binary to compress/decompress different from code baked into the filesystem to compress/decompress? If the files aren't accessed that often what's wrong with a simple compress/decompress script?

      This is another case of an ignorant armchair administrator (with no real-world experience) unwilling to let go of a bad idea when presented with superior alternatives and cold, hard facts.

    76. Re:When do we get compression? by EvanED · · Score: 1

      Or more than 2 modern AAA video games installed.

      Heck, nowadays all you need is Windows 7 and one such game and you'll be pushing 30 GB. Windows is what, 15 GB? (My Windows directory is actually a little over 22 GB, but I'm not sure that's a fair comparison.) Portal 2 is 12 GB. Boom, 27 GB, conservatively. Starcraft 2: 9.4 GB. Mass Effect 2? 11.4 GB.

    77. Re:When do we get compression? by fluffy99 · · Score: 1

      Not if you want to it to be reliable while you're enjoying your mobility

      Based on my experience managing a large network, SSDs have been less reliable than spinning platters. They're getting better but I'm still seeing about a 4% failure rate within the first year compared to 2% for spinning platters. I've noticed the overall reliability of drives has been going down over time. I am counting a few batches of SSD that all died within 4 months, and the 1 tb drives that all died within a year due to the firmware bug.

    78. Re:When do we get compression? by Anonymous Coward · · Score: 0

      This is interesting. I did not know that zlib was implemented in the kernel. Does it automatically, transparently compress the files? Is there a way to tune the zlib options, say compress only certain file types like text and not media files?

    79. Re:When do we get compression? by smellotron · · Score: 1

      [transactional NTFS] is the sort of thing I'd actually love to see more of in the Linux world, but the Linux folks are too busy spouting off about how MS never innovates.

      Looking at the wikipedia page for this, it sounds like something that can be done without too much difficulty by writing to temp files (in the same filesystem) and then "committing" the transaction by jiggling hard links (off the top of my head, I'm thinking fsync, fdatasync, link, and unlink). Granted, it would probably be nice to wrap this type of logic into a portable library, it doesn't seem like the Linux "ecosystem" is really lacking for this sort of functionality. Is there some additional functionality that I've overlooked that Transactional NTFS provides?

    80. Re:When do we get compression? by swalve · · Score: 1

      Different filesystem. Not ext3 or ReiserFS, but the "my computer" filesystem that everything mounts onto.

    81. Re:When do we get compression? by smellotron · · Score: 1

      I'm talking about data on a server. And no, access speed isn't such an issue because the files aren't accessed that often. And compressing back and forth with external program all the time is just stupid.

      I'm not sure about your use case, but the first that comes to my mind is compressed log files. "Compressing back and forth with external program[s]" seems to be just fine for me: zcat, zgrep, zless et. al. seem to do the job just fine. Heck, even with a program that wants a filename on the command line, you can use bash to do things like ./mycrap -i <(zcat input.txt.gz) -o >(gzip -c -9 output.txt.gz). It takes a few extra pipes and processes to do this, but the program simply sees ./mycrap -i /dev/fd/63 -o /dev/fd/62 and chugs along oblivious of the compression.

    82. Re:When do we get compression? by Anonymous Coward · · Score: 0

      All the comments about file compression are off base here. That's not what's being talked about. The problem is that config files and such for different programs and system parameters are spread all over the dang place depending on where a particular program author or system administrator thought they should go. What's being talked about is trying to bring some order to the chaos so that if you're looking for a particular config file you don't have to look through a dozen folder to find it.

    83. Re:When do we get compression? by EvanED · · Score: 1

      So I think the biggest benefit is the wrapping up thing you mention. But there are a number of other compelling benefits that I think you get from something like TxNTFS that you can't get via the temp file approach. (I'm not super familiar with all this, so I may be talking out of my ass a bit, but I would bet some reasonably small amount of money I'm right.)

      The biggest is coordination across multiple files. Suppose I want to update both foo.txt and bar.txt simultaneously. How can I jigger around temporary files in such a way that both files are guaranteed to remain consistent? I don't think you can.

      A smaller benefit is that you don't need temporary files. Suppose my program is working on some multi-gigabyte file in such a way that it can, consistency guarantees ignored, just update some blocks in the middle of the file and be done with it. With TxNTFS, it can just do that. Without it, if you want consistency, you now have to copy that multi-gigabyte file to a temporary file, then rewrite the blocks you want. If you're not using a COW file system, that's terribly expensive. Fortunately, while COW systems are still reasonably rare, they are increasingly common (with ZFS and Btrfs both being COW systems).

      Another benefit you can get with the way transactions are implemented in Windows is better coordination across multiple entities. This is probably not very important on Linux, but is moreso on Windows. For instance, transactions can span both file system accesses and registry accesses and have ACID semantics in total. That only has some applicability to Linux. But I think that it's also possible to write a program that hooks into the Windows KTM (kernel transaction manager) to provide other transactable entities. For instance, you could imagine that a DBMS would hook into the KTM -- and then you would be able to write programs that have transactions that span both regular file system accesses as well as DB accesses through that DBMS.

      I'm not sure how useful that last bit would be though. I find the actual, formal API for doing transactions (instead of doing the sort of hacky "transactions" that you have to now) as well as multi-file transactions the most important benefits.

    84. Re:When do we get compression? by 93+Escort+Wagon · · Score: 1

      It's not sane people that avoid OSS; it's the people who expect a typical customer/vendor relationship with a software publisher who are turned off by (or just don't realize) the fact that OSS doesn't work quite the same way.

      You seem to think Linux development is mostly powered by hobbyists and college kids, while in truth it's mostly done by developers being paid by companies - like Red Hat - that are trying to sell Linux in "a typical customer/vendor relationship".

      --
      #DeleteChrome
    85. Re:When do we get compression? by EvanED · · Score: 1

      The biggest is coordination across multiple files. Suppose I want to update both foo.txt and bar.txt simultaneously. How can I jigger around temporary files in such a way that both files are guaranteed to remain consistent? I don't think you can.

      By the way, I should say that you can if you create a sort of "lock" file. When I want to do my thing, I create exclusive that lock file, move around those files in such a way that they can be backed out, sync, remove the lock file, remove the temporary files.

      However, this still isn't as fully-general as a true transactional FS. Other processes running your program now cannot (legally) read the protected file if the lock file exists. This means that you can't have a long-running transaction, which you might want to do if you want to be able to read a consistent image for a long period of time. (Of course, you could solve that by making a private copy of those files -- hopefully COW -- and referring to those, but this sure is a lot of complexity in your program because the system is too lazy to provide a useful feature.)

      Furthermore, I'm not sure how much isolation TxNTFS transactions provide. In particular, suppose I have a process A that's doing some edits inside a transaction, then another process B that is reading the file but the process is entirely non-transaction-aware. What you'd hope for is that A's changes aren't visible to B until commit. I suspect TxNTFS provides this though I don't know for sure. (They do state that it's full ACID.) However, my lockfile "suggestion" does not: non-transaction-aware processes (in this context, non-lockfile-aware processes) can get an inconsistent view of the files.

    86. Re:When do we get compression? by donaldm · · Score: 3, Insightful

      The one thing that baffles my mind is that Linux filesystems still don't offer compression of specific folders or files.

      If you need to do this why not try a compressed, gzip'd or bzip2 tar, rar or zip file. You can even use your a graphical explorer to actually create and manage your archives (yes you can have more than one). When I say manage you can easily (ie. point and click) display, extract and even insert specific files.

      Windows has had this for over a decade.

      Well you could do this in Unix for over 20 years.

      Why doesn't Linux have such a simple but important filesystem feature? And no, I don't want to make an archive file, because I want to access those files and folders while they are compressed.

      Linux does, I think I already explained this above.

      --
      There ain't no such thing as proprietary standards only proprietary formats. Standards are by definition open.
    87. Re:When do we get compression? by Anonymous Coward · · Score: 0

      How important is that, really ? The only times I've used NTFS compression were for freeing up temp space on ancient servers, back when 9gb and 18gb SCSI drives were the norm. Seems like a throwaway feature to me.

      For portable usage like CD/DVD and USB flash, a full-disk compressor like squashfs is just fine.

      It is great for file servers. Saving space isn't the only advantage as it also decreases the necessary amount of I/O to retrieve a compressed file, improving performance (the CPU overhead is so low now that it isn't worth taking into consideration).

    88. Re:When do we get compression? by smellotron · · Score: 1

      The biggest is coordination across multiple files. Suppose I want to update both foo.txt and bar.txt simultaneously. How can I jigger around temporary files in such a way that both files are guaranteed to remain consistent? I don't think you can.

      For a single file, you could do something like this (gross pseudocode):

      ./solve -o foo.txt.tmp
      link foo.txt foo.txt.old
      rm foo.txt
      link foo.txt.tmp foo.txt
      # ... repeat as necessary
      rm foo.txt.old

      That final rm is the step that destroys the old data, so all you need to do is loop through all "uncommitted moves" for foo.txt and bar.txt, then once everything else works you remove foo.txt.old and bar.txt.old. If anything fails, you just relink the old names on the way out.

      A smaller benefit is that you don't need temporary files.

      This is true. The approach I'm describing doubles disk usage. Support from the storage (filesystem/database) layer should be more efficient. Another benefit for high-volume systems is that the storage layer may put its logs on a different disk that is tuned for frequent small writes, as opposed to sharing the same disk as the original data.

      For instance, transactions can span both file system accesses and registry accesses and have ACID semantics in total.

      Yeah, I prefer the "everything is a file (descriptor)" approach. This is more of a "misfeature" in the Windows approach to configuration, IMHO.

    89. Re:When do we get compression? by siride · · Score: 1

      Talk about a non-solution.

    90. Re:When do we get compression? by Anonymous Coward · · Score: 0

      The simple answer is that building compression into a general-purpose filesystem violates the Unix philosophy.

    91. Re:When do we get compression? by wmac1 · · Score: 0

      Nobody even compresses files. We have fast internet and big hard drives. Viva Tar (no gz).

    92. Re:When do we get compression? by EvanED · · Score: 1

      That final rm is the step that destroys the old data, so all you need to do is loop through all "uncommitted moves" for foo.txt and bar.txt, then once everything else works you remove foo.txt.old and bar.txt.old. If anything fails, you just relink the old names on the way out.

      That doesn't give a consistent view. During your work, there are times when the file system isn't in a consistent state. Sure, you can tell it's not consistent because there are missing files, but it's still not consistent.

      There are also subtleties you have to work out so you get atomicity. What happens if two processes do that at the same time? If you're not careful, you could wind up with this (.1 files are tmp files belonging to process 1 and .2 files belong to process 2):

      1: link foo.txt foo.txt.1
      1: link bar.txt bar.txt.1
      2: link foo.txt foo.txt.2
      2: link foo.txt foo.txt.2
      1: rm foo.txt
      1: rm bar.txt
      2: rm foo.txt [fails]
      2: rm bar.txt [fails]
      1: link foo.txt.1 foo.txt
      2: link foo.txt.2 foo.txt
      2: link bar.txt.2 bar.txt
      1: link bar.txt.1 bar.txt
      1: rm foo.txt.1 bar.txt.1
      2: rm foo.txt.2 bar.txt.2

      and now the state has process 1's bar.txt and process 2's foo.txt.

      Process 2 would have to use the failure of the rm to detect a conflict and roll back. Does this protocol guarantee atomicity? I think it might... but if I were actually writing this program, I'd want to see a proof of it. There are too many subtleties. For instance, if you change from a rm foo.txt; rm bar.txt; link foo.tmp foo.txt; link bar.tmp bar.txt protocol to a rm foo.txt; link foo.tmp foo.txt; rm bar.txt; link bar.tmp bar.txt protocol, it is now definitely incorrect.

      Yeah, I prefer the "everything is a file (descriptor)" approach. This is more of a "misfeature" in the Windows approach to configuration, IMHO.

      "Everything is a file descriptor" is only half the story. To do the above, your file descriptor needs to support all the operations you use in your protocol. You could totally imagine a file-descriptor-based API to the Windows registry, but that's not enough if you can't link registry entries. Using my DBMS example, how many DBMSs allow you to create hard links of records?

      I'm not saying that transactions are essential -- clearly they aren't. But look at the database world. You don't have DBMS implementers telling application devs to do the sorts of things that we're talking about in order to get sort-of-but-not-completely-ACID properties at the application level. No, DBMSs support transactions natively. It makes programming applications much easier, much less error prone, and allows for more efficient implementations. And I think it's high-time to bring the same benefits to the file system.

    93. Re:When do we get compression? by catmistake · · Score: 1

      Your request is baffling, as is the insightful moderation. So... compression keeps you clinging to Windows and ntfs? Your argument may have made sense in 1993 when HDD space was expensive... but now that space is cheaper than the proc cycles it takes to compress. Go ahead and stretch your legs, we'll make room.

    94. Re:When do we get compression? by dave420 · · Score: 0

      How do SSDs figure into that equation? Aren't people trying to squeeze out as much GB/$ as possible? Or does that stop happening when Linux gets insulted ;)

    95. Re:When do we get compression? by spongman · · Score: 1

      I think he means lseek(2)-style direct access.

    96. Re:When do we get compression? by EvanED · · Score: 1

      Process 2 would have to use the failure of the rm to detect a conflict and roll back. Does this protocol guarantee atomicity? I think it might... but if I were actually writing this program, I'd want to see a proof of it.

      Thinking about it more, it can definitely violate consistency in an "undetectable" way:

      # Create temporary files
      1: link foo.txt foo.txt.1
      1: link bar.txt bar.txt.1
      2: link foo.txt foo.txt.2
      2: link foo.txt foo.txt.2
       
      # Copy temporary files to "real" files
      1: rm foo.txt
      1: rm bar.txt
      1: link foo.txt.1 foo.txt
       
      2: rm foo.txt
      2: link foo.txt.2 foo.txt
       
      1: link bar.txt.1 bar.txt
       
      # At this point:
      # foo.txt exists and is process 2's
      # bar.txt exists and is process 1's
       
      2: rm bar.txt
      2: link bar.txt.2 bar.txt
       
      # Remove temporary files
      1: rm foo.txt.1 bar.txt.1
      2: rm foo.txt.2 bar.txt.2

      I think you need the lock file.

    97. Re:When do we get compression? by EvanED · · Score: 1

      Oh wait, ignore that sequence: I got process 2's steps out of order. (It does the link of foo before the rm of bar.)

    98. Re:When do we get compression? by tfigment · · Score: 1

      Symbolic links aka Junctions were added in Windows XP so it is a decade old at least. What is missing was a good built in tool to use them but that is what Mark Russinovich is for.

      Each FS have their merits. I don't really need to have README.TXT, Readme.txt, readme.txt coexist in the same folder at the same time so I prefer that part of FAT32/NTFS anyway.

    99. Re:When do we get compression? by phorm · · Score: 1

      Exactly how fast do you think that the drives in your average PC transfer? On consumer hardware, 1GB/s isn't bad.
      On enterprise environments, you're going to see SAN connections rather than NAS, and with speeds that greatly surpass 1GB/s (albeit with potentially a lot more users), plus all sorts of fun caching etc.
      Even on a lot of the mid-level NAS setups, you can find multiple bonded gigabit NICS or beyond. Sure if you've got too many users then speed is going to suffer, but in many cases it does just fine.

    100. Re:When do we get compression? by jroysdon · · Score: 1

      Speaking of NAS - dedupe is a great benefit. Previously one would use NFS to mount common binaries and libraries between systems from a common server. Now, with a NAS, instead of having to maintain an identical binary/library to use on all these systems, the NAS can dedupe where ever all the identical blocks (especially when a file only changes say 1%), and great storage savings can be found.

    101. Re:When do we get compression? by Daniel+Phillips · · Score: 1

      Stay away from my /sbin kaythx.

      --
      Have you got your LWN subscription yet?
    102. Re:When do we get compression? by Anthony+Mouse · · Score: 1

      Compression can actually speed up disk access in some cases. The CPU and memory are faster than the disk, so the time it takes to read one block from the disk and decompress it can be less than the time it takes to read two uncompressed blocks.

    103. Re:When do we get compression? by Grishnakh · · Score: 1

      For individual files, frequently you can just compress them with gzip; most applications will automatically ungzip them. But generally, this feature just isn't needed; most large files these days don't compress very well at all. Movies, for example, are already compressed, so another layer of compression won't yield more than a couple percent improvement if anything, at the expense of speed. JPEG pictures too don't compress well. The files that do compress well are usually small, such as text files or documents, and you're not going to fill up a 1TB hard drive with those. On-the-fly compression was useful back in the days of 40MB hard drives, not any more. What IS useful is on-the-fly encryption.

    104. Re:When do we get compression? by cthulhu11 · · Score: 1

      ZFS manages somehow.

    105. Re:When do we get compression? by Xtravar · · Score: 1

      Solid state drives have driven up the price of hard disk space again, and driven down the capacity. Additionally, a lot of people have the extra processing power/ram to spare and may even come out ahead on performance with compression on.

      --
      Buckle your ROFL belt, we're in for some LOLs.
    106. Re:When do we get compression? by smellotron · · Score: 1

      That doesn't give a consistent view. During your work, there are times when the file system isn't in a consistent state. Sure, you can tell it's not consistent because there are missing files, but it's still not consistent.

      Yup, this is inconsistent from an external view during the transaction, which you need to solve with a lock. This, among other holes you have pointed out, make this ad-hoc transactional model much worse than a proper RDBMS. I guess you can think of it like a futex in linux: programming with futexes sucks, but it's the foundation of libpthread mutexes and condition variables (which are comparitively easy). So I guess back to your original point: a "transactional filesystem" abstraction layer sounds like an itch worth scratching, but it's not innovation by any means.

      Using my DBMS example, how many DBMSs allow you to create hard links of records?

      Not any RDBS that I know about, but hard links are not relational. I would expect this sort of behavior to be supported by any object or otherwise hierarchical database. In fact, it is directly supported in many modern programming languages via reference counting and objects.

    107. Re:When do we get compression? by Omestes · · Score: 1

      The filesystem transparently compresses files in small clusters, and it suffers from fragmentation problems, like you also mention.

      Which is better than not having the option at all. I generally only use NTFS compression on directories of old, but essencial, files, that aren't frequently accessed. I have a rather large amount of RAW files that I've already processed, for instance, I don't need to access any given file frequently, and I almost never modify them, but I can't just store them away either since I often need to access at least on of them. I also have a couple directories full of old documentation and research, again I might only need to access one file of hundreds in a given month. This is nice since the drive I used for old files (old, slow, and salvaged) is getting to the point where I'm getting paranoid about space, but not at the point where I really feel like going through the hassle of swapping/buying drives.

      My old laptop, when it ran Windows, also had copious compression on pretty much every system folder that was accessed or modified (which is strangely common in Windows) less than monthly.

      It is flawed, but I still think it is a valid feature in some cases. Which isn't to say that I really miss it too much on my Linux machines, but then again they are generally leaner, and I also generally don't use them for the same things I use my Windows box for.

      --
      A patriot must always be ready to defend his country against his government. -edward abbey
    108. Re:When do we get compression? by Electricity+Likes+Me · · Score: 1

      Needing FUSE would violate the "fast" part of the equation.

      I've been listening to promises that FUSE was now fast-enough for years, but I'm yet to see more then 20mb/s performance from it. Which seems fast enough, right up until you need to actually do anything with it (there's also the observation that lightweight compression like LZO can easily beat that speed).

    109. Re:When do we get compression? by hairyfeet · · Score: 0, Flamebait

      So a user states a simple need, one filled by the competitor for a decade, and in less than five posts he gets insulted before getting the classic use esoteric workarounds followed by you giving him a snarky version of the also classic you don't need that, and you wonder why Linux is stuck at 1%?

      Waste your mod points all you want but this is a truth that needs to be spoken, it is THIS, this right here, that keeps Linux in last place. Somewhere along the way making F/LOSS accessible to the masses was thrown to the wayside in favor of the "FLOSSie club" as I call it, where You must prove your "worthy" of using the gifts the great Torvalds and RMS have bestowed upon thee. In this club anything that makes F/LOSS more useful, easier, and friendlier? why that is bad, its "rampant consumerism" or "dumbing down" and anything that makes Linux more complex, obtuse, or fiddly is "smarter" and "more powerful". I have actually been told by a member of the FLOSSie club when i pointed out that Linux was too CLI heavy for my consumers "to make them embrace the power of CLI" like its the Goddamn force!

      Never before in all of history has things been more favorable to your OS in the consumer market, you are being given multiple great gifts yet are just pissing them away. You have Windows 8, or "Ballmer's Folly" that is gonna make Vista look like XP, you have nearly 400 million laptops and netbooks and desktops that are gonna be EOLed that are frankly insanely overpowered for what the vast majority do with computers, and finally you have a populace that lives and breathes online. while the business market still has tons of proprietary apps if your OS can get to FaceBook, play Farmville and Angry Birds you have covered more than 80% of the home users right there!

      But what do you do with these great gifts? do you ask the fundamental questions, which for an OS that has been around 20 years and is still lower than the margin for error shouldn't even have to be uttered? Do you ask "What am I doing wrong that my competitors are doing right?". Nope, because thanks to this new "club" mentality those users are "noobs" and not worthy of the usage of your "blessed" OS, they aren't worthy of joining the clic. Instead you expect the entire planet to do things YOUR way, arrogant much?

      A wise person once said "You know what the definition of insanity is? Its doing the same thing over and over and expecting a different result" and that is EXACTLY what the community has been doing. Insane release schedule, broken drivers, none of that matter because the users will embrace the power of CLI and learn "the Unix way" even though Unix was NEVER supposed to be a consumer OS and died out over a decade ago!

      I wise man would look at those linux TMs and others on that site and learn from them. Every one of them is based on the constant stream of excuses and accusations thrown by those in the club. I'm sure if one were to look at it one would see the same ones being used here over and over AND OVER. But numbers don't lie folks, never before in history have things been more favorable to your OS but everyone from Walmart to the little shops like mine treat your OS like the plague, why? Do you honestly believe Steve Ballmer is giving us all Swiss Bank accounts?

      No it is because you do NOT listen. you don't listen to the users, you don't listen to the OEMs, you don't listen to the little retailers like me, or even the giant OEMs like Dell who has to run their own repos at not inconsiderable expense and just for a teeny tiny subset of hardware, simply to have functional drivers. look, listen, learn from your competitors and offer a better product. Its business 101 folks but if you continue to treat Linux as an exclusive club instead? you have nobody to blame whe

      --
      ACs don't waste your time replying, your posts are never seen by me.
    110. Re:When do we get compression? by peppepz · · Score: 1
      Junctions can only point to directories. The full symbolic links implementation was added in Vista as you can read in Vista's release notes.

      I think that the common feature both junctions and symbolic links are built on, reparse points, was added earlier. But then I can point to the elegance of a system from the 70s where every file or directory can become a "reparse point", and indipendently of the underlying file system.

    111. Re:When do we get compression? by peppepz · · Score: 1

      edit: And Windows XP *was* released a decade ago.

    112. Re:When do we get compression? by Air-conditioned+cowh · · Score: 1

      Seems like a throwaway feature to me.

      Seems like a really useful feature to me!

    113. Re:When do we get compression? by Anonymous Coward · · Score: 0

      Go, tell the ZFS people they wasted their time on adding compression.

    114. Re:When do we get compression? by paulatz · · Score: 4, Funny

      tl; dr

      try compressing your comment for greater readability

      --
      this post contain no useful information, no need to mod it down
    115. Re:When do we get compression? by vga_init · · Score: 1

      Not a compressed partition, but rather a compressed file system contained in a file on the uncompressed file system!

    116. Re:When do we get compression? by Anonymous Coward · · Score: 0

      Having each file compressable would be a mess. A sane solution would be to enable the compression of the "full filesystem". Works like a charm with zfs or GEOM. Make the folder a zfs subfilesystem and toggle the compression.

    117. Re:When do we get compression? by Anonymous Coward · · Score: 0

      chattr +c ? It's right here.

    118. Re:When do we get compression? by stooo · · Score: 0

      redundant storage and compression ?

      I don't think compression is a clever thing to do on sensitive data. Any bit flip will badly crash the file system....

      --
      aaaaaaa
    119. Re:When do we get compression? by EvanED · · Score: 1

      So I guess back to your original point: a "transactional filesystem" abstraction layer sounds like an itch worth scratching, but it's not innovation by any means.

      IMO if transactional file systems aren't an innovation... I'm not sure what is.

      Sure, it's standing on the shoulders of DB transactions and whatnot, but that's pretty much true of every innovation.

    120. Re:When do we get compression? by Anonymous Coward · · Score: 1

      I wish I had modpoints to give to royalthefourth or to remove from SharLaser or siride.
      It is very good that file systems does not become the everything but the kitchen sink of storage strategy.
      If you need different storage strategy for different directories, you put the directories on different filesystems and you mount them in the structure that fits your needs.
      That is easy to do and very flexible.

    121. Re:When do we get compression? by Anonymous Coward · · Score: 1

      Even the way NTFS does it is to create a compressed file to hold the contents of the original file, like an archive. But if you'll notice, whenever you open the compressed file, NTFS will expand the whole compressed data into another special file until you close it. Watch the disk space usage change and you'll see. You can easily set up a situation where you do not have enough free disk space to open a compressed file, and that is not intuitive for a user.

      That is not how it works at all.

      NTFS compression works by breaking the file into groups of 64KiB (Might be 16KiB, don't remember exactly) and then compressing each lump of file using ZLib. This compromises seek performance for file size (if you seek 1MiB into a file and the read 10bytes then the system will need to decompress the 64KiB block into RAM and grab those 10bytes but it DOES NOT need to decompress the whole file). This is why NTFS compressed files are fast to access compared to 7-Zip or such compressed archives, the compromise is that the files also end up being bigger (due to only compressing 64KiB data lumps independent of each other) compared to archives (which compress the whole file at once).

      What you want is an ability to compress small individual blocks of the file that can be accessed separately without having to decompress the entire file. But doing that creates all sorts of other problems such as how to efficiently allocate the space for the compressed contents which might change over time (and change size) without causing a great deal of additional fragmentation. This is rather harder to do.

      Ironically, you state exactly what NTFS ACTUALLY DOES right after criticising it for not doing it that way.

    122. Re:When do we get compression? by cnxsoft · · Score: 1

      BTRFS file systems can be used in Linux and offers compression. It will be the default FS in Fedora 17.

    123. Re:When do we get compression? by Anonymous Coward · · Score: 0

      Seriously, I live in the UK and, by choice, my total weekly expenditure is about £50, not far off that $80 you blithely waste on overpriced coffee and junk food. Actually, figure in another £50 for rent and utilities and that is my cost of living (about £5000 total each year). You suggest my career choice has been poor, but I work for a couple of months each year to gain that money and the rest of the time I live for myself. I suggest that your wage-slave lifestyle isthe one that needs a rethink..

    124. Re:When do we get compression? by somersault · · Score: 1

      I'm not talking about reliability while sitting still, I mean while being mobile, ie moving around. SSDs do have their downsides of course, but I'd prefer an SSD in all my future laptops. In my desktop I have an SSD and a HDD. I expect the HDD to outlive the SSD.

      --
      which is totally what she said
    125. Re:When do we get compression? by AliasMarlowe · · Score: 1

      Riiiight, so I drag around an ugly mechanical drive every time I need to use my laptop, sure. That's exactly why I spent extra money on getting a small and light machine.

      For bonus points, ensure the external drive is also noisy, smelly, and discolored (as well as scratched and dented). It will make your MacBook Air look even better in comparison. Of course, this image may be tarnished if the external drive is actually doing a valuable job.

      --
      Those who can make you believe absurdities can make you commit atrocities. - Voltaire
    126. Re:When do we get compression? by Anonymous Coward · · Score: 0

      Heck, even just basing it on the file extension would work.

      file extensions? lol..

    127. Re:When do we get compression? by Kjella · · Score: 3, Insightful

      So are you Wikipedia, the Gutenberg project or SourceForge? You're certainly not going to read 1TB of text unless you plan to live the next billion years or so, you are some kind of speciality site. The point is that most use appropriate compressed formats for their purpose. PNG beats BMP-in-a-ZIP. FLAC beats WAV-in-a-ZIP. Lossy formats like JPG, MP3, H.264 video are already well compressed.

      Sure, compression is the way to go. But is it that vital that it's in the file system instead of working with zip files? Maybe to you. But I think you know you are an extreme minority on this one. Most people are happy having zip folders and a search engine that reads inside zip files and I know Linux has both. Or actually most people have no problem storing their text uncompressed at all because it takes up <1% of their drive.

      I guess none of the people you talked to felt this was a problem worth solving. To me it would be a bit like learning Linux has issues with >1 TB RAM or >1000 cores, even if that was so I wouldn't exactly feel it is or ever would become a problem for my desktop. So yeah, it probably would get returned with "Well, if it's a problem to you feel free to do something about it, but I don't think anyone here will work on it."

      Or something less polite, depending on who you ran into and how you formulated your feature requst.

      --
      Live today, because you never know what tomorrow brings
    128. Re:When do we get compression? by xtracto · · Score: 1

      There is also FuseCompress which supports LZMA, ZLIB, and bzip2 compression formats.

      The problem I see with these features not being part of the filesystem is that if you wanted to access said data in another system (say, at a friends house using a usb disk) you will be screwed as you need to install the extension on each computer.

      --
      Ubuntu is an African word meaning 'I can't configure Debian'
    129. Re:When do we get compression? by e70838 · · Score: 1

      Most of us agree with the simple need of a compressed directory. We mainly disagree that adding features to the filesystem is a correct way to do that.
      What you call "use esotheric workaround" is very trivial for most of linux developers. If you have the level of knowledge to need to compress a directory, you generally have the level to find it easy to do using the CLI.
      I do not reject your lengthy rant about FOSS. Playing with mounting points, partitions (resize, move, ...) and file systems should be available without the CLI, using an eye candy gui.
      The need is present since a long time and has never been solved. Ubuntu has provided a partial work-around using FUSE everywhere. I do not think this is a correct solution because it is hiding things, not making them simpler. This work-around has probably postponed the invention of a clean way to handle file systems.

    130. Re:When do we get compression? by javanree · · Score: 1

      Then the conclusion is even easier :
      "Redhat's (mostly business) users don't need or just don't care about disk compression so they don't ask for it"

      Disk compression is a terrible band-aid for a cheap and easy-to-fix problem. Maybe it's time people rethink their storage strategies first...

    131. Re:When do we get compression? by Anonymous Coward · · Score: 0

      Why is it simple, and why is it important?

    132. Re:When do we get compression? by smash · · Score: 1

      Yes, i believe there was also updates with Vista SP2 or Win7 as well. However arguing that NTFS was regularly updated when pointing to Windows XP is pretty stupid.

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
    133. Re:When do we get compression? by marcello_dl · · Score: 1

      That's more or less what LessFS does.
      It does compression and also does De-duplication, so it is equal or many many times more efficient and space saving than simple compression.

      LOL at the anti linux comments below. I see your transparent compression and raise you the deb package management with debian multi arch repos. *rakes in the chips* Nice playing with you pals.

      --
      ---- MISSING MISCELLANEOUS DATA SEGMENT --- [sigdash] trolololol
    134. Re:When do we get compression? by Anonymous Coward · · Score: 0

      I'm sorry, you seem to lack project management skills, so let me clarify: the user didn't express a need. The user demanded a feature that he perceives to solve an imagined (but unarticulated) need. Referring the user to a shrink is exactly the right response.

      The user is baiting himself into falling hook, line and sinker for the first mba suit that crosses his path. That's good for the suits, bad for the user.

    135. Re:When do we get compression? by LizardKing · · Score: 1

      It can be really important if you're storing thousands of files (text, or anything that compresses well) and still need fast direct access to them.

      Just tar them, compress the tar file, then use something like file roller to browse the compressed archive. This is exactly the way the Unix philosophy is supposed to be applied - using discrete tools to do specific tasks rather than complicating things like the general purpose file system code.

    136. Re:When do we get compression? by LizardKing · · Score: 1

      Based on my experience managing a large network, SSDs have been less reliable than spinning platters.

      Yup, just had another SSD fail two days ago. This one was six months old, and hasn't had that much use. The worst thing is that when SSDs fail, they tend to fail hard rather than slowly degrading as spinning disks generally do.

    137. Re:When do we get compression? by Anonymous Coward · · Score: 0

      I actually did this when I worked as a sysadmin. I would compress the system folders on windows boxes as the hdds were slow as hell , yet the CPU was fast enough to decompress them on the fly. Gave me a subtle margin in system speed.

    138. Re:When do we get compression? by DrXym · · Score: 1
      I don't think compression is something which Windows actively waves under the nose of users (it's in an advanced dialog) but the fact is it's there. And encryption is too. And when you check the box to compress or encrypt Windows doesn't make a big song and dance about it, it just does what it's told.

      This is what open source and Linux needs to learn. Maybe some people are masochists and seriously consider mounting loopback devices pointing at compressed or encrypted files or some other shit as no big deal but they are in a minority. Regular users, even most power users would prefer a GUI that offers a checkbox and an OS which makes such functionality seamless and easy to tap.

      I think in the case of compression / crypto part of the issue is ext4 doesn't offer them at all so kludges like loopbacks have to be used. I would hope that btrfs will offer them and perhaps other extension points so perhaps Linux will eventually deliver this sort of functionality.

    139. Re:When do we get compression? by ttong · · Score: 1

      So you want to compress and decompress inside the kernel? Really?

    140. Re:When do we get compression? by DrXym · · Score: 1

      Having to write scripts to explicitly compress a directory and mount it as a regular directory (or whatever) is nowhere near as trivial or convenient as a one-shot checkbox. I also believe that a file system or at least something that looks like a file system to user land does need to support extensions such as compression / encryption natively in some form. It's pretty clear the kernel devs thinks so too or Btrfs wouldn't be striving to offer those features and wouldn't be on track as the replacement for ext4.

    141. Re:When do we get compression? by Anonymous Coward · · Score: 0

      compression on filesystem-level make less and less sense. If you analyse the volume of data stored on the average users computer you will find that most of the space is taken by various forms of media files (images/audio/video). Most media-formats are already compressed so there's little to gain by adding an extra layer of compression. That being said, there are filesystems with built-in compression available for linux, but those are less useful for joe-average-user than e.g. for storage and processing of log-files in a server system.

    142. Re:When do we get compression? by Anonymous Coward · · Score: 0

      RAM. Used for Linux filesystem caching. Also very cheap these days.

      Sure, compression may lessen disk reads and speed up access to binaries. How often is this
      done after the first access is cached?

    143. Re:When do we get compression? by Bigos · · Score: 1

      or links

    144. Re:When do we get compression? by mapkinase · · Score: 1

      Exactly, In order to be able to "open" a compressed directory, one does not have to decompress the whole thing if compression is done right. It's when you have 30GB file in that directory, then it might become a problem.... unless compression is done right.

      --
      I do not believe in karma. "Funny"=-6. Do good and forbid evil. Yours, Oft-Offtopic Flamebaiting Troll.
    145. Re:When do we get compression? by drsmithy · · Score: 1

      If its an older PC I think i'd rather not waste CPU cycles on compression.

      Probably worth pointing out that compression will often actually improve disk IO, because the CPU is so much faster than the disk, the fact that less actual data needs to be written (and particularly read, as decompressing is faster) will make a machine with a compressed drive faster overall.

      This has been true since at least the Pentium II days, and probably all the way back to the 486DX.

    146. Re:When do we get compression? by Anonymous Coward · · Score: 0

      Because in the real world, filesystem support of compressed files doesn't add anything.

    147. Re:When do we get compression? by hairyfeet · · Score: 1

      Thank you, and did you notice i got labeled flamebait for daring to point out such an obvious thing? I mean when did it become hearasay to say "Having a checkbox or button for the users is a good thing" in the community? Has it REALLY become so taken over by the "FLOSSie club" mentality that simply asking for a button is now evil? And what about the other two things I pointed out, having a "find drivers" and roll back drivers" button for when something goes wrong? That may not be something a regular user is gonna use every day but by George when something goes wrong they are gonna be damned glad its there!

      I don't think its masochists though, I truly believe from my interactions in the forums that those that believe FLOSS is a "club" that its their job to actively deny members to has taken over too much of the Linux community. They actively fight making things easier or better for the users because that might let in "noobs" or "the unwashed masses" while ignoring the fact isn't that what FOSS and the whole movement was for? Wasn't it to free the world from software that was out of their control? According to the FLOSSie club that is only for those that believe, and whom don't think esoteric workarounds like loopbacks are difficult. Kinda sad really, that the trolls have taken over the movement, but there you go.

      --
      ACs don't waste your time replying, your posts are never seen by me.
    148. Re:When do we get compression? by Meeni · · Score: 1

      It's free software. You want it, you code it.

    149. Re:When do we get compression? by BosstonesOwn · · Score: 1

      I sense a new movement here... Occupy Server Storage ? Distribute the 1% storage to the 99% ?

      --
      This package Does Not Contain a Winner
    150. Re:When do we get compression? by Compaqt · · Score: 1

      Can you encrypt directories in Windows? Which version?

      I know that if you plug in an unformatted hard drive in Ubuntu you get the option of formatted with an encrypted filesystem, all with GUI tools for locking/unlocking.

      --
      I'm not a lawyer, but I play one on the Internet. Blog
    151. Re:When do we get compression? by Just+Some+Guy · · Score: 1

      What you want is an ability to compress small individual blocks of the file that can be accessed separately without having to decompress the entire file. But doing that creates all sorts of other problems such as how to efficiently allocate the space for the compressed contents which might change over time (and change size) without causing a great deal of additional fragmentation. This is rather harder to do.

      On Solaris and FreeBSD, it's zfs set compression=on tank. The problems have been solved, for suitably large values of "solved".

      --
      Dewey, what part of this looks like authorities should be involved?
    152. Re:When do we get compression? by Anonymous Coward · · Score: 0

      Too bad the post you think is so nice is also completely wrong.

    153. Re:When do we get compression? by fluffy99 · · Score: 1

      I'm not talking about reliability while sitting still, I mean while being mobile, ie moving around. SSDs do have their downsides of course, but I'd prefer an SSD in all my future laptops. In my desktop I have an SSD and a HDD. I expect the HDD to outlive the SSD.

      I've seen exactly one spinning laptop drive fail due to impact (the entire laptop didn't survive either), whereas I've had numerous laptop SSDs get flaky and start quietly corrupting data. Some of those SSDs actually draw more power than a spinning HD too.

      For me SSDs have a ways to go before I'll embrace them without reservation.

    154. Re:When do we get compression? by MareLooke · · Score: 1

      Indeed, if this feature was actually useful in an enterprise setting RedHat would have implemented it years ago. The simple fact that they did not is in itself enough proof that it is a useless feature.

      For my personal usage I barely have any files I could compress and save any reasonable amount of space with. Old documents tend to go in tar bzipped files which, incidentally, I can just browse as if they ware normal folders with my file manager of choice. If the OP can't with his then his file manager is a gimped piece of crap that needs replacing.

      File system compression is a non-solution to a non-problem.

    155. Re:When do we get compression? by pak9rabid · · Score: 1

      How do SSDs figure into that equation? Aren't people trying to squeeze out as much GB/$ as possible? Or does that stop happening when Linux gets insulted ;)

      If you're storing media (images, audio, video files) on your SSD instead of OS files and applications, you are clearly missing the intended purpose of an SSD. Get a large-capacity traditional HD on the cheap for all that shit.

    156. Re:When do we get compression? by Anonymous Coward · · Score: 0

      It might increase disk throughput but it will slow access time which is usually more important on small compressible files.

    157. Re:When do we get compression? by Rennt · · Score: 1

      Heck, even just basing it on the file extension would work.

      No. God no! Firstly, Linux doesn't even have meaningful file extensions, and secondly (going by Microsoft's experience) it creates a security nightmare and is prone to unpredictable behavior. Kill that crap with fire.

    158. Re:When do we get compression? by Rich0 · · Score: 1

      Do RAW files even compress using external utilities (at least enough to make it worthwhile)? They're internally compressed and they're lossless multimedia which is a tough nut to compress in any case.

      The best candidates for compression are things like random data files that don't employ internal compression, documents, executables, and text files. The files that individually tend to be large almost always employ internal compression already (video, audio, etc). Filesystem compression is good for taking care of the other 80% of the files that didn't warrant individual treatment.

    159. Re:When do we get compression? by Rich0 · · Score: 1

      Most files do not use codecs at all.

      The problem with solving this at the level of the individual file is that it takes care of big files like videos, but does nothing to handle the bazillion little files like what you find in /usr, /var, /etc, etc. Collectively they use quite a bit of space, though clearly comparatively little if you're talking about a MythTV box.

    160. Re:When do we get compression? by DrXym · · Score: 1
      You can encrypt a directory by checking a box on its advanced properties so that every file it contains and every file created / copied thereafter in that folder is encrypted. Encryption is via a key tied to your login so you don't have to mount the folder or anything and presumably you could share keys or do other interesting things. You can't encrypt and compress files at the same time as encryption renders the file data essentially random and therefore impervious to significant compression.

      It doesn't stop someone viewing the contents of the folder, but not the contents of the file. If you want to encrypt an entire volume you use Bitlocker, Truecrypt, PGPDisk or a bunch of other similar solutions. Truecrypt is free and well trusted so that would be the defacto choice IMO unless you need enterprise level functionality.

      Mac OS X also supports crypto through the GUI. FileVault protects the contents of your home folder, encrypting them with your login credentials. Or you can password protect a folder by turning it into an encrypted disk image and mount that to access it.

    161. Re:When do we get compression? by Anomalyst · · Score: 1

      Use them as cache under ZFS. let the software make intelligent decisions on what needs to go on the disk instead of making wild-assed-guesses as to what needs to be there. http://www.zfsbuild.com/2010/04/15/explanation-of-arc-and-l2arc/

      --
      There is no right to feel safe thru security vaudeville at the expense of everyone's freedom, privacy and tax money.
    162. Re:When do we get compression? by quinto2000 · · Score: 1

      This does solve an important problem in the Windows server space. Windows generates big log files, and there's no good log rotation built in. I do routinely end up compressing the log directories on many of my Windows servers. However, Linux has several good standard log rotators, so it's less of a concern. I've actually never run into the problem of a log directory filling up on Linux. What's the other use case where you have 1 TB of text files, other than logs?

      --
      Ceci n'est pas un post
    163. Re:When do we get compression? by nschubach · · Score: 1

      So, your question is: Why don't you have compression on your Macbook?

      I thought we were talking about Linux file compression, and you mentioned a solution (partition compression) but compare it to a Macbook and your lack of ability to compress?

      --
      Every time I start to have faith in humanity, I ruin it by driving to work between 7 and 8 am.
    164. Re:When do we get compression? by grumbel · · Score: 1

      Linux has the ability to read/write compressed files directly (zclib?) and doesn't need the filesystems to support this.

      Hacking workarounds together at the app level is the problem, not the solution.

    165. Re:When do we get compression? by bored · · Score: 1

      Probably worth pointing out that compression will often actually improve disk IO.

      Well, not really. If that were true then windows would probably enable folder compression by default. Besides latency issues that someone else pointed out, the overhead of doing something like updating 512 bytes in the middle of a file is significantly faster with an uncompressed file than a compressed one. Furthermore, streaming read/writes are where a the compressed filesystem gains advantages. In those cases the amount of advantage is dependent on the actual performance of the CPU's, compression ratios, and drives involved. Its also dependent on the question of whether there is a CPU sitting around idle. Anyway, the actual performance of a high speed algorithm like LZO (or LZS in the old days) has never really been much more than 2-4x a single hard-drive (and in some cases worse by similar factors). You should think about how the system performs when the compression ratio of the data is 1.2:1. Then consider that rarely was the compression ratio of a whole volume much greater than 2:1. Any advantages of compressed volumes were easily overcome with just basic software RAID0. Higher end RAID systems were often significantly faster than compression.

    166. Re:When do we get compression? by Admiral_Grinder · · Score: 1

      I don't think SSDs are the cause of the current price hike. If that was the case then we would have expensive drives last year.

      I noticed that the drives I buy are now almost double the price than 6 weeks ago, probably something to do with Thailand hard drive factories refactored into swimming pools.

    167. Re:When do we get compression? by Anonymous Coward · · Score: 0

      Slackware? Is that thing still around?

    168. Re:When do we get compression? by Anonymous Coward · · Score: 0

      Yes! Why is this so difficult to comprehend?

    169. Re:When do we get compression? by Anonymous Coward · · Score: 0

      Remind me to keep you away from our important Windows servers.

    170. Re:When do we get compression? by marcosdumay · · Score: 1

      Non-solutions are great for non-problems.

    171. Re:When do we get compression? by drstevep · · Score: 1

      I fail to understand this response.

      Yes, Linux can compress files and you can browse within the compressed archive. Yes, Linux could do that 20 years ago. Hell, so could my CP/M system, 30+ years ago.

      The central question is transparency of access across all applications. A brilliance of Unix was the transparency of access to byte streams across sources through the use of the filesystem integrated with driver references. An application sees a byte stream of data, and doesn't care if it is bytes stored on a disk or bytes being read from a TTY device. The concept of "filesystem" includes layers that are (reasonably) consistent across sources to provide a common interface to the data source.

      Embedding compression adds additional layer of transparent functionality. The application sees a name, if it is a directory it can proceed to open the directory and query for objectnames within it. The app need concern itself with only files and data; the filesystem manager maintains the source processing models (including, by the way, what kind of filesystem (EXTx, etc.) is used to manage the data store).

    172. Re:When do we get compression? by 1s44c · · Score: 0

      SSD = very expensive small storage; mobility = no space for extra storage

      SSD's are fast. File compression is dead slow. Compressing a filesystem on a SSD would kill that speed advantage and use greatly more CPU time to read or write files. I don't think there are many setups where disk compression would actually be a good thing. That said if people want to use it and know what they are doing they should be able to, hopefully this will be supported in btrfs.

    173. Re:When do we get compression? by hairyfeet · · Score: 1

      From Win2K Pro on up, that is 12 years, you can just right click on a folder, select properties and under advanced you will find "Compress contents to save disk space" as well as "Encrypt contents to secure data" but of course you can not encrypt and compress because the encryption makes the files look like a random scattering of 1s and 0s so naturally compression simply won't work.

      You should try looking up sometime "77 things about windows 7" is I believe the name of the whitepaper or even some of the writings of the guy that writes the WinTechNet tools (Russinovich I believe) because frankly there is insane amounts of customization and advanced features of Windows NTFS that most users don't even know about, until they find a need for it of course. You have junction points, which was CLI until Vista but since has a GUI, you can encrypt files and folders, compression, alternative data streams, custom ACLs, there is frankly an insane number of features of the NTFS file system just sitting there. Hell the whole system has gotten insanely powerful, win 7 now has a built in tutorial tool where I can record a step by step tutorial to walk my customers through fixing a problem or I can just take control of their box in less than 5 minutes while they are on the phone and fix it by remote, so simple to use I walked a 73 year old grandmom through remote assistance over the phone.

      But this gets to the heart of why I think Linux isn't gaining share, and it is thus: MSFT is busting their asses to make things EASIER for the user. Even the most advanced tasks can easily be found using WinSearch and has GUIs and helpful tutorials. Hell my 71 year old dad is learning voice command control for his PC all because he simply typed "mic" into control panel and found a tutorial on using his microphone for voice commands!

      Sadly and I get infinite hate and venom for daring to say this but i truly believe it is this dark fact that the community doesn't want to admit which is Currently Linux IS Windows 98, no more and no less because while MSFT and Apple have seen that the key to users is making things easier for them, with Linux, just like Win98, the GUI is really nothing but a shell over a CLI underpinning, and instead of working to make the GUI a first class citizen the developers often just put the absolute most basic items in the GUI and instead of having an advanced GUI for advanced tasks expect the user to drop out of the GUI for CLI, just as we often had to do with Win98.

      As a retailer and geek I want that to change. i remember the days of having shelves filled with choices, from Commodore to Atari, from Tandy to Compaq. I believe choice is healthier for the system as a whole and healthier for the user. Hell i even think having lots of choice is healthier for MSFT as it forces them to stay on their toes and listen even closer to the consumer. But we simply won't have that choice if the community doesn't stop acting like Linux is this little "club" where only CLI heads and nerd are allowed. I mean look at the post I was responding to, which i got labeled flamebait for daring to point out what was going on, where a user said he could really use a simple feature that has been in Windows for a decade. What happened? he was insulted repeatedly before someone came up with a truly Rube Goldbergesque workaround to create a compressed loopback mountpoint, a workaround i'm sure would involve a page and a half of CLI as well as writing and testing his own script.; That's just insane folks!

      --
      ACs don't waste your time replying, your posts are never seen by me.
    174. Re:When do we get compression? by jd · · Score: 1

      What "one filesystem"? Microsoft keeps trying to do WinFS and other experimental systems, NTFS keeps getting "revised", blah de blah blah. There is no "the" filesystem. There is the default filesystem on Windows 7, but there is bugger-all guarantee that will have any relationship with the default filesystem on Windows 8. Thumb drives that use NTFS are wasting space and there's a hell of a lot more thumb drives than there are hard drives. You may not be aware of this, but DVDs don't usually use NTFS either, but are probably more important candidates for compression than any other device.

      So what is this mythical "the" filesystem of which you speak?

      --
      It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
    175. Re:When do we get compression? by jd · · Score: 1

      It's not in the kernel, it's in the low-level app libraries. (Ok, actually there IS a zlib compression function in the kernel that can be used for files, but it's not the one I'm referring to. Damn complexity.)

      Basically, it overrides the "standard" application-layer I/O functions and replaces them with ones that do on-the-fly compression. It's totally invisible to applications, so you can ignore any references by others to "application level" workarounds. This isn't in the applications at all. It's in the interface between userspace and kernelspace, which (arguably) is where it should be. To the application, it's as if it were in the kernel - the app can't tell the difference - but it's not hogging up kernel threads and therefore not subject to all the headaches you get when a kernel thread goes nuts munching on CPU time.

      I would imagine it's tunable. I've honestly never tried tuning it. It's there and when I roll my own distros (I'll only use other people's distros when I'm rushed for time) I invariably use it.

      (For those not around long enough, I have spent almost 2 decades ferreting out under-utilized, obscure yet amazingly useful projects - be they kernel or userspace. I wouldn't even rate this project as obscure in relative terms - I've seen far more obscure projects that people are insane for not using but can be excused on the grounds that nobody tells anyone anything. Y'know, word-of-mouth is great but it requires one to open one's mouth.)

      --
      It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
    176. Re:When do we get compression? by mattack2 · · Score: 1

      Security nightmare?

      I simply mean "treat .txt as a text file, .mov as a movie", so you know how to compress the first one well and probably do nothing at all on the second one.

      This was the technique used in a file-based compression utility I used in the early 90s on the Apple IIGS. (Well, not .movs, but you get the idea.)

    177. Re:When do we get compression? by jd · · Score: 1

      True, but when it's in the filesystem, you're restricted to the specific filesystem versions that use compatible compression. When it's a layer, it doesn't matter what version of anything anyone uses. That's the great thing about layered OS design - you're not subject to version hell. API hell, yes, but not version hell. Can't do much about API hell, since loosely-coupled designs have to rely on some method of communicating, but Linux limits API hell by enforcing backwards-compatibility at key points. This means, however, that you have to add your version-independent layers at those points and no other.

      --
      It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
    178. Re:When do we get compression? by jd · · Score: 1

      See above. See LWN's article on low-level libraries. Hell, see a book on design. Low level libraries aren't applications and aren't application level. They're userspace but they're not appspace.

      --
      It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
    179. Re:When do we get compression? by barrkel · · Score: 1

      Did you read beyond my semicolon, or was it too much text for you?

      When you have a single device with only SSD storage, how do you store compressible files belonging to the OS?

      Me, I use filesystem compression on them. Not because it's fast or slow; but because that's the solution to the actual problem.

    180. Re:When do we get compression? by barrkel · · Score: 1

      What makes you think I have OS X on my Macbook?

    181. Re:When do we get compression? by javanree · · Score: 1

      I bet they totally loved you for that when a disk (or worse, RAID set) started crapping itself and just a few lost bits caused a directory (or worse...) to be totally inaccessible... Again, disk compression is usually a poor band-aid for a problem which can be solved in many more elegant ways. And this particulair band-aid just masks the wound and might cause nasty infections further down the road.

    182. Re:When do we get compression? by Anonymous Coward · · Score: 0

      Because someone with a Toshiba Satellite running Linux doesn't say: "How will I get that into my Satellite?" (like a douche) They say "How will I get that into my laptop?"

      Saying MacBook assumes you are running OSX, otherwise it's a laptop. I can understand GP's mistake with your brand whoring smug post.

    183. Re:When do we get compression? by shutdown+-p+now · · Score: 1

      This requires you to decide in advance how big you want the compressed partition to be, and it's hard to change later if you misjudge the size.

    184. Re:When do we get compression? by shutdown+-p+now · · Score: 1

      In case of NAS, however, filesystem-level compression would not help, since the file would be decompressed before its data is sent over the network.

    185. Re:When do we get compression? by shutdown+-p+now · · Score: 1

      Actually, that post is fundamentally wrong in how it describes NTFS file compression (just read other replies, they already explain it).

    186. Re:When do we get compression? by NorthWay · · Score: 1

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

      Well, there are days I keep thinking to myself that much the same applies to the Amiga. Except often not actually getting what they want.

      On my Amiga I had a (de)compressing filesystem. You basically named it and told it what real directory to link to. After that your view of that filesystem was as if the files were uncompressed. You could use your real path to fiddle back and forth with compression and selecting algorithms per file. There was a very nice compression framework done by third-parties that this used - plug-in compressions of all types.

      And if you were "cheap" you could use a loader patch that recognized the executable directly and decompressed it.

      Of course, storage systems will probably begin compressing data by default to increase space and speed. I think some might already do (though you might want a standard that transfers compressed over the wire all the way into your host).

    187. Re:When do we get compression? by DaVince21 · · Score: 1

      There's another advantage to compressing the data, though. A lot of the boot and load times on software and distros is spent reading files from disk. Compress these files, and there's less to read, which is good. The CPU will take over the task of uncompressing the files, which is a lot faster than loading the full file (depending on how large it is).

      Thus, I'd see compression as something that can be very beneficial to load times.

      --
      I am not devoid of humor.
    188. Re:When do we get compression? by Korin43 · · Score: 1

      In fact, most people I know never use more than 30 GB total unless they have (a) an insane amount of music or (b) a reasonable amount of videos.

      Or more than 2 modern AAA video games installed.

      A compressed filesystem isn't going to help with your games (their data is probably in a tightly packed binary format anyway). You're right though that that would be a good reason to need a bigger hard drive.

    189. Re:When do we get compression? by Korin43 · · Score: 1

      Good point (see my other comment). These will all compress they same as audio/video (ie: they won't compress at all), so it doesn't change my point.

    190. Re:When do we get compression? by BatGnat · · Score: 1

      ASCII pr0n?

    191. Re:When do we get compression? by AReilly · · Score: 1

      There is essentially no virtue in a compressed filesystem because there is essentially no compressible data on a modern file system. The bulk of user data these days (by volume) is already compressed, as JPEG images or MPEG sound files, or similar. A very few people or situations will have a fair chunk of information in the form of documents and guess what: the modern forms of those are already compressed too (zipped XML is the new doc.)

      The pieces of data that people will complain about, executables and libraries, aren't particularly compressible either, and are not useful in compressed form because the modern operating systems that execute them operate by demand paging. Everything else (directory structure, control files) is in the noise, and arguably much better off uncompressed for efficiency of access.

      --
      -- Andrew
    192. Re:When do we get compression? by rwa2 · · Score: 1

      It's pretty user friendly on just about every Linux LiveCD/DVD or pendrivelinux USB distro...

      Haven't tried setting up squashfs + aufs cow on my regular system yet, tho, but it ought to be straightforward to model it after the configuration used by one of those USB distros.

    193. Re:When do we get compression? by bingoUV · · Score: 1

      While compression is not completely worthless, COW, transactional FS (full ACID), file level RAID levels, are more important because they cannot be done in userspace. Encryption and compression can be done in userspace, and less important. Though more convenient if these are available from filesystem.

      This is another case of ignorant Linux users answering with an "you don't want to do that anyway", when I perfectly know I do.

      You have been unable to demonstrate you really need it, and that userspace solutions (zlib et al) are really inadequate.

      Patient to doctor : Give me antibiotics for my viral fever
      doctor : you don't need them
      patient : I perfectly know I do need them

      --
      Bingo Dictionary - Pragmatist, n. A myopic idealist.
    194. Re:When do we get compression? by 1s44c · · Score: 1

      Did you read beyond my semicolon, or was it too much text for you?

      When you have a single device with only SSD storage, how do you store compressible files belonging to the OS?

      Me, I use filesystem compression on them. Not because it's fast or slow; but because that's the solution to the actual problem.

      I read it. The comment I replied to was:

      SSD = very expensive small storage; mobility = no space for extra storage

      You are complaining that I didn't take into account an assumption you didn't type. That was not an OS file specific comment. I don't compress OS files, my OS isn't big enough to make it worth thinking about. However I do uninstall packages I don't need.

      They are selling 600GB SSD drives now. Does your OS really take more than 600GB on a mobile device? The problem is the cost of these disks not 'no space for extra storage'.

    195. Re:When do we get compression? by psmears · · Score: 1

      However, this still isn't as fully-general as a true transactional FS. Other processes running your program now cannot (legally) read the protected file if the lock file exists. This means that you can't have a long-running transaction, which you might want to do if you want to be able to read a consistent image for a long period of time.

      Not to mention what happens if your process crashes (or is killed) after it's obtained the lockfile, but only half way through updating the data...

    196. Re:When do we get compression? by barrkel · · Score: 1

      How on earth am I going to get a 600GB SSD into a MacBook Air, and how much is that going to cost?

      There is more than one factor here. It's completely disingenuous to say that the problem is the cost not the small size; the problem is the cost per unit of size, which means there is a tradeoff to be made. One tradeoff which you are rejecting is to buy a smaller SSD (or live with what you get in an MBA, which you can't change easily) and compress files that aren't frequently used. It's a perfectly valid tradeoff. It saves money, at the cost of making infrequently accessed files slightly more expensive to access. The fact that they are stored on an SSD doesn't make it any less valid to compress them. The fact that it takes 10 milliseconds to compress a megabyte of data with reasonable algorithm is a perfectly fine tradeoff to make.

    197. Re:When do we get compression? by Electricity+Likes+Me · · Score: 1

      No but I'd like FUSE to be a A LOT faster then it currently seems to be.

    198. Re:When do we get compression? by Bengie · · Score: 1

      The only annoying part about compressed data is you can't do DMA transfers between your HD an NIC since the data first needs to be decompressed by the CPU.

      My NIC supports filetransfer offloading and it actually takes less CPU to transfer 960mbit/sec over SMB2/IPv6 than it does to use iPerf/IPv6 at 960mbit/sec.

      My CPU usage during SMB at my NIC's max speed is about 0.6%, while iPerf is about 2-3% cpu at the same speeds. Both times nearly all CPU usage is kernel mode, so I know it's all in the drivers.

    199. Re:When do we get compression? by Bengie · · Score: 1

      "Even the way NTFS does it is to create a compressed file to hold the contents of the original file, like an archive. But if you'll notice, whenever you open the compressed file, NTFS will expand the whole compressed data into another special file until you close it."

      Ever hear of "streaming"? They decompress one block at a time in memory as it's read it from the HD.

    200. Re:When do we get compression? by Bengie · · Score: 1

      " it sounds like something that can be done without too much difficulty by writing to temp files (in the same filesystem) and then "committing" the transaction by jiggling hard links"

      What you described would work for applications that are aware of your way of doing transactions, but the biggest benefit for the FS doing it, is for applications that aren't aware. If the FS doesn't forcefully lock the file from other applications, you will get race conditions that will cause dirty reads/writes.

      NTFS supports transactions just like a database. Plus, the new transaction framework allows linking transactions across multiple computers and even into MS-SQL, so when you commit, you can make sure your DB, local fs and remote fs are all in sync.

    201. Re:When do we get compression? by billcopc · · Score: 1

      Don't blame FUSE - well, not entirely at least. Blame the slow kerneluserspace linkage that requires lots of memcpy-on-memcpy action to get anything done. It is too tightly coupled to allow good performance unless you implement your own fancy async bufferingon the userspace side. The idea of FUSE is great, but the current implementation is half-assed and no one seems to be motivated to fix it - myself included - because none of the hardcore devs have any use for it.

      I'm not a hardcore kernel guy, but I do tend to build idealized environments for myself. If I need to store 40gb of files, I get 40gb of space, screw compression. Even with today's processors, compression is still a big resource hog and I have better uses for that CPU time. If we had hardware-accelerated compression, my stance would be different - someone call Jen-Hsun Huang!

      --
      -Billco, Fnarg.com
    202. Re:When do we get compression? by billcopc · · Score: 1

      You are correct on most points, though in Windows, updating part of a compressed file does not require reprocessing the entire file. It works on 64kb chunks, so only affected chunks need to be updated. Despite that, there are other considerations such as fragmentation that do hurt performance, as compressing a 64kb chunk down to, say 20kb, still leaves a 44kb "gap" which must either be seeked over, or read through and discarded.

      Compression works well in some special cases, but not at the OS level. For example, backup tapes greatly benefit from compression, because they have relatively slow transfer rates to begin with, might as well maximize capacity and throughput. Modern SSDs also benefit from block-level compression because it helps squeeze more out of each memory cell, in terms of both throughput and longevity by decreasing the number of erase/write cycles needed - in this case, compression is handled in the SSD's controller chip at full speed (~6.0gbps in current models).

      Compression made sense for the Linux kernel "bzImage", back when we were booting from floppies and slow hard drives, where it often saved 30 seconds in loading times and allowed to fit the kernel onto small removable media. Today I think we just do it out of habit, because the difference between loading a 3mb file vs a 10mb file is negligible on modern hard drives - roughly 1/10th of a second.

      --
      -Billco, Fnarg.com
    203. Re:When do we get compression? by billcopc · · Score: 1

      Funny, my laptop is plenty reliable and I carry it every day as I walk/pub/cab to and from pubs and the occasional client site. In 12 years of laptops I have had exactly zero hard drive failures. Luck ? Maybe... but even if I'd had one or two failures in 12 years, it's still not enough to call them "unreliable". I could tolerate a failure every few years, it won't ruin my life. That's what backups are for.

      In contrast, I've had to RMA quite a few SSDs that had died prematurely. Thankfully, OCZ's RMA service is quick and painless, but they are still ironing out the kinks in this relatively new tech. Again, backups for the win.

      --
      -Billco, Fnarg.com
    204. Re:When do we get compression? by somersault · · Score: 1

      Have you moved it around much while it was switched on though? I wouldn't expect a failure all of a sudden, more a few bad sectors which gradually cascade.

      --
      which is totally what she said
    205. Re:When do we get compression? by jbolden · · Score: 1

      You know you've ranted this stuff before but...

      1) Linux is over 60% of the server market
      2) Linux is around 92-97% of the super computing market
      3) Linux is around 40% of the embedded OS space something like 3x the size of the next largest player, and the Linux kernel doesn't even support RTOS
      4) Linux is the 2nd most popular virtual operating system on mainframes
      5) LInux is doing fantastic in mobile phones and is around 40% of the smart phone market, expanding into every area and is likely to be the dominant OS

      Linux is around 1% of desktops. Why would anyone focus on the desktop market given all that far easier lower hanging fruit? Yes there is potential there, to fight a really hard battle against Microsoft and OSX who both do a fantastic job. Or throw in the towel for a decade or two, go for piecemeal getting some open source on Windows and OSX and focus on the other markets which seem much more amenable.

    206. Re:When do we get compression? by bored · · Score: 1

      I agree with your points in general, but this stood out:

      For example, backup tapes greatly benefit from compression, because they have relatively slow transfer rates to begin with

      Uh, you know that current tape drives (T10k, 359x, even LTO) all have physical media transfer rates between 140 (LTO5) and 250MB/sec (3592E07)? With compression it possible to get over 350-600MB/sec (depending on drive & compression ratio) on all the current generation drives. So, yes compression helps, but the drives aren't slouches. In the end, even a modest library with a dozen drives probably has more bandwidth than most companies combined disk subsystems. The backup bottlenecks are almost always how fast can the changed data be sourced from the array. Most of the "enterprise" backup solutions have some disk stage component built into them now, that sources from multiple servers, and then writes the result to a single tape drive. The problem is that a lot of places fail to realize that they cannot just create a media server out of a random dell/HP/IBM machine, instead they need to attach extremely fast disk on the staging machine. Of course this problem is made worse by the fact that none of the major storage vendors see fit to sell a medium capacity disk (50-100T) with gigabytes of IO bandwidth for just a few thousand dollars. For that you have to look at the 3rd tier storage vendors.

    207. Re:When do we get compression? by emilper · · Score: 1

      cryptkeeper; works like a charm on linux

  2. Not a Mac dumb down, please by Anonymous Coward · · Score: 0

    Finder on Mac OSX hides all important standard Unix directories such as /etc and /usr, and /home is also empty; users are found in /Users.
    This makes Finder pretty useless and stops any users learning about the true directory hierarchy.

    I can see the move to simplify the filesystem as great for newtime users, but it isn't actually that bad as it currently is with lib64 and lib and everything else.

    Why fix what is not broken?

    1. Re:Not a Mac dumb down, please by mattventura · · Score: 2

      You can enable some hidden setting somewhere to show hidden files, but then it shows it shows EVERYTHING, including dot files. There's now way to get it to show /bin, etc but not .bashrc and stuff.

    2. Re:Not a Mac dumb down, please by antifoidulus · · Score: 1

      This makes Finder pretty useless and stops any users learning about the true directory hierarchy.

      Um, if any user is smart enough, or actually cares enough to learn about the true directory hierarchy, they will be using Terminal to do so, not finder. Also, telling Finder not to hide any folders is pretty easy to do, but the default for hiding them makes sense as most Mac users don't need, or even want, to see them, so hiding them makes the interface much cleaner.

    3. Re:Not a Mac dumb down, please by Iskender · · Score: 2

      Why fix what is not broken?

      Because sometimes when I install software on Ubuntu I can't find the magic file that makes it run.

      I can choose the software I need, I can install it perfectly, and I know how to use it. I also know that some bin directory or other tends to house these things, but somehow that's not always enough - I can't trace the single action needed to make it run.

      Call me dumb if you like. But seeing as how I've built my computer from components myself and installed the OS myself I have a feeling it's not solely my fault when I can't find an "executable" on my own computer. Hasn't happened on any other OS either...

      (That said the part where they break standards is probably an actual problem with any reform.)

    4. Re:Not a Mac dumb down, please by gtirloni · · Score: 1

      Power users are being cornered ever since people started to look at Apple for vision. I just had to switch from GNOME to KDE because GNOME (and Canonical) made a very good job at killing productivity.

      --
      none
    5. Re:Not a Mac dumb down, please by peppepz · · Score: 1
      "which" will tell you where any executable in your path resides. 99% of the times, it will be /usr/bin. If it's a third party package, it might be in /opt/product name/bin.

      In comparison, Windows scatters executables all over the disk so I'm not sure how Linux is worse exactly.

    6. Re:Not a Mac dumb down, please by tchuladdiass · · Score: 1

      And you'd have a better time finding the executable in a directory with thousands of files, vs. several directories with hundreds of files? You can't even go by the file date, as that doesn't reflect the date the file was installed (but whatever date the package says it is). What I do (on an RPM based system) is: rpm -ql packagename |grep bin (or grep man), to find what I'm looking for. And, "rpm -q --last" to find the most recently installed package.

    7. Re:Not a Mac dumb down, please by kesuki · · Score: 1

      Synaptic can tell you about every file that belongs to a software package it knows about and show you where it is located on your system. Search the database for the software package you are interested in and select it in Synaptic's main window. Next, click on the Installed Files tab to see a list of all files and where they are.

      hth hand

    8. Re:Not a Mac dumb down, please by TheRealGrogan · · Score: 1

      I'm sure you aren't really as dumb as you seem, but the unix filesystem heirarchy makes a fuck of a lot more sense than "other OS". I can install stuff using a "make install" and then find every single piece of it later when I want to remove it. I have "Linux From Scratch" based systems that I don't even have package management on.

      It's also not hard to guess where a particular executable is, based on the type of program. I know a typical user program installed from a distro's repository is going to be in /usr/bin. Core system utilities will be in /bin. Daemons will be in /usr/sbin and so on. Libraries will be in the appropriate install --prefix's lib directory. Headers will be in the appropriate prefix's include directory. Resources like icons and shit will be in the appropriate prefix's share directory.

      Besides, you have tools like "whereis" at your fingertips for finding executables that are in your PATH, and if that doesn't cut it, you have tools like locate and find.

    9. Re:Not a Mac dumb down, please by Anonymous Coward · · Score: 0

      You can enable some hidden setting somewhere to show hidden files

      I assume you're referring to:
      defaults write com.apple.Finder AppleShowAllFiles 1

      The problem of showing dot files wouldn't be so bad except for the fact that it shows .DS_Store files too. This makes sorting by date almost worthless since you can't scroll down (scrolling down updates the .DS_Store file which causes Finder to scroll to the top to helpfully let you know that the file has been updated.)

      I had set it back to 0 because it became annoying. Thankfully, you can still CMD+SHIFT+G and type in /usr (or the like) and then browse from there.

    10. Re:Not a Mac dumb down, please by thehodapp · · Score: 1

      power user? sorry to bust your bubble but neither KDE or GNOME were ever meant much for power users. Try a customized tiling WM (awesome, i3, dwm; I personally use musca). Or if you must, use Openbox. Once you get the hang of it and customize it how you like, your productivity will shoot up (get used to those shortcut keys).

    11. Re:Not a Mac dumb down, please by smash · · Score: 1

      No it doesn't. Open a terminal and its all there. If you aren't comfortable with the terminal, you probably shouldn' be fucking with those directories.

      I'm a power user / unix admin of 15 years, and I've yet to find a reason to go poking around the unix filesystem on my mac, other than to edit the default apache configuration on my little lion server mac mini. If you're running desktop OS X, there is pretty much ZERO reason to be poking around in those directories.

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
    12. Re:Not a Mac dumb down, please by smash · · Score: 2

      The thing is, a mac is fine if you're a power user. Unfortunately Gnome and KDE are trying to replicate bits of OS X without getting the foundations laid properly first to make such pieces actually work

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
    13. Re:Not a Mac dumb down, please by TheBig1 · · Score: 1

      You can enable some hidden setting somewhere to show hidden files, but then it shows it shows EVERYTHING, including dot files. There's now way to get it to show /bin, etc but not .bashrc and stuff.

      Sure you can:
      /Developer/Tools/SetFile -a v <File> #make a file / folder visible
      /Developer/Tools/SetFile -a V <File> #make a file / folder invisible

    14. Re:Not a Mac dumb down, please by MrHanky · · Score: 1

      dpkg -L packagename | grep bin

      Knowing a tiny bit about package management is all it takes.

    15. Re:Not a Mac dumb down, please by MrHanky · · Score: 1

      A power user isn't going to spend hours configuring a fucking window manager.

    16. Re:Not a Mac dumb down, please by TheCouchPotatoFamine · · Score: 1

      (for those that care you can use shift-command-G to navigate to a "hidden" dir like /usr/bin and the finder will work just fine!)

      --
      CS majors know the time/space tradeoff, but they never get taught the 3rd, crucial, tradeoff of the set: comprehension!
    17. Re:Not a Mac dumb down, please by scdeimos · · Score: 1

      In comparison, Windows scatters executables all over the disk so I'm not sure how Linux is worse exactly.

      Linux isn't worse than Windows in this regard, they're just trying to make it even better. I can't help but feel, though, that it's another case of "we don't like the existing standards so let's make a new standard!"

      My bugbear isn't where library and executables are located - it's where user configuration files are located. Programs seem to store things randomly, such as ~/.configfile or ~/.program/configfile or ~/.config/configfile or ~/.config/program/configfile. Then there are the ~/.gnome and ~/.gnome2 folders which seem to get a lot of 3rd party junk in them. And ~/.local.

      Please, pick one place and make everyone migrate their data there!

    18. Re:Not a Mac dumb down, please by Anonymous Coward · · Score: 1

      FYI the OS X version of "chflags" supports "hidden" / "nohidden". You don't have to use SetFile (which may not be installed since not everyone installs the developer tools). I believe it would be:

      chflags nohidden # make a file / folder visible
      chflags hidden # make it invisible

    19. Re:Not a Mac dumb down, please by EvanED · · Score: 1

      Please, pick one place and make everyone migrate their data there!

      You can support this effort by finding a developer of a Linux program and hitting them over the head with a rubber chicken until they make it so they read configuration information from either ~/.config/frobinator.conf or ~/.config/frobinator/whatever.

      (I have seriously thought about writing an LD_PRELOAD library that redirects any access to a file named ~/.something to ~/.config/something, but that seems... dangerous.)

    20. Re:Not a Mac dumb down, please by scdeimos · · Score: 1

      You can support this effort by finding a developer of a Linux program and hitting them over the head with a rubber chicken until they make it so they read configuration information from either ~/.config/frobinator.conf or ~/.config/frobinator/whatever.

      Occasionally I do. Some people get very defensive about their projects though and the majority of GUI users don't show hidden files, so developers rarely see a need to move things around.

    21. Re:Not a Mac dumb down, please by Electricity+Likes+Me · · Score: 1

      If I had mod points I would give them all to this post.

      This is exactly the problem almost every single "Mac-a-like" product endeavor suffers from. They rush to getting something that looks vaguely similar, by hacking together the base it runs on and produce something incredibly fragile and inconsistent.

      In my experience users really don't care about the window dressing provided something works solidly, and has an intuitive and consistent interface.

      Perhaps the single worst thing efforts like Gnome 3 and Unity represent is a solid move away from the Unix philosophy of combining a set of small tools that do one task very well in favor of being "Mac-a-like", rather then embracing that idea and presenting it in user-friendly way.

    22. Re:Not a Mac dumb down, please by smash · · Score: 1

      Yup, you could even say the same of Windows to an extent.

      Conversely, it also works against the mac a bit because people use a mac for 5 minutes, see that it looks like it has a few "dumbed down" features in the GUI, but if you never scratch the surface you don't find the "wow that's so cool" features that enable you to do so much without a lot of time or effort expended.

      Automator, applescript, pervasive drag and drop, the services menu, self contained app bundles, time machine and spotlight are all huge wins, and nothing on any other platform i've used so far comes close.

      Sure, knock-off look-alike tools may exist on other platforms but none are as well integrated or easy to use.

      There's a lot more to OS X than the GUI and in fact IMHO the GUI has a lot of design decisions (especially pre-lion) that really piss me off. The good stuff is underneath - and I use OS X despite the Aqua UI, not because of it.

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
    23. Re:Not a Mac dumb down, please by water-and-sewer · · Score: 1

      Actually, that's EXACTLY what power users do - take the time to configure their environment to their liking and in a way that makes them efficient at a minimum of effort. I spent a couple of hours one day choosing keyboard shortcuts and so on, and have never had to touch it since - everything I do has been faster ever since.

      But you can continue stabbing at the "Start" menu if you like.

      --
      If this were Usenet, I'd killfile the lot of you.
    24. Re:Not a Mac dumb down, please by MrHanky · · Score: 1

      Declaring yourself a power user won't make it so, and surely the window manager is relatively unimportant compared to the actual work environment, which is typically a terminal and a text editor.

    25. Re:Not a Mac dumb down, please by bill_mcgonigle · · Score: 1

      without getting the foundations laid properly first to make such pieces actually work

      If there's one thing that would get me to drop a thousand dollars on a Macbook, it's that KDE still doesn't know how to hide the cursor while I'm typing. There, right now it's oVer the V in this sentence. How frustrating - Apple has been doing this right since the 80's.

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
  3. If it ain't fix by ickleberry · · Score: 1

    Don't break it. You'd think they'd want to get rid of lib64 first, since 32-bit libs on 64 bit systems will fade into obscurity sometime soon. It's only really proprietary software compiled for 32-bit libs that uses it anyway so just shove everything into /lusr/lib maybe /sbin and /bin and /usr/sbin can be consolidated into /bin but i'd definitely leave /bin and /usr/bin separate because at least you'll have a system that kind of works with just /bin if the /usr partition goes missing

    1. Re:If it ain't fix by skids · · Score: 1

      32-bit libs on 64 bit systems will fade into obscurity sometime soon

      Not in multiarch boot scenarios. The number of different lib subdirs is likely to increase over time, not decrease, and it's better for all concerned if one does not have to write two versions of "how to fix problems with libxxx", one for systems booting off multiarch media, and another for systems not carrying a multiarch library suite.

      This will be especially true of ARM, with its many variants.

    2. Re:If it ain't fix by adamchou · · Score: 1

      Yea and flying spaghetti monster forbid you accidentally type something like chmod a+rx on your consolidated /usr/bin directory. That'll be a load of fun to fix

    3. Re:If it ain't fix by Anonymous Coward · · Score: 0

      There's still good reasons to keep 32-bit binaries around -- better performance and compatibility. If an application doesn't need 64-bits worth of addressable memory, and the architecture doesn't make 32-bit and 64-bit binaries mutually exclusive, then why even have a 64-bit version?

    4. Re:If it ain't fix by Roger+W+Moore · · Score: 1

      Yea and flying spaghetti monster forbid you accidentally type something like chmod a+rx on your consolidated /usr/bin directory.

      That is an argument for backups NOT an argument for split bin directories. It seems to me that the original argument for split directories was, as the original poster mentioned, so that /bin could fit on the boot partition so the system would work even if no other partition can mount. Given that modern disks are easily large enough to hold /bin and /usr/bin in the same partition I really don't see a good argument for their continued separation.

    5. Re:If it ain't fix by sjames · · Score: 1

      I like the Debian approach of having /lib and /lib32. After all, the 32 bit stuff is the exceptional arch on a 64 bit system and as you say is the part that will go away one day.

    6. Re:If it ain't fix by Anonymous Coward · · Score: 0

      I like the Debian approach of having /lib and /lib32. After all, the 32 bit stuff is the exceptional arch on a 64 bit system and as you say is the part that will go away one day.

      It's still a dumb hack. A much better approach is to support multi-architecture "fat" binaries, so you never need to have separate directories in the first place. For a few years Apple supported four architectures on OS X (ppc32, ppc64, ia32, x86-64), and never once had to play stupid games with filesystem layout to do it.

      OS X also supports self-contained app bundles insensitive to FS location, such that "installation" is just copying or moving the bundle (a single directory with stuff underneath it) wherever you want it to go, and uninstallation consists of deleting the bundle. Linux users often praise package management systems like RPM as if they're a great reason to run Linux, but IMO they're just bandaids which make a horribly broken design marginally tolerable to use, rather than a desirable state of affairs.

    7. Re:If it ain't fix by EvanED · · Score: 1

      OS X also supports self-contained app bundles insensitive to FS location, such that "installation" is just copying or moving the bundle (a single directory with stuff underneath it) wherever you want it to go, and uninstallation consists of deleting the bundle. Linux users often praise package management systems like RPM as if they're a great reason to run Linux, but IMO they're just bandaids which make a horribly broken design marginally tolerable to use, rather than a desirable state of affairs.

      I couldn't have said this better myself. To me the fact that the typical state of affairs on Unix is you build a package with a particular --prefix, and if you want to put it somewhere else you have to rebuild it is absolutely ludicrous. It won't work if you move it from /opt/blah to /opt/blah-5.10, because /opt/blah was baked into the executables when they were built because that's what you gave as --prefix.

      At least on Windows there's typically a crappy excuse for this behavior, which is that the installation usually writes some configuration information external to the install folder (in particular, in the registry), and that information isn't updated. That's not the case on Linux... the information is stuff like the rpath of the executables and who knows what.

      It's like the Unix people implemented relative paths and rpath's $ORIGIN and such and then forgot that they did that.

      (Of course, I also think that FS layouts like what GoboLinux gives you are way, way superior to what you get by default. GoboLinux gives you actual separate installation directories for each package (keeping related things together! what a concept!), then puts symlinks in the standard locations.)

    8. Re:If it ain't fix by GenSolo · · Score: 2

      I mount /boot, /bin, /sbin, /lib, and /lib64 read-only from a small SSD; I mount /usr on a large HDD. Maybe that's not a good argument, but it's yet another reason I'll probably never use Fedora.

    9. Re:If it ain't fix by sjames · · Score: 1

      How will fat binaries help me run a LEGACY binary? That's what 32 bit is on an x86_64 system.

      Fat binaries won't likely play very well with shared libraries either. I honestly don't see a benefit to them for anyone who knows what arch their system is. Just install the appropriate binary and be happy. Beyond that, Linux is sometimes installed on VERY small systems where fat binaries would be a big (pun intended) problem.

      There is a trend in Linux to use directories in /opt as bundles for apps that come with many pieces. However, that's actually orthogonal to package systems.>/p>

      Many Unix people consider fat binaries to be dumb.

    10. Re:If it ain't fix by Ant+P. · · Score: 2

      Fedora's excuse for this is that their distro can't boot properly with /usr on a separate partition anyway, so rather than fix that bug so it at least boots far enough to mount that filesystem — like every other distro I've installed with that partition layout seems capable of doing — they're just saying "fuck the standards" and doing their own thing.

    11. Re:If it ain't fix by saint0192 · · Score: 1

      I hope that Fedora's new filesystem structure separate all the 64-bit libraries into /system and the 32-bit libraries into /system32!

    12. Re:If it ain't fix by Vegemeister · · Score: 1

      Because 64 bit binaries have better performance. AMD64 doubles the number of addressable registers and gets rid of a lot of legacy cruft. Furthermore, nobody compiles 64 bit binaries with -march=i386. x86-64 CPUs support a minimum of SSE2.

    13. Re:If it ain't fix by smellotron · · Score: 1

      It's like the Unix people implemented relative paths and rpath's $ORIGIN and such and then forgot that they did that.

      I love $ORIGIN and use it myself, but I've found that it's incredibly cryptic to most people. Even the googles, they don't seem to provide much information aside from mailing lists where people bicker over the feature.

    14. Re:If it ain't fix by Anonymous Coward · · Score: 0

      No, don't get rid of lib64 and lib32. I have a 64-bit build machine, on which I need to compile for 32-bit and 64-bit platforms.

      You may not need to cross-compile, but some of us do. Remember that a lot of mobile platforms use a smaller architecture than our desktops and servers.

    15. Re:If it ain't fix by GPLHost-Thomas · · Score: 1

      No, the way to fix it is the multi-arch thing of Debian (SID), which we are all migrating (painfully) to.

    16. Re:If it ain't fix by Dogun · · Score: 1

      While I imagine there are liekly cases where that statement about performance is true, I have generally not seen a performance boon from building 32-bits on 64-bit OSes.

    17. Re:If it ain't fix by GPLHost-Thomas · · Score: 1

      Yes, it's going to go away, but not for the reason you stated. It's going away, because we're moving to a multi-arch system, when libs of many arch can coexist (like armel and armhf, for example, not just x86 stuff).

    18. Re:If it ain't fix by Tomato42 · · Score: 1

      If that's true: Have they completely lost their minds?! I don't need another OS that can barely squeeze into 16GB flash drive.

    19. Re:If it ain't fix by Tomato42 · · Score: 1

      Large disks, modern disks, they both are non-existent in embedded markets, or if you want to boot from small SSDs. Private virtual machines have usually very small disk quota. Just because the regular desktop has big drive doesn't mean that all environments do.

    20. Re:If it ain't fix by Rich0 · · Score: 1

      The reason most other distros went with putting 32-bit stuff in /lib early on was porting. When amd64 came along EVERYTHING already worked 32-bit, and a subset of that could be compiled for amd64 without much issue. The problem was that the stuff that tended not to work out-of-the-box on amd64 was stuff that desktop users would have trouble giving up, like mplayer, flash, etc.

      By keeping 32-bit stuff in /lib you could just take 32-bit binaries and plop them into the system and it would work fine without modification. If you made /lib 64-bit then you'd have to relink everything, which creates a lot of hassle when the whole build system is broken to begin with.

      Over time many distros moved to putting 64-bit stuff in /lib as the 32-bit issues got fixed, or at least mitigated.

      The whole point of legacy support, however, is that you have to keep the legacy part the same as what you used to do, and make the changes somewhere that the legacy software won't notice. You make fancy new API calls, you don't change the behavior of existing one, and so on...

    21. Re:If it ain't fix by sjames · · Score: 1

      In this case, if you make the change to the 32 bit ld.so, you can move the libs silently to lib32.

      But yeah, in the beginning, 64 bit was the exception even on a 64 bit system.

    22. Re:If it ain't fix by Compaqt · · Score: 1

      Well, here's an argument (the traditional one): /bin is supposed to contain the minimal stuff you need to boot the system. /sbin is programs you don't necessarily want to give normal users access to. Basically, you can just prevent access to the directory itself. /usr/bin is everything else.

      Assuming you've got an SSD, you might want to put /bin on the SSD, but not everything else. If you want to have everything in one place, why not just symlink /bin to /usr/bin instead of dropping the directory structure?

      --
      I'm not a lawyer, but I play one on the Internet. Blog
    23. Re:If it ain't fix by higuita · · Score: 1

      most apps are waiting for something from the user, network or disk... only apps with CPU intensive usage you can see a difference
      something that uses the cpu for 1s isnt enough to give you ANY feedback about speed

      finally, a background flash running might be enough to kill any speed gain, as usually we are talking about about 5% to 20% speed increase (depend of course how the app uses the cpu) and a flash movie can eat 30% or more of your cpu...

      --
      Higuita
  4. Good idea by Tragek · · Score: 1

    But I'd like to still have a conceptual difference between /usr/bin and /usr/local/bin; Perhaps support local, but mirror it's contents into /usr/ using symlinks.

    I want to be able to install software from source, then wipe it all in one fell swoop if I'd like, which could be done with a mirrored /usr/local.

    1. Re:Good idea by l2718 · · Score: 2

      /usr/local/bin is not supposed to contain any system executables, only locally installed ones. Fedora does not install anything there already. In any case, /usr/local/ seems to have been replaced by /opt/ in most UNIX installations today.

    2. Re:Good idea by jimshatt · · Score: 1

      I use /opt/ to install software in (that isn't available through the package manager) and then link its binaries in /usr/local/bin, which is on the PATH. This gives me a clear view of what I've installed myself, and still be able to execute it easily.

    3. Re:Good idea by Anonymous Coward · · Score: 0

      I think it would be good to consolidate them into one or two directories. When I first moved to Linux I had a hell of a time trying to figure out where a program was located when a file I was trying to open didn't have anything associated with it. I still do resort to "sudo updatedb;locate [string]" instead of manually searching for things and I've been using Linux for years. If it's hard for a geek to get used to, imagine how confusing it must be to someone who barely understands Windows.

    4. Re:Good idea by GioMac · · Score: 1

      RPM packaged SW is never installed in /usr/local/, for /opt/ you can find a lot.

      --
      "It feels like I'm at the Zoo when reading this thread - I'm frightened, but it's interesting" (c)
    5. Re:Good idea by skids · · Score: 2

      What package manager GUIs are for. There's a lot going on in the filesystem that you'll probably never know or care about. Trying to simplify some at this level of the system for reasons of end-user convenience is just asking for trouble.

    6. Re:Good idea by starfishsystems · · Score: 2

      In case you hadn't noticed, the organizational models for /usr/local and /opt are different in a manner similar to the difference between column-major and row-major arrays.

      For example, /usr/local/bin contains executables for all local applications. This is convenient in terms of configuring such things as PATH and LD_LIBRARY_PATH environment variables but can easily lead to application name and version collisions. The /opt convention is for each application to reside in its own subdirectory, meaning that multiple application versions can safely coexist, that /opt can refer to a nonlocal filesystem, and so on.

      It's also possible, and very successful, to build hybrids of these two models, but unfortunately there is no convention for doing so. Instead we seem to have regressed to a point where package management supports local software installation only and will not meaningfully install on networked filesystems.

      --
      Parity: What to do when the weekend comes.
    7. Re:Good idea by catmistake · · Score: 1

      I disagree. Fedora shouldn't try to simplify what has basically been standardized. Linus already made this mistake. The problem with the linux filesystem is what is different about it from UNIX. Trying to make it simpler is just going to cause all kinds of issues... like a fracturing of the linux communities. No... don't try to make it simpler... make it more like UNIX. That will make it simpler.

    8. Re:Good idea by Tragek · · Score: 1

      Interesting; That's not how I'd understood opt, but good point.

    9. Re:Good idea by Tragek · · Score: 1

      So, given that I was 'raised' in the Linux tradition in a sense (lies, but not germane), could you elucidate on what you mean by the differences between the Linux FS style and UNIX style?

    10. Re:Good idea by starfishsystems · · Score: 1

      As I recall, /usr/local is a BSD-ism, whereas /opt arose out of System V. So they're culturally inflected as well.

      --
      Parity: What to do when the weekend comes.
    11. Re:Good idea by catmistake · · Score: 1

      I wouldn't know where to begin. The similarities are superficial and the differences are critical. Just off the top of my head, the way start up scripts are handled... and the location of same.

    12. Re:Good idea by TheReaperD · · Score: 1

      You forgot about all of the dlls that they store in %SystemRoot%\System32 or the older systems that hardcode to C:\WINDOWS and C:\WINDOWS\SYSTEM. It's not as "easy" as you suggest.

      --
      "Be particularly skeptical when presented with evidence confirming what you already believe." -
  5. Simple by wsxyz · · Score: 3, Funny

    Just store everything in /
    What could be simpler?

    1. Re:Simple by Anonymous Coward · · Score: 1

      /dev/null ?

    2. Re:Simple by satuon · · Score: 1

      Microsoft hears you.

    3. Re:Simple by lptport1 · · Score: 1

      I actually think GoboLinux had it down pretty well. I think I liked the filesystem as package manager concept most.

      Unfortunately it hasn't updated since the last time I tried it.

    4. Re:Simple by Caesar+Tjalbo · · Score: 1

      I like the idea of GoboLinux too. Although it could get us back in the good old mess of MS DOS and I'd rather not see a registry in Linux.

      --
      "I'm not much interested in interoperability. I want substitutability. I want to be able to throw your software out."
    5. Re:Simple by lptport1 · · Score: 1

      Okay, I'm not getting it. How did MS-DOS lead to a registry? I thought that was a torment that came with Windows.

    6. Re:Simple by Anonymous Coward · · Score: 0

      One single stream spanning all storage. No structure. ^^

      Wasn't there this song that went: "You call your software simple, but I, I call it disabled."

    7. Re:Simple by Fancia · · Score: 1

      Have you seen Homebrew? for Mac OS X? It adopts a pretty similar concept, within the Unix hierarchy.

      --

      Bít, zabít, jen proto, ze su liska!
    8. Re:Simple by Dahamma · · Score: 1

      Seriously... I started using Windows 7 and now it's finally making (reasonable) distinctions about what files can be modified in system directories. Windows is moving towards UNIX, and UNIX is moving towards Windows... the perfect convergence, or the sign of the apocalypse!?

    9. Re:Simple by Anonymous Coward · · Score: 0

      I always thought something similar to MS DOS would be sufficient. /, /linux, /users, /applications

    10. Re:Simple by alukin · · Score: 1

      No, just do it right way: "C:\" is the best solution!

    11. Re:Simple by gbjbaanb · · Score: 1

      pah. Forget /usr/bin, put it all into /program%20files/ and /program%20files%20(x86)/

      now *that* is easier!

    12. Re:Simple by lptport1 · · Score: 1

      No, I hadn't. I'll look into it next time I get to play with Mac OS X.

    13. Re:Simple by Anonymous Coward · · Score: 0

      storing it in /tmp would be better.

      much faster boot up speeds.

    14. Re:Simple by Caesar+Tjalbo · · Score: 1

      INI files. Actually, that horror is with Linux-users. There are system wide settings in /etc and user-specific settings in /home/. Pick 10 random applications and look closely at the syntax, especially at differences between files.

      MS DOS was easy to grok but those INI files could end up at unexpected places and with wildly varying syntax's, the registry wasn't such a dumb solution to it even though the implementation leaves something to be desired. I don't know when the registry made its appearance but the way I see it was MS DOS what caused it.

      --
      "I'm not much interested in interoperability. I want substitutability. I want to be able to throw your software out."
    15. Re:Simple by BatGnat · · Score: 1

      /dev/null ?

      No!
      that's what I use for my backup destination, and I don't want to run out of space.

    16. Re:Simple by Caesar+Tjalbo · · Score: 1

      Sorry, I thought I had replied on this.

      The problem is INI files. With MS DOS they could end up in strange places and with different syntax's, not unlike the config files under /etc and /home/user. It was a decent ambition to deal with that mess even though the implementation of the registry is far from perfect.

      I don't recall when the registry came but administrating my last MS DOS (3.2) was already a bit of a problem on the then technical marvel of a 20 MB hard disk. You're correct afaik that the registry came with Windows but it was the experiences with MS DOS that lead to it, iirc.

      --
      "I'm not much interested in interoperability. I want substitutability. I want to be able to throw your software out."
    17. Re:Simple by lptport1 · · Score: 1

      Thank you. I actually have to agree with you, INI files offer no consistent syntax, format or location. But I definitely found comfort in the fact that I could just open them with edit and go to town.

  6. Dumb move by Anonymous Coward · · Score: 1

    Uhh, I want my stuff separate from system stuff. I want to be able to back-up my stuff without including standard stuff.

    System essentials should be in /bin. Non-essentials in /usr/bin, and my stuff in /usr/local/bin.

    Fedora has jumped the shark.

    1. Re:Dumb move by ThorGod · · Score: 5, Interesting

      Uhh, I want my stuff separate from system stuff. I want to be able to back-up my stuff without including standard stuff.

      System essentials should be in /bin. Non-essentials in /usr/bin, and my stuff in /usr/local/bin.

      Fedora has jumped the shark.

      I agree. I suspect the libraries are the more 'needed' change, but your point is valid even there.

      What I'd like to know is what's wrong with the FreeBSD file system, and why don't they just 'do that'? IIRC, everything non-standard is in /usr/local. Some configs are in /etc, but most (all?) non-base configs live in /usr/local/etc. If you blow your system away and have backups of /usr/local and /etc under FreeBSD then you can just reinstall the base system and be 'fine' (aside from the local user files, but that's an obvious restore/backup situation.)

      This smells a lot like "we want to do things our own way" (tm). I suppose that's fine, but don't act like you're doing humanity a service by wiping your butt with a different hand ;)

      --
      PS: I don't reply to ACs.
    2. Re:Dumb move by Anonymous Coward · · Score: 0

      Completely agree.

    3. Re:Dumb move by Anonymous Coward · · Score: 0

      What I'd like to know is what's wrong with the FreeBSD file system, and why don't they just 'do that'?

      That's what it does now.

      Trying to understand all those folders It hurts the widdle windows users' heads since they don't understand why they can't just keep throwing everything in C:\

    4. Re:Dumb move by Miamicanes · · Score: 2

      > Trying to understand all those folders It hurts the widdle windows users' heads
      > since they don't understand why they can't just keep throwing everything in C:\

      (dryly) I see you've never visited \winnt\system, \winnt\system32, and the half-dozen or so directories with parenthesized "x86", "64", and/or "wow" that stupidly perverted the entire win64 file hierarchy. Sigh. We finally got symlinks & real directories for \users and \programs, then Microsoft realized its "error" and fucked them all up even worse than before. Sigh. :-(

    5. Re:Dumb move by Caesar+Tjalbo · · Score: 1

      Trying to understand all those folders It hurts the widdle windows users' heads since they don't understand why they can't just keep throwing everything in C:\

      That's MS DOS. On Windows it's even nastier with folders like 'My documents'. It works ok if it does but when you have to navigate the tree towards it, especially on a system in a different language than English, it becomes a lot of trouble. Those windows users should feel right at home at /home.

      --
      "I'm not much interested in interoperability. I want substitutability. I want to be able to throw your software out."
    6. Re:Dumb move by yakovlev · · Score: 1

      I agree, this is a dumb move. I want / to be a separate PARTITION.

      partition /boot contains the kernel and boot-related files.
      partition / contains the minimal stuff required to get a running system. This is enough to debug problems on the other partitions.
      partition /usr is dramatically larger, and contains the bulk of what has become modern user space programs and libraries.
      partition /home is user data.
      partition /tmp is temporary files
      partition /var is system data files.

      Directories /etc and /root are on the / partition.

      If you combine the functions of /usr and /, you run a greater risk of breaking things under a variety of scenarios.

      For the average user who puts all of their data on a single partition, the distinction is irrelevant. For someone who actually cares about partitioning, there is a BIG difference.

    7. Re:Dumb move by Anonymous Coward · · Score: 0

      Why even bother with /tmp as a partition? Just mount it as tmpfs, I'd say.

    8. Re:Dumb move by Dogun · · Score: 1

      Red Hat jumped the shark in 1997. Once you go slack, you never look back. You do continue to look forward, though.

    9. Re:Dumb move by Dogun · · Score: 1

      I agree the wow64 fs and registry direction is confusing as hell. With the benefit of hindsight, I suspect they would have designed that differently (I will just assume it was fundamentally possible, if a bit more work in the short term.)

      c:\winnt vs c:\windows vs c:\win vs e:\foo are all theoretically valid windows directories, though. That's why windows has an API for finding the Windows directory.

    10. Re:Dumb move by shutdown+-p+now · · Score: 1

      FreeBSD has a well-defined concept of "base system" and "other stuff" - the former goes into /usr, the latter - including official packages - into /usr/local. Most Linux distros use packages for base system as well, so there's no such clear separation there.

    11. Re:Dumb move by drussell · · Score: 1

      Yes, I agree.. The standard FreeBSD filesystem arrangement is very clean and simple... It just makes a lot of sense. Base system is /usr and /etc, everything else is /usr/local and /usr/local/etc...

  7. Standardise by Anonymous Coward · · Score: 1

    Why not standardise on /Program Files/ and /Windows/System ?

    1. Re:Standardise by SuricouRaven · · Score: 1

      Or Program Files (x86) and system32. This problem isn't unique to linux.

    2. Re:Standardise by Anonymous Coward · · Score: 1

      Fuck it, /System and /Library

    3. Re:Standardise by Anonymous Coward · · Score: 0

      Its hardly a standard, besides Windows doesn't even use it always (as it adds x86 sometimes).
      Then theres the fact that its a stupid name for something that doesn't only hold programs.
      If you want to standardise it Windows style it should be called /Program Files and Config Files and Data Files and Libraries but not x86 Programs (and 64 bit when we move to 128 bit)/

    4. Re:Standardise by Anonymous Coward · · Score: 0

      Or at least spell out the current directories instead of the current three-letter designations.

    5. Re:Standardise by Surt · · Score: 1

      Don't forget about SysWOW64

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    6. Re:Standardise by freedumb2000 · · Score: 1

      Why stop there? I'd go even further and use \Program Files\ and \Windows\System. A simple simple sed s/\//\\/g on all system source files should fix any incompatabilities.

    7. Re:Standardise by skids · · Score: 1

      Hell, if we are really going to cater to the numb, lets make it all case insensitive.

    8. Re:Standardise by Miamicanes · · Score: 1

      Count your blessings. At least spaces in directory and file names are (still) culturally taboo in LinuxLand. ${deity} help us all when Ubuntu changes names to "/user files/local files/et-cetera/my configurations/my apache configuration" in a moment of complete insanity...

    9. Re:Standardise by izomiac · · Score: 1

      IMHO, Windows has a pretty nice solution. Program files go into a subdirectory of %PROGRAMFILES% and config files into %APPDATA%. These variables change depending on the version of Windows, and the type of program (32 VS 64 bit). The user can rename or move those directories as well. Back when I had more time I used to keep each on its own partition for backup and multi-boot reasons (e.g. shared config files for ported programs). Linux had some issues with that, and Firefox was schizophrenic about case-sensitivity. (Technically, I suppose "borderline" might be a more accurate description of its behavior...) Of course, it was also hilarious to see your standard cocky IT guy scratch his head trying to install something when he realized my C:\ was missing a few directories and under one gigabyte in total size (this was after I opened explorer rather than my usual shell, I wasn't *too* cruel).

      That said, a lot of developers don't understand this "power user" detail about Windows. They hard code "C:\Program Files\" or do foolish things like keep their config files in the home directory (linux devs are horrible for this) or application directory. It's also funny to see people give shell commands in a tutorial, but not understand environmental variables (e.g. "Replace [User] with your username"). Surely anyone who used XP preferred typing "%USERPROFILE%" or "%APPDATA" rather than "C:\Documents and Settings\Username\Application Data\Roaming\", while remembering to quote and escape as needed. OTOH, Linux probably needs to rename /bin to "Program Files" before we'll see the end of space sensitivity in scripts.

    10. Re:Standardise by Lehk228 · · Score: 1

      ${deity} = "Eris"

      she isn't going to help, the change was her patch in the first place.

      --
      Snowden and Manning are heroes.
    11. Re:Standardise by EvanED · · Score: 1

      ${deity} help us all when Ubuntu changes names to "/user files/local files/et-cetera/my configurations/my apache configuration" in a moment of complete insanity...

      Personally I await that day with bated breath; I should be able to use spaces in file names and not worry about buggy scripts breaking because of it.

      Computers are for people to use. And_there's_a_reason_we_don't_write_sentences_like_this.

    12. Re:Standardise by smellotron · · Score: 1

      And_there's_a_reason_we_don't_write_sentences_like_this.

      TheReasonIsBecauseThisIsEasierToType. ItsAnnoyingToConstantlyReachForTheUnderscore. PlusILikeArguingAboutHowToCapitalizeThingsLikeTcpIp.

    13. Re:Standardise by jones_supa · · Score: 1

      Oh by the way, why didn't they just choose "C:\Programs" instead of "C:\Program Files" in Windows world. Of course a folder contains files! It must have been some Windows 95 thing that we now have to use these fancy new file names with spaces. While they moved to "C:\Users", they could have made this change too.

  8. Fedora, eh? by turgid · · Score: 4, Insightful

    The developers at Fedora can do whatever the heck they like. Pat knows what he's doing, and that's good enough for me.

    1. Re:Fedora, eh? by chill · · Score: 1

      Has he seen reason on PAM, yet?

      --
      Learning HOW to think is more important than learning WHAT to think.
    2. Re:Fedora, eh? by megalomaniacs4u · · Score: 1

      There is no reason for PAM ever

    3. Re:Fedora, eh? by Anonymous Coward · · Score: 0

      PAM What's that?

    4. Re:Fedora, eh? by tepples · · Score: 2

      There is no reason for PAM ever

      Other than not wanting your food to stick to the foil.

    5. Re:Fedora, eh? by Anonymous Coward · · Score: 0

      Keeps cookies from sticking to the baking pan.

      Why do you hate cookies?

    6. Re:Fedora, eh? by Anonymous Coward · · Score: 0

      What is PAM and why is it useful/not useful?

    7. Re:Fedora, eh? by catmistake · · Score: 1

      There is no reason for PAM ever

      We don't need no stinking authentication!

    8. Re:Fedora, eh? by Tomato42 · · Score: 1

      Yeah, just run everything as root

    9. Re:Fedora, eh? by Anonymous Coward · · Score: 0

      This is just Linux stumbling around in the dark. It doesn't matter what Fedora will do because some distro will do the file system different (because it's just Linux stumbling around in the dark). World domination is a pretty tough nut to crack if you can't keep the cats in a row. Yeah, PITM.

  9. Fedora standards by Anonymous Coward · · Score: 0

    Another reason not to use fedora. I hate how they're moving away from standards. Or even just unix traditions.
    Also, does anyone really have a problem finding something in /bin and /usr/bin? Who are these people looking for files constantly.

    This is bikeshedding.

    1. Re:Fedora standards by Anonymous Coward · · Score: 0

      Also, does anyone really have a problem finding something in /bin and /usr/bin? Who are these people looking for files constantly.

      This is bikeshedding.

      For one, you'd think that /bin would be for system stuff and usr/bin for applications. But no. I've come across apps that put stuff in /bin and all over the damn place. You do a find on the program name and shit pops up all over the goddamn place - including executables and libraries.

      And then, when you're installing something not supported by your distro creator (fedora, Ubuntu, etc....), you have to go and "find" libraries and their dependencies and their dependencies to get your shit working. There's nothing I hate more than having an up to date system only to get some error that says, "... not compatible with this version of xxxx.o ..." Arrgggggg! So, it's back to "find" up and down your file system.

      Help online? Ha! You'll see shit from '03 that says "Oh, yeah! It's in /usr/lib/xxx/lib/whatever' only it's not there! So, it's off to 'find' again.

      Then, if you have some hardware that isn't supported, it's back to find up and down the file system looking for configs - which are placed any 'ole place - and libraries.

      And then, you have folks who want to give it all to you! Great! Bit their package has an older version and they put it where they want to; thereby completely confusing the shit out of your version.

      If I have to set up a server again, it'll be fedora BECAUSE of the file system simplification!

    2. Re:Fedora standards by blippo · · Score: 1

      Word!

      The Unix file-tree got it right. It's kind-of clear where your files are, and everything is rooted in / (duh).

      Microsoft messed up, people are not finding their files in folder hidden deep in some weird structure, and are trying to solve
      the problem by abstracting away the hierarchal structure, which only confuses people even more. Now up to a point where the tree is going to be "killed"
      (hidden even more)

      Sadly the major linux distros seems to have swallowed the bait. I suddenly have weird folders for my desktop, photos, documents, etc, and they
      seem to be "localized" so it's not entirely clear what they are named. Dynamic mounts are suddenly made under /media ? What's fuckng wrong with /mnt that
      has been around since the seventies, is as aptly named, and is shorter to type? I am waiting for "tags" on Ubuntu, Unity seems to heading in that direction.

      User experience geeks can rave all they want about tags and that people do not "think hierarchically", but I am confident that the confusion is rather the leaky and broken abstractions on the windows platform.

      The unix file tree is a little like this: http://xkcd.com/297/

    3. Re:Fedora standards by DrXym · · Score: 1

      A few links would deal with apps that expect stuff in one place to see it in another. But most apps are configurable these days so it's not a big deal except when have binaries, many of which would go in /opt/ anyway and have scripts to deal with the vagaries of different systems. Really the issue is that Unix filesystem is arcane and in most cases for no good reason. So if Fedora want to simplify it a bit then I don't see the issue with that.

    4. Re:Fedora standards by WillKemp · · Score: 1

      Why would you use `find` when you could use `locate`?

    5. Re:Fedora standards by Anonymous Coward · · Score: 0

      Why would you use `locate` when you could use `which`?

    6. Re:Fedora standards by Anonymous Coward · · Score: 0

      Because 'which' only finds executables in your $PATH.

      Not executables outside your $PATH, nor libraries or config files or anything else.

  10. It aint broke by Anonymous Coward · · Score: 0

    As a "most passionate partisan" I will not admit that its filesystem is "baffling to users". With most binaries in /bin, /sbin, /usr/bin/, and /usr/sbin ... what is the problem? Windows has its binaries in thousands of locations ... and it isn't "baffling to users" is it?

    1. Re:It aint broke by royallthefourth · · Score: 1

      Actually, Windows has had a totally baffling directory layout ever since XP.

      http://gadgets.boingboing.net/2008/06/25/bill-gates-rant-from.html

    2. Re:It aint broke by 0123456 · · Score: 1

      Actually, Windows has had a totally baffling directory layout ever since XP.

      And it got much worse in Windows 7.

    3. Re:It aint broke by alcourt · · Score: 1

      /bin separate from /usr/bin has been a major annoyance to me in trying to administrate RHEL boxes alongside HP-UX, AIX and Solaris. "Oh, yeah, RHEL puts that one in /bin, but this other one in /usr/bin, gotta remember which is where."

      40MB hard drives have been gone for a very long time. /bin should only be a symlink to /usr/bin as they are on say HP-UX and Solaris and AIX. The only things that should go into /sbin are those things absolutely required to boot or single-user repair (fsck, mount, etc.) a filesystem so it can be booted in case you have an idiot who still thinks /usr is too big to fit on the same spindle as /. (That said, combining /sbin and /usr/sbin is a good idea to me).

      Now, this does not cover some of the other filesystem stunts pulled by RHEL and Fedora, but binary locations is something I've never seen Red Hat do intelligently.

      --
      "I may disagree with what you say, but I will defend unto the death your right to say it." -- Voltaire
  11. etcetera directory by Anonymous Coward · · Score: 1

    Who doesn't want to delete all the files in the etcetera directory, if it was important they would've given it an important meaningfull name.

    1. Re:etcetera directory by Robert+Zenz · · Score: 1

      It has an important, meaningful name: Everything That Configures.

    2. Re:etcetera directory by jones_supa · · Score: 1

      Yes, it indeed has a feeling of being some kind of scratch directory.

      Maybe /cfg would have been nice...

  12. because id have to google 'space in find bash' by Anonymous Coward · · Score: 0

    because i can never remember that FS1= whatever thing you use for bash when writing 'find' scripts

  13. Gordian Knot by webbiedave · · Score: 1

    Now, for those who did not know, there's no Gordian Know. It's Gordian Knot.

    1. Re:Gordian Knot by iggymanz · · Score: 1

      All the Reimann manifolk were embarrassed to learn the proper word was something more convoluted.

  14. User Base by Anonymous Coward · · Score: 0

    I am sure all 20 Fedora users will be excited!

    1. Re:User Base by iggymanz · · Score: 1

      And the thousands of RHEL users will be terrified, knowing damn well what happens at the Red Hat guinea pig farm may soon come down on their heads.

      Fooled

      Experimental

      Downloaders

      Of

      Redhat's

      Absudities

    2. Re:User Base by iggymanz · · Score: 1

      Uninterested Brotherhood of Unapproachables Not Tending Users

  15. no thanks by Lawrence_Bird · · Score: 1

    I was a long time user of Slackware before switching to FreeBSD about three years back. One of the reasons why I used Slack for ....mmm.. 15 years.. was that Slackware put most things where they should be unlike what I saw happening with the various RedHats, Debians, etc. These guys would do better to clean up their own act before trying to hose everyone else because they think putting everything in the kitchen sink is "simpler".

    1. Re:no thanks by Anonymous Coward · · Score: 0

      I was a long time user of Slackware before switching to FreeBSD about three years back. One of the reasons why I used Slack for ....mmm.. 15 years.. was that Slackware put most things where they should be unlike what I saw happening with the various RedHats, Debians, etc. These guys would do better to clean up their own act before trying to hose everyone else because they think putting everything in the kitchen sink is "simpler".

      I have to agree with your comment, especially since Slackware, the BSDs, and Arch (well to some degree anyways) do a pretty darn good job of making things easy to understand. Everything can be found in easy to remember places, while many others *cough* struggle to keep things consistent (oh idk like they were too lazy to just remember the difference between /usr/share/ and /usr/local/share, ... I mean really people get your act together. There was a time and place when users and admins actually knew how their filesystem was organized (and no it doesn't take a CS degree to understand it).

      Seriously just go get an O'Reilly book or something for crying out loud.

    2. Re:no thanks by Anonymous Coward · · Score: 0

      the file system hierarchy makes perfectly good sense -- 10 or 20 years ago.
      Today the artifical distinction between bin and /usr/bin and /sbin is more or less meaningless.
      [/usr/local still has a purpose tbh]

      Sure 10-20 years ago when trying to fix the server required minimal booting into root partition, fixing things and then gradually fixing and mounting the other parts required some basic programs hence the reason for /bin.

      Well nothing is wrong with wanting to keep the old order I suppose, but lets be honest about it, many things in the old order can be improved, people want to keep it because they have been getting used to it though (Stockholm syndrome).

    3. Re:No thanks by F.Ultra · · Score: 1

      Whats annoying with Upstart? The only annoying thing that I've encountered is that not all scripts are ported yet so if one for example have an application that needs to be started after a sql-server then one have to install either a Upstart script (to support MySQL) or a init.d script (to support PostgreSQL)...

    4. Re:no thanks by Anonymous Coward · · Score: 0

      Its a lost cause, apart from 2-3 geeky distributions everybody else is macifying or windowsifying linux to such a degree that it is nauseous.
      Really dark times ahead for long standing linux users.
      Who knows maybe FreeBSD or DragonFly BSD will emerge to take the lead ?

      Somehow its not surprising this proposal comes from Fedora. Red Hat contributes a lot to the linux infrastructure, but lately their application level developers are on a drug trip. Seriously every strange proposal to change this or that (things that already work) comes from them, or if not from their proxy Fedora. Its really distressing.
      Take an example at all the xml crap we have in the system. What the hell was wrong with standard text files with a simple structure to parse ? Now everything has become readable machine code xml.
      While windows continue to improve more or less, linux since 2 or 3 years has been going downhill.
      Baffling, just baffling. Sacrifying linux on the altar of this strange race of newbies.

    5. Re:No thanks by peppepz · · Score: 1

      One thing I dislike is the fact that it crashes and burns if the services it's trying to manage fork a number of times that is different from what you've specified in the relevant config file. I find it unelegant and prone to problems.

    6. Re:No thanks by vadim_t · · Score: 1

      Upstart makes it very challenging to block system boot.

      I needed to install new machines loading the installer from BOOTP. That went on as expected, until I ran into the issue of having to run a post-install script specifically on the first reboot, which must complete before the user is allowed to login, and upstart does everything possible to prevent me from blocking system boot.

      At least, if there's a way to get it done, I didn't figure it out, and ended up hacking around it in a very ugly way.

      Also I hate the very idea of it on a server. On a server I want simple and predictable, without any weird magic happening, and parallelism is entirely unnecessary.

    7. Re:No thanks by jon3k · · Score: 1

      If you didn't like upstart I've got some bad news. Fedora went to systemd as of version 15.

    8. Re:no thanks by GPLHost-Thomas · · Score: 1

      Exactly what do you call "things where they should be"? What's your definition?

      FYI, not putting something according to the FSHS is considered a bug in Debian (like putting a configuration file somewhere else than /etc, an arch dependent library somewhere else than /usr/lib, or even in /lib when it's not needed at boot time, etc.).

    9. Re:no thanks by Daniel+Phillips · · Score: 1

      Sure 10-20 years ago when trying to fix the server required minimal booting into root partition, fixing things and then gradually fixing and mounting the other parts required some basic programs hence the reason for /bin.

      That is the same way you fix a shiny new desktop machine today, or perhaps you have never tried fixing a sick computer. Oh right, we've reached the age of disposable computers, haven't we? If it won't boot, it's landfill.

      --
      Have you got your LWN subscription yet?
    10. Re:no thanks by Daniel+Phillips · · Score: 1

      Its a lost cause, apart from 2-3 geeky distributions everybody else is macifying or windowsifying linux to such a degree that it is nauseous.

      It's hard to express the degree of stupidity required to tie the network bringup to the GUI so that if the GUI goes down so does the network, yet that is exactly what NetworkManager does. Another brilliant Fedora idea I believe.

      --
      Have you got your LWN subscription yet?
    11. Re:No thanks by F.Ultra · · Score: 1

      So configure your services to not fork, with Upstart there is no need to fork anyway so there is no benefit what so ever to fork in a Upstart enviornment.

    12. Re:No thanks by F.Ultra · · Score: 1

      I myself love it for servers, now our sql dependent applications automatically start at the correct time when the sql server starts etc and also the service monitoring that Upstart has is very essential on a server restarting services who crash or exit on failure. What I don't like is that the logs are less informant though.

    13. Re:No thanks by vadim_t · · Score: 1

      That sounds like a bad idea. A service crash indicates something is badly wrong. Blindly restarting risks making whatever went wrong worse.

      For instance, if you have a bad RAM module, one thing you really don't want is to keep restarting a crashed database and making it more and more corrupted. Even if you have backups, you risk serving corrupted data, or bringing down the rest of the service.

    14. Re:No thanks by peppepz · · Score: 1

      Yes, that's what I do. I had some trouble when trying to have upstart run a daemon as an underprivileged user using su -c. I ended up dropping su and making the daemon binary setuserid.

    15. Re:No thanks by F.Ultra · · Score: 1

      And what is the ratio of bad RAM vs segfault in program due to bug which is fixed by restarting the service now ;-) And of course if say mysql would segfault, then what percentage of admins wouldn't just type "/etc/init.d/mysql restart" ?

    16. Re:No thanks by vadim_t · · Score: 1

      And what is the ratio of bad RAM vs segfault in program due to bug which is fixed by restarting the service now ;-)

      Hopefully, bad RAM happens more often. Databases are critical software and very well tested. I've never had one segfault on me.

      And of course if say mysql would segfault, then what percentage of admins wouldn't just type "/etc/init.d/mysql restart" ?

      Certainly not me. A segfault in a database is serious business, and a potential for corruption. At the very least I'd check the logs, try to make a copy of the database just in case, run a few tests to make sure everything seems to be in order, and try to find out if the error was reported on the mailing list.

      Also I definitely wouldn't restart it 20 times if it kept dying. After the second time, it's time to look at the issue very seriously.

    17. Re:No thanks by F.Ultra · · Score: 1

      Hope plays no part, there is a substantial amount of software running on servers that have hiigher risks of faults than RAM. And that includes all those fancy database engines of yours. And running a server is not equal to running only databases ;). In Upstart you can tell it to stop respawning after X attempts.
      What is quite puzzling is that you take an argument against Upstart by attacking a functionality of it that has been severely lacking on Linux for years.

    18. Re:No thanks by vadim_t · · Score: 1

      Hope plays no part, there is a substantial amount of software running on servers that have hiigher risks of faults than RAM. And that includes all those fancy database engines of yours.

      If it does, it's a crap DB. Most of the reason for a database's existence is to securely and reliably store data. If it crashes even once in anything but very obscure conditions, something is badly wrong.

      What is quite puzzling is that you take an argument against Upstart by attacking a functionality of it that has been severely lacking on Linux for years.

      It's decent functionality on a desktop. However, such things done automatically do not belong on a server. That is my main problem with it: upstart is a heavily desktop targeted tech that works there fine, but that isn't necessarily a good idea on a server.

      For instance, if you have an attacker trying to get into your box by exploiting a buffer overflow, giving them multiple tries through automatic restarts isn't a good thing.

      And Linux never lacked the functionality. You could always put stuff in /etc/inittab, run monit, or launch stuff from cron.

  16. Symlinks by Anonymous Coward · · Score: 0

    Just stash the real stuff in those directories, and have a way (i.e. add/remove feature) to create / destroy symlinks in those legacy places. Then, after years of nobody using those "features", you can remove them.

  17. Bad Idea by GeneralTurgidson · · Score: 1

    Fedora team needs a history lesson as to why there's 4 different bin file locations. They actually make quite a bit of sense, throwing them all into one is stupid.

    1. Re:Bad Idea by Shimdaddy · · Score: 1

      Please, generalturdigson, enlighten /. (and any Fedora team members who are reading) as to your reasons for calling them stupid.

    2. Re:Bad Idea by GPLHost-Thomas · · Score: 1

      Gosh, don't you know? The sbin dir is for superuser only binaries. The /bin and /sbin are there for vital binaries to be available at boot time, when there's no /usr available.

      FYI, most distro have, or are currently moving /var/run to /run, because it's creating issues not to have /var/run at boot time.

      Please explain to me how this isn't totally stupid to decide something and it's exact opposite on the exact same year (eg: recognizing that we need stuff at boot time on the rootfs).

    3. Re:Bad Idea by Anonymous Coward · · Score: 0

      The proposal isn't quite as clueless as I had initially thought. But it's not just one move: they're considering moving all of / into /usr, and moving all of sbin/ into bin/. The latter is completely braindead, since it would move all system daemons either on the user's PATH or into /usr/lib. Fedora already is braindead in that regard, because the user's PATH already includes sbin/. But there are some merits to the former, once you accept their premises:

      - Fedora already requires the use of initramfs because of selinux and plymouth
      - the primary use case for separate / (rescue mode) can be provided by initramfs
      - /usr is already required by some boot programs (most notably, some udev scripts refer to /usr/share)
      - /usr can be mounted by the initramfs

      Once you have the system (libraries and binaries) on a single partition, you can now provide system snapshots and rollback on the filesystem level without endangering /etc or /var. It can also be mounted read-only and shared across multiple machines.

      Quite frankly, I can see the benefit of this. But I would go one step further and aim for a tmpfs / instead. Especially for hosted/clustered machines, I would like to see this setup:
      / - tmpfs (no need for separate /run, /tmp) /bin, /lib - symlink to /usr /etc - ro local config (symlink/bind mount to /var/etc) /var - rw local state /usr - ro network mount /home - rw network mount

    4. Re:Bad Idea by DMFNR · · Score: 1

      Because it makes sense and keeps things organized. The dilemma is that on one hand you have the "Windows Way" of having C:\Program Files being the dumping ground for all software, which can become a mess but at least you know that's where the executables are going most of the time (excluding the odd program that likes to stick it self right in C:\ for some reason or another), and on the other you have the Unix way which keeps things separated by their purpose on the system, but if the rules aren't strictly adhered too it can create a huge mess. Personally I don't see much of a problem with the current layout and I will always keep it that way unless some major breakthrough arises that makes even more sense, but this Fedora solution is no different than the way Windows has been doing it for years. Sure it will make it easier for people migrating from Windows, but I think that most people who have been *nix users for years would like to keep it the familiar way that makes sense to them. There's nothing unintuitive or complicated about it; /bin for the core utilities, /sbin holds the utilities for administrative tasks, /usr/bin holds all of the userland software, and /usr/local/bin holds all of my locally build stuff. It's helpful to me because I know my package manager is going to take care of the stuff in /usr/bin and the third party repos will update the few things I have in /opt, and anything in /usr/local/bin I am responsible for. It allows me to see at a glance what is what, which I think is important for keeping my software up to date and maintained. The /bin and /sbin deal isn't too important to me, but it helps each directory to stay uncluttered and I know what's where by convention.

      There is a hell of a lot more Linux is going to have to do before the mythical "Year of Desktop Linux" arrives. The more Window or Mac-like Linux tries to become, the more the individual strengths of Linux erode. It seems like these developers have all of these grand plans to improve usability which are unfortunately not in touch with what the users want and at the same time aren't attracting any new users because of them. If I want to use Windows, I'll use Windows. I guess Free Software is all about scratching an itch, and if this is what these guys want to do, so be it. I'll move somewhere else, as will many other people who see no reason to throw away something that works perfectly for them, and it's highly doubtful new users are going too flood in to take our places. The Linux community just seems to be confused right now, and hopefully they'll come to their senses and realize what the strengths of Linux are and focus on them rather than throwing out the old just for the sake of the new shiny.

    5. Re:Bad Idea by Anonymous Coward · · Score: 0

      - /usr can be mounted by the initramfs

      Except when it can't be. Like when /usr is an NFS mount point and your network config is broken.

      In that case you want your system to be able to boot to a state where you can reconfigure your network without having /usr mounted.

      And before you ask why /usr would be a mount point: So you can share it across multiple machines.

  18. /bin, /sbin had their functions by l2718 · · Score: 5, Informative

    I think it's important to realize why the four directions /bin, /sbin, /usr/bin, /usr/sbin exist (and similarly why /lib is separate from /usr/lib). The reason is that once upon a time discs were small, so that /usr would be mounted separately from the root partition. So /bin and /lib are small directories containing as much of the operating system as you need to get going before you mount /usr and get everything else. In particular, this means the utilities needed to mount those other filesystems and to fix errors in them (e.g. fsck). The separation between /usr/bin and /usr/sbin means that ordinary users don't have system programs (those from /sbin) in their search path. Today most installations have the whole system (/ and /usr) on the same partition and it seems that many users use a GUI rather than a terminal. This means that the separation is not needed. Note that this change is not about multiple-architecture situations like /usr/lib and /usr/lib64. It's about the separation between /lib and /usr/lib (or /lib64 and /usr/lib64).

    1. Re:/bin, /sbin had their functions by Anonymous Coward · · Score: 0

      For Fedora I'm not really worried. I just wonder if this change will go downstream to RHEL.. which I think would create some problems in the long run for IT shops used to segment their stuff.

      What really worries me is this "dumbification wave" going on in IT... GNOME / Canonical want to copy Mac OS.. now Fedora wants to change the filesystem (to look like Mac OS ???)...

    2. Re:/bin, /sbin had their functions by skids · · Score: 1

      And the sbins keep system binaries that users cannot execute anyway out of the end-user's path, as well as providing an extra dir inode for permissions tricks if you ever need to do such a thing. I could easily see Fedora getting rid of sbin, and then complaining there are too many useless binaries showing up for end users, then making it so that some application goes in a crawls the tree for permissions, so it can show the users only the files they can execute, then making it so that this codepath gets run frequently enough that the system performance is effected. That's how these things tend to work.

      Note that while large, single mount, flesystems are prevalent these days in the PC area, the same is not true of embedded systems or classic clustering.

      To me the problem of "OSes have not provided good enough GUIs for newbs to find their files" is not best solved by up-ending things on the development/support/maintenance end.

    3. Re:/bin, /sbin had their functions by jafo · · Score: 1

      The bigger issue, which is still relevant, is that /bin and /sbin were tools that were necessary to bring the system up to the point where it could get to the network and mount the bulk of their file-systems from resources on the network (NFS, iSCSI). Though these days, that's as likely to be tools that are in the initrd...

    4. Re:/bin, /sbin had their functions by WaywardGeek · · Score: 1

      now Fedora wants to change the filesystem (to look like Mac OS ???)...

      I sure as heck hope the do! Let's see... Windows, Mac iOS, and Android all have the concept of an application directory where all the files for an app go. Installing an app just means copy the directory to /Applications or some such thing, and maybe doing a few system related things to inform the OS of your icon, uninstall program, etc. Android runs apps in restricted mode so they can only see their own directory, unless users give the app explicit permission to do more. As a result, any old fool can publish an app in the Android Market with 1/10th the experience and skill required to be in Debian. Do you think it is a good or bad thing that less than 10% of FOSS developers have the skills needed to contribute to Debian?

      I have an idea... maybe we should instead dump all of an applications files into shared directories, where they can clobber each other... Unix was first, Gnu/Linux is brilliant, but we retain baggage that's just embarrassing. Merging /lib and /usr/lib? What a complete waste of time.

      --
      Celebrate failure, and then learn from it - Nolan Bushnell
    5. Re:/bin, /sbin had their functions by Alain+Williams · · Score: 1

      The separation of /bin from /usr/bin and /sbin from /usr/sbin is still valid if you are trying to make really robust systems. You have to start from the point of view that something horrible WILL happen and you need to fix the system. If your root file system is small then there is a good chance that it is not that damaged and you can bring the machine up with just the RFS mounted -- then set about fixing up the other file systems. I suspect that the Fedora recommendation would be to just reinstall -- that might be OK on Mickey Mouse systems but is often not an option on something mission critical.

      There is a lot of talk about small disks - that was not the reason for splitting things off into /usr. I know that a lot of automatic installers try to partition the disk as one big partition (+ swap & maybe /boot) - but they do that because it is easier than calculating partition sizes. However: a competent sysadmin will know how big to make his partitions and install on top of that.

      For the record I tend to partition the disk into these separate partitions:

      • /boot
      • RFS
      • /usr
      • /tmp
      • /home
      • /var

      And then maybe some data specific partitions -- depending on what the purpose of the machine is. With disks divide & rule helps make robust systems.

    6. Re:/bin, /sbin had their functions by starfishsystems · · Score: 1

      Many users use a GUI rather than a terminal. This means that the separation [between directories] is not needed

      Could you explain your reasoning here, please? I see no relationship between directory conventions used by the system and the choice of interface made by the user.

      --
      Parity: What to do when the weekend comes.
    7. Re:/bin, /sbin had their functions by shibashaba · · Score: 2

      Having the separate directories still comes in handy when rescuing systems. Something Fedora is missing here is that it's not the separate directories that confuse people, it's the abbreviations.

      In all honesty, users this new don't need to be messing around with the system at such a low level, Windows actively discourages it as well. The problem is that there is still not enough mature applications available for new users. They are not always satisfied with what comes prepackaged, so they venture out on the web. Source tarballs, random executable no automated installation, and distro specific software is just plain intimidating.

      They could change the names of the directories to something obvious, but then experienced users will be stuck typing in unnecessarily long directory names all day long.

      And as far as gobolinux is concerned, my system is already a giant mess of symlinks. I would prefer to not have that.

      --
      ---------- Open Source is capitalism applied to IP.
    8. Re:/bin, /sbin had their functions by whoever57 · · Score: 1

      IMHO, you are just making things more difficult for yourself. The combination of everything except /home is so small these days (in comparison to a typical HD) that there is no reason to separate these out to individual partitions. With your solution, you either waste space, or risk making one of the partitons too small for future needs. Alternatively, by have the "extra" space shared between all these directories, your chance of making that mistake is lower.

      Given the size of today's HDs, what value is there in your scheme (apart from putting user files into a separate partition)?

      I don't make /home a separate partiton -- I have a /export partiton and /home is controlled by the automounter -- much more flexible. /home can then be a mixture of locally-mounted and network directories, etc.

      --
      The real "Libtards" are the Libertarians!
    9. Re:/bin, /sbin had their functions by Anonymous Coward · · Score: 0

      I'm also very concerned about this crap making it to RHEL. I'll be looking for alternatives just in case.

    10. Re:/bin, /sbin had their functions by radish · · Score: 1

      I would think if the system is "mission critical" then step 1 is failover to the DR host, and step 2 is then restore from backup. The contents of things like /bin is pretty static (between system updates it should be entirely static) so it's not like you have transactional data to try and rescue.

      --

      ---- Den ene knappen er powerknapp, den andre er Bender voice knapp "Bite My Shiny Metal Ass"

    11. Re:/bin, /sbin had their functions by Bob9113 · · Score: 0

      many users use a GUI rather than a terminal. This means that the separation is not needed.

      Not directing this criticism at you, I know you are just giving a clear explanation of the state of the consensus.

      Seems like if there's a layer for creating a more friendly user abstraction of the underlying system (like a GUI), that is the right place to create a simplified view of the two directories. If the reason for jumbling everything into the same directory is really because point-and-droolers are confused and frightened by having separate, contextual directories, ummm, give them the dumbed down version in their layer. Don't fuck up the healthy, organized layer underneath down where the superusers spend their time.

    12. Re:/bin, /sbin had their functions by jedidiah · · Score: 1

      If everyone is supposed to be using the GUI, then monkeying around with old and well understood standards doesn't make much sense.

      Unix has always supported an arbitrary and flexible setup for both libraries and binaries. There's simply no need to "simply" things.

      --
      A Pirate and a Puritan look the same on a balance sheet.
    13. Re:/bin, /sbin had their functions by Anonymous Coward · · Score: 0

      It is useful to have /var be separate so if some process goes crazy and fills up /var/log, it doesn't affect /. For the same reason and perhaps security considerations, it is also useful to have /tmp be a separate partition, especially on a multi-user system. It is also a good idea to mount /boot read-only, but there are ways to do that without a separate partition. /usr is useful as a separate partition if it is being mounted remotely, otherwise not so much.

    14. Re:/bin, /sbin had their functions by starfishsystems · · Score: 1

      My observation was that whether or not everyone is supposed to be using the GUI, monkeying around with old and well understood standards doesn't make much sense.

      --
      Parity: What to do when the weekend comes.
    15. Re:/bin, /sbin had their functions by Anonymous Coward · · Score: 0

      Having the separate directories still comes in handy when rescuing systems.

      Far more handy (IMO anyways) is to just boot a Live CD or USB stick for recovery, bypassing the need for the downed system to have any working filesystems at all.

      When UNIX was born, disks were refrigerator-sized major capital investments which sat in raised-floor machine rooms attached to refrigerator-sized computers which were also major capital investments. All these fridge-sized boxes, and the software which ran on them, were far more unreliable than what we're now accustomed to, and yet they were usually expected to support dozens or hundreds of users with high uptime. In that context, yes, it made total sense to segregate crucial system binaries and configuration files not just by directory, but by using a different partition or even a different disk for them.

      Today, however, this organization is irrelevant and really has been for a long time. I can't remember needing /bin to be separate from /sbin or /usr/sbin even once in the ~15 years I've been using UNIX-derived operating systems.

    16. Re:/bin, /sbin had their functions by grumbel · · Score: 1

      And the sbins keep system binaries that users cannot execute anyway out of the end-user's path,

      That's the theory, it has never really been true in practice. On my Ubuntu here the user can execute everything in /sbin/, each file as the x bit set by default. Furthermore, many of the apps in there are actually quite useful for the user. All the mkfs stuff is useful for creating disk images, ifconfig will tell you your IP and so on. Those apps that actually need root permissions will tell the user soon enough.

      That said, I am not opposed to a better separation of programs according to functionality, but bin/sbin never seemed all that useful in practice.

    17. Re:/bin, /sbin had their functions by Compuser · · Score: 1

      First off, logically /lib should be a subfolder in /bin since libraries are needed to make executables works and are not an entity in themselves.
      Rename /bin into /programs or some-such for clarity. /dev, /proc and /sys also belong together though I am not sure how. Maybe under /devices.
      Crap like /etc should be all collected in /config or something clearly named.

      No need for /sbin, /tmp, /var, /root, /home, and /media.
      Make a /users folder. This would contain all user info. This is where /root belongs logically. And /sbin should be in /root logically. /tmp should only be present on server installs. A distro aimed at personal use should not have it. /var should be renamed to something clear like /logs and should be present in every user folder, not globally. /home should not be there at all. Just have /username (including /root) in /usr. /media, /mnt and other crap like that just needs to be in /dev

      Bottom line: when a user fires up a GUI browser for their filesystem, they should see just a few key directories and their purpose should be obvious from naming without any training in Unix. /programs, /devices, /users, /config
      On server installs, add /shared.

      BTW, I am not a fan of oversimplification either. Do not dump all things into something dumb like /unix or /linux or /posix. The whole /windows business is a mess. Users are afraid of even peeking inside this huge folder.

    18. Re:/bin, /sbin had their functions by drinkypoo · · Score: 1

      I want /bin back with only statically-linked stuff and scripts in it, and all the dynamic stuff (and convenience symlinks) in /usr/bin. But I also want each package installed to its own subdirectory somewhere and all its files symlinked into the tree to make it easier to manage them without a package manager. And if that incurs a significant performance penalty, what year is it?

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    19. Re:/bin, /sbin had their functions by Dr.+Tom · · Score: 1

      most installations ... so you'll break it for the rest and not care? there is value in the separation of function

    20. Re:/bin, /sbin had their functions by kangsterizer · · Score: 1

      its not just because of small disks. its for reliability and integrity.

      generally on good systems, /bin /lib and friends would be mounted on small yes, but separate, read-only drives (sometimes read-write).

      should stuff in /usr which is much much bigger fail, the system would still boot.

      this stuff actually saved me once when I was remote. but i agree, disks are much more reliable now and redundancy is done at another level.

    21. Re:/bin, /sbin had their functions by EvanED · · Score: 1

      First off, logically /lib should be a subfolder in /bin since libraries are needed to make executables works and are not an entity in themselves.
      Rename /bin into /programs or some-such for clarity. /dev, /proc and /sys also belong together though I am not sure how. Maybe under /devices.
      Crap like /etc should be all collected in /config or something clearly named.

      I actually like pretty much all of these. I'd suggest putting /dev, /proc, and /sys together into /system. /dev becomes /system/devices, /proc becomes /system/processes (actually I'd be OK with keeping the abbreviation and using /system/proc), and /sys becomes... well, something. We're closer anyway. :-)

      Make a /users folder. This would contain all user info.

      To be honest, I think /home is still fine, though I wouldn't object to /users.

      This is where /root belongs logically.

      Yeah, agreed here as well. /home/me and /root always struck me as strange. Presumably it's so you can split them on different partitions, so it's not a meaningless distinction... but I'd rather see that handled in some other way. Perhaps by allowing something like the equivalent of "mount /dev/sda0 on /home, except don't hide /home/root".

      And /sbin should be in /root logically. /tmp should only be present on server installs. A distro aimed at personal use should not have it.

      Hmm, I'm not sure about these. I don't know where /sbin should go. I'd sort of rather see it in /programs/system or something. And /tmp has plenty of use for personal systems... though maybe it should be a per-user directory instead. /var should be renamed to something clear like /logs and should be present in every user folder, not globally.

      This I actually disagree with. There's a lot of "system" applications who will want to log data, like Apache or something. If you've got 5 admins who all need access, why are they going dipping into some user's ~, even if it's just a "virtual" user just for Apache who doesn't actually exist?

      (And on an unrelated note: let's promote the notion of ~ to the kernel level -- or at least glibc.) /media, /mnt and other crap like that just needs to be in /dev

      Strongly disagree with these. /media and /mnt should be merged, but they shouldn't go in /dev (or your /devices or my /system). That directory should remain pretty much untouched by typical users, and putting mounted media there I think is the wrong idea.

      I'm quite happy with a /media at the top level. (I'd also consider /removable-media or something but that's probably too verbose even for my preferences.)

      That said, I think some of my objection is guided by the way I view the /system directory -- which is also why I named it as I did.

    22. Re:/bin, /sbin had their functions by EvanED · · Score: 1

      Crap, HTML problems. Posting again for your reading ease. I'll preview this time even. :-)

      First off, logically /lib should be a subfolder in /bin since libraries are needed to make executables works and are not an entity in themselves.
      Rename /bin into /programs or some-such for clarity. /dev, /proc and /sys also belong together though I am not sure how. Maybe under /devices.
      Crap like /etc should be all collected in /config or something clearly named.

      I actually like pretty much all of these. I'd suggest putting /dev, /proc, and /sys together into /system. /dev becomes /system/devices, /proc becomes /system/processes (actually I'd be OK with keeping the abbreviation and using /system/proc), and /sys becomes... well, something. We're closer anyway. :-)

      Make a /users folder. This would contain all user info.

      To be honest, I think /home is still fine, though I wouldn't object to /users.

      This is where /root belongs logically.

      Yeah, agreed here as well. /home/me and /root always struck me as strange. Presumably it's so you can split them on different partitions, so it's not a meaningless distinction... but I'd rather see that handled in some other way. Perhaps by allowing something like the equivalent of "mount /dev/sda0 on /home, except don't hide /home/root".

      And /sbin should be in /root logically. /tmp should only be present on server installs. A distro aimed at personal use should not have it.

      Hmm, I'm not sure about these. I don't know where /sbin should go. I'd sort of rather see it in /programs/system or something. And /tmp has plenty of use for personal systems... though maybe it should be a per-user directory instead.

      /var should be renamed to something clear like /logs and should be present in every user folder, not globally.

      This I actually disagree with. There's a lot of "system" applications who will want to log data, like Apache or something. If you've got 5 admins who all need access, why are they going dipping into some user's ~, even if it's just a "virtual" user just for Apache who doesn't actually exist?

      (And on an unrelated note: let's promote the notion of ~ to the kernel level -- or at least glibc.)

      /media, /mnt and other crap like that just needs to be in /dev

      Strongly disagree with these. /media and /mnt should be merged, but they shouldn't go in /dev (or your /devices or my /system). That directory should remain pretty much untouched by typical users, and putting mounted media there I think is the wrong idea.

      I'm quite happy with a /media at the top level. (I'd also consider /removable-media or something but that's probably too verbose even for my preferences.)

      That said, I think some of my objection is guided by the way I view the /system directory -- which is also why I named it as I did.

    23. Re:/bin, /sbin had their functions by Anonymous Coward · · Score: 0

      +1, but there's more to it than that. Unexpected system crashes/shutdowns during write operations often lead to corrupt filesystem state, as do hardware errors (disk, controller, cable, memory, cosmic rays) and, less frequently, driver bugs (filesystem, disk controller, system bus). Well-run multi-user systems put /home, /var, and /tmp on separate filesystems and mount the rest read-only to help contain failures of the first type. The other failures are relatively random in where on disk they strike, so the smaller you make / the safer it is. / is tiny and separate so you can have somewhere to fsck /usr and run other repair and restore tasks.

    24. Re:/bin, /sbin had their functions by Dogun · · Score: 1

      This will absolutely not make its way downstream into an existing RHEL release. Maybe future releases.

    25. Re:/bin, /sbin had their functions by Anonymous Coward · · Score: 1

      but historically, /sbin was for static binaries so you could do system recovery (ie libc foobared symlink, see /sbin/sln). Maybe with initramfs this changes sure, but we'd need the FHS to change and that's not going to happen for UNIX and BSD platforms.

    26. Re:/bin, /sbin had their functions by Anonymous Coward · · Score: 0

      Wrong, static was in /sbin --- STATIC binaries...

    27. Re:/bin, /sbin had their functions by cthulhu11 · · Score: 1

      My understanding of the small-/ strategy was always that it was to minimize the potential for media errors taking out something critical. The aforementioned devs, or at least the idiot who wrote the summary, would do well to understand the difference between the words "filesystem" and "directory". They'd also be much more valuable to users were they to drop an insane quest to break masses of existing software that relies on things living along certain paths, and instead do something about the embarrassment that we can't make ext4 filesystems >16TB.

    28. Re:/bin, /sbin had their functions by Compuser · · Score: 1

      I have no issue with your version either.
      But my rationale on /var is that logs is something an admin consumes (like any other form of media - books, movies, etc). So logs that a given admin would care about should be presented to them and those they do not should not.

      Example. A server in a household. One person reviews hardware related logs. Another takes care of internet facing services and security and the relevant logs. No-one looks at all the logs so there is no need for central repository. If multiple admins are registered to take care of any aspect of the system they get a separate copy of the logs. Hard drive space is cheap. Duplicate and personalize, don't centralize.

    29. Re:/bin, /sbin had their functions by GPLHost-Thomas · · Score: 1

      Today most installations have the whole system (/ and /usr) on the same partition

      NO! YOU maybe doing it, but not *most* people: you have no statistics to tell (and if you do, please share...).

      I don't do that, because of many reasons, like having less access to the rootfs is safer, having my /usr on LVM so that I can resize it, etc. Also, remember that /usr could be mounted read only (if you wanted to), which is quite a nice feature that increases performances quite a lot. Try to do that with the rootfs, and come back to me (I really wish it was possible to mount it read only as well)!

    30. Re:/bin, /sbin had their functions by GPLHost-Thomas · · Score: 1

      Note that while large, single mount, flesystems are prevalent these days in the PC

      I still consider that this is a newbie way of doing things. First, you should separate /tmp from others, because you don't want any stupid app to fill up your rootfs. Then /var should be separated because it optimizes access and you should take care that it never gets full.

      If you have a laptop, then it makes sense to use encryption. In this case, then a separate /home makes a lot of sense (but there's no reason why you would encrypt /usr). Even without encryption, a separate /home also makes sense anyway.

    31. Re:/bin, /sbin had their functions by GPLHost-Thomas · · Score: 1

      With your solution, you either waste space, or risk making one of the partitons too small for future needs.

      Ever heard about LVM? :)

    32. Re:/bin, /sbin had their functions by Electricity+Likes+Me · · Score: 1

      That said, I am not opposed to a better separation of programs according to functionality, but bin/sbin never seemed all that useful in practice.

      Well-implemented it seems like a fairly sensible separation. The real problem is that it's not well-implemented (or at least, not well adhered to).

    33. Re:/bin, /sbin had their functions by Anonymous Coward · · Score: 0

      Not just small disc space. /bin, /sbin, /lib, and so on, contain the stuff necessary to boot and get the network up. Once the network is up, you mount the /usr directory over the network, which contains the stuff that can be shared among computers.

      Imagine installing new software on every computer in the office by installing it only once.

      If you also pull /home over the network, a user can sit down at any PC, and have everything available immediately (that would of course require LDAP for login).

    34. Re:/bin, /sbin had their functions by EvilIdler · · Score: 2

      I don't think it matters with separate directories. On a rescue disk you'd only have the essentials to get going anyway, right? But I agree that the abbreviations can be confusing. I'd love to see a simpler installation like OS X (NeXT) app bundles become the default. Since it's all mostly open source , or some commercial bits relying on open source frameworks (Gtk+, KDE/Qt) these app bundles would rarely need to bundle any dynamic libraries.

      I doubt a mess of symlinks is avoidable for now, though. Linux has a lot of hard-coded legacy paths which programs unfortunately expect for all sorts of things. The ld system is configurable, so adding a /Library as the first stop to look shouldn't be a problem, but a lot of developer tools would need to be made aware. It seems like a hell of a process, but I'm all for it. Now to get millions of developers to see it my way :P

    35. Re:/bin, /sbin had their functions by Dan+Dankleton · · Score: 1

      I generally wouldn't go that far unless I had several disks. If I've only got one disk then it gets /, /boot and swap. Why? I've only ever hosed partitions when I've done something stupid, and I do my best to avoid doing stupid things on mission critical machines. On the other hand, entire disks do fail and no partitioning scheme in the world will help that if you've only got 1 disk.

    36. Re:/bin, /sbin had their functions by RedHat+Rocky · · Score: 1

      And resizing filesystems?

      XFS and ext3/4 all allow online growth.

      --
      Anything is possible given time and money.
    37. Re:/bin, /sbin had their functions by mikechant · · Score: 1

      Make a /users folder. This would contain all user info.

      To be honest, I think /home is still fine, though I wouldn't object to /users.

      This is where /root belongs logically.

      Yeah, agreed here as well. /home/me and /root always struck me as strange. Presumably it's so you can split them on different partitions, so it's not a meaningless distinction... but I'd rather see that handled in some other way. Perhaps by allowing something like the equivalent of "mount /dev/sda0 on /home, except don't hide /home/root".

      The point of deliberately having root's home on the root filesystem and not under /home is so you can login and run as root without /home being mounted, for example if /home is corrupted, or if you want to move or resize /home, or if /home is network mounted (for sharing across multiple systems) and currently unavailable. I've found this useful on a number of occasions.

    38. Re:/bin, /sbin had their functions by Kjella · · Score: 1

      They could change the names of the directories to something obvious, but then experienced users will be stuck typing in unnecessarily long directory names all day long.

      Or learn to use tab completion and use an intelligent text editor that can too, for scripts and such. Maybe rename it "Program Files" so you won't have half your tools break if you put a space in a directory name too. That has annoyed me many times on Linux with poorly written scipts and tools, so eventually you end up doing it too even if all the names look retarded with CamelCase or under_scores.

      --
      Live today, because you never know what tomorrow brings
    39. Re:/bin, /sbin had their functions by Chris+Mattern · · Score: 1

      I think it's important to realize why the four directions /bin, /sbin, /usr/bin, /usr/sbin exist (and similarly why /lib is separate from /usr/lib). The reason is that once upon a time discs were small, so that /usr would be mounted separately from the root partition. So /bin and /lib are small directories containing as much of the operating system as you need to get going before you mount /usr and get everything else.

      This is still useful. If your file tree architecture is well-formed, you can have /usr be a separate file system and mount it read-only. This can do wonders for hardening your system against intrusion. And if you still have a separate /usr, it's still useful to have /lib, /bin and /sbin for emergency operations without /usr.

    40. Re:/bin, /sbin had their functions by Haeleth · · Score: 1

      Something Fedora is missing here is that it's not the separate directories that confuse people, it's the abbreviations.

      Something you're missing here is that this proposal has absolutely nothing whatsoever to do with new users or anyone being "confused" by anything. This is entirely about the technical benefits Fedora believes would be provided by having all distro-controlled binaries and libraries stored within /usr.

    41. Re:/bin, /sbin had their functions by Anonymous Coward · · Score: 0

      But XFS doesn't (at least the last time I checked) allow shrinking on or offline.

    42. Re:/bin, /sbin had their functions by EvanED · · Score: 1

      I did pretty much say exactly that. :-)

      But that's something that home users will almost never need to care about, and it'd be nice to make it possible to put it somewhere else and set things up that way by default for home systems.

      It may well already be that you can set this up. /root is listed as the home directory for root in /etc/passwd along with everyone else's home directory, so maybe that would work. But even if so, this seems like one of those things that, even if it is technically possible, is probably done so rarely that I'd really worry about what would break.

      Like I said, I'd rather move /root to /home/root and then fix the "separate volume" issue another way.

    43. Re:/bin, /sbin had their functions by Anonymous Coward · · Score: 0

      To expand on your idea, perhaps graphical file management applications should include a feature that automatically labels these standard directories with text that explains what they are used for, in the same way that files are often labelled with a description of the file type.

      The underlying file system would be unchanged. It would all be done through the default configuration for the file manager. Command line users would be unaffected, people who dislike it could turn it off or, reconfigure it or switch to a different file manager, and new users, who are highly likely to be using a GUI file manager, will get a handy tutorial on the file system, simply by browsing and using it.

      As a bonus, this would allow the descriptions to be internationalized.

      Maybe some file managers already do this; I haven't tried them all.

    44. Re:/bin, /sbin had their functions by Rich0 · · Score: 1

      Note that while large, single mount, flesystems are prevalent these days in the PC area, the same is not true of embedded systems or classic clustering.

      Actually, I think clustering/etc is one of their main use cases.

      Their logic is to put EVERYTHING in /usr and then mount it on a separate partition, read-only. The initramfs would be designed to mount /usr before running init. Doing an OS upgrade just amounts to mounting a different /usr, since EVERYTHING is in there. You'd only put per-machine modifications to the default configuration anywhere else. In a cluster you could have a bunch of machines all mount the same /usr.

      On the gentoo-dev mailing list there have been debates about this as more and more software requires /usr mounted at boot anyway (a lot of udev rules especially those concerning bluetooth in particular).

    45. Re:/bin, /sbin had their functions by Anonymous Coward · · Score: 0

      Nobody remembers that /sbin and /usr/sbin were there to store STATIC binaries (Sbin) ? So you can still use your system even if your libc is corrupted.

    46. Re:/bin, /sbin had their functions by offsides · · Score: 1

      Except that given the size of todays drives, there's no good reason NOT to separate them out into individual filesystems, tailored to the server requirements.. ESPECIALLY separating the root filesystem from anything else that is likely to fill up. Perhaps /usr doesn't need its own filesystem, but in that case you better put /usr/local on one instead. /var, /tmp and /home also should be on separate filesystems, since filling up your root partition is a great way to drop your server...

      The one partition that I've had mixed feelings about these days is /boot, but only because OSs like RHEL/Centos and Fedora have been exponentially increasing their partitiion size requirements lately (100M->200M->250M->???) and not having the old IDE disk size limitations for booting makes combined root/boot more feasible. Perhaps it doesn't make sense to multi-patition a workstation (and in fact, I don't - just root, /boot and maybe /data (symlink /home and anything else into it)), but unless you're trying to cram a recent full-size Linux build into a tiny server, there's no reason not to take 10-20G out of your disk space for your system partitions, and then use the reast as needed. Heck, I just spec'd out a couple of servers where I swapped out 15K 72G drives for 10K 300G ones because they were cheaper, and I don't need the spindle speed (and only looked at 72G drives because that's the smallest they come in these days!). That's ~4x the space on a system that already had more than enough...

    47. Re:/bin, /sbin had their functions by someSnarkyBastard · · Score: 1

      Your solution sacrifices robustness for simplicity. That said, I do support the idea of creating sane names for system directories.

    48. Re:/bin, /sbin had their functions by Anonymous Coward · · Score: 0

      experienced users will be stuck typing in unnecessarily long directory names

      I don't understand the people who says this is a problem.

      I am an experienced user, and for all my non-system directories I do use long descriptive names. I work in them rather often from the terminal, and it never bothers me at all.
      Any modern shell has directory name auto-completion, simply type the first few leters and then press TAB and there's your full name, trailing slash conveniently included if it's a dir. :-)

    49. Re:/bin, /sbin had their functions by Michael+Wardle · · Score: 1

      I'd suggest putting /dev, /proc, and /sys together into /system. /dev becomes /system/devices, /proc becomes /system/processes (actually I'd be OK with keeping the abbreviation and using /system/proc), and /sys becomes...

      ... /system/kernel?

    50. Re:/bin, /sbin had their functions by PoopCat · · Score: 1

      One reason for separating out /var and /tmp at least was so that if some jackass^Wuser trampled all over /tmp (dd if=/dev/random of=/tmp/what_fun bs=10240 count=1000000), that didn't stop the system from logging to /var. Similarly if /var gets hosed in some fashion it doesn't stop the rest of the system from being used while fsck is run.

    51. Re:/bin, /sbin had their functions by Compuser · · Score: 1

      Not really. It is not too hard to make things robust. There is no reason why for instance a sub-folder could not be mounted even if the parent folder is corrupted. Just make every home directory a separate partition and mount them all under /users. If /users gets corrupted, mount discoverable user partitions somewhere else (e.g. /users-restore). So root folder could still be robustly accessible even if /users or /home were corrupted.
      In any case, the point is that complexity should be within the filesystem, not on the user end.

    52. Re:/bin, /sbin had their functions by whoever57 · · Score: 1

      One reason for separating out /var and /tmp at least was so that if some jackass^Wuser trampled all over /tmp (dd if=/dev/random of=/tmp/what_fun bs=10240 count=1000000), that didn't stop the system from logging to /var.

      That's why you have reserved blocks in any filesystem that users can write to. Much simpler than a separate filesystem.

      --
      The real "Libtards" are the Libertarians!
    53. Re:/bin, /sbin had their functions by PoopCat · · Score: 1

      Not sure simplicity is an issue. Once the filesystems are set up, it's no harder to manage two than one, and set-up is a one-off operation. No reserved blocks also means you aren't paying for storage that rarely gets used (on the assumption that users use more blocks in normal use than root needs IFF all other blocks are used).

    54. Re:/bin, /sbin had their functions by shutdown+-p+now · · Score: 1

      I want /bin back with only statically-linked stuff and scripts in it, and all the dynamic stuff (and convenience symlinks) in /usr/bin. But I also want each package installed to its own subdirectory somewhere and all its files symlinked into the tree to make it easier to manage them without a package manager.

      How about, instead of symlinks, making a FUSE module that takes a tree of directories with one-per-app, with a consistent layout beneath (i.e. /opt/foo/bin, /opt/foo/lib etc), and projects it in /usr/bin and /usr/lib accordingly? Main reason is that this would make it possible to literally uninstall apps by rm'ing their directory - with symlinks on a real FS, they'll be left dangling, and you'll have to clean them up separately

    55. Re:/bin, /sbin had their functions by whoever57 · · Score: 1

      Ever heard about LVM? :)

      Again, more unneccessary complexity. What if you need to boot the system off a CD/DVD? You have additonal steps before you can mount and change files on the drive. Just make your root filesystem 40GB and move on.

      Even with LVM, you still have to find that extra space when you add it -- why not just allocate it all at once, shared between /, /bin /lib, /usr etc..

      --
      The real "Libtards" are the Libertarians!
    56. Re:/bin, /sbin had their functions by Anonymous Coward · · Score: 0

      My understanding of the small-/ strategy was always that it was to minimize the potential for media errors taking out something critical.

      Do you think someone is going to dedicate separate media for a small /? They might do but most separate filesystems on the same media, which might be helpful in the case of filesystem problems, but most people don't consider it worthwhile, if you have real problems for the few cases this would help you can boot a linux distro from a USB drive to fix it instead.

      The aforementioned devs, or at least the idiot who wrote the summary, would do well to understand the difference between the words "filesystem" and "directory".

      As usual for Slashdot the summary is poorly written. The devs obviously know what they are talking about, and where it says "filesystem" in the summary it should be "filesystem hierarchy".

      They'd also be much more valuable to users were they to drop an insane quest to break masses of existing software that relies on things living along certain paths

      Only poorly written software and shell scripts will be broken by this, properly written software (and scripts for that matter) should look in $PATH for binaries rather than hardcoding their location, any shell scripts that break can be trivially fixed and by trivial I mean the fix can be easily automated by anyone with even moderate scripting abilities.

      and instead do something about the embarrassment that we can't make ext4 filesystems >16TB.

      These devs are the one packaging programs for Fedora, they may not be able to code filesystems, and is that limit such a big deal, I don't know about you, but I don't have any 16TB hard drives, besides there are other filesystems you can use if you need one to be that big, including the hot new linux filesystem Btrfs. Actually, I've just checked wikipedia, 16TB is actually the max filesize (using a 4k blocksize) for ext4 with the max volume size being 1EB.

    57. Re:/bin, /sbin had their functions by EvanED · · Score: 1

      I like it. Now all I need is a spare couple years when I'm not doing anything else, and I can rewrite all of Linux and its userland. :-)

    58. Re:/bin, /sbin had their functions by badkarmadayaccount · · Score: 1

      If only we could manage disk volumes logically, instead of partitioning them geometrically. OTOH, LVM has sucky admin tools, IMHO.

      --
      I know tobacco is bad for you, so I smoke weed with crack.
    59. Re:/bin, /sbin had their functions by badkarmadayaccount · · Score: 1

      I wish the vfs layer supported Context Sensitive Directories, like HP-UX. And parametric symlink files with env variable binding like Domain/OS.

      --
      I know tobacco is bad for you, so I smoke weed with crack.
    60. Re:/bin, /sbin had their functions by badkarmadayaccount · · Score: 1

      /proc and /sys are more than devices. they go in /system along with /dev. /tmp is system global - users have their own, but the system also gets one - mouch more secure. /var has much more than logs - it stays where it is. Maybe include /tmp. /root is optional. /usr is UNIX Shared Resources. User folders are not UNIX components. Put them in /var if you must. /media and /mnt are mountpoints for ejectable media. Goes to special folder in /tmp (temporary mount point, get it?). /shared already exists in FSHS. It's called /pub.

      --
      I know tobacco is bad for you, so I smoke weed with crack.
    61. Re:/bin, /sbin had their functions by badkarmadayaccount · · Score: 1

      Implement symlink virtual filesystem. Loopmount XML conf file to get symlink tree. Done.

      --
      I know tobacco is bad for you, so I smoke weed with crack.
    62. Re:/bin, /sbin had their functions by GPLHost-Thomas · · Score: 1

      Just make your root filesystem 40GB and move on.

      No! That's bad for performance AND safety of the data. Doing few commands more (which by the way, are very easy to type, and you just need to write them ONCE down), when doing the recovery is nothing compared to the added safety. More over, for many things, you'll need special option, like noatime, which increases a lot read efficiency (for example, you can set that for your /usr, since you wont ever need this information).

      By the way, there are only 2 devices that might need further grow: /home and /var. Even without online growing/shrinking, you can umount these without rebooting.

      Even with LVM, you still have to find that extra space when you add it

      Typically, you'd leave some free space on the volume group, just for that purpose. NO! The space isn't more wasted than using a big, unique, partition. Also, what will you do once your HDD gets full? Easy: add another HDD, add the new space to the volume group, then resize a partition (which will span on more than a single disk, thanks to LVM).

      why not just allocate it all at once, shared between /, /bin /lib, /usr etc..

      See above. It's a *very* bad newbie way to do things, and that's truth for both a server or a laptop. It's slower not to do it, less safe, and less convenient.

  19. Baffling to users ? by alvieboy · · Score: 2

    most passionate partisans will admit that its filesystem, which stashes vital files in a variety of arcane directories, can be baffling to users.

    Isn't that [directories] what filesystems are to provide, so things can be well organized ?

    Calling them, current UNIX/Linux filesystem hierarcy, "arcane", baffles me. Unless you're Poettering, of course. There is a good reason for things to be where they are, and, due to recent increase of embedded systems, a much more valid reason to split different levels of files across different filesystem hierarchies (read /bin vs. /usr/bin).

    I can accept complains about "/opt" and "/usr/local" - they might not make much sense nowadays, but if you happen to need to bootstrap from a read-only 8Mb flash device, and need to have a somehow working system before you access some external data,

    or

    you have a huge shared filesystem where a few servers rely upon, and you don't want to replicate all system files,

    then I see no reason at all to change this.

    Actually, perhaps increasing the diversity of directories might come in handy (like in /usr/i686/lib + /usr/x86-64/lib + whatever you might need, and with eventual optimizations, and with eventual debug).

    Or is this discussion only about directories which reside on the root of the filesystem ?

    1. Re:Baffling to users ? by steveb3210 · · Score: 1
      /usr/local (or /opt if you insist) are quite vital - when I custom compile something for a server, I prefer to keep anything I install completely and 100% separate from the packages that the system install..

      Ruby for example, I compile with --prefix=/usr/local/ruby...

      I had to custom install node for a production environement recently, --prefix=/usr/local/nodejs...

      Should later on I want to replace ruby or node or whatever, its as simple as replacing or removing a single directory rather than trying to separate compiled from packaged. These two are especially good examples because they both have package managers themselves. Since by default they will install relative to the binary for the program, you get all your language-specific packages installed all in the same place.

    2. Re:Baffling to users ? by alcourt · · Score: 1

      Save yourself pain. Make a new filesystem naming point, say /usr/companyname. Put your company specific code into that directory. Isolate all applications into some application naming structure, say /appl/foo for application foo. Don't allow applications to put so much as an init script elsewhere, because you were smart and told them they aren't allowed to run any code as root, not even startup scripts.

      --
      "I may disagree with what you say, but I will defend unto the death your right to say it." -- Voltaire
    3. Re:Baffling to users ? by skids · · Score: 1

      The only directory subtree I find especially baffling are the /sys/class, /sys/device layouts. And those are A) still a work in progress and B) too new to be arcane.

      Most everything else make perfect sense to me. I mean, at least on Debian. I've found a few doozies on other distros. But even saying that, it's good the level of standardization across distros is as high as it is -- so don't break that.

    4. Re:Baffling to users ? by WaywardGeek · · Score: 1

      Calling them, current UNIX/Linux filesystem hierarcy, "arcane", baffles me.

      The Unix files system is pre object oriented programming. It was developed back when we organized function calls by the purpose they served, rather than the class of object they belong to. So, you get /usr/share/doc where all applications in theory put some documentation, and /usr/bin where they put executables, and /usr/lib where they put libraries. It was just an extension of how C programmers coded (and I am one). Now days, the proper way to organized files is to keep all the files of a given object together in one place, meaning you need a /Apps directory or /Program Files where one directory == one application. Every file an app needs should be there, other than base libraries provided by the OS, which should be few and stable. Sure, there are quite a few exceptions, like device drivers, system information like menus and icons, and such. The Zero Install guys have the right idea.

      The Gnu/Linux file organization is one of the main obstacles to FOSS development. If I want to publish an Android app, I write it this week, and it's in the Market next week. This is because my app will run in a jail where it can only find the files it really needs, in it's own application directory. If I want to provide an Android library (which I have), you just publish your code and people link to it statically. In Debian, you have to do a shared library, meaning you have to do extensive testing for any new release. It's total BS red tape, and it's killing Linux FOSS efforts. It's actually easier to develop FOSS for WIndows.

      --
      Celebrate failure, and then learn from it - Nolan Bushnell
    5. Re:Baffling to users ? by pla · · Score: 1

      Nonono, you see, now that Windows 7 actually includes something resembling real security so every app and virus can't store itself in c:\windows(\system32), Linux needs to go in exactly the opposite direction.

      Now that we have fairly well-defined locations such as program files, program files (x86), windows, windows\system32, windows\syswow64, windows\winsxs, and a dozen other common (but actually somewhat consistent based on purpose) places to stick standard apps under Windows, Linux clearly needs to streamline and streamline.

      * rolls eyes

    6. Re:Baffling to users ? by jedidiah · · Score: 1

      If you want to have an OpenStep style setup, you can do that quite easily with the current Unix file system layout.

      Infact, that's exactly what /opt is for.

      Shared libraries "killing FOSS". That's rich. Not only are such things not "killing Linux FOSS efforts", they are also very useful on non-FOSS systems.

      --
      A Pirate and a Puritan look the same on a balance sheet.
    7. Re:Baffling to users ? by spitzak · · Score: 2

      You can make Linux applications that run out of a single directory. Use the RPATH option to the linker, which is effectively the same as adding the directory the executable is in to LD_LIBRARY_PATH. Readlink /proc/self/exe to find the executable and use that to find all your other data files.

      Most commercial Linux software does exactly this. Installers pretty much dump an Application directory into /opt and then do a bit more cruft to add a symbolic link to /usr/bin, and to add launch menu items and .desktop files (I agree it would be nice if the system was changed so these extra bits could just reside in the Application directory as well). Advanced users can even try to use the system's versions of shared libraries by renaming the .so files in the Application directory. I can insure you that *nobody* cares if there are multiple copies of various libs and we certainly could never distribute code without being able to force exactly what libpython we are using.

      Linux actually has it better over Windows and OS/X in that there is a well-defined place to dump your user's configuration that is *not* part of the Application, so the users don't clobber each other and the configuration stays even if the application is removed. This is to put it in ~/.appname. Windows suffers from a *lot* of potential locations (due to everything being writable at one time), while OS/X has a misguided attempt to put writable data into the application directory.

    8. Re:Baffling to users ? by QuantumRiff · · Score: 1

      I don't understand how you think that is as simple as putting all your program data in "c:\program files\microsoft\office 10\1033\bin" (or is that program files (x86) done silently without telling you)

      then your data goes into c:/users/localdata/applicationdata/microsoft/office/outlook/"
      Or your settings/data can go in an arcane database that is only 20MB or so in size, but can take a modern computer 3-4 minutes to search through..
      Except of course, libraries, which might be in c:\windows\system32\ or c:\windows\syswow64\
      (both of those are a fun set of folders named after GUID's and using lots of hardlinks to make things even easier to locate)

      How can you not see the simplicity of windows compared to unix?

      --

      What are we going to do tonight Brain?
    9. Re:Baffling to users ? by 21mhz · · Score: 1

      Save yourself pain. Make a new filesystem naming point, say /usr/companyname. Put your company specific code into that directory.

      Then go and hack $PATH, ld.so.conf etc. to make that work.
      The pre-defined hierarchy in /usr/local is wired up so that the system finds your stuff if you drop it there.

      Isolate all applications into some application naming structure, say /appl/foo for application foo. Don't allow applications to put so much as an init script elsewhere, because you were smart and told them they aren't allowed to run any code as root, not even startup scripts.

      You didn't try this in the real world, did you?
      Actually, we have packaging systems which help cope with applications in a better way than filesystem pigeonholing ever could.

      --
      My exception safety is -fno-exceptions.
    10. Re:Baffling to users ? by cbackas · · Score: 1

      Linux actually has it better over Windows and OS/X in that there is a well-defined place to dump your user's configuration that is *not* part of the Application, so the users don't clobber each other and the configuration stays even if the application is removed. This is to put it in ~/.appname. Windows suffers from a *lot* of potential locations (due to everything being writable at one time), while OS/X has a misguided attempt to put writable data into the application directory.

      OS X stores user configuration in ~/Library/Preferences, and always has. While I have seen poor ports try to write things directly into the application, it's clearly the wrong way to do things, works against the design of the system, and just plain doesn't work right for multiple/non-admin users for the most part. The built-in user preferences facilities for developers (Both CFPreferences and NSUserDefaults) use the Library/Preferences locations too, so you'd have to go out of your way to NOT do this.

    11. Re:Baffling to users ? by smpoole7 · · Score: 1

      > *rolls eyes*

      This. And you know what else? If you have more than one user login on a typical Windows system, the files will go everywhere. There will be several "My Documents" folders, and if one user forgets to log out, and someone saves his file under someone else's login, you get to hunt for it. Great fun, and a great way to kill an afternoon. (Or better yet, the user will go back later, log in under his user name, go "wharr's mah file?" and RELOAD it from the thumb drive. Net result: you have a dozen copies of the same dancing chicken video on the hard drive.)

      As for the original idea, that of combining the file system on 'Nix systems, speaking as someone who has wholeheartedly switched from Winders to Linux, I think it's dumb. I *want* my system and supervisor's executables in /sbin or /usr/sbin. I don't want my users to even know that these programs EXIST. I don't want them to see them or even smell a hint of their existence. No. Not happening.

      By the way ... the comments here are obviously based on each person's experience (including mine). But at the risk of stating the obvious: be careful when assuming that your system will be like everyone else's. For 'zample, many servers load up the /var/ and /opt/ directories. That's where they store their data. A Linux Terminal Server, by contrast (and if you haven't tried that, by the way, you don't know what you're missing; its a beautiful thing for an office full of non-technical people who just need email and Web browsing), IS going to store tons of stuff in separate /home directories. Different systems, different approaches.

      The idea of my mail store or database being in a directory that could even be viewed by Joe Sixpack The Conscientious Employee is enough to make me ITCH. Incessantly. When I install a new package, one of the things I do is run around chmod'ing and chown'ing as tightly as I can -- I open it up only as much as is absolutely needed for the package to work properly.

      One size does NOT fit all. End of the day: leave it to me. Don't force some weird filesystem consolidation on me. I'll decide what people need to see, and if they have trouble finding it, I'll show them how to do a Search. :)

      --
      Cogito, igitur comedam pizza.
    12. Re:Baffling to users ? by alcourt · · Score: 1

      Actually, we use it successfully in the on a very large number of systems across multiple operating systems.. Common problems we used to encounter which drove us to this is one vendor insists /usr/local is owned by them, another says they own /opt, a third claimed they should drop binaries in /usr/bin, named the same as OS binaries of course (yes, deliberately replacing some key binaries). By using a neutral directory on all systems, you protect yourself from badly behaved vendors overwriting or blocking your company local utilities and eliminate unnecessary arguments about /opt vs /usr/local. You once make one change to your standard PATH and you are done.

      It helps that we recompile all code ourselves, we don't use pre-built packages. We know better than to trust that code that isn't compiled by us to cooperate nicely with others.

      Applications using the OS packaging is just evil. In the real world, every time any application runs as root or installs as root, you've lost a key battle in your effort to secure your system and keep it maintainable. Those applications that follow our standard are a breeze to keep running. They don't touch any other applications on the system, and you never worry about conflicting library requirements because you end up stacking 30-60 applications on a single logical system. We even can patch with fewer problems because the application doesn't rely on crazy libraries. They want a library version specifically? They provide their own. (Used to bite us a lot on Red Hat).

      The problem with packaging is that it runs as root. The SA either has to spend a lot of time validating the package to ensure it won't break the OS or violate security standards, or just give up and assume that the application just installed a back door on the box in the package scripts. Keep the apps away from root forever, and you've just closed one of the most significant sources of errors. I used to review application packages, and it was common to see established vendors pull stunts like create UID 0 accounts, open up network listeners as root, add root .rhost entries and turn on r-services, or otherwise create numerous back doors. Some even did chmods on key binaries to make them world writable.

      --
      "I may disagree with what you say, but I will defend unto the death your right to say it." -- Voltaire
    13. Re:Baffling to users ? by catmistake · · Score: 1

      Calling them, current UNIX/Linux filesystem hierarcy, "arcane", baffles me.

      How anyone could refer to the UNIX and Linux filesystem hierarchy in the same breath as one and the same baffles me. They are quite different... and idk what caused linux in its early days to depart from the canonical UNIX placement of things. It was unnecessary.

    14. Re:Baffling to users ? by catmistake · · Score: 1

      while OS/X has a misguided attempt to put writable data into the application directory

      I don't think this is necessarily the way to do things in OS X, its just that some developers do this, some applications do this, and you're right... its misguided... and its weird. But its also not all that common as many developers are very smart.

    15. Re:Baffling to users ? by scdeimos · · Score: 1

      Linux actually has it better over Windows and OS/X in that there is a well-defined place to dump your user's configuration that is *not* part of the Application, so the users don't clobber each other and the configuration stays even if the application is removed. This is to put it in ~/.appname. Windows suffers from a *lot* of potential locations (due to everything being writable at one time), while OS/X has a misguided attempt to put writable data into the application directory.

      Putting .config files in the user's home directory is so 2001. Please stop it. If you're to believe one of the many specifications out there, like the XDG Base Directory Specification, then you should be storing user configuration files in ~/.config/blahblah so you're not filling up the user's home directory with crap.

    16. Re:Baffling to users ? by Daniel+Phillips · · Score: 1

      If I want to publish an Android app, I write it this week, and it's in the Market next week. This is because my app will run in a jail where it can only find the files it really needs, in it's own application directory.

      No, that has nothing to do with it. It is because everything has been carefully set up for you by legions of Google gnomes. Have you actually looked at the structure of the Android SDK? It's a huge hairball,and I do mean huge. Have you looked at the structure of Java classlib? What a monument to something. Hey, here's a great idea: put all the Java class files in the same directory, why should there be so many directories? Makes about the same amount of sense.

      --
      Have you got your LWN subscription yet?
    17. Re:Baffling to users ? by Anonymous Coward · · Score: 0

      Everything you said is wrong.

      Care to support that assertion, troll?

    18. Re:Baffling to users ? by Anonymous Coward · · Score: 0

      Boy, I hope to never encounter your software. You're saving yourself from minimal pain at the expense of your users What company do you work for again?

      /usr/companyname [..] /appl/foo

      Ever heard of /opt?

    19. Re:Baffling to users ? by GPLHost-Thomas · · Score: 1

      Actually, perhaps increasing the diversity of directories might come in handy (like in /usr/i686/lib + /usr/x86-64/lib + whatever you might need, and with eventual optimizations, and with eventual debug).

      Actually, what you want is multi-arch support.

    20. Re:Baffling to users ? by GPLHost-Thomas · · Score: 1

      The Gnu/Linux file organization is one of the main obstacles to FOSS development. If I want to publish an Android app, I write it this week, and it's in the Market next week. This is because my app will run in a jail where it can only find the files it really needs, in it's own application directory. If I want to provide an Android library (which I have), you just publish your code and people link to it statically. In Debian, you have to do a shared library, meaning you have to do extensive testing for any new release. It's total BS red tape, and it's killing Linux FOSS efforts. It's actually easier to develop FOSS for WIndows.

      Actually, shared libraries are handled a way better in Linux than in Windows. In Windows, you can have many versions of the same library, and an app will choose the one it needs. That sux and completely kills the idea of having one, unique, shared library actually really shared between apps. Under Linux, we just need to rebuild, that's easy, and in non-FOSS, you're just stuck with what's available. This shared library system is even more important in embedded systems where space is scarce. Saying that people need to statically link to all libs is just plain stupidity!

    21. Re:Baffling to users ? by Haeleth · · Score: 1

      I can accept complains about "/opt" and "/usr/local" - they might not make much sense nowadays

      Really? Where would you suggest I install software that doesn't come from my distro's repositories, then? Because I'm sure as hell not going to put it in plain /usr where it could conflict with the package manager and cause all kinds of horrible problems.

    22. Re:Baffling to users ? by bluefoxlucid · · Score: 1

      Now days, the proper way to organized files

      As people consistently argue that newer is better and this old stuff is just old and archaic... because they want to change what isn't broke. It's not broke but we can make a damn good argument for why it's broke and needs fixing...

      Explain what is not working.

    23. Re:Baffling to users ? by WaywardGeek · · Score: 1

      What you really need is shared libraries that never change, unless there's a major security flaw detected. When you install, you get hard links in your app's directory to all the exact versions of each shared library they depend on. Any application using the same shared library also has a hard link to it, so it's only on the disk once. With this scheme, while it takes more space, testing requirements drop a ton, you don't break when you upgrade, and you can have multiple versions of apps and libraries installed at the same time. Also, running apps in a jail is the way to go. Not that it eliminates threats, but it's a lot better than letting an app see the whole system. The truth is even on phones space requirements are rapidly becoming a non-issue, and the ease of developing applications is more important than ever. Just look at Android, with now over 300K apps, vs Debian with around 30K packages.

      If there is ever going to be a year of the Linux desktop, it's going to take a lot more freedom to develop and publish apps. Just try to get your app into Debian that you write in a couple of days. I did manage to get one in, and I'm glad it's there because it will help a certain class of people, but the effort required was higher than writing the app, and most apps never find a sponsor. The root cause of all this red tape is how we represent apps in Linux. Having a single version of any given shared library was a good idea the year they thought of it, but it's not any more.

      --
      Celebrate failure, and then learn from it - Nolan Bushnell
    24. Re:Baffling to users ? by Dynedain · · Score: 1

      OSX App Data storage:
      ~/Library/Preferences

      Windows App Data storage:
      ~/Application Data/

      Very few OSX programs try to write to /Applications. That went away with OS9 and most developers got smart about it because Apple forced the issue by breaking backwards compatibility.

      A lot of Windows programs used to try to write to the /WINDOWS the Registry or /Program Files because of lazy devs who use hardcoded paths and assume everyone is an administrator. Microsoft unwittingly cultivated this attitude by facilitating extreme backwards support, instead of forcing devs to get with the times. They finally stopped this in Win7 and forced old bad apps to use virtual machines.

      --
      I'm out of my mind right now, but feel free to leave a message.....
    25. Re:Baffling to users ? by badkarmadayaccount · · Score: 1

      Please oh please become a package maintainer - we need more like you.

      --
      I know tobacco is bad for you, so I smoke weed with crack.
    26. Re:Baffling to users ? by GPLHost-Thomas · · Score: 1

      What you really need is shared libraries that never change, unless there's a major security flaw detected.

      During the life of a particular distribution, you just want fix to bugs and security flows, yes, and that's what happens after a flavor of Debian or Ubuntu is frozen (and then released). But what you don't want to change is the ABI (Application Binary Interface). Even when there's a security flow, you don't want the ABI to change. When there's an ABI change and you have reverse dependency on a library, you got to get in touch with the release team, and make a transition in SID (packages depending on your library wont get migrated until everyone made the transition), and it takes a fair amount of work to have this to happen, but it's really necessary (note: most of the time, a simple binary only upload is enough, since just rebuilding solves the issue if the API didn't change).

      When you install, you get hard links in your app's directory to all the exact versions of each shared library they depend on. Any application using the same shared library also has a hard link to it, so it's only on the disk once. With this scheme, while it takes more space, testing requirements drop a ton, you don't break when you upgrade, and you can have multiple versions of apps and libraries installed at the same time.

      Not, libraries don't work with symlinks in Linux, but with the SONAME attached to it. Until the SONAME changes, you don't have ABI incompatibility. If this happens, then it's a bug, and you can file a report against the library package (eg: the SONAME must change if there's an ABI incompatibility). If the SONAME stays the same, but the minor version of the library increases, then you're only producing changes without ABI modification (most of the time: fixes or improvements, no new features). If the SONAME changes, then you can normally have multiple versions of the same library installed on the system.

      For example, under debian (and by policy, so it's a MUST, if you see an example where it's not the case, please fill a bug report), if you have libfoo in version 3.4.5.2, the SONAME being libfoo3.4, then the corresponding debian package will HAVE to be: libfoo3.4_VERSION_arch.deb (not that the version of the package doesn't have to match the SONAME, but it's often the case, so here the version would be 3.4.5.2-1 for example, with "1" being left for Debian to increase).

      Also, running apps in a jail is the way to go. Not that it eliminates threats, but it's a lot better than letting an app see the whole system.

      That's another debate (and I agree with your point: jailing/chroot is useful), and it has nothing to do with library version coexistence, or SONAME, or even the fact you think (wrongly) that libraries should be duplicated.

      The truth is even on phones space requirements are rapidly becoming a non-issue, and the ease of developing applications is more important than ever.

      But again, doing what you wrote doesn't make it more easy for programers. It just makes it a complete nightmare to manage security issues (because if you duplicate libraries, then you got to update all of them, and risk to forget one, or loose track of which one got the fix or not). Also, duplicating libraries mean that you will store them multiple times in memory at runtime, which really, is a big issue (last time I checked, mobile phone are still stuck with not even 1GB of RAM, and even with more on a desktop computer, saving RAM is always good).

      Just look at Android, with now over 300K apps, vs Debian with around 30K packages.

      In Android, anyone can decide to put one more app in the store, without much checking of usefulness. In Debian, before you can upload a package, a Debian developer will ask what's your motivation to have the package in the archive. For example, if there's already a pack

    27. Re:Baffling to users ? by WaywardGeek · · Score: 1

      Hackers love to share. GNU/Linux should embrace this. If they do, they'll increase FOSS development in GNU/Linux tenfold. That's the entire point of my argument.

      I see you're very knowledgeable about Debian and that was a long and thoughtful reply. Of course this is slashdot, so I don't mind playing devils advocate, but I'm actually a big fan of Debian. It is some of the most important software ever written. It's changed the world in amazing ways. I've used it as my main OS on my main machine, and we do on our severs at work, and the Ubuntu distro I use now for various reasons is based on Debian.

      That said, my goal is to get GNU/Linux developers and the Debian devs in particular to wake up to the fact that we've built a cathedral when we need a bazaar. As you've likely read in the paper by that title, Emacs was developed in a manner where ever bit was laid by expert craftsman under the watchful eye of RMS. Contributors were not allowed to add to the cathedral willy-nilly. GNU was going to be built right, even if RMS had to do it himself. Meanwhile, Linux Torvalds threw out his kernal and encouraged everyone to use it and people started building all sorts of stuff. Anyone could write a program today, and have it shared on the list tomorrow. That was the bazaar, and it's where the heart and sole of GNU/Linux was created. Then came the Debian package manager, and the whole scene changed. It is wonderful to have pre-compiled repositories of verified code compiled from source, and that's the foundation that made Debian great. The problem is that this binary repository is managed lovingly by devoted monks. Every brick is carefully examined by experts and nothing gets included unless it passes the high standards of the Debian monastery. The good news is that it's no longer just one man in charge. The bad news is there's now a group of devoted monks in charge. The process of carefully examining every brick and excluding most has not changed since emacs.

      The magic happening in Android, and I hate to admit but iOS too, is they've gone back to the bazaar model where anyone can share any app they like. Sure, most of it is crap. In fact they probably have an app for crap. Part of it is driven by developer greed, which is counter to what Debian stands for, but most of it is just hackers enjoying their new found freedom to share. Sure, the base is solid, and carefully crafted and built at Google. You can't just write any old crud and expect it to ship installed on every phone by default. You need the default code base to "just work". However, anyone is enabled to share whatever crap they like as an app in the market. That freedom to share is missing in Debian.

      Now, back to the technical points we talked about. I'm not recommending sym links, but hard links to shared libraries, and I'm recommending that apps run chrooted in an app jail, and that they install in an application directory where every library they need has a hard link. They could have their own /usr/lib directories for their shared libraries, but on the actual disk it should be /Apps/MyStupidFartApp/usr/lib/libsndfile.so.whatever. This would keep MyStupidFartApp from colliding with my friend's competing BiggerAndBetterFarts app, as we're likely to want to install a /etc/fart.conf. Because my fart app has deeper tones, it wins and my friend's loses, but later he submits a patch to libsndfile while gets included in Debian but totally breaks my poorly tested fart app. Why should my popular fart app suffer because it has bugs that were sensitized by a new libsndfile shared library? If we just run them in their own jails, and never upgrade their shared libraries (except in sever security situations), that fart app should continue to run for decades. Why should I go through the Debian packaging and review process to share a stupid buggy fart app? Why does Debian stand in my way?

      --
      Celebrate failure, and then learn from it - Nolan Bushnell
    28. Re:Baffling to users ? by GPLHost-Thomas · · Score: 1

      That said, my goal is to get GNU/Linux developers and the Debian devs in particular to wake up to the fact that we've built a cathedral when we need a bazaar. As you've likely read in the paper by that title

      Of course I know the Cathedral and the Bazaar. I believe that Debian is a mix of both methods, since we release SID 4 times a day, and stable each 2 years based on that.

      That was the bazaar, and it's where the heart and sole of GNU/Linux was created.

      I'd say that's what Linux is doing now (but do you remember the Linux 2.5 development version?), I'm not so sure about GNU and the GNU tools.

      The problem is that this binary repository is managed lovingly by devoted monks. Every brick is carefully examined by experts and nothing gets included unless it passes the high standards of the Debian monastery. The process of carefully examining every brick and excluding most has not changed since emacs.

      Debian is adding about 500 new (source) package each month. I don't think anyone can even keep-up with this pace and know all what's available. In some ways, there's too many packages in already (especially since many aren't maintained by anyone, and that the QA team has to suffer the burden of it). If you want even more packages to get in, the issue isn't religion. Debian is a do-ocratie: do things, and you'll be right. Here, there's clearly not enough people working on mentoring / sponsoring uploads.

      The magic happening in Android, and I hate to admit but iOS too, is they've gone back to the bazaar model where anyone can share any app they like.

      And you know what? I'm SOOOOOOOOOO happy that this isn't the case in Debian!!! No, I don't want just any random sh*t to get in the archive. Thanks but no thanks.

      However, anyone is enabled to share whatever crap they like as an app in the market. That freedom to share is missing in Debian.

      You are free to share crap through a private repository, and advertize about it. But you don't have the freedom to upload anything into main. The first reason for that is at least that we have the need, for legal reasons, to check on the debian/copyright file. By the way, another way of sharing would be PPA, like it happens in Ubuntu. The advantage of PPAs is that you also get the advantage of having your package built on all arch (eg: you use the buildd things from Debian), which would be quite hard to reproduce at home.

      Why should my popular fart app suffer because it has bugs that were sensitized by a new libsndfile shared library?

      Simple: because we want libsndfile to be FIXED, once and for ALL of it's reverse dependency, and because we care about the distribution as a whole. Your example is pointing at flaws and errors, these should get fixed, that's it, and that's why we got a bug tracker.

      If we just run them in their own jails, and never upgrade their shared libraries (except in sever security situations), that fart app should continue to run for decades.

      You still don't get it, so I'll try again. So, according to you, if we have 2 applications, then it's ok to have 2 times the same library stored twice, and using twice the amount of RAM that they should. What if that's the case for let's say 1000 apps instead of 2? What if all apps where carrying their own version of libc6, which makes about 20 000 packages in Debian holding their own version of libc6? What if there was a security issue in libc6? Will we have to update ABSOLUTELY ALL the 20000 packages? I don't think that's remotely possible to work this way, unless you find 20 000 new Debian Developers to work this way. The memory usage would go up a lot too. Please don't tell that libc6 isn't a good example: you'll find some others, I'm sure. I could say gtk, qt, alsa, or whatever, there would be just less "users" but the point would be the exact same one. So, NO, what

    29. Re:Baffling to users ? by WaywardGeek · · Score: 1

      You still don't get it, so I'll try again. So, according to you, if we have 2 applications, then it's ok to have 2 times the same library stored twice, and using twice the amount of RAM that they should.

      You do realize that with hard links, a file can be in multiple directories and stored on both disk once? If the Linux kernel doesn't detect that we're loading the exact same shared library twice, that bug should be fixed. There should be zero impact on RAM and very little on disk space (you still have to represent the directory structure multiple times). However, if two applications downloaded and installed through an App Center were compiled with different versions of libc, then yes, have two on the disk. How many are we realistically talking about, given that we're not talking about the stuff that comes pre-installed or anything in any .deb file? Several megabytes? In an extreme case maybe a gigabyte of disk space?

      What if that's the case for let's say 1000 apps instead of 2?

      If a user actually donwloads and installs 1000 apps, there's likely to be some bloat. My phone has 32 gigabytes. Even the gigabyte of bloat this is likely to cause with 1000 user downloads is a minor problem.

      What if all apps where carrying their own version of libc6, which makes about 20 000 packages in Debian holding their own version of libc6? What if there was a security issue in libc6? Will we have to update ABSOLUTELY ALL the 20000 packages?

      Since apps would run in jails, you'd only want to upgrade the apps needing the functionality that's broken. For example, if my app does not have permission to use the network, you should not upgrade my copy of libc6 to fix a major network security bug. Again, we're talking about user apps, not the base shipped by Debian. How many packages are we likely talking about? 10 mabye?

      Please don't tell that libc6 isn't a good example: you'll find some others, I'm sure. I could say gtk, qt, alsa, or whatever, there would be just less "users" but the point would be the exact same one.

      I didn't want to get into this much detail, but you are right. Libc isn't a representative case. If I make a simple command line utility, it should by default link against an older libc to be compatible with as many distros as possible. High level packages like Qt should be published by the developers in occasional stable releases not only in source form, but in binary, all the way down to libc. When building a Qt app, I should be able to specify that I link against an exact version of Qt, which of course could mean users have do to a major download if they don't have it already, or I could specify that it must be a version of Qt 4.x, where x >= 7. It should also indicate that it was built and tested with Qt 4.7 with the full SHA-256 hash code of the Qt library used, so if users have trouble running it with Qt 4.9, they can run it instead with the original 4.7.
      This could mean I have three versions of GTK+ and four of Qt if I'm a user who loves running old apps that don't have newer releases. So what? Why not let the program author and end user do that.
      Again, I'm not recommending Debian abandon the debian package manager or how they build their distro. They just need to add a layer on top for downloading and sharing apps that work cross-distro. In more detail, there also needs to a way to share libraries among developers without going through the whole debian package/review process, and it could leverage the work for done for sharing apps.

      Funnily, I think the opposite way. I think Linux needs more very complex and full application like Photoshop (and not the stupid Gimp) to be able to be saved. Lucky, in some areas, it's getting better (have you ever tried Rosegarden, for example? It's really close to using Cubase now...). It would also need games.

      One

      --
      Celebrate failure, and then learn from it - Nolan Bushnell
    30. Re:Baffling to users ? by GPLHost-Thomas · · Score: 1

      You do realize that with hard links, a file can be in multiple directories and stored on both disk once?

      I do. And I also realize that they don't work over multiple partitions. Anyway, using hardlinks instead of SONAMEs isn't the correct solution. SONAME are working well, and we're fine with them, we don't need the hardlinks on top of that, so why bother changing something that works already very well? In what exactly, adding hardlinks, will help? Should we completely redesign shared libs, and remove SONAMEs then?

      However, if two applications downloaded and installed through an App Center were compiled with different versions of libc, then yes, have two on the disk. How many are we realistically talking about, given that we're not talking about the stuff that comes pre-installed or anything in any .deb file? Several megabytes? In an extreme case maybe a gigabyte of disk space?

      If someone wants to do what you are saying above, then he can simply do static linking. So I don't see your point.

      Since apps would run in jails, you'd only want to upgrade the apps needing the functionality that's broken. For example, if my app does not have permission to use the network, you should not upgrade my copy of libc6 to fix a major network security bug. Again, we're talking about user apps, not the base shipped by Debian. How many packages are we likely talking about? 10 mabye?

      You're just trying to find an example that matches your argument, but I don't think that works. What if we REALLY find a bug affecting them ALL?

      Anyway, currently, you HAVE some vendors that are shipping statically apps. Try installing google earth on Linux, for example. It's one binary for all distro, and to be installed under ~/bin. But frankly, I don't like it... It's like that for only one reason: because we don't have the sources, and we can't rebuild.

      I didn't want to get into this much detail, but you are right. Libc isn't a representative case. If I make a simple command line utility, it should by default link against an older libc to be compatible with as many distros as possible.

      This is not the way things work. Do this: objdump /lib/libc.so.6 -p | grep SONAME. This tells the SONAME of the libc. If you do something and dynamically link it to libc, then it has to have the matching SONAME of the system one, otherwise at runtime, it wont be able to use the functionality of libc. There's nothing such backward compatibility here. Either you have a matching SONAME pair, either you don't. End of the story.

      High level packages like Qt should be published by the developers in occasional stable releases not only in source form, but in binary, all the way down to libc. When building a Qt app, I should be able to specify that I link against an exact version of Qt, which of course could mean users have do to a major download if they don't have it already, or I could specify that it must be a version of Qt 4.x, where x >= 7. It should also indicate that it was built and tested with Qt 4.7 with the full SHA-256 hash code of the Qt library used, so if users have trouble running it with Qt 4.9, they can run it instead with the original 4.7.

      Again, that's not the way it works. When you build a library, you give something like this to gcc: -Wl,-soname,libfoo.so.1.0
      Then your library will have libfoo1.0 as soname. There's no such things such as >= libfoo1.0, it has to be AN EXACT MATCH. It has to, that's the way library works. If you think it shouldn't, feel free to contribute to the GNU compiler... :)

      Then under Debian, there's dh_shlibdeps that will collect dependencies for each library you have built against. That's an automatic process, and you shouldn't care too much about it, but what you got to know is that it will, by default, and IIRC, do Depends: libbar1 (>= VERSION-INSTAL

    31. Re:Baffling to users ? by WaywardGeek · · Score: 1

      Ok, so I get SONAME must match exactly. I'm only advocating doing what Android does today, but in a way that saves even more disk space. Android today makes every app have it's own copy of every library it uses, whether a .so file or statically linked, other than base libraries that are part of Android. The resulting bloat isn't even enough for Google to feel like bothering to minimize it, though it bothers me. So, just have apps run in chroot (and additional permission) jails where they see their own copy of / exactly as it was when the developer built and tested it. As an exception to this, the developer could specify which libraries he wants to allow updates to, and if there is some crazy security bug that impacts this app, then force an upgrade. IMO, Linux security is pretty flawed today, even compared to Mac OS X, Windows, and Android. This is partly why we have to carefully review source and hate trusting binary only apps. With better jails and app monitoring, I think we could reduce the required review process considerably.

      I don't understand why you keep bringing up SONAME when I mention hard links. If I have 20 identical files on the disk that are all read-only, making them 20 hard links to the same file is just to save disk space and memory. The SONAME mechanism is still in place and works as before. It's not an either/or thing. Hopefully the Linux kernel is smart enough to load the same file only once, even if it is linked to in different directories, but it's a corner case that may not yet have been optimized.

      As for wanting higher quality FOSS apps, I have some bad news, though RMS would refuse to believe it. While there are rare and often noble exceptions (like gcc), the general rule is that if a programmer can sell his program, he will. Most of us like open source and we like to contribute, but we like money, too. Photoshop, from what I hear, has lots of functionality users are willing to pay for, and few if any worthy competitors. This means the next worthy competitor could print money by offering a product just as good for half the price. So, given how much people like money, don't hold your breath for that open source Photoshop.

      The point when most stuff becomes open source comes when there's no money to be made by keeping it closed source. That's how we got Open Office and Mozilla. These markets where so dominated by Microsoft's monopoly, there was no money left to be made. The Microsoft monopoly on OSes forced Linus to write his for free. If someone had said, "Linus, here's a lot of money for writing our next proprietary kernel", I suspect instead of Linux, we would have had to wait for the next guy who wanted to write his own kernel so bad he'd even do it for free. How much better would it be to write your own kernel and get rich at the same time? Eventually, even for free or low cost, open source projects can catch up to teams of paid developers, but only if those developers stop innovating. This happens naturally sometimes when a market niche has matured.

      The most noble exception I know of is RMS himself. Until the world starts pumping out more people like RMS, we're not going to see all that excellent free software we want.

      --
      Celebrate failure, and then learn from it - Nolan Bushnell
    32. Re:Baffling to users ? by GPLHost-Thomas · · Score: 1

      I don't understand why you keep bringing up SONAME when I mention hard links.

      Because thanks to the SONAME mechanism, your hardlink idea is useless. You just load whatever SONAME you need, and that's enough to know what library to load.

      The point when most stuff becomes open source comes when there's no money to be made by keeping it closed source.

      I'd rather say that sometimes, it makes more sense to be open source, and it can sometimes even generate more money. It's especially interesting to see projects starting with an open core, then deciding to release everything (see Xen for example...).

      The Microsoft monopoly on OSes forced Linus to write his for free.

      When Linus made one of his first presentation, he said that proprietary Unix were so expensive, that it takes less money to write one than to buy it. What motivated Linus wasn't Microsoft, but other Unix, and especially Minix.

      If someone had said, "Linus, here's a lot of money for writing our next proprietary kernel", I suspect instead of Linux, we would have had to wait for the next guy who wanted to write his own kernel so bad he'd even do it for free.

      We would then all be running Hurd, FreeBSD or Minix.

      How much better would it be to write your own kernel and get rich at the same time?

      Well, Linus got rich...

      Eventually, even for free or low cost, open source projects can catch up to teams of paid developers, but only if those developers stop innovating.

      I don't believe so. Also, it's plain false, today, to think that open source isn't ALSO driven by money. Many big projects are (and some aren't). I'd be very careful with all these generalities, because the open source world is full of exceptions.

    33. Re:Baffling to users ? by thejynxed · · Score: 1

      Sweet lord, that was commercial software? Sounds as bad as malware found on Windows systems, in fact, it sounds WORSE than what your average malware will do on a Windows system.

      Of course, I don't think that stuff even approaches the incredibly crazy things that programs like Norton or McAffee do to a Windows OS...worst behaving commercial software packages I've ever had the mispleasure of dealing with, even the Enterprise versions are atrocious.

      --
      @Mindless Drivel: 100% of Twitter posts ever Tweeted.
  20. no thanks by bsDaemon · · Score: 2

    the file system hierarchy makes perfectly good sense -- the absolute basics are in /bin, distribution/system stuff is in /usr/bin and anything that an administrator installs for that particular box is in /usr/local/bin. Substitute sbin for sysadmin-y binaries. I guess maybe it doesn't matter as long as it doesn't take off, since I can just not use Fedora ever again, but frankly I like things just they way they are. The weird places that Ubuntu stashes things is already enough of a hassle when you have an extremely heterogeneous environment like I do at work.

  21. Mod Parent Up by Hatta · · Score: 0, Offtopic

    AC is Insightful and Informative.

    --
    Give me Classic Slashdot or give me death!
    1. Re:Mod Parent Up by Surt · · Score: 1

      Regrettably, that was the last sign of the apocalypse. Doesn't look like we'll even make to 2012.

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    2. Re:Mod Parent Up by chromas · · Score: 1

      I think we can. Remember, just when the drama starts to build...ad break!

    3. Re:Mod Parent Up by SharkLaser · · Score: 2

      No, he is completely wrong about NTFS decompressing the files. It does not, like others have noted too.

  22. Re:Errr by jd · · Score: 3

    As a kindly reader, I'd even put in a note for the editors whilst it was in the firehose queue that this should be "Knot". Not really a major typo and the editors can't be blamed for not reading all the comments, but it'd be good if more people DID pre-screen the submissions and enter USEFUL corrections so that the quality can be improved.

    --
    It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
  23. Forget filesystem location, what about LVM? by Scareduck · · Score: 1

    Can't take a hard drive built with LVM and migrate it to another machine with the same name -- i.e. a common operation after a hardware upgrade. I suppose it is possible to rename the logical volume, but this is fairly arcane, and why should I have to do this? ext4 offers no such impediment.

    --

    Dog is my co-pilot.

    1. Re:Forget filesystem location, what about LVM? by Anonymous Coward · · Score: 0

      LVM is not a filesystem. Ext4 is.

      I agree that moving LVM disks from machine to machine is a bit like rocket science. But it's not as bad as it seems. The main thing to work with the UUIDs, not the names. UUIDS are unique (for all intents and purposes).

    2. Re:Forget filesystem location, what about LVM? by nabsltd · · Score: 1

      Can't take a hard drive built with LVM and migrate it to another machine with the same name -- i.e. a common operation after a hardware upgrade.

      I do this all the time with VMs with absolutely no config changes (i.e., it just works).

      Now, if you have a system with a LVM group/volume name of foo/bar, then yes, you can't just add disks that already have a foo/bar group/volume to the machine and have it work. If there is no name collision, though, it just works. It's how I upgraded a really old Fedora install. I renamed the old LVM group, then disconnected the old hard drives, added an SSD, installed the latest Fedora on the SSD, and plugged the old drives back in to allow me to copy my customizations to the new drive.

      I suppose it is possible to rename the logical volume, but this is fairly arcane

      lvrename VolumeGroupName OldVolumeName NewVolumeName is arcane? I can tell you don't do much with LVM, since lvrename is one of the least twisted of all the LVM commands.

    3. Re:Forget filesystem location, what about LVM? by prefect42 · · Score: 1

      Are you really just griping about clashing vg names? If this is something that you need to do, just name your volume groups with unique names in the first place. Is this wildly different to having ext4 filesystems with identical labels? The solution in that case is to use UUIDs instead to mount, which are highly unlikely to clash. But I don't really see the problem in setting your vg name to machinenamevg2009a. When you get your new machine you can call the VG machinenamevg2011a. But this really is griping over nothing.

      Also, given you should really need to use the vg name directly too often, why not just mash your palm into the keyboard when you choose a vg name...

      --

      jh

  24. what users? by Superken7 · · Score: 1

    What users should care about where binaries go? Really, which kind of users are baffled to find several binary directories?

    I bet that most that do, understand simple concepts such as $PATH, which and are probably able to deal with there being multiple directories.

    I can see how this could be beneficial for installers and could help package maintainers that port from one distribution to another. Maybe Linux Standard Base already addresses this and this is only a moot point. This is only good if everybody does it equally anyways, or you will be just another distribution making things their own (different) way.

    Is it really that important to consolidate binaries and libraries? I find other things like networking configuration and boot process, init scripts or inittab to be more confusing to system administrators, for example. But binaries?

    Why not work on having _persistent_ system setup (like boot process, networking, config files, etc) work as universally as other tools such as ip/ifconfig. Imagine doing package search nmap and have it translate into apt-cache search on debian and yum search on fedora or CentOS. Or "network eth0 192.168.20.3 gateway 192.168.20.1": would write the corresponding /etc/network/interfaces on debian or /etc/sysconfig/network under redhat-based distros. Now THAT would be great.

    Everything which works towards being not distro-specific is great, but IMHO you get that through abstraction. Not by saying "no, THIS is the right directory to put things in, I am right and everyone should do it the same way".
    It's probably much more easily said than done, but that's how I see it.

    1. Re:what users? by jon3k · · Score: 1

      This seems like the "why are you wasting time giving me a speeding ticket when there are murderers out there" argument. How about we knock out some simple low-hanging fruit while we work on the big stuff?

      But as for your question, I'd answer it with another question - why not? Why not remove some unnecessary and archaic complexity?

    2. Re:what users? by Superken7 · · Score: 1

      You are right. Yes, there is nothing wrong with removing the complexity if it is unnecessary. Before trying to solve a problem you first must find an authentic problem to solve. Maybe this isn't really considered a problem at all, and someone just feels like simplifying things. In the open source community, people will probably work on what they enjoy.

    3. Re:what users? by badkarmadayaccount · · Score: 1

      Electra initative. Plaintext backend.

      --
      I know tobacco is bad for you, so I smoke weed with crack.
  25. "union" filesystem can do this already, no? by yossie · · Score: 1

    Rather that move things around, how about use "union" filesystem to present an optional different view of things. Heck, you could use chroot and union fs to create a completely different singular view of the same file system to different users..

    1. Re:"union" filesystem can do this already, no? by badkarmadayaccount · · Score: 1

      That would be reimplementing CSD as in HP-UX.

      --
      I know tobacco is bad for you, so I smoke weed with crack.
  26. This is stupid by nurb432 · · Score: 0

    There are reasons things are as they are, and mucking about with something so fundamental because it 'confuses some newbies' isn't a valid reason.

    Newbies can learn. Disasters are hard to undo. Leave things be.

    --
    ---- Booth was a patriot ----
    1. Re:This is stupid by Anonymous Coward · · Score: 0

      Why don't you explain the reasons then, and more importantly, why they're still relevant?

    2. Re:This is stupid by Anonymous Coward · · Score: 0

      I second that. It would just piss me off. How hard is it, seriously? If I can learn the Linux filesystem, so can a newbie.

    3. Re:This is stupid by Crispy+Critters · · Score: 1
      Weird that "confusing to newbies" is not in TFA. Was it invented by the submitter?

      The reasons stated were 1. "clean up the mess that was made when the /sbin and /bin directories were first split" 2. "it would be far simpler to run multiple instances of the operating system on different machines on a network," 3. "facilitate the use of snapshots"

      The first of these is begging the question (what mess?). I can't make heads or tails of the other two.

      If Lennart Poettering is a primary advocate, it means that the change would make something the Lennart wants to do on his personal desktop easier for him.

    4. Re:This is stupid by drb226 · · Score: 1

      There are reasons things are as they are

      99% of the time the reason is simply: because that's how the developers did it. Just because there are reasons doesn't mean the reasons are good. "Leave things be" is quite possibly the worst advice, ever, when it comes to advances in computing.

    5. Re:This is stupid by peppepz · · Score: 1
      /bin is for important system files that can be useful to mount the rest of the file system. Only a well-specified set of files goes there, your distribution knows what they are, and you shouldn't ever put anything in there, nor delete anything found there. See them as the equivalent of the hidden files in C:\ on Windows.

      /usr/bin contains all the executables that are part of your system. Except those few, fixed ones that went in /bin.

      /usr/local/bin potentially contains all the executables that you as a user might want to add to your system, for example stuff that you compiled.

      /opt/package name/bin contains the executables found in a specific package, usually a large package with many files which aren't of interest to the rest of the system, and that you downloaded from a third party instead of having it installed as a part of your system's distribution.

      Repeat the same reasoning replacing "bin" with "lib" for libraries.

    6. Re:This is stupid by Anonymous Coward · · Score: 0

      They're mucking around with it because they want the OS all in one place so they can do fun things like atomic snapshots. They already put /bin and /sbin in the path for normal users.

    7. Re:This is stupid by Anonymous Coward · · Score: 0

      Everything Lennart does with Linux makes it worse.

      As for the snapshot thing... I have perfectly usable snapshots in ZFS without needing to change any of the file hierarchy. I imagine btrfs will be able to do the same thing (I certainly hope so, or the btrfs guys are missing the point entirely.)

    8. Re:This is stupid by 21mhz · · Score: 1

      /bin is for important system files that can be useful to mount the rest of the file system.

      And you have to "mount the rest of the system" where exactly?
      Can you point your finger at a system which has /usr on a different partition from the root filesystem, and it is this way for a good purpose?

      --
      My exception safety is -fno-exceptions.
    9. Re:This is stupid by Anonymous Coward · · Score: 0

      Everything Lennart does with Linux makes it worse.

      As for the snapshot thing... I have perfectly usable snapshots in ZFS without needing to change any of the file hierarchy. I imagine btrfs will be able to do the same thing (I certainly hope so, or the btrfs guys are missing the point entirely.)

      Can't we ship him off to redmond permanently ?
      You know, so that he can improve windows the same way he improves linux ? ^_^

    10. Re:This is stupid by visualight · · Score: 1

      This is backwards. Advocates of this idea should be the one to jump through hoops to justify taking away an option that has been there forever.

      This idea doesn't solve even one problem for anyone. Anyone who can't grasp the file system will still be stupid after Fedora changes it, but mounting /usr on its own will no longer be an option. How is that an improvement?

      --
      Samsung took back my unlocked bootloader because Google wants me to rent movies. They're both evil.
    11. Re:This is stupid by peppepz · · Score: 1
      You have a point if you say that the / - /usr split is less relevant today because it has been somehow superseded by the use of an initrd/initramfs. Most distributions require or take advantage of an initramfs. But that is much worse from a complexity point of view, because it involves a copy of a different subset of the file system (not only the /bin and /lib directories) which has to be duplicated on the real / file system (if you want to unmount the initrd - wipe the initramfs), often has a different ABI (e.g. uclibc vs. glibc) and has to be kept in sync with the main copy (e.g. when you add new kernel modules, new firmware). It's even invisible to the average user.

      It's done for a very good reason (better network boot, boot from usb devices, more flexibility in general) but I don't think the average user can deal more easily with an initrd than he can with a plain /usr mount point. So it's not being done for simplicity as they say here. Especially if you consider that the added simplicity (moving two dozens files from a folder to another) is hindered by the complexity which would need to be added for compatibility reasons (don't think that scripts starting with #!/bin/sh would disappear overnight).

    12. Re:This is stupid by 21mhz · · Score: 1

      You have a point if you say that the / - /usr split is less relevant today because it has been somehow superseded by the use of an initrd/initramfs.

      I think it has been superseded by extinction of dickless machines (typo approved by ESR) that have such a small local hard drive that you can't fit the entire system on it.

      --
      My exception safety is -fno-exceptions.
  27. GOBO by Anonymous Coward · · Score: 1
    1. Re:GOBO by Anonymous Coward · · Score: 0

      Very nice!

  28. even simpler by FudRucker · · Score: 2, Interesting

    forget /usr, just do /bin /dev /etc /home /lib /media /proc /root /sbin /sys /tmp /var

    --
    Politics is Treachery, Religion is Brainwashing
    1. Re:even simpler by Anonymous Coward · · Score: 0

      Kinda like AmigaOS using C (commands), devs (device drivers), Expansion, fonts, L (handLers), libs (libraries), Prefs, S (scripts), system, T (temp), trashcan, and Utilities.

      Anything that needed to be shared was dumped in one of those drawers, the rest get shoved into the respective install drawer.

      Huh. Looks like a computer OS designed back in 1985 was a pretty darn good one, wouldn't you say?

    2. Re:even simpler by Anonymous Coward · · Score: 0

      from TFA, it's that /usr/sbin, /usr/bin, /usr/lib, and /usr/lib64 is symlinked to /. all that's left is to have /usr/local symlinked to /opt to finish that religious war.

    3. Re:even simpler by st3v · · Score: 1

      forget /usr, just do /bin /dev /etc /home /lib /media /proc /root /sbin /sys /tmp /var

      Forget that, just do /Applications /Devices /Settings /Users /Users/root /Libraries /System /Temp /Variable

    4. Re:even simpler by Anonymous Coward · · Score: 0

      the reason that they want /usr is to create a single top level directory that can be snapshotted - for example, you would need to have /bin and /bin64 and you would need to change your snapshotting scripts whenever something new comes up.

      But putting everything under /usr makes it simpler for all the scripts. you could call it something other than /usr though (/system ?)

    5. Re:even simpler by Anonymous Coward · · Score: 0

      I'd actually go the other way (which, I'm ashamed to say is slightly windows-esque): /home /usr /media

      (you could call /usr something like /system or /os or something if you want)

    6. Re:even simpler by Anonymous Coward · · Score: 0

      Where does stuff from /usr/local go in your scheme?

    7. Re:even simpler by suspiciously_calm · · Score: 1

      Getting rid of sbin is part of the goal. bin and lib should definitely go into some subdirectory together that can be mounted on a different partition.

    8. Re:even simpler by bill_mcgonigle · · Score: 1

      do /Applications /Devices /Settings /Users /Users/root /Libraries /System /Temp /Variable

      So, do you hate sysadmins, or are you in the left-Shift keyswitch business?

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    9. Re:even simpler by Michael+Wardle · · Score: 1

      Agree, but it's trivial to adapt to.

      ~/.inputrc
        set completion-ignore-case On

      ~/.zshrc
        zstyle ':completion:*' matcher-list '' 'm:{a-zA-Z}={A-Za-z}'

    10. Re:even simpler by bill_mcgonigle · · Score: 1

      set completion-ignore-case On

      Oh, awesome, thanks!

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    11. Re:even simpler by Gazzonyx · · Score: 1

      and /mnt

      --

      If I mod you up, it doesn't necessarily mean I agree with what you've said, sorry.

    12. Re:even simpler by shutdown+-p+now · · Score: 1

      sbin is for "static binaries", isn't it? At least back in the day, everything there was statically linked and could be used without pretty much anything else available.

      On the other hand, why would you care about bin and lib being mountable on a different partition? Is there anyone who still does that these days?

    13. Re:even simpler by Anonymous Coward · · Score: 0

      /var/tmp, too. I generally make /var/tmp a symbolic link to /tmp when I can, though.

  29. So windows is right by microbee · · Score: 1

    Putting everything under C:Windows and C:Windows/system turn out to be the way to go.

    1. Re:So windows is right by F.Ultra · · Score: 1

      Na, it's far better to put all the 64-bit dll:s into C:\Windows\system32\ and the 32-bit dll:s into C:\Windows\syswow64\. Makes perfect sense :-)

    2. Re:So windows is right by Anonymous Coward · · Score: 0

      Putting everything under C:Windows and C:Windows/system turn out to be the way to go.

      C:\Windows... C:\Windows\System

      There, fixed that for ya.

    3. Re:So windows is right by Lehk228 · · Score: 1

      and \Windows\system32 and \program files, and \program files (x86), and AppData\Local\VirtualStore\Program Files\ ...

      --
      Snowden and Manning are heroes.
    4. Re:So windows is right by jon3k · · Score: 1

      Well with that logic let's divide the root filesystem up into 10,000 directories then it'll be WAY better than windows!

    5. Re:So windows is right by EvanED · · Score: 1

      I'm pretty much as big of a Windows fan as anyone on Slashdot, but that still makes me cringe. :-)

      I think that every, say, 10 years, everyone should have to rewrite all their software and ignore backwards compatibility cruft like applications hard coding c:\windows\system32 (which is why I'm guessing they did that). Then make it illegal to run any code that has since gone through more than one rewrite (and is thus >20 years old).

      (Of course I say that with my tongue pretty firmly planted in my cheek... but god damn are there some ugly things sticking around in computing because that's the way things have been for decades or because fixing them will break lots of programs etc.)

    6. Re:So windows is right by Anonymous Coward · · Score: 0

      Exactly. While I agree that the Linux file tree could use a little sprucing and cleaning up, it's got nothing on the amount of crud that Windows has. Programs install in Program Files, except when they don't because programs install wherever they want.

      It's also difficult to keep a data partition separate from an OS partition in Windows. This is a problem mainly because user data is scattered all over the filesystem (eg. video editing program that saves edited videos to it's own Program Files folder), unlike in Linux where it is fairly easy to store personal data (and settings through the hidden . folders) separate from the OS by just making /home a separate partition.

      Then there's the whole registry non-sense. Linux isn't perfect with config files (hell, there is gconf), but at least it mostly works unlike the tangled mess of Windows system and application configurations.

    7. Re:So windows is right by scdeimos · · Score: 1

      Your first mistake is hard coding paths in your application. That's what causes breakage in the first place.

      I dislike Windows about as much as you claim to like it, but at least it has an API call you can use to ask it where various standard folders are: SHGetSpecialFolderPath(). It's been around since Windows 98 (95?) and is even accessible from .NET through the managed wrapper function System.Environment.GetFolderPath()

    8. Re:So windows is right by EvanED · · Score: 1

      Hey, I don't say I do that, I say there are a lot of crappy developers that do that. :-) And their programs break if you move stuff around.

      And yeah, it sucks. I've decided to not install programs in the past because they've hard-coded install paths and such. For instance, at least last I checked, Chrome. (Not that I'd use it on Windows anyway.)

    9. Re:So windows is right by Dogun · · Score: 1

      No new code (except in the rare case where you are writing a tool to migrate stuff out of the VirtualStore into a new unprivileged user data directory) should reference the VirtualStore. That was created because ignorant devs couldn't wrap their heads around ACLs and didn't listen when MS told them that there's things out there that aren't admins.

    10. Re:So windows is right by catmistake · · Score: 1

      sure... and what Linux really needs is a registry. Then its transformation to the Dark Side will be complete.

    11. Re:So windows is right by pseudonomous · · Score: 1

      Those gconf xml files remind me an awful lot of the windows registry...

    12. Re:So windows is right by catmistake · · Score: 1

      Perhaps its time to get your vision checked, as they are not even remotely similar. xml files are files. The Windows Registry is a database.

    13. Re:So windows is right by F.Ultra · · Score: 1

      Well, imho it doesn't make any sense for backward compatibility either since the old software is the 32-bit one and that path is changed while the new 64-bit software that has to be recompiled and changed anyway is the one who gets to use the old path :-)

  30. No thanks by vadim_t · · Score: 0

    First, this makes some setups a lot more annoying. The /bin and /lib dirs might be rather obscure these days, but the separation still comes ocassionally handy with strange disk layouts.

    Second, since when do normal users need to care about the distinction? All those are in $PATH anyway, so it doesn't matter whether bash is in /bin or /usr/bin for most end user purposes.

    Third, what's with the weird obsession with messing with what works? Ubuntu is annoying enough already with the upstart thing. I don't need more stuff like that. Please leave the base system the hell alone.

  31. no long filenames ? by Anonymous Coward · · Score: 0

    why put the executables in a directory called bin ?
    its not 1980

    how about making the filesystem a bit more intuitive, call it "Programs" or "Applications"

    the file system layout is one of the worst things about Linux, we have had long file-name support in "other" OSs for years, yet Linux insists on put things in ridiculous cryptic directory names /usr /bin /etc ?

    gotta be some kind of joke that in 2011 thats the best linux can do

    A

    1. Re:no long filenames ? by Alain+Williams · · Score: 1

      how about making the filesystem a bit more intuitive, call it "Programs" or "Applications"

      and break a gazillion programs out there that have been working for years. What about the transition -- some with have /bin/date and others /Programs/date -- it will make porting programs between systems much harder.

    2. Re:no long filenames ? by jmorris42 · · Score: 1

      > how about making the filesystem a bit more intuitive, call it "Programs" or "Applications"

      For the same reason we call it cp instead of copy, mv instead of rename, etc. We aren't drag and drool mouse users, we type.

      I really wish we had insisted the Windows refugees had been properly assimilated into UNIX culture before we gave you guys commit rights on our repos.

      --
      Democrat delenda est
    3. Re:no long filenames ? by marcello_dl · · Score: 1

      AND break a gazillion tutorials and blog posts that rely on the traditional filesystem layout.

      Fedora is "pulling an Ubuntu", they want to make their OS an unique experience so that migrating away is more difficult. That's what ubuntu windows and macs do, I wonder if fedora has enough clout to outweigh the obvious problems of this transition.

      Normal users need only to know the package system, advanced ones invisible files in their dir and /etc and /user/local. Pro users are not scared by a bunch of dirs.

      If the file layout mattered so much, gobolinux would have enjoyed more fame I guess.

      --
      ---- MISSING MISCELLANEOUS DATA SEGMENT --- [sigdash] trolololol
  32. The idea is problematic by Sipper · · Score: 5, Insightful

    Although this proposal sounds reasonable at first, actually implementing it is troublesome. Linux systems have an expectation that the root directory / and the /usr directory may be on different filesystems; thus /bin is expected to come with / and be available at boot time, where /usr may not be. This means that making /bin -> /usr/bin via a softlink would break that.

    Although the article summary claims that the Filesystem Hirearchy Standard (FHS) isn't used very often, some distributions such as Debian actually do try their best to follow it and even have it as one of the specs for how to build packages. Debian developers discussed the idea of trying to follow Fedora in this proposal, but it looks like it's too troublesome to be worth it. For one thing, all of the filesystem recovery tools or anything else that would be required in an emergency at the command line would need to be built into the kernel initrd images, which could be done but which doesn't seem terribly reasonable.

    As such I think most Linux distributions are going to need to wait and see how well it works out for Fedora on this effort.

    1. Re:The idea is problematic by peppepz · · Score: 1

      I don't think Debian follows the FHS on x86_64 because it puts 64-bit libraries in /lib and not /lib64. Which is a good thing, the FHS was broken in that respect IMHO.

    2. Re:The idea is problematic by Anonymous Coward · · Score: 0

      Although this proposal sounds reasonable at first, actually implementing it is troublesome.

      First, someone already has it working on their system so it's within the realm of possibility. The steps to do it. http://thread.gmane.org/gmane.linux.redhat.fedora.devel/155511/focus%3D155792

      Linux systems have an expectation that the root directory / and the /usr directory may be on different filesystems; thus /bin is expected to come with / and be available at boot time, where /usr may not be.

      They address that by saying "There is no way to reliably bring up a modern system with an empty /usr, there are two alternatives to fix it: copy /usr back to the rootfs or use an initramfs which can hide the split-off from the system." in https://fedoraproject.org/wiki/Features/UsrMove#Detailed_Description
      They currently have to mount /usr early or bunches of things silently break. They mention in it in the mailing list thread.

      For one thing, all of the filesystem recovery tools or anything else that would be required in an emergency at the command line would need to be built into the kernel initrd images, which could be done but which doesn't seem terribly reasonable.

      Seems to me that's exactly what should be done. If / is corrupted then trusting your recovery tools on / seems like a bad idea.
      http://fedoraproject.org/wiki/Dracut makes it easy enough to build custom initrd images.

    3. Re:The idea is problematic by Anonymous Coward · · Score: 0

      It's not the distributions. It's the developers who never learned to pay attention to architecture, who lay their components wherever the hell they want, spewing all over the filesystem. The worst of the crowd is Dan Bernstein, whose daemontools and qmail have spewed themselves into the top of / and caused file system and backup management havoc for years, and who absolutely refuses to listen to anyone but his own precious self about how to install software.

      There are reasons that his tools have been widely rejected by anyone who has to manage more than one server and doesn't like wasting time massaging Dan's precious little prostate to keep it playing nicely with init scripts, backup systems, SELinux, or sane disk partitioning.

    4. Re:The idea is problematic by deek · · Score: 1

      Too late. In the testing and unstable distributions, Debian has segregated the library files into lib32 and lib64 directories. I think it's a good change. Much easier to handle binaries from both architectures now.

    5. Re:The idea is problematic by ToasterMonkey · · Score: 1

      Although this proposal sounds reasonable at first, actually implementing it is troublesome. Linux systems have an expectation that the root directory / and the /usr directory may be on different filesystems; thus /bin is expected to come with / and be available at boot time, where /usr may not be. This means that making /bin -> /usr/bin via a softlink would break that.

      Uh.. what expects /usr to be a separate filesystem? Where? Which decade?

    6. Re:The idea is problematic by evilviper · · Score: 2

      They address that by saying "There is no way to reliably bring up a modern system with an empty /usr,"

      This is bullshit. I know because I've done it plenty. I've setup servers with minimal / filesystems for years, because /usr and all other filesystems are iSCSI/NFS/etc. mounts that aren't brought-up until needed (as indicated by heartbeat, or whatnot).

      There are only a couple spots that need to be fixed (with RHEL5 init scripts) to allow booting multiuser without /usr mounted. One is the use of head/tail, and grep -m1 is sufficient. The other is a single pam lib in /usr/lib that needs to be copied to /lib (or lib64 if that's your thing...).

      If / is corrupted then trusting your recovery tools on / seems like a bad idea.

      The idea behind / being a separate filesystem is that / is so damn small, and barely ever being written to, that there's next to no chance of it getting corrupted. If you throw a bunch of crap onto /, and have RPMs updating it 2,000 times a day, then you're just simply screwed.

      Building an initrd image just for this task is insane added complexity and overhead, and really, nobody is going to actually do that... This will just turn Linux into Windows, where everyone mindlessly accepts that the most trivial day-to-day issues will cause the system to fail to boot, and requires a boot disc to fix.

      I understand the desire to consolidate bin and sbin, but putting everything into /usr is a tremendously foolish move, for very, very little reason.

      --
      Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
    7. Re:The idea is problematic by alcourt · · Score: 1

      Uh.. what expects /usr to be a separate filesystem? Where? Which decade?

      Unfortunately, current Red Hat installers, including RHEL. I don't think they've changed it in RHEL 6 (we're certifying that now). Yes, it's bad, and it has the added problem of making cross platform script very annoying (Wait, RHEL puts that in /bin, not /usr/bin, but this other is /usr/bin, but Solaris, HP-UX and AIX it's all /usr/bin or /sbin for a few critical items).

      --
      "I may disagree with what you say, but I will defend unto the death your right to say it." -- Voltaire
    8. Re:The idea is problematic by Rutulian · · Score: 1

      Keyword may that you dropped there. Most installers still set it up that way by default. I know I still prefer to have it that way even if it's not the default. In any case, if you know that there is a possibility that /usr and / will be on different filesystems (which there definitely is), you need to make sure your system will still boot if /usr can't be mounted (ie: init scripts can't depend on binaries or libraries in /usr).

    9. Re:The idea is problematic by Anonymous Coward · · Score: 0

      Linux systems have an expectation that the root directory / and the /usr directory may be on different filesystems; thus /bin is expected to come with / and be available at boot time, where /usr may not be.

      A nice theory, but completely wrong. See: http://thread.gmane.org/gmane.comp.sysutils.systemd.devel/1337

    10. Re:The idea is problematic by FreakyGreenLeaky · · Score: 1

      The point is it might be on a separate filesystem. That's one of the many beauties of UNIX, it allows you that freedom.

    11. Re:The idea is problematic by Anonymous Coward · · Score: 0

      So... store binaries in /bin and libraries in /lib or /lib64 ? Or is there another problem with that (in other words, why do we still need /usr)?

    12. Re:The idea is problematic by vadim_t · · Score: 1

      This decade. Tiny root downloaded from BOOTP, /usr mounted over the network is a perfectly sensible setup for a cluster.

    13. Re:The idea is problematic by Anonymous Coward · · Score: 0

      The idea behind / being a separate filesystem is that / is so damn small, and barely ever being written to, that there's next to no chance of it getting corrupted. If you throw a bunch of crap onto /, and have RPMs updating it 2,000 times a day, then you're just simply screwed.

      It's 2011. Either you are on a journalling filesystem or you need to be fired. The last time I had a file system get corrupted that wasn't caused by disk failure, I was using ext2. I'm not talking about using some experimental btrfs release, I'm talking about using ext3, which has been in the main kernel line for ten years now.

      Also, the whole point of consolidating in /usr/ is so that you can mount /usr as read-only and take useful snapshots of it and stuff, which you can't do now because read-only and non-read-only stuff is all interspersed in / .

    14. Re:The idea is problematic by evilviper · · Score: 1

      Either you are on a journalling filesystem or you need to be fired.

      Your magical thinking just makes you look like a fool. Plenty of advanced and reliable file systems don't do journaling. UFS2 immediately comes to mind. Many factors are vastly more important than journaling or no journaling, such as barriers (would you like to guess what feature LVM doesn't support?) and write cache.

      Also, the whole point of consolidating in /usr/ is so that you can mount /usr as read-only and take useful snapshots of it and stuff, which you can't do now because read-only and non-read-only stuff is all interspersed in / .

      Once again, some idiot has to tell me I just CAN'T do things which I frequently do...

      --
      Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
    15. Re:The idea is problematic by Anonymous Coward · · Score: 0

      The separate /usr thing has been broken on modern Linux for ages. (And it doesn't make any sense any longer.).

    16. Re:The idea is problematic by greed · · Score: 1

      It's great for HTPC nodes, too. No disk on any node, all you need is a couple gig of RAM, a LAN port, and something cheap for video like an nVidia 9400M (the ION platform, basically).

    17. Re:The idea is problematic by peppepz · · Score: 1

      Putting 32-bit libraries into lib32 and 64-bit ones in lib64 is OK. It's the unsuffixed "lib" directories that are problematic. In Debian /lib64 points to /lib if I'm not wrong, which goes against the FHS, that for binary compatibility reasons requires /lib to contain the 32-bit libraries.

    18. Re:The idea is problematic by marcosdumay · · Score: 1

      What: People. We expcet to be able to put /usr on a different partition, thus boot scripts can't expect that to be on the same partition as /.

      Where: Wherever a network installation makes sense. That means, where you want to have the same installation available on a serie of networked computers.

      Wich decade: This decade, and each one since the 70's. Network installations didn't go away, except where people switched to Windows, that can't do network installs, and thus needs a series of different tools (and nanning) for simulating that "let's install this software for everybody" feature.

    19. Re:The idea is problematic by Sipper · · Score: 1

      A nice theory, but completely wrong. See: http://thread.gmane.org/gmane.comp.sysutils.systemd.devel/1337

      There's no such conclusion in the above thread. They're certainly discussing it, so I appreciate you pointing me to the thread anyway.

      http://article.gmane.org/gmane.comp.sysutils.systemd.devel/1352
      http://article.gmane.org/gmane.comp.sysutils.systemd.devel/1349

      I still stand by my original statement.

    20. Re:The idea is problematic by Sipper · · Score: 1

      Binaries are not allowed to be in /lib nor /lib64 in terms of the FHS (which at least Debian does its best to follow). These areas are supposed to be for libraries only. The reason you don't want binaries in there is that this is a path that the linker (ld) looks to load dynamic libraries. At minimum there would be a performance hit for ld looking through the extensive list of binaries that normally live in /usr/bin.

      Basically what you're suggesting could probably be done in theory, but there would be a performance and possibly security impacts that may be more detrimental than the benefit.

    21. Re:The idea is problematic by deek · · Score: 1

      I just checked my system (Debian testing, amd64). The /lib64 directory is not linked to /lib. It only has one entry inside it, though, which is a link to the 64 bit loader: /lib64/ld-linux-x86-64.so.2 -> /lib/x86_64-linux-gnu/ld-2.13.so .

      The /lib directory contains a link to the 32 bit loader: /lib/ld-linux.so.2 -> /lib32/ld-linux.so.2 . The rest of the files in the /lib directory are all 64 bit libraries, though.

      I just looked up the FHS v2.3 standard. You're right, it does specify that on an amd64 platform, 32 bit libraries should go in /lib. So Debian does break the FHS in this regard.

      Found a document which describes the Debian/Ubuntu approach to multiarch support: https://wiki.ubuntu.com/MultiarchSpec#Design . It talks about the shortcomings of both the FHS and the previous 64 bit Debian system, and how the new multiarch system solves this.

    22. Re:The idea is problematic by Anonymous Coward · · Score: 0

      If initrd is sufficient to mount /usr and /, what would it change if the file system recovery tools are in / rather than /usr ?
      And if we need file system recovery tools to mount /, they need to be in initrd. The point is simplification, instead of having initrd to mount / that is used to mount /usr, just have initrd to do the job o / and /usr, with regards to boot.

    23. Re:The idea is problematic by Sipper · · Score: 1

      If initrd is sufficient to mount /usr and /, what would it change if the file system recovery tools are in / rather than /usr ?

      Well, for one thing, it would require changing all of the initramfs scripts that are used to build an initrd image from, and for building a generic kernel it would require including in all of the possible recovery programs, which includes recovery programs for filesystems your system isn't using. However -- the more I think about this, the more it seems like this would be fine on modern desktop or laptop hardware (just not on embedded).

      And if we need file system recovery tools to mount /, they need to be in initrd.

      Yes, on this I agree with you, and I've had this problem myself and had wished that the recovery utilities were in the initrd. These days I've been using XFS on top of encrypted LUKS; this is a bit of a crazy thing to do, because XFS generally gets some minor corruption if the kernel panics or the system is otherwise hard-powered-off without a proper shutdown and without using the Magic SysRq emergency shutdown sequence. https://secure.wikimedia.org/wikipedia/en/wiki/Magic_SysRq_key Recovering / then becomes a multi-step process of booting a Linux LiveCD that has both cryptsetup and xfs_repair available on it, mounting the encrypted partition via cryptsetup, then running xfs_repair. (Typically I use a newer CD version of Knoppix to do this.) The initrd image already has to have cryptsetup in it (AFAIK) to mount the encrypted partitions, so it's not that much of an extension to add the recovery programs, and if they were there it would be more convenient, as I wouldn't have to boot a recovery LIveCD to recover /.

      The point is simplification, instead of having initrd to mount / that is used to mount /usr, just have initrd to do the job o / and /usr, with regards to boot.

      I'm still skeptical that bundling together all of the executables on the system into one directory is going to end up being a simplification. That sounds more like a mess you'd expect on Windows in the /system or /system32 directories than something you'd expect on a modern *nix system. However; long ago some Unix systems used to have startup binaries in /etc which I thought was ugly; at least HP-UX did that at one time.

    24. Re:The idea is problematic by Anonymous Coward · · Score: 0

      Linux systems have an expectation that the root directory / and the /usr directory may be on different filesystems; thus /bin is expected to come with / and be available at boot time, where /usr may not be. This means that making /bin -> /usr/bin via a softlink would break that.

      So what about doing the opposite? Would /usr/bin -> /bin work, or just create more & worse problems?

      Separate question: Is it worth it? (No.)

      I'm sure it's true that /sbin & /bin directories were split off from each other in the first place because of limited storage capacity, and obviously data storage is much less limited than in 1979, so that's not much of a concern for most Linux users.

      Since 1979 (or thereabouts), Linux and UNIX-like operating systems have followed a particular, if arcane, way of organizing files. Now the Fedora Project is proposing a plan that will drastically change the way this filesystem hierarchy stores binary applications... if they can work out the potential kinks.

      Specifically, the developers in the Fedora Project are proposing to move all executable files into the /usr/bin directory and their libraries into /usr/lib or /usr/lib64, as needed.

      But does the fact that separate /bin & /sbin wouldn't be necessary any longer if we were engineering Unix from scratch (we're not!) mean that it's worth our trouble to change something that works, just to make backups prettier? Their argument fails to acknowledge that change requires effort, and that effort calls for justification.

      Having all static, distro-specific, sharable OS in a single dir makes snapshots of the OS independently of its state and configuration truly atomic. In a btrfs world doing 5 snapshots of /lib, /lib64, /bin, /sbin and /usr instead of just one is not atomic, and hence racy, and ugly, and boooh!

      Is there any other reason to fool with the Linux filesystem? Is there any good reason to fool with the Linux filesystem? I have yet to read one. Snapshots should be automated anyway, so whether it's five directories or one, they'll all be backed up via one script. So much for the "logic" that snapshots are "ugly" under the current filesystem hierarchy. Fedora's "solution" seems worse than the "problem" it's intended to address.

      The other items from Poettering's essay at gmane are just arguments against specific reasons not to change the file system, but none offer any compelling reason why the effort is worthwhile. And it wouldn't just be the Fedora devs' efforts, it would entail forced effort of many other Linux users to adjust, and I don't see them taking that into consideration at all.

  33. Mobility by tepples · · Score: 1

    There isn't a space-saving methodology in the world that's more cost effective than slapping another terabyte into the rack.

    Provided you have a rack. Adding another terabyte to a laptop or tablet means carrying around a relatively bulky USB hard drive and powering it somehow.

    1. Re:Mobility by Anonymous Coward · · Score: 0

      Your mistake is thinking any sane person would want to run Linux on any machine that is not sitting in a rack.

    2. Re:Mobility by leenks · · Score: 1

      Or replacing the redundant optical drive with a new 1TB drive.

    3. Re:Mobility by postbigbang · · Score: 1

      Tablets are entertainment devices. They don't use huge files, like those in movies, music.... oh, wait.

      --
      ---- Teach Peace. It's Cheaper Than War.
    4. Re:Mobility by blair1q · · Score: 1

      Cheaper to get a new laptop than to dick around with compression and deletion for hours on end, multiple times a month, until you still just run out of room.

    5. Re:Mobility by blair1q · · Score: 2

      A tablet without a fast wi-fi connection to a honking big server is a serving tray for the beer you're going to go get me.

    6. Re:Mobility by postbigbang · · Score: 1

      Gosh, what do I do with that USB thingie?

      --
      ---- Teach Peace. It's Cheaper Than War.
    7. Re:Mobility by donaldm · · Score: 1

      There isn't a space-saving methodology in the world that's more cost effective than slapping another terabyte into the rack.

      Provided you have a rack. Adding another terabyte to a laptop or tablet means carrying around a relatively bulky USB hard drive and powering it somehow.

      On my laptop (2 x 650GB 2.5in drives) I can replace them with 2 x 1TB drives and the weight of my laptop won't increase. Granted it will cost but it is very easy to replace a modern laptop 2.5in disk with a larger capacity 2.5in disk and for some this can be very cost effective.

      --
      There ain't no such thing as proprietary standards only proprietary formats. Standards are by definition open.
    8. Re:Mobility by GPLHost-Thomas · · Score: 2

      As in... nowadays, we don't store movies and music compressed??? What performance and characteristics do you imagine doing by re-compressing a file that already has lossful compression?

    9. Re:Mobility by postbigbang · · Score: 1

      Lossy codecs suck. I understand the implications of that statement, but lost quality these days is like death by a thousand cuts. You can do varying kinds of compression, but the net result is that media will tend to fill the space provided for it, no matter the compression type or level. It's all about consumption, not letting go when you're done. We hoard media like we hoard hobbyist materials, and so forth.

      --
      ---- Teach Peace. It's Cheaper Than War.
    10. Re:Mobility by GPLHost-Thomas · · Score: 1

      Dumb. Do you have the idea of the size of a 180 minutes, 1080p movie, without compression? I'm not sure this would fit on any HDD you'd have... Anyway, even cutting this debate, trying to re-compress a FLAC is still a totally dumb idea.

    11. Re:Mobility by postbigbang · · Score: 1

      Fine. Quote ridiculous raw numbers.

      I know fully well what kind of compression yields occur after various renderings.

      So go ahead. Use that 1080p movie. Not 1 in 100 can visually discern the difference, and not 1 in 5000 use more than two channels for playback. Lots of empty cars on that train, eh?

      Do people need more space? Yes. Should they all have their own copies? No. We need the pipes that allow deduplicated streams, regionalized/localized cache, and other more astute distribution mechanisms. We already have data rates that exceed the realtime needs of 1080p-- why don't we use THOSE (speaking to those in the USA)? Why must the wheel be constantly reinvented? Why have AT&T and Verizon been allowed to lay new copper instead of fiber *everywhere*? Sorry for the rant, but quoting raw data rates is a red herring.

      --
      ---- Teach Peace. It's Cheaper Than War.
  34. Gordian "know" by Anonymous Coward · · Score: 0

    Did you mean "Gordian knot?" It would be nice if you proofread. Ever. At all.

  35. a few facts... by nirik · · Score: 1

    Just a few actual facts to note here:

    a) This is currently just a proposed feature for the next Fedora release. It's been discussed some on the Fedora devel list, but thats it. It's not yet been discussed by the Fedora Engineering Steering Comittee or even answered all the questions presented by the list. So, nothing is sure yet here, it's just a few folks proposing it at this time.

    b) The feature page is at:
    https://fedoraproject.org/wiki/Features/UsrMove
    It had a lot more info and questions on it.

    We will have to see how this plays out, it's way to early to tell, IMHO.

  36. GOBO Linux by pentalive · · Score: 4, Informative

    http://www.gobolinux.org/ Combines executables and necessary libraries each in their own directory under '/programs' Uses links to show files in traditional places.

    1. Re:GOBO Linux by bananaquackmoo · · Score: 1

      +1. Gobo was the first Linux I tried out because it was the only one with what I deemed a "sensible" filesystem. I used it for a while, but eventually I had to migrate to a more mainstream Linux for my needs. I do miss Gobo's filesystem though.

    2. Re:GOBO Linux by Anonymous Coward · · Score: 0

      Very OS X like.

    3. Re:GOBO Linux by Chris+Pimlott · · Score: 1

      The little-known GNU Stow project has been available to do this for over a decade. Although it uses the convention /usr/local/package-name instead.

    4. Re:GOBO Linux by Anonymous Coward · · Score: 0

      Interesting. A user-friendliness enhancement to the filesystem, implemented in as mindful a way as possible so as not to introduce backwards incompatibility. Kinda like what Apple did. Maybe this is what Linux needs to take a step forward on the desktop? Package managers strike me as an overly complicated solution and can be a real pain for the newbie when they spew seemingly unresolvable dependency errors.

    5. Re:GOBO Linux by hitmark · · Score: 1

      Been using that as my Linux distro for a couple of years now, and it can take some interesting levels of abuse. I have rolled back borked installs of such things as udev and glibc thanks to the versioned subdirs.

      --
      comment first, facts later. http://chem.tufts.edu/AnswersInScience/RelativityofWrong.htm
  37. Compression? by Pharmboy · · Score: 1

    Why is everyone talking about compression? Seriously, that isn't the topic or something most Linux really give a damn about.

    Now, reorganizing the system so the files are arranged in a more logical fashion? That is great and something I have been waiting for 15 years! I understand the desire to maintain a degree of similarity and do things they way they have always been done, but directory structure on Linux is ridiculous for most users. This is one reason I would prefer a different OS version for desktop and server. I can see why the existing structure is used for servers, which can have hundreds or thousands of users accessing the same files, but most desktops have one or maybe two users.

    Yeah, this means I have to learn a new system, after sticking with the RH way of doing things since the 90s, but if it is a BETTER system, a more simple system, then it would be worth the pain.

    --
    Tequila: It's not just for breakfast anymore!
    1. Re:Compression? by catmistake · · Score: 1

      Now, reorganizing the system so the files are arranged in a more logical fashion? That is great and something I have been waiting for 15 years!

      No... it isn't a good idea, because its already in arranged in a logical fashion. See some of the excellent comments above (but below the file compression crap) for historical explanations of why stuff is where it is. Did you really think just because it wasn't instantly understandable without explanation that it wasn't well thought out? No... it was seriously well thought out for decades before Linux existed.

      What makes Linux great is how similar it is to UNIX, but free, yet it does everything Windows does, usually within weeks of a new MS "feature" (aka breaking things Linux previously fixed). What makes Linux crap is what is different about it from UNIX.

      It is a crap idea to take something misunderstood and try to "fix" it by making it "simpler," when that effort will only serve to make things more confusing ("oh, its like this in this distro, but this distro is different, and this distro is similar, but also different").

    2. Re:Compression? by Pharmboy · · Score: 1

      It wasn't thought out for decades before Linux, you are being dramatic. The Linux kernel came around in 1991, Unix came around in 1970, but Linux wasn't based on the original versions of Linux. It was was modeled after System V, which didn't come out until 1983. The file layout in 1970 was a completely different animal.

      What makes Linux great isn't how close it is to Unix. It is what it does as a stand alone product.

      --
      Tequila: It's not just for breakfast anymore!
  38. That way for a reason by Anonymous Coward · · Score: 0

    Not surprisingly this move is being championed by Lennart Poettering. The same guy who thinks POSIX is a waste of time and said mounting /usr as a separate partition is stupid. It's no shocker he'd want to move all executables to /usr and dump standard directories like /bin and /sbin

  39. I like it by hey · · Score: 2

    This makes sense to me. All those extra directories had historical reasons but time marches on.

    1. Re:I like it by Anonymous Coward · · Score: 0

      Exactly. And let's get rid of all those .conf files too.

      Why not create a couple of databases, let's call them hives, and then store all that configuration and initialization values in there, with a single API to access them? It'd need a more catchy name than "The Registration Database" though.

    2. Re:I like it by Anonymous Coward · · Score: 0

      Yes, do away with existing standards if you want people to understand something!

    3. Re:I like it by Anonymous Coward · · Score: 0

      This makes sense to me. All those extra directories had historical reasons but time marches on.

      Many of which are still valid.

      Let RH approach the standards maintainers and make their case.

    4. Re:I like it by Anonymous Coward · · Score: 0

      The question I ask is this:

      If we were starting over today, what makes the most sense?

      Initially, /usr was where both shared userland resources, as well as home directories were located.

      Does this still make sense today? Obviously not, as /home was divided out a long time ago.

      Right now, one of the things that makes linux so hard for new users is wrapping your head around a directory structure that is all legacy cruft.

      Removing this cruft would go a LONG way to making linux useable on the desktop.

      Here is my off-the-cuff, very little thought put into it proposal: /
      /Applications/
      /Applications/Libraries/
      /Applications/[program dir]/

      /boot/

      /Configuration/
      /Configuration/[program dir]/

      /Devices

      /Home/
      /Home/[user]/
      /Home/[user]/Aps
      /Home/[user]/Aps/[program dir]
      /Home/[user]/Configuration
      /Home/[user]/Configuration/[program dir]/
      /Home/[user]/Configuration/aps/[program dir]/
      /Home/[user]/Documents
      /Home/[user]/Libs/[Libraries]
      /Home/[user]/Music
      /Home/[user]/Shares

      /Media/

      /Shares/

      /System/
      /System/bin/
      /System/Devices/
      /System/lib/
      /System/var

      Replacing /usr, bin, sbin, opt with /Applications.
      /Applications would include symlinks to all installed and shared userland programs, which are located in their respective directories.
      /Applications/Libraries would be for all shared userland libraries, and include some standard for version control.

      Replacing /etc with /Configuration. All system-wide configuration settings would be placed here.
      /Configuration/[program dir] would be used to set systemwide defaults for each userland program installed on the system /boot/ unchanged /home/ Unchanged, though I feel a more manageable default structure for this directory would make a lot of sense.
      /home/[user]/Aps - applications that are installed by the user, and are not system wide.

      /home/[user]/Configuration - Configuration files specific to the user.

      /home/[user]/Libs/ - Libraries that are specific to the user.
      /home/[user]/Music - Default file for music that is specific to the user /home/[user]/Shares - Default location for mounting shared resources.

      /Media/ - CDROMS and other mounted, removable media.

      /Shares/ - Default location for mounting system-wide shared resources (can still specify others!)

      /System/ - Directory for the OS, and emergency binaries and libraries.
      /System/bin/ - Non-userland system programs
      /System/lib/ - System libraries
      /System/Devices (old /dev)
      /System/var - The old /var

      Their you have it. A file hierarchy that makes sense today. Now we just have to change everything else to make it work with this, and we are all set! That shouldn't take much, right?

    5. Re:I like it by wvmarle · · Score: 1

      They still make sense to me. OK /usr is nowadays not often nfs mounted or so, but there are good reasons to have a few directories to sort things out. Dumping everything in one directory is also not the best thing to do, imho. It's not broken, no reason to fix it.

      And very useful is the /usr/local path: distros tend to not use it (they install all there stuff in /usr/bin or /usr/lib) but I use it for my own software. Mostly little scripts that I wrote myself, and need to have available system wide for cron jobs and so. A directory to mess around in without having to be afraid of breaking the system, and still having it available system wide, is just great.

    6. Re:I like it by dbIII · · Score: 1

      There's still good reasons for some of it. If you know you only need to transfer /usr/local to a new box instead of stuff scattered everywhere it can save a lot of messing about. There's also a good reason for some stuff in /sbin even now when things go all pear shaped, it's not just for when you can't mount /bin or /usr.

    7. Re:I like it by mangst · · Score: 1

      Reorganizing the file system like this would have been a good change to implement for v3.0 of the kernel.

    8. Re:I like it by Anonymous Coward · · Score: 0

      speaking of time marching on .. why not take a cue from Android and put everything in a database instead of a traditional filesystem? YEah its slower, but at this point the on-load wait time is insignificant...

    9. Re:I like it by hey · · Score: 1

      Looks good. Like a Mac. But all lowercase, please.

    10. Re:I like it by hey · · Score: 1

      I hope the kernel doesn't depend on any hardcoded paths in the filesystem. Besides /proc and /system.

    11. Re:I like it by mangst · · Score: 1

      Actually, I think you're right. I don't think it matters to the kernel what the directory structure is because the kernel is concerned with more lower-level things like memory management.

  40. Re:obligatory by skids · · Score: 1

    Precisely. Some people have too much time on their hands.

  41. RANT: Don't break my file system by peppepz · · Score: 5, Insightful
    There is nothing exoteric or baffling with the filesytem of Linux.

    It is well-specified. There's a folder for executables, a folder for binaries, a folder for configuration data, a folder for temporary stuff. And its layout hasn't changed for 20 years.
    Compare it to Windows, where the file system layout changes from one Windows version to the other, there are no documents specifying most of its organization, and it doesn't matter anyway, because since Windows NT the file system is meant to be only managed by automated installation tools, and even an expert user can not hope to fix it when things go wrong.

    What's wrong with /bin and /lib ? They serve a specific purpose, and the files they contain shouldn't be directly handled by a user who gets confused because of the presence of more than a single directory in his $PATH, so who will gain from their "semplification"? Don't tell me the real reason is that Fedora's next-generation self-aware omniscient init system has grown so complex that they're no longer able to support a split /usr installation because of its dependency hell.
    Please do not turn Linux into an unmanageable mess as the one Windows has become.
    End of rant

    1. Re:RANT: Don't break my file system by rathaven · · Score: 1

      I agree with this but can see why people may think this way. When I was a newbie I had a very different opinion when I started with Linux/Unix. The reality is that for newbies /usr/bin /bin and /opt/product/bin is not, on the face of it, as straightforward as simply a folder called "Program Files". Unfortunately when you look into the Windows filesystem binary files and libraries are often nearly anywhere despite Microsoft's advice, especially with .Net, Java and many other languages. I have to say that in most cases I see developers working on Linux do tend to have the tendency to stick to the filesystem locations as it supplies an appropriate area for most requirements.

    2. Re:RANT: Don't break my file system by grumbel · · Score: 2

      What's wrong with /bin and /lib ?

      Among other things: They force you to splatter files from different pieces of software into the same directory, making it impossible to install different versions of the same application.

    3. Re:RANT: Don't break my file system by hedwards · · Score: 2

      Indeed, a while back I had a Vista install go tits up because I had added new partitions and had accidentally run bootrec forgetting about what that would do to the partition labeling. And MS doesn't provide proper tools to handle a situation like that without loading up a recovery disc. By the time I had that mostly sorted out, the profiles wouldn't load.

      Right, now Linux is largely impervious to that sort of thing, so obviously, the thing to do is find ways of making it pervious to that stuff.

    4. Re:RANT: Don't break my file system by ToasterMonkey · · Score: 2

      There is nothing exoteric or baffling with the filesytem of Linux.
      It is well-specified. There's a folder for executables, a folder for binaries, a folder for configuration data, a folder for temporary stuff. And its layout hasn't changed for 20 years.

      Right, because computers haven't changed much in the last twenty years probably.

      WHY do you cut every single program into little pieces and box them together?

      Look at the RHEL Tomcat RPM, compare to traditional /opt/tomcat or /usr/local/tomcat or even /tomcat

      WHY does anyone think cutting that or any application into ten different directories, mixing its private bits with private bits of completely unrelated programs is a good idea?

      I can think of reasons to seperate user configuration and data from non-user things from log files, but not for mixing that shit in with similar data from other apps categorically.

    5. Re:RANT: Don't break my file system by Anonymous Coward · · Score: 0

      Encode the version of the application in the relevant files.
      Make a symlink that doesn't encode version information to the latest version of the application.

    6. Re:RANT: Don't break my file system by 21mhz · · Score: 1

      Hmm, so if you have two different binaries of "foo", installing them in different folders can help you distinguish them? Do you always run the binaries with the explicit file path? Because having two different "foo" in the executable search path has obvious problems.

      As the other comment said, people use name suffixes to distinguish multiple versions, and maybe alias the default one to the generic name. So you could use "foo-1" and "foo-2" if you want to be explicit, or run "foo" which is symlinked to the preferred version.

      --
      My exception safety is -fno-exceptions.
    7. Re:RANT: Don't break my file system by Anonymous Coward · · Score: 0

      what I really want to know is why no one uses /opt

    8. Re:RANT: Don't break my file system by Anonymous Coward · · Score: 0

      Exactly, if they are really trying to make it less confusing for people like iDevice users things like filesystem can always be hidden behind a GUI. Unless there is a technological reason to change it that results in tangible computing benefits WTF is the point of changing breaking the standard?

      It isn't filesystem structure that is keeping fedora or any linux from the desktop. It's applications mainly, then video card and other drivers and last of all figuring out the directory structure for end users (which is self explanatory if they can figure out a command line). At least before gnome3/unity/kde whatever. I haven't ran a desktop linux since they switched.

    9. Re:RANT: Don't break my file system by Anonymous Coward · · Score: 0

      Linux *IS* an unmanageable mess, that's what we're trying to fix.

      Of course, if you're keeping /boot and /sbin on DECtape and using that to bootstrap the machine to mount /usr which is on a disk pack connected to an auxilliary processor, this may be a breaking change for you. Sorry 'bout that.

    10. Re:RANT: Don't break my file system by Anonymous Coward · · Score: 0

      See SHGetSpecialFolderLocation in shell32.dll

      Each version of windows has been far more unix-like in terms of separation based on function, so wouldn't think you would complain. Windows 7's directory structure is pretty nicely laid out. "C:\Program Files" for common program installs, same since win9x. "C:\Program Files (x86)" for 32bit programs in 64-bit windows. "C:\ProgramData\AppOrCompanyName" for program data/settings common to multiple users. "C:\Users\USERNAME\AppData\(local|locallow|roaming)\AppOrCompanyName" for program settings/data for a specific user. "C:\Users\USERNAME\" user home directory, where ".\Desktop" is the desktop within the filesystem, etc... similar to any *nix environment today.

      I would say the user of ~\AppData\* is similar to the use of ~/.config/* that many unix applications have been moving to, again, not the same across versions of those applications even.

    11. Re:RANT: Don't break my file system by phorm · · Score: 2

      /bin and /lib fine.
      But you've actually got /bin /sbin /usr/local/bin /usr/local/sbin (in many cases the "local" is stuff not installed from a native package, etc)
      then /etc /usr/local/etc
      then /lib /usr/lib /usr/lib64
      then /tmp /var/tmp
      etc

      It's easy enough to see some of the reasoning behind the superuser and regular binaries... and perhaps the native/non-native (local) stuff, but the overall situation is a bit messy, especially when one is trying to figure out how to allocate space in some situations.

      My personal peeve is apps that decide to use /opt and then have their own temp/log/etc directories. Grrrrr

    12. Re:RANT: Don't break my file system by visualight · · Score: 1

      They will break it, but don't worry they'll convince several other distros to follow their lead, since apparently they own Linux now. I'm not worried about breakage, only annoyed at the prospect of jumping through hoops to get no measurable gain.

      Thing is, this whole thing is bullshit. *No one* who understands enough to be messing with lib paths is confused by the file system, and when this is done, anyone unable to understand the current system *STILL WON'T UNDERSTAND*. All that will happen is everyone once again re-arranging their lives to satisfy some whim at fedora/rh.

      --
      Samsung took back my unlocked bootloader because Google wants me to rent movies. They're both evil.
    13. Re:RANT: Don't break my file system by catmistake · · Score: 1

      There is nothing exoteric or baffling with the filesytem of Linux.

      You are mostly correct. There is a single detail that is baffling about the filesystem of Linux: Why is it different from UNIX? Much is the same... but why was there any divergence whatsoever? IMO, this delayed Linux acceptance in the server space by about 5 years... long enough for the grey beards to start moving on and the young whips, unaware of how things should be placed, who didn't know any better because they were never exposed to any real UNIX, to fill those positions. And the next generation is going to be screwed because of the detachment of the past from the present.... that's where I see this insane suggestion coming from "hey... this doesn't make sense to me... let's change it," without bothering to investigate why things are the way they are.

    14. Re:RANT: Don't break my file system by wolrahnaes · · Score: 1

      I don't have a problem with your overall point, but you can't deny that the FHS layout is needlessly complicated for almost every desktop/workstation and even the vast majority of servers. There's no need for more than a half dozen places to put binaries (including libraries). Everything relating to /opt/ seems entirely pointless. Root's home is separate from the main /home/ for valid technical reasons, but for consistency it would make sense if it at least appeared to be within /home/ and didn't show up directly under the root. I could go on but it's late and I have to get up for work in a few hours.

      Don't change for the sake of change of course, but at the same time don't act like what we have is perfect. What we have was built around the way old Unix was used, not how the vast majority of *nixes are used today. We don't need every system to be built with the expectation that it's going to be split up among multiple volumes and partially on shared filesystems that may or may not be the same architecture because the vast majority will not, no matter what class of hardware we're talking about. Those who need that can set their stuff up that way, the rest of us would benefit from a simpler layout.

      --
      I used to get high on life, but I developed a tolerance. Now I need something stronger.
    15. Re:RANT: Don't break my file system by Anonymous Coward · · Score: 0

      > There's a folder for executables, a folder for binaries, a folder for configuration data, a folder for temporary stuff.

      You mean at least four (usually more) folders for executables, many folders for binaries, a folder for most of the configuration data, multiple folders for temporary stuff, and random other bits scattered everywhere.

      > since Windows NT the file system is meant to be only managed by automated installation tools

      This is sort of true, but only to the same extent that it's true on Linux. Unless you're a hacker who likes to tweak things, the majority of your filesystem is determined by your distro and installed packages.

      > and even an expert user can not hope to fix it when things go wrong.

      The existence of a huge community of Windows experts who routinely fix Windows systems refutes this point.

      > who will gain from their "semplification" [sic]?

      I'm capable of understanding and working with complexity without being too confused, but that doesn't mean I like it. I, and other Linux users and developers, will gain from the simplification.

    16. Re:RANT: Don't break my file system by Anonymous Coward · · Score: 0

      I've had a SuSE sytem where lots of stuff (and by lots, I means something like 10 packages) went into /opt. Managing $PATH on that system was horrible.

      Back in the DOS days, I ended up writing a "start.bat" file, to deal with the same problem. Because under DOS, that was the way things worked. Moving to Linux, where everything was sensibly grouped, was a huge improvement. The "disadvantage" is that it basically requires a package manager - but Windows has shown us, that even a system split by packages needs a package manager.

      You're basically suggesting taking one of the advantages of Linux, and replacing it with the horrible alternative that DOS had. An alternative that is so bad, that everybody moved to a GUI when it became available. Because with a GUI, you don't care where the executables are located, you just use the short cut.

    17. Re:RANT: Don't break my file system by Anonymous Coward · · Score: 0

      Seconded.

    18. Re:RANT: Don't break my file system by swillden · · Score: 1

      They will break it, but don't worry they'll convince several other distros to follow their lead, since apparently they own Linux now.

      I thought Ubuntu owned Linux now.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    19. Re:RANT: Don't break my file system by Bill_the_Engineer · · Score: 2

      Among other things: They force you to splatter files from different pieces of software into the same directory, making it impossible to install different versions of the same application.

      /lib, /bin, /usr/lib, /usr/bin, /sbin, /usr/sbin, /usr/local/bin, /usr/local/lib have their place. You are not "forced" to splater files from different pieces of software into the same directory, but it makes sense to have these in a standard location if they are meant to be shared with other programs. Don't forget you can place different versions of the same application in separate subdirectories (e.g. /lib/widget/ver-1, /lib/widget/ver-2) or you could indicate version in the filename (e.g. /lib/libwidget-ver1, /lib/libwidget-ver2).

      I'm a little disappointed with Fedora's direction. I use them as the bleeding-edge OS and scientific linux (RHEL) as my stable OS. Changing UI isn't a deal breaker, but making differing file directory structures is pushing the limits. Maybe they should just change their name to Fubuntu?

      --
      These comments are my own and do not necessarily reflect the views or opinions of my employer or colleagues...
    20. Re:RANT: Don't break my file system by Bill_the_Engineer · · Score: 1

      Right, because computers haven't changed much in the last twenty years probably.

      Yet we all went back to Linux which is based on a very mature way of doing things.

      WHY do you cut every single program into little pieces and box them together? Look at the RHEL Tomcat RPM, compare to traditional /opt/tomcat or /usr/local/tomcat or even /tomcat WHY does anyone think cutting that or any application into ten different directories, mixing its private bits with private bits of completely unrelated programs is a good idea?

      It's called being modular. Those distinct RPM packages allows a dependency to be fulfilled without requiring the entire Tomcat software suite being installed. Also it allows the developer to only install the portions of Tomcat that is needed. You can do the same thing using the source tar file that you place in /opt/tomcat or /usr/local/tomcat, except you would have to specify the configuration manually.

      One other thing, some of those Tomcat RPMs are optional plugins not included with the core Tomcat tar file.

      --
      These comments are my own and do not necessarily reflect the views or opinions of my employer or colleagues...
    21. Re:RANT: Don't break my file system by Anonymous Coward · · Score: 0

      Among other things: They force you to splatter files from different pieces of software into the same directory, making it impossible to install different versions of the same application.

      Odd, because I could have sworn I have different versions of several applications installed just fine -- some of them by using distinct filenames ("emacs22" and "emacs23", for example), others by the standard Unix method -- that exists precisely for this purpose -- of giving each its own separate bin and lib under its directory in /opt.

      Not broken, don't fix.

    22. Re:RANT: Don't break my file system by Rich0 · · Score: 1

      The problem is that apparently several prominant pieces of software have already broken FHS by not supporting booting without /usr present. I've heard that udev rules are a big part of the problem - especially those involving bluetooth. So, Fedora's suggestion is to just mount /usr earlier and not rely on init to do it. Once you do that having a separate /usr/bin and /bin doesn't add any value.

      Quite a few distros are likely to follow, eventually, since they'll end up having to fork/patch more and more stuff to do things their own way.

    23. Re:RANT: Don't break my file system by NerveGas · · Score: 1

      One location for binaries? Would that be /bin, /usr/bin, /usr/local/bin, /sbin, /usr/sbin, or /usr/local/sbin?

      --
      Oh, you're not stuck, you're just unable to let go of the onion rings.
    24. Re:RANT: Don't break my file system by gbjbaanb · · Score: 1

      but this is the point - you have apps written by people who do not understand the filesystem and end up putting their binaries in /usr/local/bin or worse - /opt/bin, or even /home/user/bin

      There are too many /bin directories on a modern system that do not really need to be there, /bin and /sbin - does it really make a difference if they were consolidated?

      If it were simpler (not that I'm saying RH are right here BTW), you'd get a lot more consistency and *nixs would be easier to maintain.

    25. Re:RANT: Don't break my file system by grumbel · · Score: 1

      Odd, because I could have sworn I have different versions of several applications installed just fine

      Then you obviously have never bothered to actually try that. By far most software has no provisions for installing in a versioned way into the /bin /lib hierachy. You can of course hack them together that way if you have the source, but it's not a standard thing software does. Also uninstalling is real fun when you have a /usr/local where a user just "make install"ed stuff into.

      of giving each its own separate bin and lib under its directory in /opt.

      Yes, exactly my point. If you want to have it clean, you better avoid the /bin /lib mess.

    26. Re:RANT: Don't break my file system by peppepz · · Score: 1
      A "breaking change" is what happens when something that just worked is replaced by something that promises the moon but then doesn't work, spits 8 pages of stderr with not a single line useful to debug what's going wrong, and comes with no documentation whatsoever aside from a couple blog posts which are unuseful anyway because they have become obsolete a couple of git commits after they were published.

      I'll send you a DECtape with my system log next time I'm hit by those kind of "fixes".

    27. Re:RANT: Don't break my file system by peppepz · · Score: 1

      Aren't you forgetting something in the picture? "Common files" for example. Or the whole world stuffed inside System32 (even on x64). Then you have to take into account side-by-side component installation, which happens somehow in C:\WINDOWS\winsxs. And the 64-bit / 32-bit directory split on the disk doesn't end the whole story: there's the filesystem redirection mechanism, that makes 32-bit programs see C:\WINDOWS\SYSWOW64 as C:\WINDOWS\SYSTEM32. A similar hack is in place for the registry, where 32-bit keys are actually stored in the 64-bit registry but under a key called Wow6432Node. I don't know how, but in my Windows Vista installation a 32-bit application had managed to create a real 64-bit key called Wow6432Node and this resulted in an infinitely recursing registry. And let's not talk about how manageable the registry is, even when it works.

    28. Re:RANT: Don't break my file system by Anonymous Coward · · Score: 0

      If you use /bin and /lib, you end up creating package managers and differing incompatibility software distros, such as Debian vs. Red Hat (Or are they compatible? The issue is so complex that I don't know, and that complexity is the issue that concerns me)

      Which, of course, directly leads to the existence of Ubuntu.

      So that's what's wrong with them.

    29. Re:RANT: Don't break my file system by Anonymous Coward · · Score: 0

      >>> There is nothing exoteric or baffling with the filesytem of Linux.

      It is extremely baffling -- to the crowd that is so used to C:\WINDOWS and C:\WINDOWS\SYSTEM and C:\Program Files

      Fedora: it ain't broken, don't "fix" it.

    30. Re:RANT: Don't break my file system by Junta · · Score: 1

      Yes, exactly my point. If you want to have it clean, you better avoid the /bin /lib mess.

      The thing is the *nix philosophy for CLI apps has always been mostly small single-purposed utilities brought together on the fly to do more complex things. If *every* application has it's own bin dir, your path is an unmanageable mess *or* you have to fully qualify invoking applications. I for one do not savor the thought of '/opt/fileutils/bin/ls|/opt/gawk/bin/awk '{stuff}'|/opt/grep/bin/grep foo'.

      This effort is fairly silly anyway. It only *really* has any impact in package-managed content which *already* is isolated at a layer other than the filesystem.

      --
      XML is like violence. If it doesn't solve the problem, use more.
    31. Re:RANT: Don't break my file system by grumbel · · Score: 1

      If *every* application has it's own bin dir, your path is an unmanageable mess

      Not really, as there are clean and simple workarounds with symlinks:

      ln -s /opt/softtware-x.y.z/bin/software /usr/bin/software

      Thus you could cleanly separate different software packages and different versions of the same software, while not having to enlarge your PATH at all.

      It only *really* has any impact in package-managed content which *already* is isolated at a layer other than the filesystem.

      The problem with package manager is that they just manage the mess, they don't fix it and many problems caused by /bin /lib still exist. Installing different versions of the same package for example is impossible with dpkg.

    32. Re:RANT: Don't break my file system by Anonymous Coward · · Score: 0

      What is the specific purpose of /bin and /lib, again ? You seems to have omited as if it was obvious, but that's actually the problem. The only reason we keep them is because we suppose it is obvious to keep them, but this also requires to manage them differently without knowing why.

      For example, why would a binary go to /usr/bin rather than /bin ?
      The answer usually is "because I need it to mount /usr with it". That's great, but then, what about binary needed to mount / ?
      And why should I have restriction on what I do for mounting / ? Then you decide that you should be able to mount / and /usr directly from initrd, and then the location no longer matter.

      The simplication also bring some values, like being able to share /usr completely, to snpashot it, to be able to place it readonly.

    33. Re:RANT: Don't break my file system by gbutler69 · · Score: 1

      No they don't. Not in any way. You have the complete option of installing an application and all its dependencies in a private folder. I do it all the time.

      --
      Over-the-top Response Guy! Giving "Over-the-Top Responses" since 1970.
    34. Re:RANT: Don't break my file system by grumbel · · Score: 1

      Yes and by doing that you are completely by passing the global /bin, /lib structure. So how exactly is that an argument for /bin /lib again?

    35. Re:RANT: Don't break my file system by Anonymous Coward · · Score: 0

      promises the moon but then doesn't work, spits 8 pages of stderr with not a single line useful to debug what's going wrong

      Enough about GCC please, let's talk about the Standard Filesystem Hierarchy.

    36. Re:RANT: Don't break my file system by Anonymous Coward · · Score: 0

      Amen to that. What's with \Program SPACE Files... SPACE, for fuck's sake!
      So just call your virus "Program.exe" and drop into C:\..... nice.

    37. Re:RANT: Don't break my file system by Anonymous Coward · · Score: 0

      Odd, because I could have sworn I have different versions of several applications installed just fine

      Then you obviously have never bothered to actually try that. By far most software has no provisions for installing in a versioned way into the /bin /lib hierachy.

      I would say that "by far most software" on a Linux box would probably be free software. Most of that software would probably use autotools, so here's a relevant part from the standard ./configure --help output:

      Program names:
      --program-prefix=PREFIX prepend PREFIX to installed program names
      --program-suffix=SUFFIX append SUFFIX to installed program names
      --program-transform-name=PROGRAM run sed PROGRAM on installed program names

      You can of course hack them together that way if you have the source, but it's not a standard thing software does.

      Actually, it's a very standard thing to do for software that are using autotools, like most free software. In other words: Most of the software, you would find on a normal Linux box.

      Also uninstalling is real fun when you have a /usr/local where a user just "make install"ed stuff into.

      First of all, what does a random user have write-access to /usr/local on your system?
      Second, is it really that hard to type make uninstall?

    38. Re:RANT: Don't break my file system by Anonymous Coward · · Score: 0

      The problem with package manager is that they just manage the mess, they don't fix it and many problems caused by /bin /lib still exist. Installing different versions of the same package for example is impossible with dpkg.

      Please be quiet, my Debian box might hear you...

      $ dpkg --get-selections | grep '^gcc'
      gcc install
      gcc-4.1 install
      gcc-4.1-base install
      gcc-4.3 install
      gcc-4.3-base install
      gcc-4.4 install
      gcc-4.4-base install
      gcc-4.4-doc install
      gcc-doc install
      gcc-doc-base install

      Completely impossible...

    39. Re:RANT: Don't break my file system by Anonymous Coward · · Score: 0

      wtf is a folder?

  42. Good by nine-times · · Score: 1

    At least on a basic level, I get the Linux filesystem, but I do think it's a little silly. Things are pretty fragmented, sometimes arbitrarily, and the names don't make any particular sense. Like storing settings in a folder called "etc"?

    I know the conventions have been around for a long time, but I think at a certain level it makes sense to start fresh and come up with a new standard that actually makes sense, and not just stick with old conventions because they're hard to change. Surely they can come up with a directory structure that satisfies technical needs while still making sense to novices and end-users. Unfortunately, it's going to be nearly impossible to get consistent adoption by various unix/linux vendors of any new conventions you come up with.

    1. Re:Good by catmistake · · Score: 1

      know the conventions have been around for a long time, but I think at a certain level it makes sense to start fresh and come up with a new standard that actually makes sense, and not just stick with old conventions because they're hard to change.

      I don't have a problem with this. But lets at least change the name, not keep calling it Linux if it no longer looks anything like what it was, even if it still uses the same kernel.

    2. Re:Good by FreakyGreenLeaky · · Score: 1

      Sorry, but your post is so wrong on so many levels, it's actually quite funny, amazingly ignorant.

      You sound like a typical windows user, frankly. Just change everything just for the sake of change... god almighty. What about continuity, evolution, incremental changes, stability? The world is full of horror stories about the many, many multi-million dollar "rewrites" committed by IT criminals - almost all of which end in failure, wasting tax payer or shareholder money.

      What you find "silly", "fragmented", "arbitrarily", etc, others find eminently understandable, rely on and are thankful for. Thankfully, your kind will always have windows where you can screw around to your vacuous hearts content, trashing mindlessly as you go. For the educated and enlightened, there is UNIX.

      So, please, get back to your real-world equivalence of windows, which is inbreeding with your momma behind the trailer outhouse.

    3. Re:Good by Anonymous Coward · · Score: 0

      Windows has an etc directory as well. Look for your hosts file.

    4. Re:Good by jc79 · · Score: 1

      /etc = Extended Text Configuration

    5. Re:Good by nine-times · · Score: 1
      From the Wikipedia:

      There has been controversy over the meaning of the name itself. In early versions of the UNIX Implementation Document from Bell labs, /etc is referred to as the etcetera directory,[24] as this directory historically held everything that did not belong elsewhere (however, the FHS restricts /etc to static configuration files and may not contain binaries).[25] Since the publication of early documentation, the directory name has been re-designated in various ways. Recent interpretations include Backronyms such as "Editable Text Configuration" or "Extended Tool Chest".

      It's called "etc" for etcetera because it had random crap in it. Not only is that arguably a sloppy approach to begin with, but that's not really what it's used for anymore.

  43. Flamebait much ? by alexhs · · Score: 1

    Even Linux's most passionate partisans will admit that its filesystem, which stashes vital files in a variety of arcane directories, can be baffling to users.

    man hier

    And, if you're lost,
    man man

    Plus, it has nothing to do with Linux (my advice applies to *BSD — Mac OS X included —, Solaris, QNX... just to cite a few)

    Now if you can explain to me what is in C:\Windows or \\HK* ...

    --
    I have discovered a truly marvelous proof of killer sig, which this margin is too narrow to contain.
    1. Re:Flamebait much ? by sqldr · · Score: 1

      Well, it's not exactly been immutable over time. I haven't built a server on more than 2 or 3 partitions since there ceased being a point. And 'sbin'. Is that for 'superusers', or is it for 'system'? People disagree.

      Then /srv came along to make up for some failings of /var... it's DATA... but it's not constantly changing... then does that mean we put websites under /srv/www only if its files don't change? What if it's a bit of both - split it up? (try getting the developers to get that to work..)

      If there is one rule about /usr/local it is this: DO NOT MAKE RPMS THAT WRITE TO IT!!!! (and don't manually put stuff where RPMs are allowed to write, for that matter). Alas too many people do. So that got broken and continues to get broken, and I've had to explain it far too many people.

      Yeah. So I turned into an FS nazi to get everyone to follow it exactly so at least we're all on the same page and pasting the docs on it, and 3 years later, most of my colleagues fully understand it. Until a new employee turns up.

      Then there's odd ones like /etc/opt, which has its very occasional use, but it's so rarely used that most people don't even believe it's correct when you're using it correctly, so I stopped bothering.

      By far the worst problem is the "./configure; make; make install" cycle which works right up until people start doing stuff like /usr/include/qt4 instead of just having /usr, /usr/local or /opt/qt4 as the prefix, which makes farting about with CFLAGS a bit of a chore. So you get stuff like "gtk-config --cflags" which kinda works in the one case of gtk, but it's hardly a "standard". I guess we could use a registry... *ducks* :P

      --
      I wrote my first program at the age of six, and I still can't work out how this website works.
    2. Re:Flamebait much ? by saint0192 · · Score: 1

      I thought sbin stood for static binaries. The ones that a system needs at its core when other things fail... All the core components of the operating system are stored there..

    3. Re:Flamebait much ? by pedestrian+crossing · · Score: 1

      And 'sbin'. Is that for 'superusers', or is it for 'system'? People disagree.

      My understanding is that it's for 'static'. As in statically-compiled binaries so if your libraries get hosed or you can only mount /, you have the tools you need to recover. Yes, this does reinforce your point, and I do agree with the rest of your post...

      --
      A house divided against itself cannot stand.
    4. Re:Flamebait much ? by Anonymous Coward · · Score: 0

      My understanding is that it's for 'static'. As in statically-compiled binaries so if your libraries get hosed or you can only mount /, you have the tools you need to recover.

      I thought so too, but...

      $ ldd /sbin/fsck
      linux-gate.so.1 => (0xb772e000)
      libblkid.so.1 => /lib/libblkid.so.1 (0xb7703000)
      libuuid.so.1 => /lib/libuuid.so.1 (0xb76ff000)
      libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb75b8000)
      /lib/ld-linux.so.2 (0xb772f000)

  44. Wrong move by Anonymous Coward · · Score: 0

    First, in a modern Linux system you don't bother if the executables are in /bin /sbin /usr/bin or /usr/sbin or even /home/marvin/bin. You start the programs from a menu or quick start buttons (or how ever your UI has named its buttons).

    A really cool thing today would be a set or class based file system. You could also call it tag based or attribute based system. Instead of only having hierarchies (which you still can model) you can group things by other purposes. For example, Alice have an incoming mail. In that mail Bob asks her to read and comment on a document. Now Alice reads that mail, but as it comes she does not have time to read the attached document ('business plan') just right now. She wants to process the rest of the incoming mail first and triage the different tasks. So first she tags the file with 'todo' and the todo list tool will show the file. And the tool would know that the file is associated with the email from bob. She could even mark the task as important or more important than other stuff. Or she could set a delivery date mark, like a event in a calendar. The mail itself is automatically moved from incoming to the set of mails from bob and it is viewable in the todo set/folder under "business plan" or "bob/business plan".
    When the mail is processed she fetches the first task from the todo list (fortunately it is bob's business plan) and she reads it. After reading it half way through, she requires additional information to verify the plan. So the plan goes on hold again. Then Alice associates these additional infos to the "business plan" and forwards everything to Claire. Claire than adds her insights to the plan and the extra info. She even adds more data and sends it back to Alice.
    Alice has now one file in incoming from Claire, a mail from Bob, a set of additional data and the business plan in a task. She now finishes the corrections and adds comments and sends Bob the resulting document.
    Bob gets the file. However, he cannot understand some of the comments as they relate to the additional data Alice omitted. Now Alice has three mails in that task. She selects reply and adds from the task set, the required data and sends that to Bob.
    This is the way people will work in future. To do so we need non hierarchical file systems. The gnome journal (zeitgeist) or the nepomuk project go in that direction. However, they implement all that stuff on top of the file system. It would be better to have all that in a database/file-system which provides the necessary features by itself.

    1. Re:Wrong move by Alain+Williams · · Score: 1

      First, in a modern Linux system you don't bother if the executables are in /bin /sbin /usr/bin or /usr/sbin or even /home/marvin/bin. You start the programs from a menu or quick start buttons (or how ever your UI has named its buttons).

      Actually: No. Most programs that my systems start are out of scripts of one sort or another. You are talking about desktop systems, the Unix/Linux world is much bigger than that -- servers are very important.

  45. Scary!!! by iggymanz · · Score: 1

    Guess which bug I hit when trying to build my Linux 3.1.0 kernel from the gzipped file, the one where if there are more than 16K entries some symlinks get hosed using the usual gzip included in many distros. (yes, there is patch). Now that is probably the most used compression algorithm in the open source world, and it had that long time issue that now cropped up with the massive amounts of files in kernel. And you want to trust your filesystem to some such thing with perhaps other bugs to crop up on massive amounts of internal files? no thanks, filesystems need to be rock solid.

  46. Standards? UNIX Traditions? What is that? by GioMac · · Score: 1

    Subj. Where are these "Standards"?

    Unix traditions? Do you feel SCO Smell? Or maybe *BSD? Or maybe HP-UX? AIX? SunOS? Mac OS X?
    What we have here:
    - Difference in init (noSysV, SysV, launchd, etc)
    - Hell, difference in packaging or not true packaging, usually pure old-fashioned (AIX additionally has RPM, thanks)
    - sysconfdir (/etc) mess everywhere
    - No stable solution for labeling/access control (Like Selinux/apparmor)
    - Hell knows where are my files/FHS inconsistency
    - Patched OSS software

    Same applies to most of the non-RPM Linux distros as well.

    Usually changes in Fedora are done according to standards like LSB, FHS etc:
    - Upstream software is used, only generic patches, no serious changes, contribution is done in upstream, not in distro only (normal OSS way, not like in Ubuntu)
    - Fedora changed it's init process SysVinit -> upstart -> systemd
    - In sync with updated kernel for functionality (Systemd is compatible with cgroups, easy process control/accounting), of course sometimes it's bleeding edge SW and needs to follow next release in order to use it completely, but at least you are part of it and prepared
    - RPM heaven - easy build, RPM -V checks, no extra files, FHS consistency, LSB, compatibility with PackageKIt
    - /etc/sysconfig - you don't change things in /etc/init/*
    - /etc/*.d/ - just add water
    - Same will be done in RHEL6

    Personally, I don't think there is a difference for me where files are located, in /bin or /usr/bin or sbins. For me generic file permissions, security and SELinux controls access to them, not the path.

    I use Fedora.

    BTW, bad way from Mac OS X:
    - /private/etc/
    - /private/tmp/
    - /private/var/
    - /home - empty
    - /net - empty
    - /cores - empty
    - /opt - empty

    Uppercase structure (why didn't they move it to /Mac or something like this?)
    - /Volumes
    - /Users
    - /System
    - /Network
    - /Library
    - /Developer
    - /Applications

    Yes, it's all build with standards, sure.

    --
    "It feels like I'm at the Zoo when reading this thread - I'm frightened, but it's interesting" (c)
  47. misc by Anonymous Coward · · Score: 0

    Seems like a tiny tweak when a giant overhaul might be better.

    The filesystem tweak most needed, though, is to stop dumping config stuff into ~ and instead put it in ~/.config (or better yet, ~/config).

    Also, wouldn't lib/x32 and lib/x64 be better than lib and lib64?

    1. Re:misc by Anonymous Coward · · Score: 0

      WTF is x32? Without understanding a thing, you go ahead and think "x64 is 64bit, so 32bit must be x32". Without consideration where these term originated and what they mean.

      The problem is people like you with no knowledge, thinking up some nonsense and littering the world with it.

  48. See Mac OS X by Anonymous Coward · · Score: 0

    Leave it as-is, work on actual things that make Linux confusing. See Mac OS X...the same/similar directory layout exists there and normal users are oblivious to it, as they probably should be.

  49. gobolinux (was Re:Good idea) by sqldr · · Score: 1

    I'm more worried about the loss of sbin (and /usr/sbin) where, although its purpose has morphed over time, it's a great place to put exes that you're NOT supposed to type on the commandline. Like cronjobs, scripts that are called by other scripts, or simply stuff that users shouldn't use or want cluttering their path.

    Incidentally, these guys have taken it WAY further:

    http://www.gobolinux.org/

    --
    I wrote my first program at the age of six, and I still can't work out how this website works.
  50. Get off my lawn by renegadesx · · Score: 1

    Why not put the libs into /lib where they belong and boot all libraries out of /usr? While we are at it, all the lib64 stuff could easily have a subdirectory (i.e. /lib/lib64). While we are at it, can we get rid of the following TLD's? /media: /mnt made sense /misc: what is this even supposed to be used for? /net: not even part of the official standard. /srv: officially there still is no consensus on how its meant to be used, plus its main uses (httpd, databases) were fine in /var /selinux (Im sure you can find a place in /usr for some of it, most of it looks like it belongs in /etc anyway) Sorry to sound "get off my lawn"ish but it all comes across as unnessecary polution to me and we really did get along fine before all these.

    --
    Make SELinux enforcing again!
  51. Creating problems where there weren't any by jiteo · · Score: 1, Insightful

    This, bizarrely, reminds me of an article on feminism, and how, having won the major gender inequality battles, they're starting to pick silly fights where a rational person would see no fight to pick.

    I think something similar is happening here, and with Ubuntu's Unity and maybe GNOME 3 as well. Having achieved a big chunk of what they set out to achieve, they start looking for the next big goal, but there's no next big goal to be found, so they just invent something utterly ridiculous. The file system is fine, just leave it be. All the newbies need to know about is their home directory, and those who need to know about the entire file system are perfectly fine with how it's currently laid out.

    1. Re:Creating problems where there weren't any by hedwards · · Score: 0

      Doubtful, the most reasonable explanation is that like feminists, they refuse to listen to anybody with a counter argument and end up going more and more nuts over time. It happens whenever you discard one side of the argument immediately and without consideration.

    2. Re:Creating problems where there weren't any by Anonymous Coward · · Score: 0

      You've nailed the issue 100%.
      I seriously don't know what the solution can be.
      Maybe mass emigration towards Slackware (oh if it only had a decent package manager) or the BSDs ?
      How about certain distro just shun off the newbies. Let them suffocate under Ubuntu. When they're cooked just right bring them in and teach them the "true unix/linux culture". Starting from Linux is not Windows or Mac OS X.

    3. Re:Creating problems where there weren't any by couchslug · · Score: 1

      "but there's no next big goal to be found"

      "Quality" is Big, but insufficiently Shiny to merit consideration.

      --
      "This post is an artistic work of fiction and falsehood. Only a fool would take anything posted here as fact."
  52. Ahmmm by xfurious · · Score: 2

    /
    |-- etc
    |-- usr
    | |-- bin
    | |-- lib
    | |-- lib64
    ...
    |-- bin -> usr/bin

    That '->' in here? That means a symbolic link (ln -s) ...

    One of the biggest potential hurdles against LSB (and indeed the whole plan) could be /bin/sh. A lot of shell scripts have #!/bin/sh as their first line (or #!/bin/bash or what have you). If /bin went away, any script with a call like this inside would break. Some scripts might use env to locate the script interpreter, and since env is already in /usr/bin/env, these won't have problems.

    I think this guy forgot to read his own diagram... if /bin is symlinked to /usr/bin, the scripts will work perfectly fine. This article is a little stupid, imho. In all fairness, the guy does realize that there are workarounds, but this paragraph and the one after talk about complete non-issues.

    Many distributions have reworked the filesystem hugely, with some regulo symlinks on /usr, /tmp or where-ever to deal with code that hardlinks these locations (which, in most cases should never be required, because you should be accessing 'bin' directories via PATH, and 'lib' directories via LD_LIBRARY_PATH... and 'tmp' directories using the stdlib functions (or a language-specific wrapper).

    Certainly '/etc' has no standardized variable or way of accessing it other than just hardcoding in '/etc', but this is why we have symlinks.

    I agree with the other posts about keeping the boot volume separate from the non-essential OS code volume (/usr). It is there for a reason, not just compatibility. Also, /sbin has always been stupid so good riddance there. Separating super user executables from normal executables helps nothing in 99% of cases. What matters is the write and execute privileges on the actual executables, not the directory. I believe the argument is that if you want to have tiered write access amongst non-root administrator accounts, with administrators only able to write to /usr/bin but not /usr/sbin, you can do it with SLIGHTLY less work. But really- if everything is written PROPERLY, a simple change to the system's PATH variable, and some time moving the right executables into the more restricted directory will yield an identical result without the clutter by default, and the need for people to explain what sbin is to newbie users.
    Also whoever had the bright idea to not have */sbin in the PATH was just retarded. I have no idea what their argument is on that.

    1. Re:Ahmmm by hedwards · · Score: 1

      If you do that, you'll end up with a computer that won't boot. /bin must be on the root partition otherwise you're never going to get that computer to boot up.

    2. Re:Ahmmm by Anonymous Coward · · Score: 0

      /sbin not being in $PATH means you have to type the full path to it, which means you are going to hit the real executable and not one in a possibly maliciously modified $PATH, or a maliciously placed executable that will hit a directory earlier in your $PATH.

      Even with that extreme paranoia notwithstanding, it's cool to have a separate directory for things that should be "higher priority" in your path.

    3. Re:Ahmmm by Anonymous Coward · · Score: 0

      You are missing the point.

      Firstly sbin is not a security feature in the strict sense. (Of course since as you point out it doesn't provide any security).

      Its whole /point/ is to not have sbin in your PATH if you are not root or sudo. So there is less pollution of tab-completion, and you are infinitely less likely to type a system command by accident. So it's a security feature, in the 'security against mistakes not maliciousness' sense.

  53. My Mom by spottedkangaroo · · Score: 2

    When linux gets so simple my mom can sysadmin it with no worries, but I can't get anything done... wtf do I switch to? Corollary: why do we keep fixing things in linux kerneled operating systems that aren't even broken. Just leave the file system alone or you'll end up with Ext5: Unity Disaster.

    --
    Imagine if you weren't allowed to use roads because a bus company complained about your driving 3 times. --skunkpussy
    1. Re:My Mom by spottedkangaroo · · Score: 1

      Ooops, ranted about the filesystems, I didn't realize they were talking about the layout of the distribution and the well organized directories full of useful information. I unloaded my rant too early. It still applies, but it's aimed at slightly the wrong things.

      --
      Imagine if you weren't allowed to use roads because a bus company complained about your driving 3 times. --skunkpussy
  54. The file system belongs to the USER. by linebackn · · Score: 1

    I know programmers and developers often like to think they know best, but it is important to remember that the file system belongs to the user, not you. You should respect that by not littering THEIR file system up with thousands of small files that they will never touch directly, obscurely named files and folders, or visible system internals.

    There is no good reason an end user should be able to browse in to /dev or even see it at all. In *nix there are no attributes for hidden folders so you hacked it by having files start with a period?!! Individual applications are split up in to many thousands of scary looking files and folders that often get picked up when the user searches for something on the drive.

    Look at the original MacOS - each application and even the OS was often just one distinct file each. Nothing scary there, and easy to manipulate.

    All modern OSes have gotten away from that. On Mac, Windows, and Linux a "fresh" install easily has 10,000 files on it and an insanely huge directory tree. There is so much stuff it even has to have dedicated locations just for user files. Basically the entire disk belongs to the OS - not the user any more.

    It doesn't help that Unix style file systems hail from the multiuser mainframe era where the disk NEVER belonged to an individual user.

    Complain about the technical issues all you want, you are making things more confusing for end users than it needs to be.

    1. Re:The file system belongs to the USER. by Anonymous Coward · · Score: 0

      Fascinating that you consider Unix to be a modern OS next to MacOS.

      And as far as it goes, any Unix based OS (and that includes MacOS, nowadays) is capable of hosting multiple users both sequentially and simultaneously, and so precisely *which* user would you grant the whole disk to?

    2. Re:The file system belongs to the USER. by jedidiah · · Score: 1

      No. Anything outside of /home is NOT owned by the user.

      Basically, I can wipe the system and reinstall it and run "apt-get install firefox" and that will all manipulate the rest of the system that end users never really see or touch directly. That is the system and is owned by itself. It doesn't need to be tinkered with by the end user and it can be easily and trivially rebuilt by any decent package manager. There's no good reason to muck around with it or even to make it easier for some Lemming n00b to muck around with it.

      That's the beauty of how Unix files are organized. I can blow away the system owned files and recreate them and "my own stuff" doesn't need to be touched and won't be.

      The end user doesn't need to see or be bothered by /usr/bin. All they need to know is what menu to click on to type "kdenlive" and where the "go button" is. ...total non problem pointless solution to something that didn't need to be solved to begin with.

      --
      A Pirate and a Puritan look the same on a balance sheet.
    3. Re:The file system belongs to the USER. by Lunix+Nutcase · · Score: 1

      In the case of 99% of desktop users, the only user who ever actually uses the system?

    4. Re:The file system belongs to the USER. by Anonymous Coward · · Score: 0

      The filesystem does not belong to the user. It belongs to the operating system and provides an interface between it and the applications and processes that run ontop of it. As a result it should be designed approprately. All the users should care about is there home directory.

    5. Re:The file system belongs to the USER. by Vegemeister · · Score: 1

      So you're one of those doofuses who dumps all their files in C:\ then?

  55. Step away from the fs and nobody gets hurt! by jafo · · Score: 1

    This sure seems like a bad idea, are there really people who are complaining about this? Seems like it could lead to a backlash of unity-proportions. :-) I'd be ok with if it if looked exact like the current file-system, but without littering my home directory with empty "Videos", "Pictures", "Documents", "Webcam", "Music", "Desktop", "Downloads", "Public", "Templates" directories...

    1. Re:Step away from the fs and nobody gets hurt! by Daniel+Phillips · · Score: 1

      This sure seems like a bad idea, are there really people who are complaining about this? Seems like it could lead to a backlash of unity-proportions. :-)

      True, now that you put it that way. The Fedora guys should definitely throw caution to the wind and do it, then maybe we will be a step closer to being rid of Fedora entirely.

      --
      Have you got your LWN subscription yet?
  56. Whats next - System32 ? by NemoinSpace · · Score: 1

    Another set of developers who are to lazy to learn the intricacies of a software and decide to "rewrite". I guess there *was* a reason for Redhat to dump the desktop side.

  57. Poor little FOSSies, always wrong... by Anonymous Coward · · Score: 0

    I remember when all the FOSSies were saying how evil and stupid it was for Microsoft to put all their files into \windows\system and \windows\system32.

    But you see, FOSSies are always right, even when they're wrong! Or, probably more accurately, Microsoft is always wrong, even when they're right.

  58. This might be the right crowd to ask. by Anonymous Coward · · Score: 0

    I'm actually one of those baffled new users he's referring to. Coming from windows and trying out Ubuntu. I'm still trying to figure out how I can know what gets installed where when you fetch a program. I did quite a few searches on everything from how to create a package to any kind of document defining the logic behind what files are supposed to go where but still haven't figured out how to locate all the files that were installed by a package and how the os is supposed to know where to find them.

    So... what's the secret ?

    Be gentle... originally I was expecting to find something like a program files directory.

    1. Re:This might be the right crowd to ask. by jmorris42 · · Score: 1

      > I'm actually one of those baffled new users he's referring to.

      Short version, man hier. Longer version google up the linux FHS, it explains what should be where and why things were made the way it is. Personally I'd be open to eliminating /usr since the reason for its existence is not nearly as strong as it once was. But there are still people who do have a need for a tiny root fs and network mounting everything else. And since everyone is already used to it there really needs to be a compelling reason to change it, not just another of Pottering's jihads against everything UNIX/POSIX.

      --
      Democrat delenda est
    2. Re:This might be the right crowd to ask. by stderr_dk · · Score: 1

      ... trying out Ubuntu. ... how to locate all the files that were installed by a package

      dpkg -L <package>
      E.g.
      dpkg -L base-files

      If you want to do the reverse, you would use dpkg -S <filename>
      E.g.
      dpkg -S /etc/debian_version

      --
      alias sudo="echo make it yourself #" ; # https://pipedot.org/~stderr & http://soylentnews.org/~stderr
  59. nonsense by Tom · · Score: 2

    Is it nonsense-week on /. or what?

    "Even Linux's most passionate partisans will admit that its filesystem, which stashes vital files in a variety of arcane directories, can be baffling to users.

    Errr... no?

    First up, you rarely need to dig out those directories, especially not during daily use. A systems administrator may need to venture into /var/lib/whatever occasionally, but a user? Another non-problem created by people confusing their audiences. A system administrator, who needs to know these things, shouldn't be baffled by it, or whatever you're paying him, it's too much. A user, who would be baffled, shouldn't need to worry about it.

    There's method to the madness - the mentioned filesystem standard, for example. If you don't grok the method, don't try to "simplify" it. Simplification only works, if you understand the thing you're simplifying really, really well. Otherwise, you're just throwing stuff out, and then say "oh, crap" when you realize much later that you shouldn't have.

    --
    Assorted stuff I do sometimes: Lemuria.org
    1. Re:nonsense by Anonymous Coward · · Score: 0

      Hi, my name is Wayland ... and no, I don't care that I don't have network transparency ... I'm shiny ... and simple :)

    2. Re:nonsense by vencs · · Score: 0

      Also good luck changing all those man pages! It might just cause a real world disaster.

    3. Re:nonsense by Anonymous Coward · · Score: 0

      Welcome to the year of the linux desktop, where stuff breaks if you don't keep everything local. If you remove structure it is really hard to get it back if not impossible. It isn't hard to maintain that structure, but apparently many many programmers don't even bother with the output from or input to autoconf/automake whatever. This isn't a problem with the filesystem hierarchie, but with programmers that don't even know how the tools of their choice works. The 'user' isn't even using $PATH anymore: Programs land in a database and/or menu and are launched by click.

      I hope people will start to remember why such a structrure was introduced and keep the old functionality. My last personal oh crap moment came when debian changed their libc and people could no longer write to directories they only had group write rights to. How about regression tests?

    4. Re:nonsense by Shimbo · · Score: 2

      Is it nonsense-week on /. or what?

      Well, no. It appears to be bad summary week. And people replying without RTFA week. Actually skip the article even, read Lennart Poettering's post on fedora.devel.

    5. Re:nonsense by Anonymous Coward · · Score: 0

      As more and more people install linux at home the user becomes the system administrator. That kinda breaks your statements.

    6. Re:nonsense by mr100percent · · Score: 1

      Linux has a relatively steep learning curve. Your sys admin idea might apply to people with lots of experience, but if you want people to replace Windows or OS X with Linux, this becomes an issue.

    7. Re:nonsense by Fred+Foobar · · Score: 1

      Welcome to the year of the linux desktop, where stuff breaks if you don't keep everything local. If you remove structure it is really hard to get it back if not impossible. It isn't hard to maintain that structure, but apparently many many programmers don't even bother with the output from or input to autoconf/automake whatever. This isn't a problem with the filesystem hierarchie, but with programmers that don't even know how the tools of their choice works. The 'user' isn't even using $PATH anymore: Programs land in a database and/or menu and are launched by click.

      Last time I checked, most of my shortcuts that are "launched by click" don't specify the full path to the executable. Take a shortcut to Firefox as an example. The command is just "firefox" (plus possibly some switches and options). When I click on the shortcut, the underlying system (Gnome or whatever) searches the PATH environment variable for that executable and runs the first instance that it finds, in the same way a shell would do (of course, Gnome technically is a shell too). This means if I install a different version of Firefox under /usr/local/bin, the system then runs that version instead, just as it should (because /usr/local/bin comes before /usr/bin in PATH).

      I hope people will start to remember why such a structrure was introduced and keep the old functionality. My last personal oh crap moment came when debian changed their libc and people could no longer write to directories they only had group write rights to. How about regression tests?

      How would a change in the libc affect whether users can write to directories? The C library doesn't determine file/directory access; if it did, it would be extremely easy for a program to get around file permissions by using a different C library, or by not using a C library at all. It sounds like either the permissions or groups changed (see /etc/groups), or SE Linux stuff (which I don't believe is necessary for most users) is getting in the way.

      --
      It was a really good paper.
    8. Re:nonsense by Tom · · Score: 1

      More nonsense.

      I know several people who had never touched Linux before I met them, and one of them actually bought her first computer with my help. These people used Linux without bothering about the fine details of the FHS. For one, every distribution for the past 10 years has made it easier and easier to run Linux. Two, if you don't do arcane stuff, you seldom have to. Three, whenever they had to, they simply accepted things being as they were and worked with that. Human beings are great that way.

      Note the "four, I helped them" is absent from that list. Because I didn't.

      I don't know what kind of users you have in mind, but maybe Linux isn't the right OS for your grandmother.

      --
      Assorted stuff I do sometimes: Lemuria.org
  60. But so many files are shared between programs by DragonHawk · · Score: 1

    Given the prevalence of libraries being used by more than one program, trying to organize things into directories-per-program doesn't make a whole lot of sense to me. You'd really need to have a different directories for each package. So now you've got thousands of package folders, each with a handful of files. What does that get us?

    I think the idea of keeping track of what files belong to what package is the job of the package manager, not the filesystem layout.

    --

    dragonhawk@iname.microsoft.com
    I do not like Microsoft. Remove them from my email address.
    1. Re:But so many files are shared between programs by EvanED · · Score: 1

      I think the idea of keeping track of what files belong to what package is the job of the package manager, not the filesystem layout.

      It's amazing to me how un-Unix like Unix can be sometimes and still have its adherents saying it's doing the right thing. :-)

      Unix already has tools for dealing with anything you could imagine (okay, not true, but work with me) regarding the file system. Why should I need an entirely different set of tools for dealing with packages?

      (I sort of said this already in reply to another of your posts, but I liked my opening line and thought of it only after submitting that. :-) )

  61. Seldom-used? Bullshit. by Anonymous Coward · · Score: 0

    Also, in the 15 years I've had the honor of navigating Linux file systems, I've never once needed to think about this issue except when severe space constraints were an issue. What desktop user cares? Are you people not aware of $PATH?

  62. \usr\bsd\games\advent by Jeremiah+Cornelius · · Score: 2

    From my cold, dead hands...

    --
    "Flyin' in just a sweet place,
    Never been known to fail..."
    1. Re:\usr\bsd\games\advent by Anonymous Coward · · Score: 0

      You've got a seriously slanted world view...

  63. Or they could fix the actual problem by DragonHawk · · Score: 2

    They address that by saying "There is no way to reliably bring up a modern system with an empty /usr, there are two alternatives to fix it: copy /usr back to the rootfs or use an initramfs which can hide the split-off from the system."

    Of course, they conveniently omit the third option: Fix their init system so it doesn't depend on half the software ever written just to bring up a basic system.

    Unix wins because it follows KISS. Fedora (and others) have been moving away from that. It's not good.

    --

    dragonhawk@iname.microsoft.com
    I do not like Microsoft. Remove them from my email address.
    1. Re:Or they could fix the actual problem by Rich0 · · Score: 1

      Wow, this is like reading last month's gentoo-dev threads all over again... :) We just hashed out this whole argument in just about every direction it can go. Your point was one I originally advocated. The problem is that it is like spitting into the wind.

      Udev is apparently the problem, especially where bluetooth support is involved. Try to boot a system with a bluetooth keyboard without /usr mounted before init runs and most distros will make your life hard.

      So, they're basically turning the bug into a feature and saying, well, why not put EVERYTHING in /usr and then put it on a separate filesystem and move the mounting logic to dracut or whatever.

      Ultimately unless you want to fork and rewrite udev or try to convince them of the merits of your argument are just academic.

    2. Re:Or they could fix the actual problem by bill_mcgonigle · · Score: 1

      Unix wins because it follows KISS. Fedora (and others) have been moving away from that. It's not good.

      Fedora will argue that init, ConsoleKit, xinetd and (eventually) cron, at, et. al. are more complex in total than a single 'run-stuff' process. Plus cgroups management which has been effectively missing from linux until systemd.

      Does 'simple' mean 'do one thing and do it well' or 'avoid multiple redundant code paths that all do approximately the same thing? Yes, no, and both?

      Full disclosure: systemd in Fedora 15 causes me great frustration.

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
  64. These comments prove the point by hmbJeff · · Score: 2, Insightful

    As I read the comments for this topic, what stands out is that there are a bunch of arbitrary and conflicting interpretations of the "right" place to put things on a Unix/Linux system, each of which is justified by some sacred "historical reasoning" (even though no one can ever agree on said reasoning).

    And that is the problem. Why should I have to know which arbitrary approach happened to be followed by a particular distro or installed package?

    I don't have touchy geek pride or a need to whip out my big nerd phallus at parties--I just want the systems I manage or use to be reasonably robust and consistent. I don't care who wins--I just don't want all the variations.

    1. Re:These comments prove the point by jedidiah · · Score: 1

      ...as long as you aren't trying to break your system by mucking around with things, you don't really need to know or be bothered with where a particular file is stored exactly.

      That's the beauty of the Unix way of doing things.

      Between PATH and LD_LIBRARY_PATH, stuff can be quite literally anywhere.

      You could even have a different setup for every application if you really wanted.

      However, there is something to be said for not trying to "fix" that which isn't really broken.

      --
      A Pirate and a Puritan look the same on a balance sheet.
    2. Re:These comments prove the point by phorm · · Score: 1

      Between PATH and LD_LIBRARY_PATH, stuff can be quite literally anywhere.

      Where really SUCKS when you're trying to doing a least some management of space allocation and performance/privilege separation.

    3. Re:These comments prove the point by Anonymous Coward · · Score: 0

      Go and use OSX then. Power users never agree on anything and Linux is an OS for power users.

    4. Re:These comments prove the point by FreakyGreenLeaky · · Score: 1

      Which is precisely why it's a bad idea to introduce yet another inconsistent layout...

    5. Re:These comments prove the point by Anonymous Coward · · Score: 0

      That's what she said!

    6. Re:These comments prove the point by Anonymous Coward · · Score: 0

      You don't want variations, so we should go and introduce YET ANOTHER variation? It's a symptom of today's generation. Their outsourced-to-Google microbrains don't understand what experienced people are doing so they go ahead and think "Let's do away with all the old cruft. I don't get it and it's old anyway. A fresh start allows us to have cleaner/faster/easier/... software." But, being microbrains, they of course don't have the genius to make something really simple. It just becomes featureless or hides away the complexity without solving it.

      It's how BSD people think about Linux BTW: dozens of filesystems, audio layers, now filesystem layouts? Linux idiots got lost in some change-for-the-sake-of-change jungle and make it hard for people to actually use their crap. You are already wading too deep in the crap and now you think yet another change will make it good.

      Here's some quotes for you dumbasses who think they can come up with something in 5 minutes that nobody ever thought of and dismissed as stupid already:

      “Make things as simple as possible, but not simpler.” - Einstein

      http://en.wikipedia.org/wiki/Unix_philosophy#Quotes

    7. Re:These comments prove the point by Anonymous Coward · · Score: 0

      As I read the comments for this topic, what stands out is that there are a bunch of arbitrary and conflicting interpretations of the "right" place to put things on a Unix/Linux system, each of which is justified by some sacred "historical reasoning" (even though no one can ever agree on said reasoning).

      Then you'd better have your reading comprehension checked. The primary theme is that people who work with the filesystem directly understand why it is the way it is and don't want it arbitrarily changed, while some others who have no idea what they're talking about agree with changing it because they think it makes them cool to trash something they don't understand.

      I don't have touchy geek pride or a need to whip out my big nerd phallus at parties...

      You're touchy about something or you wouldn't have felt the need to mention it... perhaps you doth protest too much? In any case, if you really think the filesystem is arbitrary or confusing, then you don't know what you're doing and/or do not manage any Unix-based systems. I have done so across Solaris, several flavors of Linux, and FreeBSD, and it takes negligible time to find what I'm looking for on any of those systems. But then, I actually do know what I'm doing.

    8. Re:These comments prove the point by Anonymous Coward · · Score: 0

      LIAR!

    9. Re:These comments prove the point by Anonymous Coward · · Score: 1

      You know, the FHS actually has a rationale included with it. You may want to read it.

    10. Re:These comments prove the point by suspiciously_calm · · Score: 1

      Between PATH and LD_LIBRARY_PATH, stuff can be quite literally anywhere.

      Except when paths are hard coded. #!/bin/bash anyone?

  65. Two cents by deblau · · Score: 1

    If you have to mount any partition other than / to boot, your OS has a pretty serious security hole.

    --
    This post expresses my opinion, not that of my employer. And yes, IAAL.
    1. Re:Two cents by Anonymous Coward · · Score: 0

      it seems you're a security hole then. how dumb is your statement exactly?

  66. Unix stuff is behind the scenes by perpenso · · Score: 2

    Finder on Mac OSX hides all important standard Unix directories such as /etc and /usr, and /home is also empty; users are found in /Users. This makes Finder pretty useless and stops any users learning about the true directory hierarchy. I can see the move to simplify the filesystem as great for newtime users, but it isn't actually that bad as it currently is with lib64 and lib and everything else. Why fix what is not broken?

    The unix stuff is behind the scenes, there is no intention to make it necessary for a user to ever become aware of it. The unix stuff is really a secondary environment for those wanting to use traditional unix tools and apps. There was originally debate as to whether the console would even be installed by default, leaving it as an optional install for those who desired it.

  67. Files, directories, and packages, oh my! by DragonHawk · · Score: 1

    Windows, Mac iOS, and Android all have the concept of an application directory where all the files for an app go.

    This is perfectly possible on *nix, too. There's nothing magic about any part of the filesystem. As long as the shell can find your executables, and the loader can find your libraries, it will run. But it's not as smart as it sounds.

    A great many libraries are used by more than one executable, package, or even family of packages. Where do those libraries go? They don't belong to any particular application. I suppose you could have a different directory for each library package, but what does that get us? Thousands of directories with a handful of library files in each? What's the advantage of that?

    Separating files by their intended purpose, the way traditional *nix does, has some advantages. For example, by having executables separate from libraries, the system spends less time searching inapplicable files when you invoke a command name. By having platform-independent files under /usr/share/, one can have share that tree across architectures. Not needed on a traditional personal computer, but in a "cloud computing" design with multiple platforms coming into use on demand, it's quite useful.

    I suspect the "one directory per package" mentality is largely driven by the closed-source world, where code sharing is rare, and software tends to be isolated. In the Free/Open Software world, it's very common for many different authors to both provide and make use of others' libraries and resources. Diving things into "products" doesn't make nearly as much sense there.

    As a result, any old fool can publish an app in the Android Market with 1/10th the experience and skill required to be in Debian.

    Debian (and most other distributions) have rather higher standards of quality. You have to do things like provide documentation, declare your dependencies on shared libraries, etc. This makes the system work better. It does mean "any fool" can't get their software into the distribution. But why would I want software written by a fool? Badly written software causes me pain.

    maybe we should instead dump all of an applications files into shared directories, where they can clobber each other

    It's the job of the package manager to keep things from clobbering each other, and it generally does a pretty good job. Anything installed on a system can potentially effect that system -- simply using different directories won't make that problem go away. That's why package managers exist in the first place.

    Merging /lib and /usr/lib?

    I think the /usr vs root distinction is less relevant than it used to be (what with even tiny computers having huge storage), but I do still think there's benefit to keeping a minimal but useful subset that can be used to fix the rest of the system. MS Windows has to use a "recovery environment" for that. I much prefer the idea that the rescue system can just be a smaller portion of the main system. Sure, sometimes it will be totally hosed and you need to boot from some other media, but plenty of times it's just that a more complicated subsystem has gotten broken, and it's nice to be able to fix that in-place.

    --

    dragonhawk@iname.microsoft.com
    I do not like Microsoft. Remove them from my email address.
    1. Re:Files, directories, and packages, oh my! by EvanED · · Score: 1

      Separating files by their intended purpose, the way traditional *nix does, has some advantages.

      And separating files by their package also has a lot of advantages.

      For instance, keeping multiple versions side-by-side becomes basically trivial. Version 1 goes in /opt/foo-1.0 and version 2 goes in /opt/foo-2.0. It doesn't matter if the packages weren't designed to sit side-by-side, if they use the same file names, etc.; it just works.

      They also contribute to why you need a package manager in the first place, because adminning a Unix system without one is a PITA. Want to upgrade a package? Have fun. Especially if it doesn't provide a "make uninstall" -- which is more common than it should be. If you had a separate directory and just wanted to replace it, that'd also be easy: just delete the old directory and install the new version. The other reason to have one is to do resolution of dependencies, and of course this is still very relevant if you have separate directories. But package managers could be a lot simpler if that was their sole task.

      For instance, how many package managers can you use without root? (The answer is approximately zero. I believe none of the big ones -- Apt, Emerge, Yum/RPM, etc. -- support it.) Now imagine an alternative world where software was built to install in a more Windows or (even better) OS X-like way -- now it doesn't matter what your package manager runs as. It just downloads any missing dependencies and extracts them to wherever you tell it to. If you have permission, it succeeds. And because the packages are built so that you can put them anywhere -- in contrast to now where they are usually built so they won't work outside of /usr/bin or whatever the maintainer decides -- they work.

      On a more philosophical level, isn't one of the benefits of Unix's "everything's a file" and "everything uses text for configurations and to communicate" approaches supposed to be that you can use the same tools for everything? If you want to edit a configuration file, you've got grep and sed and all that jazz to edit them. But now we have this second class of entity -- the package. And I can't use du on it. And I can't use rm on it. I have to go through the package manager because nothing else knows about what the packages are.

      I've got first-hand working with a system that has this sort of organization. What is basically the IT dept for the CS department here maintains a network file system with programs in our /s directory. Here is just some of the output of running: ls -d /s/a*:

      /s/ACE-5.6
      /s/ACE-5.6.2
      /s/a2ps
      /s/a2ps-4.12
      /s/a52dec-0.7.4
      /s/aRts-0.5.4
      /s/aRts-1.1.1
      /s/aXe
      /s/aXe-6.1.2
      /s/aacraid
      /s/aacraid-5.50
      /s/aalib
      /s/aalib-1.2
      /s/aalib-1.2-2
      /s/aalib-1.4rc4
      /s/abiword
      /s/abiword-0.9.6.1
      /s/abiword-1.0.2
      /s/abiword-1.0.3

      Furthermore, there's another file system that pretty much anyone can install programs to. (You need to get a role that lets you do this, but it's pretty freely given out, at least to grad students.) I've put a number of programs there. That's organized in much the same way.

      The whole system works beautifully. I find it way better than the typical Unix organization. The only thing that would make it better is if we didn't have to manually resolve dependencies ourselves and then compile everything.

    2. Re:Files, directories, and packages, oh my! by EvanED · · Score: 1

      They also contribute to why you need a package manager in the first place, because adminning a Unix system without one is a PITA. Want to upgrade a package? Have fun. Especially if it doesn't provide a "make uninstall" -- which is more common than it should be. If you had a separate directory and just wanted to replace it, that'd also be easy: just delete the old directory and install the new version. The other reason to have one is to do resolution of dependencies, and of course this is still very relevant if you have separate directories. But package managers could be a lot simpler if that was their sole task.

      This paragraph is pretty poorly worded. Let me try again:

      Dumping every binary in /usr/bin, every library in /usr/lib, etc contributes to why you need a package manager in the first place, because adminning a Unix system without one is a PITA. Want to upgrade a package? Have fun. Especially if it doesn't provide a "make uninstall" -- which is more common than it should be. If you had a separate directory and just wanted to replace it, that'd also be easy: just delete the old directory and install the new version. The other reason for package managers is to do resolution of dependencies, and of course this is still very relevant if you have separate directories. But package managers could be a lot simpler if that was their sole task.

    3. Re:Files, directories, and packages, oh my! by bill_mcgonigle · · Score: 1

      Thousands of directories with a handful of library files in each? What's the advantage of that?

      Yes! Not just directories, but filesystems. Thousands of filesystems. I know, this is capital CRAZY in a ufs/extN world, but with ZFS/btrfs, this makes more sense than not doing it.

      On my Fedora systems, I often come in to find, say, Thunderbird being wonky, then it crashes after a few minutes. Oh, Thunderbird got updated last night and now it can't find its symbols because the binaries have changed out from underneath it, so only stuff that's currently in-memory is going to work.

      "Oh, but you shouldn't run automatic updates". "Oh, but you shouldn't leave your environment logged in in when you go home". Nonsense, I say - those are artifacts of dumb filesystems.

      In a btrfs world, we'll have a /usr/thunderbird filesystem, with /usr/thunderbird@3.0.1-15 as a snapshot. The package manager can worry about which snapshots are still needed (due to dependencies) and which ones aren't. A nightly job can clean up any remaining orphans (after a reboot, for instance), but in the meantime, rolling updates don't mean 'broken user systems'. And multiple versions can co-exist simultaneously (with explicit dependencies).

      A unified /usr/bin is a small step in the right direction because we can fill that up later with a pile of symlinks to the current snapshots, for legacy compatibility.

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    4. Re:Files, directories, and packages, oh my! by nschubach · · Score: 1

      IMHO (as an open source supporter) applications should come in packages that you simply "install" to an app directory. The system should then create sub-directories for it to gain access to the libraries, user files (specified by user), and settings. The application should only have access to that directory and only directory links provided within that directory.

      For instance:
      I have a 64-bit app called goodthing. I install it on my machine by using my package manager. The package manager notes that it's an amd64 application and creates a directory link to the 64-bit libraries folder on the system in the application install directory called /apps/goodthing/system/lib where the application will gain access to all available libraries on the system. It will also create a directory called /apps/goodthing/system/usersettings/ pointing to ~/.settings/goodthing/ to store configurations for the user running it and /apps/goodthing/system/userfiles pointing to ~/files/goodthing/ to store files created by the application. This could be extended to encompass more functionality up to and including links to hardware files (dev for instance) that would be in /apps/goodthing/system/dev if granted/needed. Applications installed under this system would only need to ensure that they do not create a system sub-directory since that would be reserved for each system and could be deleted upon install.

      --
      Every time I start to have faith in humanity, I ruin it by driving to work between 7 and 8 am.
    5. Re:Files, directories, and packages, oh my! by DragonHawk · · Score: 1

      You make some interesting and insightful points. I don't have time for a proper reply, and likely won't before the story closes, so I just wanted to say that you made me stop and consider, at least. :)

      --

      dragonhawk@iname.microsoft.com
      I do not like Microsoft. Remove them from my email address.
  68. Damn...this is running wayyy to smoothly!!! by golfnomad · · Score: 2

    if it ain't broke don't fix it! I see no BSOD's here I see no need to reboot everyday Everybody hates success........

    1. Re:Damn...this is running wayyy to smoothly!!! by Omestes · · Score: 1

      if it ain't broke don't fix it! I see no BSOD's here I see no need to reboot everyday Everybody hates success........

      Actually I haven't had a BSOD in over 5 years (oddly since Vista came out) now (my girlfriend's PC did, but that was thanks to a dying video card). I haven't rebooted in over 3 weeks, on any of my boxes (OpenSuse, Mint Debian, OS X, and 3x Windows 7), with one of the Windows boxes having the most uptime, period. Right now my main Win7 box is the most stable PC in our house, with pretty much no reported errors or crashes in a two year period. My OpenSuse laptop is a bigger mess than any Windows box I've worked on for a very long time, but that's mostly because Tumbleweed is terrible (Hey Mint, can I have my rolling KDE release yet?).

      Every modern OS is almost completely equivalent these days, the only real differences are aesthetics and moronic tribal affiliations.

      --
      A patriot must always be ready to defend his country against his government. -edward abbey
  69. No one is baffled. by salesgeek · · Score: 1

    In the Unix world, we tend not to bloat one tool with the features of another. Just google linux mount zip or linux mount rar for some interesting ways to do what you want that rely on the Unix many simple tools that work together philosophy.

    --
    -- $G
  70. how slow is your disk? by Anonymous Coward · · Score: 0

    even an el-cheepo hard drive can push 100mb/s these days.
    and decompression is 100% pure latency. see
    http://corpus.canterbury.ac.nz/details/calgary/DecTimeByDecTime.html

  71. Arcane? by Anonymous Coward · · Score: 0

    Which is more arcane? /home/username/Maildir

    or

    C:\Documents and Settings\username\Application Data\Local Settings\Microsoft\Outlook
    C:\Documents and Settings\username\Local Settings\Microsoft\Outlook
    HKCU\Software\Microsoft|Outlook ... blah blah blah

    I really don't understand why people get so hung up on /bin and /usr/bin. One is for stuff needing to be available during boot and system recovery or maintenance, the other is for standard applications. Not very arcane.

  72. same old failed argument by Anonymous Coward · · Score: 0

    I guess since hardware is sooooo cheap then you dont mind paying for my 2T drive then?
    No?
    Didnt think so.

  73. hello ,this is so great by Anonymous Coward · · Score: 0

    I've used compression on laptops which are running tight on space, especially when a folder contains hundreds or thousands of infrequently but still useful files. e.g.
    http://www.ugg-boots-outlet-sale.org/

  74. Ugh by Eil · · Score: 1

    Really, Fedora? I used to like Fedora because they weren't afraid to ship current versions of software and always tried to new newer, better ways to build a Unix-like OS. I liked how the Fedora community was organized and how the package management system worked. I liked Ubuntu because it took a solid, sane Linux distribution (Debian) and made it into a user-friendly, everything-just-works OS that practically anyone could use.

    But now I'm starting to believe that all of the mainstream Linux distros have lost their fucking marbles. Between adding more and more layers of pointless abstraction, the KDE4/Unity/Gnome 3 bullshit and this, I don't know what to think anymore. It's like they've all totally given up on improving a good thing and are now changing shit just to change it. Did the Linux world somehow absorb a massive influx of middle-managers and HR drones when I wasn't looking?

    Christ, it's enough to make me switch to BSD and start drinking.

    1. Re:Ugh by adri · · Score: 1

      Come to FreeBSD / PCBSD - and begin enjoying very fine wines / scotch. It's quite a nice place to be.

    2. Re:Ugh by Anonymous Coward · · Score: 0

      You are not the only one. I agree with you about where the mainstream linux distros seem to be heading. Thankfully, all it takes is a few motivated individuals to create a Linux distro that works like unix/linux has traditionally worked and isn't run by crazy people.

    3. Re:Ugh by Reziac · · Score: 1

      Thanks for reminding me, I keep meaning to try PCBSD and just hadn't gotten to it. Been frustrated with linux for years... first tried it in 1998, still haven't found one I can love. :(

      Tho the some-other-BSD disk someone handed me at the last LUG threw up all over my test box (a lowly P4-2GHz) and wouldn't install. ???

      --
      ~REZ~ #43301. Who'd fake being me anyway?
    4. Re:Ugh by serviscope_minor · · Score: 1

      But now I'm starting to believe that all of the mainstream Linux distros have lost their fucking marbles.

      I agree 100%. I use Arch at the minute, and it seems very much more sensible.

      t's like they've all totally given up on improving a good thing and are now changing shit just to change it.

      Not just that, but changing it to whatever is the flavour of the decade. Before, there was a small but vocal group really chasing Microsoft. This seems to have changed into a large but vocal group chasing some odd combination of OSX, iOS and miscellaneous versions of Windows.

      If I want Windows or OSX, I know where to get it. I don't use Linux because I'm cheap, I use it because I prefer it.

      --
      SJW n. One who posts facts.
    5. Re:Ugh by CanOfBees · · Score: 1

      seconded.... now pass that single malt.

    6. Re:Ugh by rwa2 · · Score: 1

      Heh, sorry to fit your stereotype (minus the vocal bit), but I'm kinda glad that Nautilus finally got most of the features I liked from explorer.exe . But that's pretty much the only thing I missed from the Windows world.

      I'm certainly not a Mac guy, far from it. But I do have to admit that I like the way they package 3rd party applications, such that you just drop them into "Applications" and they're there, hidden in some self-contained directory tree. If you drop a new version with the same name into Applications, it replaces the old version (rather than just copying over top and making a mess).

      So yeah, it's sort of similar to how you can drop a tarball of something into /opt/something/ (not that too many Linux programs are packaged that way), and they might have all the /opt/something/bin /opt/something/lib etc. directories just work without having to do anything. I think FreeBSD sort of works in a similar fashion. It's kind of nice not to have random applications that you're toying with drop files all over the place.

    7. Re:Ugh by ffgandalf · · Score: 1

      i've switched to gentoo after ubuntu kept pissing me off. First pulseaudio killing some of my programs and scripts, then grub2 being a pain in the ass and not recongnizing my gentoo partition (at the time it existed to have something to play around w/) and then came unity.

  75. Too complicated by Swave+An+deBwoner · · Score: 1

    That's too complicated and confusing. Programs should be in "My Programs" and libraries should be in "My Other Files That I Don't Understand". And what's with those totally incomprehensible command names like "ls", "cp", "mv", "tar"? Make them "Show Me My Files", "Make Another One of These Please", "Put it Over There", and, um, what's tape got to do with anything?

    1. Re:Too complicated by lvxferre · · Score: 1

      Actually, I think Fedora's issue is not about "making it easy to understand", but about making it easy to maintain.
      Once, these distinctions were useful and meaningful. Today, they're pretty much arbitrary - it's not only /sbin and /bin, but:
      /bin
      /usr/bin
      /usr/local/bin
      /sbin
      /usr/sbin
      /usr/local/sbin
      /usr/games
      etc. The same applies to libraries.
      Do we really need SEVEN directories making the same thing?

      --
      Nerdy news for your nerdy needs? http://www.soylentnews.org Soylent News is people!
    2. Re:Too complicated by Swave+An+deBwoner · · Score: 1

      Well, if you're going to be serious about this, then I'd guess that the "/bin" versus "/usr/bin" distinction might not mean much these days for a system with terabytes of disk space but maybe on small embedded systems it's valuable; e.g., a "standalone" boot using only the root filesystem. If so, then I think that maintaining the separation for all "*NIX" systems can be useful in a "I know where that is" type of way.

      And for a class of commands that a typical "user" neither cares about nor would know what to do with, separating the "/bin" and "/usr/bin" from "/sbin" makes sense because one can leave "/sbin" out of the general user's path and avoid any possible confusion (remember those large multiuser systems with folks who have varying familiarity with *NIX?).

      Finally, I definitely make use of "/usr/local/bin" and "/usr/local/sbin" as a very handy separation between "stuff that's part of the OS" and "stuff I put there myself". Usually via symlinks to stuff in /opt which I generally arrange via package-name directories.

      Similarly for libraries ("/lib" versus "/usr/local/lib", etc.).

      But really, for mindless stuff like this, I prefer to just leave a snarky comment :-)

    3. Re:Too complicated by lvxferre · · Score: 1

      Well, if you're going to be serious about this, then I'd guess that the "/bin" versus "/usr/bin" distinction might not mean much these days for a system with terabytes of disk space but maybe on small embedded systems it's valuable; e.g., a "standalone" boot using only the root filesystem. If so, then I think that maintaining the separation for all "*NIX" systems can be useful in a "I know where that is" type of way.

      I disagree in three points:
      1. Even these embadded systems have nowadays enough capacity for both / and /usr;
      2. Symlinks, symlinks everywhere if one needs so badly that kilobytes, and
      3. initramfs reading /etc/fstab and mounting /usr before the real init - that is the way Fedora is trying to do it, source: https://fedoraproject.org/wiki/Features/UsrMove

      And for a class of commands that a typical "user" neither cares about nor would know what to do with,

      There is no such thing as a typical user, different users need different things. And confusers will always find a way to mess everything, with or without bin vs. sbin distinction - "oops, I intended to write rm -f ./*, NOT rm -f /* !". Privileges stop them making the system unusable.

      Finally, I definitely make use of "/usr/local/bin" and "/usr/local/sbin" as a very handy separation between "stuff that's part of the OS" and "stuff I put there myself". Usually via symlinks to stuff in /opt which I generally arrange via package-name directories.

      If it's part of OS, why it's in /usr/local in first place? And users needing this distinction can always do a /random/custom/directory/bin and set syslinks in /usr/bin, or even set the path.

      But really, for mindless stuff like this, I prefer to just leave a snarky comment :-)

      It was not snarky. Its chromatic index was 3. :-D

      --
      Nerdy news for your nerdy needs? http://www.soylentnews.org Soylent News is people!
    4. Re:Too complicated by Swave+An+deBwoner · · Score: 1
      Just to clarify 'cause I'm so chromatic today:

      If it's part of OS, why it's in /usr/local in first place? And users needing this distinction can always do a /random/custom/directory/bin and set syslinks in /usr/bin, or even set the path.

      I carelessly did not order the directory names and (my view of) their intended functions respectively, but what I meant was that what's in /usr/local/bin (or /usr/local/sbin) isn't stuff that's part of the OS but rather stuff that I added. Sometimes I'll add something into /usr/local that is intended to cover over the same named command that's in /bin or /usr/bin, and have it selected preferentially via the order of directories in my path or even of the global path. That is occasionally a useful feature of having different directories for executables. While one can create a /random/custom/directory/bin to do the same thing, that's not quite as "standardized" as knowing to always look in /usr/local/{bin,sbin} for that type of stuff.

      What it boils down to is that this work seems to me to be just polishing a diamond (you didn't think I'd call Fedora a turd, did you? I would not.) not solving one of the Grand Challanges that remain even for the lovely Linux OS.

  76. Simple fix... by s0litaire · · Score: 1

    Busybox

    You know dump all the common *nix commands into a single blob... problem solved. ^_^

    I'll put on my flame retardant suit now...

    --
    Laters Sol "Have you found the secrets of the universe? Asked Zebade "I'm sure I left them here somewhere"
  77. Qwerty v Alpha anyone by TooTechy · · Score: 1

    Is this the same question?

    Over time, many alternatives keep popping up. Each time they still fail to gain traction.

    1. Re:Qwerty v Alpha anyone by lvxferre · · Score: 1

      QWERTY is horrible - it's tautological - we use it because we use it. The same applies to LHS.

      --
      Nerdy news for your nerdy needs? http://www.soylentnews.org Soylent News is people!
  78. Separate the user BS from the rest of us by bussdriver · · Score: 1

    Abstraction. Since the desktop user doesn't care, then why mess it up for the rest who do care?? The simple users don't care if you have some convoluted process behind the scenes because even the simple stuff is convoluted to them.

    Leave unix alone! if a desktop user can't handle it then they should stick to the GUI.

    Proxies... hmm... make a more clear directory like; /binaries and /library and fill it with symlinks to help those people... GUI tools can run a script which auto populates those... or you could mount a virtual FS to handle those (like /proc or /dev)
    Then you keep things proper and the losers can go the easy route... software however can continue to properly function the same way (because those people should be able to grasp the concepts.)

    Actually, I think the package systems could use a bunch of wrapper features-- a package file handles install, removal and most importantly acts as a proxy for the App-- so you can run, drag and drop, install and delete with the package/receipt file. Then it seems easy and simple like Apple does but is more flexible. A package manager is a special directory where you search for packages and drag/drop to install stuff; the "copy" process is actually download and installation. The user can THINK their app is located in their home directory but its really just a proxy for a standard install. In fact you could even allow them to "run" the app directly from the package system directory; where it downloads and installs then execs and from that point it execs instantly from that location (but can be copied to other locations and run.) This would be the most desktop user friendly. Permissions could be handled in various ways... for example, if you can access the proxy, then you are allowed to run it. For GUI apps this would be a fine system...

  79. Welcome, simplified hierarchy! by lvxferre · · Score: 1

    Fedora got +1 respect from me because of this - FHS is deprecated IMO, and simplifying the directory hierarchy was needed for a long, long time. If they go a step further and adopt the same reasonable hierarchy from GoboLinux, even allowing installing software one-user-only, I'll switch immediately, even being a RPM distro (I work better with .deb).

    Now, let me do a wishlist...
    * Compressed directories;
    * Xfce and Mate fusing into one highly configurable DE, with as much features as the user WANTS, but allowing a small RAM footprint if the user doesn't use them;
    * A K3B GTK+ port;
    * Ubuntu's and Debian's .deb packages being fully compatible again;
    * An optimized, bug- and crash-free Firefox fork;
    * Ballmer dying in a fire [not really].

    --
    Nerdy news for your nerdy needs? http://www.soylentnews.org Soylent News is people!
    1. Re:Welcome, simplified hierarchy! by Daniel+Phillips · · Score: 1

      FHS is deprecated IMO

      Says who?

      --
      Have you got your LWN subscription yet?
    2. Re:Welcome, simplified hierarchy! by lvxferre · · Score: 1

      Says who?

      Just a noob [me] saying - note the 'IMO' [in my opinion]. I may be wrong, I know, but I see multiple executable and lib pathes as against KISS principle

      --
      Nerdy news for your nerdy needs? http://www.soylentnews.org Soylent News is people!
  80. dd if=/dev/random of=/dev/hda by FyberOptic · · Score: 1

    This just in: everybody disagrees with how the Linux directory hierarchy should be implemented.

    That's because there is no truly good way to do it. You either try to split stuff up in some semblance of organization which makes it harder to locate things, or you throw it all in together which also makes it harder to locate things. It's like sorting music; maybe you have an instrumental of an album. Does it go in the same folder with the normal album? Does it go in an instrumentals folder for that particular artist or genre? Does it go into a separate instrumentals folder with all the other instrumental albums? There is no answer because everybody prefers a different layout. Hell, people can't really even agree on a single naming scheme for individual MP3s to begin with. Artist first? Song first? Album first? Include the year?

    Unfortunately you can't use a bulk renamer on the Linux filesystem. The only alternative I can think of is to just create like an environment variable system or some other method of letting users choose where stuff will be stored by default. All future software installations would then abide by those rules.

    But this is Linux we're talking about, so there aint gonna be consensus over doing it that way either.

  81. Mod Grandparent Ignorant by KingMotley · · Score: 2

    Sorry, the AC is completely wrong. That is not the way NTFS works at all, not even close.

  82. VMS filesystem by camperdave · · Score: 1

    I would like to see linux standardize on the VMS filesystem, or at least on certain attributes. First, automatic versioning. Every time a file is written to, a backup is made, and the version number incremented. Second, overlaid directories. These worked like those transparencies of human anatomy in antique encyclopedia. For example, if $bin=/home/username/bin;/var/trap;/usr/$groupname/bin;/usr/local/bin;/usr/bin; then the system would look for a binary in those directories from left to right. /usr/bin would be the OS installed variant. /usr/local/bin would be the local variant. /usr/groupname/bin would be the variant used by members of the user's group. All these would be read only. /var/trap would be writeable. If there was a malware attack attempting to overwrite a critical binary, it would wind up in this folder, and a periodic wiping of this folder would keep the system clean. /home/username/bin would be for user specific variants of the binary.

    --
    When our name is on the back of your car, we're behind you all the way!
    1. Re:VMS filesystem by Tragek · · Score: 1

      I never understood overlaid directories until now. That actually sounds fantastic.

  83. That's usually pointless by dbIII · · Score: 1

    For example my tape drives can compress everything in hardware but I don't get them to do it becuase some data compresses better than others. It works better to compress the files that can be compressed before they go on the medium instead of getting the tape drive to try to get the get the best fit for everthing, do a miserable job with the compromise and take time to do it. Apart from the device that's the same idea as doing it to an entire disk filesystem (it's just a tape filesystem). What can be done is have a layer that compresses and decompresses individual files on demand and there's something in linux that can do that (as described in other posts here). Come to think of it, doesn't compression on NTFS work that way as well? It's not a compressed file system either!

  84. Actually, Microsoft uses it these days often too by Anonymous Coward · · Score: 0

    Not as the main organization tree of the disk, that is still as goofy as ever. However, many companies these days structure their applications in an FHS-like way inside its own directory. Visual Studio makes a similar tree of sorts. Heck, many of Microsoft's own products (bought or in house) these days come in that layout. If Microsoft could keep the root and Windows directories more clean of 3rd party cruft they would have a good compromise in disk/directory layouts. They already have a pretty usable User directory structure in Windows 7 even if some of the shell alias links are broken (wtf?).

    On a side note. I used to make distros that shoved optional or 3rd party packages in /opt. Original LSB drafts indicated that was the preferred structure till Redhat, etc. pushed back. I still think that is the best way to organize optional packages. Otherwise I agree. Put everything that is a distro app/util/etc. in /usr, keep / as kernel, disk, and filesystem utils. Otherwise, why even have a /usr?

  85. -I just don't want all the variations. by Anonymous Coward · · Score: 0

    That is why the X86Open -> linux-as-common-binary -> Linux Standard Base was created.

    Lets see: Ubuntu with Unity, Fedora thinking pile all the crap into 2 directories - what GNU/Linux fork isn't busy screwing with how things have been?

    1. Re:-I just don't want all the variations. by Daniel+Phillips · · Score: 2

      what GNU/Linux fork isn't busy screwing with how things have been?

      Debian.

      --
      Have you got your LWN subscription yet?
  86. Lame by inexia · · Score: 0

    I didn't know there was a problem. I have had zero issues with it so don't blame the OS for your inept ability to properly manage your files.

    1. Re:Lame by lvxferre · · Score: 1

      There is - a small one, but (your milleage may vary) an annoying one.
      Simplifying the hierarchy would ease the things both for users and for devs - you don't need to "guess" or search anymore where is the executable and the libraries.

      I know that "if it's working, don't fix it" is a good rule of thumb, but it's just this - a rule of thumb. When misused, it becomes "if it's working BADLY, don't fix it".

      --
      Nerdy news for your nerdy needs? http://www.soylentnews.org Soylent News is people!
  87. I wish they wouldn't by crucini · · Score: 1

    I run Ubuntu. With every upgrade, they break something and I have to spend time researching it.

    Mostly this breakage is someone trying to "improve" things.
    For example, pulse-audio. I suffered with it for a long while, then finally found how to rip it out by the roots.

    I do not want unix to be like Windows.
    I do not want my expectations broken on every release. Let it be. Make it stable.

    This is compatible with progress. I want great new applications like Chrome. New apps and libraries don't disrupt the platform. I wish these guys would understand how much of other people's time they are wasting.

    1. Re:I wish they wouldn't by Daniel+Phillips · · Score: 1

      Bump. I can hardly think of a more irresponsible and disruptive thing to do. If Redhat people wants to do something useful then get busy cutting down the daemon bloat please, both in userspace and kernel. And please stop treating fds as if they are free. And how about reducing the stupid number of dbus sockets.

      --
      Have you got your LWN subscription yet?
  88. DJB dislikes current hierarchy too by aflag · · Score: 1

    He gives us a few case studies which show problems in the current layout: http://cr.yp.to/slashpackage/studies.html

    If you care to read slashpackage page, you'll see he suggests something like gobolinux does.

  89. 1GBps? by dutchwhizzman · · Score: 1

    I wouldn't put any NAS on my network with less than 8GBPs FCAL or 10Gbit ethernet. True, the clients would only get a 1GBit hookup if they're not a virtual machine or a big database server, but 100Mbyte/second is plenty for plain data where I work.

    --
    I was promised a flying car. Where is my flying car?
  90. While not LSB compliant.... by Anonymous Coward · · Score: 0

    I would like to see a distro that would put some effort into simplifying, and cleaning up, the rootfs layout to (from) /applications (/opt) /application/apache /application/apache/lib /application/apache/data /system (/bin + /usr/bin) /system/boot (/boot) /system/config (/etc) /system/devices (/dev) /system/runtime /system/runtime/processes (/proc) /system/runtime/security (/selinux) /system/lib (/lib + /usr/lib) /users (/home) /user/guest

  91. Mod parent UP by Burz · · Score: 1

    +1 Insightful. While they're at it, make the filesystem case-insensitive. I have personally seen users having to migrate (away from Linux systems I set up for them) back to Windows or OS X because of that one issue.

  92. Better way of cleaning up the mess... by lordholm · · Score: 1

    The main problem is not really the current location of binaries. The main problem is that resources related to binaries are spread out all over the place. For example, a library is associated with headers (and multiple versions of the library), a desktop application (and some cli-ones), have a tone of associated resources (png-files, scripts, audio files et.c.). At present these are all spread out in various locations, i.e. /usr/lib/libfoo.so, /usr/include/foo/* and /usr/share/foo/*

    I would suggest that the Linux vendors adopt a model similar to the OS X bundles. Essentially, libraries would become more like OS X frameworks.

    --
    "Civis Europaeus sum!"
  93. I recoomend a layer by Anonymous Coward · · Score: 0

    If they want to try this, they should first make a pseudo filesystem that uses the files from various dirs and displays them in 1 dir.
    This might even be enough to help the users along, without screwing everything.

  94. Hey Red Hat/Canonical/Whoever by Anonymous Coward · · Score: 0

    Could you communicate with nVidia and ATi so we can have some support for the hybrid graphics cards? Please? It doesn't even look like you're trying.

  95. Arcane? by OverflowingBitBucket · · Score: 1

    "Linux and UNIX-like operating systems have followed a particular, if arcane, way of organizing files"

    In other news, if somebody doesn't personally understand the reason for something, it is now "arcane".

    Personally, I still prefer to have "/usr" on its own filesystem, so I can unmount it if I need to and tidy it up, using the tools in "/bin" and "/sbin". It's not *necessarily* a space thing. I quite like the separation between basic tools, and "everything else". If an "everything else" package install or script or similar stuffs things up, it's nice to be able to fix it in a reasonable environment (which an unmounted "/usr" gets you).

    I also don't mind the separation between admin tools, and user tools. I think that covers the "/usr/sbin" versus "/usr/bin" thing.

    And there we have it.

  96. Breaking rules? by alukin · · Score: 1

    Well, so called "new generation" is about breaking rules without understanding what those rules for. I can't say they are totally brain-dead but they do not understand "UNIX soul" definitely. Simplicity? No, chaos! Lenart Poettering is very known by his ugly and annoying "PulseAudio" that is in every Linux distribution now. Do we need another his "innovation"? Is there at RedHat some person with a bit of brains to stop him?

  97. There is method to the Madness by Anonymous Coward · · Score: 0

    Having developed many programs that comply with the Linux Filesystem Hierarchy standard you come to realize that there is much method to what seems like madness.
    The filesystem provides an interface between the kernel and the processes that run on top of it providing what (when it all comes down to it) is state management. When you realize that the state that a process uses has many dimensions to it you then come to see why each directory exists. To name but a few of the dimensions I am talking about:
                The state can be persistent (/var/tmp) or volatile (/tmp) across reboots.
                The state can be static and sharable (/usr, /opt) or
                                                                  static and unshareable (/etc, /boot) or
                                                                  dynamic and sharable (/var/mail, /var/spool) or
                                                                  dynamic and unshareable (/var/lock, /var/run).
    However much of this has sort of evolved organically and I would argue that the much needed cleanup that is being considered would not involved simplifying the layout but rather completing it to encompass all possible state property dimensions.
    And user should never see beyond there home directory and even then a good app would not even need to show them this.

  98. Grok by Anonymous Coward · · Score: 0

    it's funny; /. is the only place I've seen this word used regularly....does anybody ever use this word in verbal conversation or just write it??

    1. Re:Grok by NikeHerc · · Score: 0

      grok usage

      Lots of folks who have read Heinlein's "Stranger in a Strange Land" use grok in verbal and written forms. In my experience, it's rare that someone says, "What does that mean?"

      --
      Circle the wagons and fire inward. Entropy increases without bounds.
  99. Bout time by AdmV0rl0n · · Score: 1

    The linux filesystem (while I can live with it - its far from something sensible to anyone looking at it from outside). really is byzantyne and bizarre. This kind of logical tidy up/clean up should not really be attacked - and it should not really be seen as a competitor of LSB or similar, but rather that it needs to evolve and where vendors can clean and simplify the file system, they should be applauded. The LSB should always consider clean ups and simplification.

    In the modern sense - Linux is reaching out to 'normal people'. Its filesystem by design was for the arcane, the clever and the developer. Its filesystem means very little, but worse makes little sense to actual end users. And if thats the case it is *always* worth rethinking it rather than just accepting it is what it is - live with it.

    If an end user has to actually start reading deep technical notes just to understand the file system, the filesystem is wrong. I'm not going to claim 'Windows' got it right, but its filesystem has a more humane naming convention at least in part. Programs actually live in a Program folder. Thats a simplistic example I know, but /usr/bin means very little to the average person..

     

    --
    We`re all equal .. Just some of us are less equal than others.
  100. Exec name colision by advid.net · · Score: 1

    Sometime executable names colide :
    Two application can provide the same exp executable to export data.

    How to they expect to handle this if they keep only one directory ?

    I would rather keep them in separate directories and alias one of the executable

  101. First: Ruin desktop. Next: Trash file system! by Anonymous Coward · · Score: 0

    Mission accomplished: Gnome 3 is an unusable mess. They've ruined the desktop! What's next? Trash the file system! Nothing will be where it used to be.

    STOP CHANGING THINGS!!! JUST STOP!!!

    Windows is terrible because all they do is shuffle where things are from release to release. FireFox shuffles where things are on the screen for no reason, after leaving them alone for a decade or more. Gnome 3 fundamentally cripples my ability to do my work so I had to move to KDE.

    People use Linux every day. They have muscle memory and a mental framework of where things are. Stop changing them. There is no reason for this change. If there was some compelling reason to change things, sure, but there isn't, so don't. The vi editor hasn't changed, ever. No user interface consultant has rearranged the keys. Emacs is the same now as it has been for the past 20 years that I've been using it every day.

    Red Hat: If you do not stop this random change for no reason, users are going to be fed up and you will be history.

  102. He isn't. But you also still have the option by Anonymous Coward · · Score: 0

    He isn't. But you also still have the option of using a compressed filesystem.

    And isn't the OP telling people what they want? "You must make a compression filesystem like the one what I want". Fairy quiet on decrying that one, weren't we?

  103. Your laptop is bigger than mine by tepples · · Score: 1

    On my laptop (2 x 650GB 2.5in drives) I can replace them with 2 x 1TB drives

    My Dell Mini 10 has room for only one 2.5 in drive, you insensitive clod! ;-) Also, solid-state laptops such as early Eee PCs and MacBook Air are designed to take an mSATA card instead of a full-size platter drive.

  104. /Linux by Anonymous Coward · · Score: 0

    Just install it all in /Fedora won't you? Add some /Fedora/System32, a binary registry container, a /Users folder, and call it Microsoft Fedora Winsux 7. Don't forget the "Aero Unity" User Interface, so users don't get baffled by Gnome or KDE or whatever.

  105. Within the first few commands using a new *nix by Anonymous Coward · · Score: 0

    man hier

    Now if fedora (and other linuxes) could put /usr/local/bin to good use, I'd be impressed.

  106. I say nay! by hesaigo999ca · · Score: 1

    DO NOT CHANGE A THING, you have enough different types of filesystems already available, and the user can actually control where he wants the files to be installed or reside, so why start playing with something so inbred in the system, that there are bound to be problems.

  107. Boot directories by Anonymous Coward · · Score: 0

    It's still useful to have some of those directories separate, for example when combining solid state drives with spinning drives.

    That way you could have more than one boot partition on that ssd.

  108. Just leave it alone! by NikeHerc · · Score: 0

    From the OP: "Even Linux's most passionate partisans will admit that its filesystem, which stashes vital files in a variety of arcane directories, can be baffling to users."

    Yes, it is a pain in the ass to learn where system files live. Just deal with it. If you can't deal with it, go back to windows.

    Do any /.ers really think Solaris or AIX or BSD or any other *NIX is going to adopt Fedora's bad decision? They won't, so we will have yet another set of system files that will be different from all the other o.s. versions. Sheesh, what a crummy, poorly thought out decision!

    --
    Circle the wagons and fire inward. Entropy increases without bounds.
  109. Get rid of /lib64 by Chemisor · · Score: 1

    It's time to stop the insanity and stop treating 64 bit stuff as if it's some temporary add-on that will go away. Get over it people, nearly every desktop CPU in the world is 64 bit. There is no reason to rddun a 32 bit Linux any more. I can see it sticking around on Windows, since there's all this legacy software that people can't run any other way, but on Linux everything is natively compiled to 64 bit already. If you want dual-arch, fine, but put the obsolete 32 bit stuff in a specially named dir, like /lib32, instead of treating it like it's going to stay around forever.

    And enough with those bogus arguments of "programs not needing 64 bit address space". That's irrelevant. It is much more useful to have a single target platform to develop for, and it should be 64 bit. Additionally, there's only two architectures left: x86_64 and ARM. ARM is used on handheld stuff and sometimes on servers. x86_64 is used on everything else. Since desktop and mobile applications usually use a different codebase anyway, this gives developers just one target to develop for, which is a very big deal indeed. Less work for developers - shorter time to release and cheaper software. It really is a good thing.

    1. Re:Get rid of /lib64 by Junta · · Score: 1

      The challenge is the risk of 'older' applications not being able to even *cope* with '/lib32'. It was easier to have newer apps change than break exisiting apps and hope for the best.

      Incidently, you still have brand new MIPS, POWER, and Itanium in the world, though Itanium I think is going to stop 'any day now', but MIPS and POWER seem to be plateaued in share.

      --
      XML is like violence. If it doesn't solve the problem, use more.
  110. seems like a hack by sl4shd0rk · · Score: 1

    some legacy programs are still going to want /usr/local. what i see happening is a bunch of symlink workarounds that end up just confusing everyone. seems like there could be other things to spend time on improving.

    --
    Join the Slashcott! Feb 10 thru Feb 17!
  111. Seems like optimizing for one particular group. by Medievalist · · Score: 1

    In mom's basement, on a poorly secured single-user machine that runs a GUI on the console 24x7, the proposed hierarchy probably makes good sense.

    But a general purpose file system reorganization also needs to work for family machines (my kids and their friends each have their own unprivileged accounts) and for small business office servers, and for large enterprise application servers. The tip-off is the word "general" in the phrase "general purpose file system".

    In multi-user deployments, particularly large secured ones, it's incredibly useful to have a separate place for user executables (generally dynamically linked to unprivileged libraries), sysadmin executables (often statically linked or suid/guid tagged), and site/host/application specific executables (like X11 apps for example, or tomcat stuff).

    Segregating things this way helps with establishing backup and security policies and permits partial upgrades - it makes a smart sysadmin's life easier and makes audits simpler too. Obviously, for unemployed hackers who run X11 on single-user laptops all the time, it's not so important.

    Sysadmins have always complained about the way Red Hat piles all the X11-only executables in with the pure CLI stuff. That's the opposite of useful categorization; mix everything up randomly in one bag. Why not just put everything in the fs root if these distinctions aren't useful or meaningful? Screw having a separate directory for configuration files and variable data, eh? This is one step further back down the wrong path - categorization is useful!

    For the record I got nothing against unemployed teenager hackers lurking in basements. But re-arranging a general purpose system into a system optimized for their use case seems misguided.

  112. Because someone has to link to it... by Chelloveck · · Score: 1
    --
    Chelloveck
    I give up on debugging. From now on, SIGSEGV is a feature.
  113. read only boot by Anonymous Coward · · Score: 0

    There is merit in having separation.

    1. There should be a core set of OS files that are read only, preferably on a partition that's read only, enforced with a mechanical switch. This allow a set of known good files.

    2. The file system hierarchy gives separate name spaces. /bin for OS executables /usr/bin for non OS executables managed by the OS vendor. /opt/vendor name/package/ for third party installations.

    3. In general removing any package should be possible by removing a single directory.

    I did number 3 when I was sysadmin for the U of Alberta math department. Disk space was still expensive. So we had an NFS share that unix boxes mounted as /opt. The binary and library's directories were OS specific. So for some packages there were up to eleven directories of each (HPUX, IRIX, AIX, Linux, NeXTStep, SysV, Sun. Some had multiple versions). System owners could choose to run off the network drive orby running a script could install to a local drive. In addition there was a public dot file that would do the right thing for path management.

    In practice there was a third level in the hierarchy for version number. This meant I could install anew version of foo without removing the old version of foo, control which got used with sym links, and revert in ahurry if something was broken.

  114. Users can use a GUI by int19h · · Score: 1

    Only package maintainers should have to care about the underlying directory structure. Developers provide autoconf/scons/cmake/... scripts. Users can use the GUI and store their documents in their Documents folder. Never mind the Powerusers, they will always feel that things are either too advanced or too dumbed down, until they become Developers (tm).

  115. explanation for separate partitions by Anonymous Coward · · Score: 1

    If it's important to realize why they were separate, I wonder why you didn't take the time to look it up instead of making a wild (and wrong) assumption. Hint: has nothing to do with small discs, distros were comparatively small at the time as well.

    It has to do with handling fs corruption and security. A small root fs (/etc /bin /lib) is generally stable against filesystem corruption as it doesn't get written to often. After a crash, it's more likely to be ok. It's needed to boot a usable system that can be used to rescue the rest of the installation (/usr). /var is a separate partition because it gets written to continuously and is more likely to be in need of recovery after a system or disk crash. /tmp is a target for many temporary file prediction exploits so it was also made separate. For example, it was common to mount it "nodev,noexec" so the kernel would refuse to execute programs or open devices from it. /boot appeared when the 2Gb hard drive barrier was breached and BIOSes were unable to read from higher disk cylinders using the standard interrupts, LBA was introduced and we needed a partition to put the kernel in that we can make sure the BIOS can read.

  116. Who cares? by HalAtWork · · Score: 1

    Anyone who goes mucking around in the file system outside their /home/$user folder generally knows what they're doing, so why even bother?

  117. What is the advantage with this? by Anonymous Coward · · Score: 0

    I can see why it would be nice to consolidate, however I think it will break a lot of legacy applications if symlinks are not put in place. All in all, I don't see the real benefit from this.

  118. Gnome file manager by Anonymous Coward · · Score: 0

    Yay, even more files for gnome to chug through when I want to open a file with a non-standard program. Right click on file, select open with other program, navigate to /bin, and wait 5 minutes for the file manager to realise that most of those programs don't have icons.

  119. Document and Cover by Anonymous Coward · · Score: 0

    win$$ is just as big a rigamarole, but hides it from the user. If Linux were actually usefully documented, the tree wouldn't be a problem. here woud be a noobspace with kindergarden decoration. Like the other, ruinously expensive thing.

  120. Probably that is not a good idea. by virtualthinker · · Score: 1

    Probably that is not a good idea. Much of the Unix/Linux security advantage has to do with the tiered organization of the system of executable files. Unix/Linux has no other method of controlling access to programs based on the role of the user. Access by user role is efficiently implemented using this tiered file system. - if implemented correctly. The idea is four layers of security (installation(admin), developer(programmer), privileged application user, unprivileged user). Critical system programs are in /sbin (parted and other sysadmin programs), /bin is used for common utilities and programs publicly available to all users. /usr/bin contains programs which are used primarily by software developers (compilers etc..) /usr/sbin is used for development admin tools. Application packages go in /opt//[bin,include,...]. The unpriviledged user can put files he wishes to execute in his own /bin directory and mark them as executable. This system allows each user to be given access only to the application software actually needed. You don't want the guy in the mail room running the payroll system. The original reason for dividing up executable programs may have differed from this, and the reasons for doing so in the modern era of personal systems are perhaps different from the historic large/mid frame machines it evolved on. Today the primary reason everyone should want to maintain this file architecture is the number of program name collisions between packages. If you build distributions you are either terribly naive, or you know what I mean. The traditional unix/linux file system does a relatively good job of limiting (i did not say eliminating) the name collision problem. It can be used for limiting the damage a system, application, or user can do to itself, friends, or frenemies. You don't really want a executing daemon to have access to it's own or anyone else's development software. There must be a better way. I am sure there are more than 4 roles, or at least a better way to implement access - The $PATH shell variable is the great failure in this scheme, and perhaps why no one bothers with taking any of the rest of it seriously. I am sure there must be some more efficient way to implement roles. I have been looking for a while now, and I have not seen it yet. Just because this method is an old idea don't mean it is a bad idea. It simply is not possible that a better solution involves a single directory with huge numbers of files. The Path method already makes search times too long. The solution has more to do with using the tiered method properly and fixing shell implementations to make it impossible for a user to change his own role ( by tinkering with $PATH). Scrapping the tiered method would make Linux too much like Windows.

  121. If they want to really fix something by Anonymous Coward · · Score: 0

    They should fix the real Gordian Knot: Glibc.

  122. stuff them all in / as bin.bash by niftymitch · · Score: 1

    Simplify how it it so complicated?
    What problem are they really addressing?

    Graphical file system tools are already
    slow and sloppy.

    One could stuff them all in /
    and resolve some historic name
    collisions with some silly notation
    as bin.bash alt1.bin.bash alt2.bin.bash

    This tells me that it is silly quest and structure IS needed.
    $ rpm -qal | wc
      337729 337782 18840957

    Just watch out for the special
    case of /.

    --
    Truth is stranger than fiction, but it is because Fiction is obliged to stick to possibilities; Truth isn't. Mark Twain.
  123. SuSE by Anonymous Coward · · Score: 0

    The filesystem used by SuSE will eventually look something like:

    / -> C:\
    /boot -> C:\boot
    /dev -> C:\System
    /root -> C:\Users\Administrator
    /home -> C:\Documents and Settings

    Look vaguely familiar?

  124. Linux Journal File Systems by Anonymous Coward · · Score: 0

    Journal File Systems are the best way to go. Especially for large database and structured data-store environments. They provide re-synchronization and recovery after an outage. They also provide for virtualization and file system sharing between processing nodes. Offerings from Sun Microsystems like ZFS for Solaris is now offered by IBM for its Linux offerings. Symantec offers Veritas Software's VxFS for Sun Solaris, HP-UX, Linux, and IBM's AIX. IBM also provides a management suite of file systems with backup and recovery technologies under its DFSMS offering which includes the venerable Virtual Storage Access Method, (VSAM), upon which structured data-stores and databases technologies depend on.

  125. Linux Journal File System by stevenddeacon · · Score: 1

    Journal File Systems is the best way to go. They provide for file system recovery and re-synchronization after an outage. They also provide for file system virtualization and sharing between processing nodes. Journal File Systems are best for database technologies and structured data-stores for business intelligence or multi-dimentional and object oriented databases. Sun Microsystems Solaris has ZFS now and IBM provides it for its Linux offerings. Symantec offers Veritas Software VxFS for Sun Solaris, HP-UX, IBM AIX, and Linux. IBM also offers its DFSMS solution for sequential data-stores, structured data-stores, backup, archive, and recovery. IBM DFSMS also offers the venerable Virtual Storage Access Method, known as VSAM, which is utilized by structured data-stores, hierarchical and networked database technologies, inverted list database technologies, business intelligence data-stores, as well as, multi-dimentional and object oriented database technologies.

  126. Alt Configs by Anonymous Coward · · Score: 0

    How would this be affected in terminal services or kvm configs which use the /boot /bin struct for the servers and to hand out OS data to terminal/clients? I'm sure this may not be used much either anymore, and do not have time to research atm... Any comments would be appreciated.

  127. Opposed to the reduction to one binary library by lsatenstein · · Score: 1

    I am opposed for the following reasons:

    Name conflicts. Many applications have the same launcher name. Therefore one later application can override the earlier one.
    System libraries must be kept apart. I would hate to have some innocent application overwrite a critical system program name.
    I would like to see a breakout of libraries. to /usr/bin/application1, /user/bin/application2... Where bin does not hold binaries, but points to the next level of directory from where user application binaries would be found,
    In /usr/bin, I would accept soft-links (shortcuts).

    --
    Leslie Satenstein Montreal Quebec Canada
  128. Stupid file system hierachy by gogo.tutu · · Score: 1

    the file system hierachy in linux is stupid, let system file stay in system folder, let application stay in applicaion folder, let rpm, pkg go to hell, those people who act professional seem really stupid, they don't know what the user want, they just make a toy and play themselves. the file system hierachy follows the rules of 20 years ago, never changed, every linux distrubution keep uprading all the time, but you never find any thing inspired.