Skip to main content

Linux Directory Structure and major file Paths


Linux Directory Structure and major file Paths

               This page aims to provide information about the Linux File System, as well as some of the most significant files, their functionality, and where they may be found.

 

Linux Directory Structure

                The directory structure of a basic Linux distribution is shown in the diagram below.

               Each of the directories listed above contains vital information such as device drivers, configuration files, and so on. We'll begin by describing the purpose of each directory in a hierarchical order.

 

               /bin:  All executable binary programmers (files) needed for booting, repairing, and running in single-user mode, as well as other critical, fundamental commands like cat, du, df, tar, rpm, wc, history, and so on.

 

               /etc: This directory contains the application's configuration files, as well as startup, shutdown, start, and stop scripts for each programmer.

 

               /home is the user's home directory. When a new user is established, a directory with the user's name is created within the home directory, along with other directories such as Desktop, Downloads, Documents, and so on.

 

               /boot: Stores critical files, such as the Linux Kernel, Grub file etc.., during the boot-up process.

 

               /dev: This directory has device files for all of the machine's hardware, such as the CDROM, CPU, and so on.

 

               /lib: The Lib directory holds kernel modules and shared library images that are needed to start the system and perform commands in the root file system.

 

               /lost+found: This directory is created during the Linux installation process and can be used to recover files that have been damaged due to an unexpected shutdown.

 

               /media: For portable devices, such as media/cdrom, a temporary mount directory is generated.

 

               /mnt: For mounting a file system, this is a temporary mount directory.

 

               /opt stands for "optional." This package includes software from a third party. For example, consider Java.

 

               /proc is a hypothetical and fictitious file system that stores information on running processes with a specific Process-id, also known as pid.

 

               /root: This is the root user's home directory and should not be confused with '/'.

 

              /run: The only clean solution to the early-runtime-dir problem is to use this directory.

 

               /sbin: Contains binary executable applications for maintenance that are required by the System Administrator. For example, iptables, fdisk, ifconfig, swapon, reboot, and so on.

 

              /srv: The abbreviation for service is 'srv.' This directory contains files that are specific to the server as well as files that are relevant to the service.

 

               /sys: A virtual filesystem called /sys is included in modern Linux distributions, and it stores and permits modification of the system's connected devices.

 

               /tmp: Users and root have access to the system's temporary directory (/tmp). Until the next boot, it saves temporary files for the user and the system.

 

               /usr: Contains second-level programmer executable binaries, documentation, source code, and libraries.

 

               /var:  Variable is denoted by /var. This file's contents are projected to grow. The log, lock, spool, mail, and temp files are all located in this directory.

 

Investigating important files, their locations, and their usefulness

 

               In comparison to Windows, Linux is a complex system that necessitates a more complicated and efficient method of starting, stopping, maintaining, and rebooting a system. In Linux, each process has its own set of configuration files, binaries, man pages, and information files.

 

               /boot/vmlinuz: The Linux Kernel file is located in /boot/vmlinuz.

 

               /dev/hda: The first IDE HDD's device file (Hard Disk Drive).

 

               /dev/hdc: This is the device file for the IDE Cdrom.

 

              /dev/null is a fictitious device that does not exist. Occasionally, junk output is diverted to /dev/null, where it is eternally lost.

 

               /etc/bashrc: This file contains the bash shell's system defaults and aliases.

 

               /etc/crontab: A shell script that executes specified commands at predetermined intervals.

 

               /etc/exports: This file contains information about the file system that is accessible over the network.

 

               /etc/fstab contains information about the disc drive and its mount point.

 

               /etc/group: Security Group information.

 

               /etc/grub.conf: grub bootloader configuration file /etc/grub.conf

 

               /etc/init.d: Startup script for services.

 

               /etc/lilo.conf is the configuration file for the lilo bootloader.

 

               /etc/hosts contains information about IP addresses and their associated host names.

 

               /etc/hosts.allow: List of hosts that are authorized to use the local machine's services.

 

              /etc/host.deny: List of hosts that aren't allowed to use the local machine's services.

 

               /etc/inittab: INIT process and its interaction at various run levels are described in /etc/inittab.

 

               /etc/issue: This file allows you to change the pre-login message.

 

               /etc/modules.conf: System module configuration files.

 

               /etc/motd: motd is an acronym for Message Of The Day, which is the message that users see when they log in.

 

               /etc/mtab: Information is currently blocked by the mounted filesystem.

 

               /etc/passwd: A security implementation that stores the passwords of system users in a shadow file.

 

               Printer Information (/etc/printcap)

 

                /etc/profile: Default bash shell settings in /etc/profile

 

               /etc/profile.d: After logging in, this script is run.

 

               /etc/rc.d: Run-level script information.

 

               /etc/rc.d/init.d: Run Level Initialization Script (/etc/rc.d/init.d).

 

               /etc/resolv.conf: System's Domain Name Servers (DNS) are listed in /etc/resolv.conf.

 

               /etc/security: Terminal List, which allows root login.

 

              /etc/skel: Script for creating a new user's home directory.

 

              /etc/termcap: An ASCII file that specifies how Terminal, Console, and Printers should behave.

 

              /etc/X11: X-window System configuration files.

 

              /usr/bin contains standard user-executable commands.

  

               /usr/bin/X11: X Window System binaries.

 

               /usr/include: /usr/include Includes include files for the 'c' programme.

 

               /usr/share: Shared directories for man, info, and other files.

 

               /usr/lib contains library files that are needed for software compilation.

 

               /usr/sbin: Super User and System Administration Commands.

 

               CPU Information (/proc/cpuinfo)

 

               /proc/filesystems: Currently used file-system information.

 

               /proc/interrupts: This file contains information about the current interrupts in use.

 

               /proc/ioports: This file contains all of the server's Input/Output addresses.

 

               Memory Usage Information is stored in /proc/meminfo.

 

               /proc/modules: Kernel module is now in use.

 

              /proc/mount: Information about the mounted file system.

 

              /proc/stat: The current System's detailed statistics.

 

              Swap File Information is stored in /proc/swaps.

 

               /version is a command that displays information about the Linux version.

 

              /var/log/lastlog contains the log of the most recent boot procedure.

 

              /var/log/messages contains a log of messages generated by the syslog daemon during boot.

 

              /var/log/wtmp: displays the current login time and duration for each user on the system.


Completed!


That’s it further details, we will publish in next coming session.

Comments

Popular posts from this blog

How to Check Hardware Details on Linux:

  Whether you're troubleshooting hardware issues, planning an upgrade, or just curious about your system’s specifications, Linux provides a variety of commands to gather comprehensive hardware information. Here are some essential commands: 1.  Use lscpu to get detailed information about the CPU, including architecture, cores, threads, and CPU speeds. # lscpu                                                 2. The lshw command provides a complete overview of hardware configuration, including CPU, memory, storage, and network. You’ll likely need superuser privileges to run it. # sudo lshw                                                                               ...

testing

09052025 T-1 { "volume_groups" : { "vgroot" : { "vgsize" : "304G" , "fs_type" : "xfs" } } , "logical_volumes" : { "root" : { "lvroot" : { "vgname" : "vgroot" , "lvname" : "lvroot" , "lvsize" : "12G" , "mountpoint" : "/" , "purpose" : "root filesystem" , "disk" : 1 , "partition" : 2 } } , "swap" : { "lvswap" : { "vgname" : "vgroot" , "lvname" : "lvswap" , "lvsize" : "4G" , "mountpoint" : "NA" , "purpose" : "swap" , "disk" : 1 , "partit...

How Virtual Machines are Created in OpenStack: A Complete Backend Workflow:

When creating a Virtual Machine (VM) in OpenStack, several components work together in the backend to provision the instance. Here's a step-by-step explanation of how the process flows: 1. User Request Interface Used : The user initiates the VM creation through the Horizon Dashboard (web UI), the OpenStack CLI ( openstack server create ), or the OpenStack API. Request Information : The request includes parameters such as: VM name. Image (the operating system or custom image to boot from). Flavor (the compute, memory, and storage specifications). Network (which network the VM will be connected to). Security Groups (firewall rules). Key Pair (for SSH access). 2. API (Nova API) Component : Nova (Compute service). Process : The request is received by the Nova API , which validates the request (checks if the requested resources like the image, flavor, and network exist). If valid, the API creates an entry in the database for the new instance. Nova's Role : Nova is the core service r...