github.com/ld86/docker@v1.7.1-rc3/docs/terms/filesystem.md (about)

     1  <!--[metadata]>
     2  +++
     3  draft = true
     4  title = "File system"
     5  description = "How Linux organizes its persistent storage"
     6  keywords = ["containers, files,  linux"]
     7  [menu.main]
     8  parent = "mn_reference"
     9  +++
    10  <![end-metadata]-->
    11  
    12  # File system
    13  
    14  ## Introduction
    15  
    16  ![](/terms/images/docker-filesystems-generic.png)
    17  
    18  In order for a Linux system to run, it typically needs two [file
    19  systems](http://en.wikipedia.org/wiki/Filesystem):
    20  
    21  1. boot file system (bootfs)
    22  2. root file system (rootfs)
    23  
    24  The **boot file system** contains the bootloader and the kernel. The
    25  user never makes any changes to the boot file system. In fact, soon
    26  after the boot process is complete, the entire kernel is in memory, and
    27  the boot file system is unmounted to free up the RAM associated with the
    28  initrd disk image.
    29  
    30  The **root file system** includes the typical directory structure we
    31  associate with Unix-like operating systems:
    32  `/dev, /proc, /bin, /etc, /lib, /usr,` and `/tmp` plus all the configuration
    33  files, binaries and libraries required to run user applications (like bash,
    34  ls, and so forth).
    35  
    36  While there can be important kernel differences between different Linux
    37  distributions, the contents and organization of the root file system are
    38  usually what make your software packages dependent on one distribution
    39  versus another. Docker can help solve this problem by running multiple
    40  distributions at the same time.
    41  
    42  ![](/terms/images/docker-filesystems-multiroot.png)