The root filesystem
The root filesystem should generally be small, since it contains very critical files and a small, infrequently modified filesystem has a better chance of not getting corrupted.
The root directory generally doesn’t contain any files, except perhaps on older systems where the standard boot image for the system, usually called /vmlinuz was kept there. All files are kept in subdirectories under the root filesystem:
Commands needed during bootup that might be used by normal users
Configuration files specific to the machine.
The home directory for user root. This is usually not accessible to other users on the system
Shared libraries needed by the programs on the root filesystem.
Loadable kernel modules, especially those that are needed to boot the system when recovering from disasters (e.g., network and filesystem drivers).
Device files. These are special files that help the user interface with the various devices on the system.
Temporary files. As the name suggests, programs running often store temporary files in here.
Files used by the bootstrap loader, e.g., LILO or GRUB. Kernel images are often kept here instead of in the root directory. If there are many kernel images, the directory can easily grow rather big, and it might be better to keep it in a separate filesystem.
Mount point for temporary mounts by the system administrator. Programs aren’t supposed to mount on /mnt automatically. /mnt might be divided into subdirectories
/proc, /usr, /var, /home
Mount points for the other filesystems.