[FAQ] Linux File System Overview


Recommended Posts

  • 4 weeks later...
  • 1 month later...

Very interesting read, I've read the whole of Page 1 (slowly getting through Page 2). But I've been looking for this sort of guide to help me learn more about the folder...I mean, Directory Structure. I seriously did not know that a 'Folder' and a 'Directory' are two different things, but have the same result.

Directory = Physical (Think Command Line)

Folder = Graphical Representation of a Directory

Ext3 = /boot

Reiser3/FS = /root

What about a SWAP partition? Since we're on file structures, I'm confused about the following:

Why does Linux need 3 partitions to install Fedora Core or Gentoo when Windows only needs 1 partition?

/boot (+32M)

/swap (+512M)

/root (remaining space)

My incorrect theory (so please correct me):

- The kernel is stored in /boot as a compressed 2-4MB file.

- The reason it's stored here is because when you turn your system on, the MBR detects GRUB and loads up the kernel here as opposed to /root for file protection???

- /boot decompresses into /swap for your session (for some reason).

- /root all your files, system files...everything (except for the kernel).

^^ You can see why I'm confused.

  DjmUK said:
Why does Linux need 3 partitions to install Fedora Core or Gentoo when Windows only needs 1 partition?

/boot (+32M)

/swap (+512M)

/root (remaining space)

585662167[/snapback]

Linux can install just fine on a single partition, if you'd prefer it that way. Here's a few reasons why most distributions have traditionally used 3 or sometimes even more partitions:

- because it facilitates easier backups and reinstalls of the OS

- with a seperate /boot partition, your kernel can be placed in there and then the partition not mounted automatically at boot so that your vital boot files aren't available to be messed around with unless you specifically mount them

- using a swap partition instead of a swap file (linux can happily handle either) again prevents silly errors like people deleting the file by mistake and so not getting any swap space available at next boot

- using multiple partitions can just make managing your system easier - for example many servers use a seperate partition for /var which is traditionally where the http documentroot is on an apache webserver and also where the mail spooler normally resides on mailservers

- many people keep their /home mounted on a seperate partition which they mount from multiple operating systems - back when I used redhat 9 alongside gentoo, I had a seperate /home dir which got mounted from both distros, so I kept the same home folder all the time

Hope that gives you some idea of why multiple partitions are normally used.

Thanks rezza, I think I understand it all, and according to your notes hopefully this would be a possible partition table (3 HDDs):

hda1 /boot (kernel storage)

hda2 /swap (still confused as to what gets stored here)

hda3 /root (operating system)

hdb1 /home (personal files)

hdb2 /var/httpd/website_pages (client's web sites)

hdc1 /var/mysql_db (mysql database server)

For a mid-size business it would be better to have this (3 PC's):

PC1 - hda1 /boot (kernel storage)

PC1 - hda2 /swap (still confused as to what gets stored here)

PC1 - hda3 /root (operating system)

PC1 - hdb1 /home (personal files)

PC2 - hda1 /var/httpd/website_pages (client's web sites)

PC3 - hda1 /var/mysql_db (mysql database server)

^ I decided to make more then three partitions and reinstall Fedora Core 3 to see what the differences were.

I have two 20GB hard drives and they are partitioned as followed:

hda1 /dev/hda1 /boot reiserfs 102MB

hda1 /dev/mapper/VolGroup00-LogVol01 / reiserfs 5.2GB

hda1 /dev/mapper/VolGroup00-LogVol03 /tmp reiserfs 5.2GB

hda1 /dev/mapper/VolGroup00-LogVol07 /opt reiserfs 5.0GB

hda1 /swap swap 1GB

hda1 none /dev/shm tmpfs 251MB

hda2 /dev/mapper/VolGroup01-LogVol04 /usr reiserfs 5.0GB

hda2 /dev/mapper/VolGroup01-LogVol06 /usr/local reiserfs 5.0GB

hda2 /dev/mapper/VolGroup01-LogVol02 /home reiserfs 5.0GB

hda2 /dev/mapper/VolGroup01-LogVol05 /var reiserfs 5.0GB

So far I haven't seen any benefit in splitting it up like this, but I don't plan on changing it anytime soon though.

  DjmUK said:

hda2 /swap (still confused as to what gets stored here)

Swap= virtual memroy= page file in windows.

  Hurmoth said:
^ I decided to make more then three partitions and reinstall Fedora Core 3 to see what the differences were.

I have two 20GB hard drives and they are partitioned as followed:

hda1 /dev/hda1 /boot reiserfs 102MB

hda1 /dev/mapper/VolGroup00-LogVol01 / reiserfs 5.2GB

hda1 /dev/mapper/VolGroup00-LogVol03 /tmp reiserfs 5.2GB

hda1 /dev/mapper/VolGroup00-LogVol07 /opt reiserfs 5.0GB

hda1 /swap swap 1GB

hda1 none /dev/shm tmpfs 251MB

hda2 /dev/mapper/VolGroup01-LogVol04 /usr reiserfs 5.0GB

hda2 /dev/mapper/VolGroup01-LogVol06 /usr/local reiserfs 5.0GB

hda2 /dev/mapper/VolGroup01-LogVol02 /home reiserfs 5.0GB

hda2 /dev/mapper/VolGroup01-LogVol05 /var reiserfs 5.0GB

So far I haven't seen any benefit in splitting it up like this, but I don't plan on changing it anytime soon though.

585667869[/snapback]

Why all reiserfs? Ext3 seems to have better compatibility on Ubuntu.

  jack_canada said:
Why all reiserfs? Ext3 seems to have better compatibility on Ubuntu.

585667950[/snapback]

I was just playing around... I might switch them later on to see if there are any differences, but I'm satisfied with reiserfs right now.

  • 6 months later...

I have a doubt!

In windows there is a folder named "Program Files" In which by defauly all the files go into.. :sleep:

In linux for example, if I get a .bzip or .tar file I usually extract it to /opt folder and do a ./configure, make, make install. Actually In which folder in Linux is it **RECOMMENDED** to extract and Install? :blink:

---------------------------------------------------------------

Naveen Chandran

http:\\naveenchandran.blogspot.com

^^^ Only some of the stuff goes into "Program Files". There are .dlls and registry entries and so forth.

But *nix is set up for multi-users, so it is set up a bit differently. There is /sbin/ for sytem binaries (executables), /bin/ for all-user binaries that are part of the installation. Individual users can put their personal executables in the bin/ directory in their home, and "extra" apps that you (as sys admin) want all users to have access to are usually thrown in /usr/bin/ or /usr/local/bin/

I guess for a single-user machine, "Program Files" is fine. For a system that was designed for multi-user, though, it doesn't cut it.

  • 2 months later...

I have tryed linux, liked it, and headed back to windows. Why ? 'cause i got scared of the thought of learning a hole new file system! after this, i really have my head set on linux, wich pops 2 questions on my mind (and yes its only 2 questions :p)

Wich distro is more suitable to handle media, games, and all around fun? (Yes my computer is my favorite toy !)

How can i have complex games (like counter strike) on my linex (probably using wine, if you have a guide to this prog, please share :))

Thanks for the attention, and thank you markjensen and everione else, for showing that linux is not a 2 headed monster !

Which distro? All are about the same, and anything lacking due to potential patent issues can easily be added with a command or two. Same for games (though, it may be easier to keep Windows around for your easy gaming needs).

  • 1 year later...
  rockwolf said:
Recommended Link: (suggested to be added to first post)

Filesystem Hierarchy Standard:

http://www.pathname.com/fhs/

This is the basis of the layout of the *nix file system.

Good reference from my quick overview. (Y)

Added to first post. Thanks!

  • 3 months later...

A graphical example layout would probably be helpful, I'll make one when I understand it myself (which I more or less do, except for the no top-level hard drive thing. What is the utmost highest level?)

and, ****, I'd hoped I'd be able to get rid of the annoying 'all users' 'username' program folders nonsense. What if you're the only one using your computer, all the time, and are kind of a neatfreak to boot? Whatevs

Thanks for info.

  nilsHaus said:
A graphical example layout would probably be helpful, I'll make one when I understand it myself (which I more or less do, except for the no top-level hard drive thing. What is the utmost highest level?)

and, ****, I'd hoped I'd be able to get rid of the annoying 'all users' 'username' program folders nonsense. What if you're the only one using your computer, all the time, and are kind of a neatfreak to boot? Whatevs

Thanks for info.

Graphics would be nice! :yes:

As far as top level, that is the root, or "/". You can attach (mount) hard drive, networked drives and anything else to locations in the regular filesystem.

And, *nix OSes have been multi-user for a very long time, so the foundation to separate users is a fundamental part of the OS design. You can, however, run as root if you like, and symlink your bin directories to one common spot, if you like. However, if you ever do want to set up (for testing, or what-not) an additional user account, you kinda just screwed yourself and made things a bit more complex by doing by it that way.

EDIT: A few filesystem graphics for you to get ideas from, for starters can be found using Google Image.

Well, I don't know how things are the Linux way, but if you're intending to use multiple disks, consider using a volume manager. LVM or what it is in Linux. It treats all added disks as one large logical volume. I think that's preferable over mounting different drives in a specific locations and play the remaining disk space game for each of those mounts. Instead, set up your system as you want, and when you run out of space, put disk into the computer, add it to the LVM and grow the filesystem running out of space.

Myself I've been spoiled by ZFS and don't want to miss it (Solaris user). I guess under Linux, putting at least your home folders on ZFS/FUSE may be an option if it becomes stable in future, since those will be the ones growing out of proportions while the rest staying more or less stable.

Here, it currently looks like this:

root@bigmclargehuge:~ > zpool status
  pool: tank
 state: ONLINE
 scrub: none requested
config:

		NAME		STATE	 READ WRITE CKSUM
		tank		ONLINE	   0	 0	 0
		  c3d0s7	ONLINE	   0	 0	 0
		  c0d0s1	ONLINE	   0	 0	 0

errors: No known data errors
root@bigmclargehuge:~ > zpool list
NAME					SIZE	USED   AVAIL	CAP  HEALTH	 ALTROOT
tank					293G   68.9G	224G	23%  ONLINE	 -
root@bigmclargehuge:~ > zfs list  
NAME						 USED  AVAIL  REFER  MOUNTPOINT
tank						68.9G   219G  8.03M  /tank
tank/home				   65.5G   219G	21K  /export/home
tank/home/root			   336K   219G   336K  /export/home/root
tank/home/servo			 65.5G   219G  1003M  /export/home/servo
tank/home/servo/Documents   1.12G   219G  1.12G  /export/home/servo/Documents
tank/home/servo/LargeFiles  11.3G   219G  11.3G  /export/home/servo/LargeFiles
tank/home/servo/Music	   2.74G   219G  2.74G  /export/home/servo/Music
tank/home/servo/Pictures	1.10G   219G  1.10G  /export/home/servo/Pictures
tank/home/servo/Video	   48.3G   219G  48.3G  /export/home/servo/Video
tank/opt					 448M   219G   448M  legacy
tank/usr					2.87G   219G  2.87G  legacy
tank/var					82.0M   219G  82.0M  legacy
root@bigmclargehuge:~ >
  • 1 month later...
This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • New Outlook for Windows gets a major boost with June 2025 Update by Pradeep Viswanathan Despite widespread criticism, Microsoft has remained focused on replacing the classic Outlook for Windows with the new web-based Outlook app for everyone. Every month, Microsoft releases updates to the new Outlook app based on user feedback. Today, Microsoft released the June 2025 update for Outlook for Windows with several improvements, including some of the most requested features by Outlook users. With this latest update, Microsoft has improved support for .pst (Outlook Data File) files. You can now reply to and forward emails in a stored .pst file. Microsoft is also working on further improving support for .pst files in the new Outlook for Windows. If you're using the new Outlook app with your personal Microsoft account that has access to Copilot Pro or AI credits through a Microsoft 365 Personal or Family subscription, Copilot features will now be available even for other personal email accounts configured in the Outlook app. This Copilot sharing feature works with email addresses such as Outlook.com, Hotmail.com, Live.com, MSN.com, and third-party providers like Gmail, Yahoo, and iCloud. Microsoft has also added the ability to easily move emails between personal accounts. This feature is disabled by default for enterprise users, but admins can enable it if needed. With this update, Microsoft has increased the default mail sync window in offline mode from 7 days to 30 days. Additionally, you can now access search folders and cancel an email after selecting Send in offline mode. This new update also brings email coaching support through Copilot. Copilot can now suggest adjustments to tone, clarity, and reader sentiment before you hit Send. If you are annoyed with Copilot, you can now disable Copilot completely by going to the Copilot > Copilot control page in the Settings window. In this release, Microsoft has added the ability to add shared folders to your Favorites, making it easier to access content directly from the Favorites list. Finally, an "External" tag will be added to external contact suggestions that appear in the dropdown menu when entering contacts in the email compose form, helping you distinguish between your organization's and external contacts.
    • "give" I believe he will give loans and drown the countries in debt
    • Minor Problems over the years with Windows 11 Pro on my original Intel 10700 Desktop i was using and not many problems on my Newer AMD Ryzen 7 7700X. Overall Windows 11 works extremely well, if don't do too many modifications, and do the regular security updates, and keep 3rd party apps up to date, and users shouldn't have any issues, and if a user does, should be a minor little issue that is easily fixable My goal is to have the 2 remaining household systems replaced for Windows 11 Compatible machines, hopefully by early September if not sooner.
    • Bill Gates says he'll donate 99 percent of his wealth to Africa by Hamid Ganji Microsoft co-founder and tech billionaire Bill Gates has pledged to donate a significant chunk of his personal wealth to African countries. As reported by the BBC, Gates's funding will be spent on improving health and education infrastructure in Africa over the next twenty years. The Gates Foundation has played an active role in improving public health and education in Africa over the past decades. Bill Gates aims to double down on that effort by donating most of his fortune to Africa. Last month, he also said that 99% of his fortune, which could exceed $200 billion, will go to African countries by 2045. Speaking at the African Union (AU) headquarters in Ethiopia's capital, Addis Ababa, Gates said, "By unleashing human potential through health and education, every country in Africa should be on a path to prosperity." The tech billionaire also told young African innovators to start relying on AI to improve health and education in their countries and use the technology to benefit the entire continent. He introduced Rwanda as a successful example of using AI in healthcare to identify high-risk pregnancies. "Africa largely skipped traditional banking and now you have a chance, as you build your next generation healthcare systems, to think about how AI is built into that," Gates added. By donating 99 percent of his personal fortune by 2045, Bill Gates can still maintain his position as one of the richest people on earth. According to Bloomberg, Gates's current net worth is around $175 billion. Gates's decision to donate 99 percent of his wealth to Africa came after the US administration cut USAID funding to African countries following the DOGE investigations. In a recent interview with the New York Times, Bill Gates called out Elon Musk for cutting the USAID budget, saying Musk has a role in the death of the poorest children on earth.
  • Recent Achievements

    • Week One Done
      Adam Todd earned a badge
      Week One Done
    • Contributor
      Ed B went up a rank
      Contributor
    • One Month Later
      moporcho earned a badge
      One Month Later
    • One Month Later
      Parotel earned a badge
      One Month Later
    • Reacting Well
      Cryptecks earned a badge
      Reacting Well
  • Popular Contributors

    1. 1
      +primortal
      202
    2. 2
      snowy owl
      146
    3. 3
      ATLien_0
      134
    4. 4
      Xenon
      120
    5. 5
      +FloatingFatMan
      113
  • Tell a friend

    Love Neowin? Tell a friend!