0% found this document useful (0 votes)
115 views

The Linux File System Structure Explained

The document discusses the Linux file system structure and explains the purpose of key directories. It begins by noting that in Linux everything is represented as a file. It then explains directories such as /bin for user binaries, /sbin for system binaries, /etc for configuration files, /dev for device files, /proc for process information, /var for variable files, /tmp for temporary files, /usr for user programs, /home for user home directories, /boot for boot loader files, /lib for system libraries, /opt for optional add-on applications, /mnt for temporary mounts, /media for removable media mounts, and /srv for service data.

Uploaded by

Tajria Sultana
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
115 views

The Linux File System Structure Explained

The document discusses the Linux file system structure and explains the purpose of key directories. It begins by noting that in Linux everything is represented as a file. It then explains directories such as /bin for user binaries, /sbin for system binaries, /etc for configuration files, /dev for device files, /proc for process information, /var for variable files, /tmp for temporary files, /usr for user programs, /home for user home directories, /boot for boot loader files, /lib for system libraries, /opt for optional add-on applications, /mnt for temporary mounts, /media for removable media mounts, and /srv for service data.

Uploaded by

Tajria Sultana
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

Linux File System and Structure

Rosetta, 2019

The Linux File System Structure Explained

Rosetta Techonology | offensive security certified professional training 1


Linux File System and Structure
Rosetta, 2019

Windows File System Tree

Another thing to remember is that in Linux, everything is a file. Or, more accurately, everything is represented
as being a file, while in Windows it may be displayed as being a disk drive.
For example, in Windows the hard drive is typically represented as C:\ in the file explorer, and it will even
display a little icon of the hard drive and display how much space is being used. In Linux, on the other hand,
the hard drive as represented merely as /dev/sda, which is really just a folder/directory, which in Linux is really
just a file that points to other files.
So let’s take some other more practical examples. The Linux equivalent of your Documents folder in Windows
would be /home/username/Documents, whereas in Windows it’s typically C:\Users\UserName\Documents.
These are actually pretty similar, but you can see where the differences lie.
So using the above Linux file system chart, we need to explore what each folder in the Linux file system is for,
which will help us to better understand how Linux works in general. Note that not every folder listed here or
pictured above necessarily appears in every Linux distro, but most of them do.

Rosetta Techonology | offensive security certified professional training 2


Linux File System and Structure
Rosetta, 2019
Linux Directory Structure (File System Structure) Explained with Examples

Have you wondered why certain programs are located under /bin, or /sbin, or /usr/bin, or
/usr/sbin?
For example, less command is located under /usr/bin directory. Why not /bin, or /sbin, or
/usr/sbin? What is the different between all these directories?
In this article, let us review the Linux file system structures and understand the meaning of
individual high-level directories.

1. / – Root

 Every single file and directory starts from the root directory.
 Only root user has write privilege under this directory.

Rosetta Techonology | offensive security certified professional training 3


Linux File System and Structure
Rosetta, 2019
 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

Rosetta Techonology | offensive security certified professional training 4


Linux File System and Structure
Rosetta, 2019
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.

Rosetta Techonology | offensive security certified professional training 5

You might also like