[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Illogical drives?



On Fri, Mar 27, 2009 at 11:23:22AM -0600, postid wrote:
> Greetings:
>
> Thank you all for your explanations and patience. I've done some more 
> reading, though I'm not sure that I completely understand.
>
> Here's what I think I'm hearing: When I look at a directory I'm looking 
> at a file system, not necessarily a list of physical locations. But on 
> the other hand, the partitions are specific-sized containers where parts 
> of the file system reside. The file system directory is a like an address 
> book listing the members of a family in a genealogical tree and 
> indicating how they're tied into the system in a heirarchically connected 
> telephone conference call. The partitions are their actual locations (the 
> homes where they reside at a physical address). Am I understanding that 
> correctly or am I still not getting it?

I think you're complicating things too much.  Let's go back to what's
common between Windows and linux, and let's assume that your partitions
are formatted (ie, have a file system on them).  If you look at a single
partition, Linux and Windows have the same view on it:  it's a tree.
There is the top-level directory (the root), which has directories and
files as children.  Each such directory child can have further children,
which in turn may be files or directories, and so on.  There is no
difference between Windows and linux here.

The difference comes with how it is all tied together.  In Windows, once
you have a collection of partitions, each with its own tree, there is no
way really to make this forest into a single tree.  Windows explicitly
keeps track of the set of roots of these trees, namely C:\, D:\, ...  In
linux, on the other hand, the system really can only work with one big
tree.  If you have multiple partitions, you get this tree by gluing the
trees of the different partitions together.  This is what mounting does.
You have your tree corresponding to your / partition.  Then you identify
a directory node in this tree, say the one representing /usr and attach
the root of the tree representing your /usr partition to it, and so on
until you have assembled all the trees living on the different
partitions into one big tree.  (Technically, you are not attaching the
root to the /usr node, but you identify them, but this may only add to
the confusion here.)  In principle, you have complete freedom to choose
where to mount the different partitions, but of course you have to make
sure that system files live where they should (eg, binaries in /bin,
/usr/bin, etc.)

Now, once you've assembled your tree in this fashion, you can
essentially forget about the fact that it is in fact built from smaller
subtrees that live on different partitions.  The only reason why this
isn't entirely true is that adding a file in a directory that belongs to
a node on a given partition creates that file on that partition, and you
better have enough space to do this.

Cheers,
Norbert


Reply to: