mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
38 lines
1.3 KiB
ReStructuredText
38 lines
1.3 KiB
ReStructuredText
:title: File Systems
|
|
:description: How Linux organizes its persistent storage
|
|
:keywords: containers, files, linux
|
|
|
|
.. _filesystem_def:
|
|
|
|
File System
|
|
===========
|
|
|
|
.. image:: images/docker-filesystems-generic.png
|
|
|
|
In order for a Linux system to run, it typically needs two `file
|
|
systems <http://en.wikipedia.org/wiki/Filesystem>`_:
|
|
|
|
1. boot file system (bootfs)
|
|
2. root file system (rootfs)
|
|
|
|
The **boot file system** contains the bootloader and the kernel. The
|
|
user never makes any changes to the boot file system. In fact, soon
|
|
after the boot process is complete, the entire kernel is in memory,
|
|
and the boot file system is unmounted to free up the RAM associated
|
|
with the initrd disk image.
|
|
|
|
|
|
The **root file system** includes the typical directory structure we
|
|
associate with Unix-like operating systems: ``/dev, /proc, /bin, /etc,
|
|
/lib, /usr,`` and ``/tmp`` plus all the configuration files, binaries
|
|
and libraries required to run user applications (like bash, ls, and so
|
|
forth).
|
|
|
|
While there can be important kernel differences between different
|
|
Linux distributions, the contents and organization of the root file
|
|
system are usually what make your software packages dependent on one
|
|
distribution versus another. Docker can help solve this problem by
|
|
running multiple distributions at the same time.
|
|
|
|
.. image:: images/docker-filesystems-multiroot.png
|
|
|