Linux File System Structure
/ - Root directory that forms the base of the file system. All files and directories are logically contained inside the root directory regardless of their physical locations.
/bin - Contains the executable programs that are part of the Linux operating system. Many Linux commands, such as cat, cp, ls, more, and tar, are locate in /bin
/boot - Contains the Linux kernel and other files needed by LILO and GRUB boot managers.
/dev - Contains all device files. Linux treats each device as a special file. All such files are located in /dev.
/etc - Contains most system configuration files and the initialization scripts in /etc/rc.d subdirectory.
/home - Home directory is the parent to the home directories for users.
/lib - Contains library files, including loadable driver modules needed to boot the system.
/lost+found - Directory for lost files. Every disk partition has a lost+found directory.
/media - Directory for mounting files systems on removable media like DVD-ROM drives, flash drives, and Zip drives.
/mnt - A directory for temporarily mounted filesystems (ie Backup Software).
/opt - Optional software packages copy/install files here.
/proc - A special directory in a virtual memory filesystem. It contains the information about various aspects of a Linux system.
/root - Home directory of the root user.
/run - On newer versions. Gives applications a standard place to store transient files they require like sockets and process IDs.
/sbin - Contains administrative binary files. Commands such as mount, shutdown, umount, reside here.
/selinux - If your Linux distribution uses SELinux for security. Contains special files used by SELinux.
/srv - Contains data for services (HTTP, FTP, etc.) offered by the system.
/sys - A special directory that contains information about the devices, as viewed by the Linux kernel.
/tmp - Temporary directory which can be used as a scratch directory (storage for temporary files). The contents of this directory are cleared each time the system boots.
/usr - Contains subdirectories for many programs such as the X or GUI Window System.
/usr/bin - Contains executable files for many Linux commands. It is not part of the core Linux operating system.
/usr/include - Contains header files for C programming languages
/usr/lib - Contains libraries for C programming languages.
/usr/local - Contains local files. It has a similar directories as /usr contains.
/usr/sbin - Contains administrative commands.
/usr/share - Contains files that are shared, like, default configuration files, images, documentation, etc.
/usr/src - Contains the source code for the Linux kernel.
/var - Contains various system files such as log, mail directories, print spool, etc. which tend to change in numbers and size over time.
/var/cache - Storage area for cached data for applications.
/var/lib - Contains information relating to the current state of applications. Programs modify this when they run.
/var/lock - Contains lock files which are checked by applications so that a resource can be used by one application only.
/var/log - Contains log files for different applications.
/var/mail - Contains users' emails sent by system or server.
/var/opt - Contains variable data for packages stored in opt directory.
/var/run - Contains data describing the system since it was booted.
/var/spool - Contains data that is waiting for some kind of processing.
/var/tmp - Temporary files preserved between system reboots.
1. / – Root
- Every single file and directory starts from the root directory.
- Only root user has write privilege under this directory.
- Please note that /root is root user’s home directory, which is not same as /.
2. /bin – User Binaries
- Contains binary executables.
- Common linux commands you need to use in single-user modes are located under this directory.
- Commands used by all the users of the system are located here.
- For example: ps, ls, ping, grep, cp.
3. /sbin – System Binaries
- Just like /bin, /sbin also contains binary executables.
- But, the linux commands located under this directory are used typically by system aministrator, for system maintenance purpose.
- For example: iptables, reboot, fdisk, ifconfig, swapon
4. /etc – Configuration Files
- Contains configuration files required by all programs.
- This also contains startup and shutdown shell scripts used to start/stop individual programs.
- For example: /etc/resolv.conf, /etc/logrotate.conf
5. /dev – Device Files
- Contains device files.
- These include terminal devices, usb, or any device attached to the system.
- For example: /dev/tty1, /dev/usbmon0
6. /proc – Process Information
- Contains information about system process.
- This is a pseudo filesystem contains information about running process. For example: /proc/{pid} directory contains information about the process with that particular pid.
- This is a virtual filesystem with text information about system resources. For example: /proc/uptime
7. /var – Variable Files
- var stands for variable files.
- Content of the files that are expected to grow can be found under this directory.
- This includes — system log files (/var/log); packages and database files (/var/lib); emails (/var/mail); print queues (/var/spool); lock files (/var/lock); temp files needed across reboots (/var/tmp);
8. /tmp – Temporary Files
- Directory that contains temporary files created by system and users.
- Files under this directory are deleted when system is rebooted.
9. /usr – User Programs
- Contains binaries, libraries, documentation, and source-code for second level programs.
- /usr/bin contains binary files for user programs. If you can’t find a user binary under /bin, look under /usr/bin. For example: at, awk, cc, less, scp
- /usr/sbin contains binary files for system administrators. If you can’t find a system binary under /sbin, look under /usr/sbin. For example: atd, cron, sshd, useradd, userdel
- /usr/lib contains libraries for /usr/bin and /usr/sbin
- /usr/local contains users programs that you install from source. For example, when you install apache from source, it goes under /usr/local/apache2
10. /home – Home Directories
- Home directories for all users to store their personal files.
- For example: /home/john, /home/nikita
11. /boot – Boot Loader Files
- Contains boot loader related files.
- Kernel initrd, vmlinux, grub files are located under /boot
- For example: initrd.img-2.6.32-24-generic, vmlinuz-2.6.32-24-generic
12. /lib – System Libraries
- Contains library files that supports the binaries located under /bin and /sbin
- Library filenames are either ld* or lib*.so.*
- For example: ld-2.11.1.so, libncurses.so.5.7
13. /opt – Optional add-on Applications
- opt stands for optional.
- Contains add-on applications from individual vendors.
- add-on applications should be installed under either /opt/ or /opt/ sub-directory.
14. /mnt – Mount Directory
- Temporary mount directory where sysadmins can mount filesystems.
15. /media – Removable Media Devices
- Temporary mount directory for removable devices.
- For examples, /media/cdrom for CD-ROM; /media/floppy for floppy drives; /media/cdrecorder for CD writer
16. /srv – Service Data
- srv stands for service.
- Contains server specific services related data.
- For example, /srv/cvs contains CVS related data.
Types of Files in Linux
There types for file are there in Linux
1.Regular file (-)
2. Directory file (d)
3.Special files (there are five types of special files)
Block file(b)
Character device file(c)
Named pipe file or just a pipe file(p)
Symbolic link file(l)
Socket file(s)
Regular or ordinary file start with - | |
Directory file start with d | |
Link file start with l | |
Block special file start with b | |
Named pipe file start with p | |
Character special file start with c | |
Socket file start with s |
Post a Comment