Beginner’s Guide to Linux System Administration

A Linux System Administrator manages the operations such as maintaining proper software, observing them, and even taking care of backup and hardware systems. It is recommended that before reading this article please go through the article What is Linux System Administration. Here we have some basics of Linux System Administration.

Some Basic Configurations

Set the Hostname: Open terminal and enter the following command in order to change the hostname.

sudo hostname your_hostname

Replace “your_hostname” with the hostname that you want to keep.

Setting up the time zone: Move to /usr/share/zoneinfo/your_zone and then link the zone file with /etc/localtime to set the time zone.

sudo ln -sf Kolkata /etc/localtime

File System and Management

Managing files is the most important task in Linux as all devices, directories, and packages are just a type of file in Linux.



1. To know about File system read the article File System in Linux.

2. To learn more about Linux file hierarchy structure you can read the article Linux File System Hierarchy

3. To get the difference between Linux and Windows File System read the article Windows vs Linux

Below is the list of some file management comamnds in Linux:

Command Description
cd Used to change the current directory
ls Used to list the directories and files in a directory
vi A good text editor to edit files
touch Used to create new files
nano A good text editor to edit files
cp Used to copy files and directories.
mv Used to move files and directories.
rm Used to remove files and directories.
fdisk Used to partition disks and to work with file systems
mount Used to mount a file system or a device

You can also read the file management in Linux from the article https://www.geeksforgeeks.org/file-management-in-linux/

Networking Commands

Networking commands play an important role in system Administration and a good system Administrator must have good hands-on networking commands. Here is a list of such commands that are mostly used for networking in Linux.

Command Description
route used to view and manipulate ip routing tables.
ping Used to send some packets to a server and receive them back in case of a good network connection.
traceroute Used to trace the path taken by the traffic.
nslookup Used for querying the Domain Name System to obtain domain name or IP address mapping, or other DNS records.
ifconfig Used to view and change the configuration of the network interfaces on your system
tracepath Used to traces path to destination discovering MTU along this path
ssh Provides a secure encrypted connection between two hosts over an insecure network
telnet Used to test if a port is open and even to work with telnet protocol.
curl Used to transfer data to or from a server, using any of the supported protocols.
scp Used to securely copy files and directories between two locations over a network.
w Provides a quick summary of every user logged into a computer
netcat used for performing any operation in Linux related to TCP, UDP, or UNIX-domain sockets
nmap Used for network exploration and security auditing
netstat Used for for monitoring network connections both incoming and outgoing as well as viewing routing tables, interface statistics etc
ip Used to assign an address to a network interface and/or configure network interface parameters on Linux operating systems

To learn more about Linux networking commands then read the article Linux Networking Tools

Managing Users and Group in Linux

A system administrator has to manage the users working on the system. Users are the accounts which are logged in to your system or may log in to the system. Each user in Linux has a unique UID to identify the user. All information of the users is stored in /etc/passwd file and all hashed passwords are stored in /etc/shadow file. There are basically 2 types of user in Linux on the basis of their rights to access.

  • Superuser or Administrator
  • General users

Each user may or may not be a part of a group which is a collection of users. To learn more about users in Linux go through the article Users in Linux System Administration. Here is a list of commands that are used to manage users.

Command Description
usermod Used to modify users and their respective settings
useradd Used to add a new user
su and sudo Used to change the user and work with root
chage Used to change the user’s aging/expiry information
groupdel Used to delete a group
gpasswd Used to change password of group
groupmod Used to modify group and its settings
groupadd Used to add a new group

To learn more about how to manage users read the article User Management in Linux

To learn more about how to manage groups read the article Group Management in Linux

System Diagnostics/Monitor Performance

A System Administrator should be able to diagnose problems in a system and even to monitor the performance of the system so that it may be improved. Here is the list of some useful commands for the same.

Command Description
top Used to display the running processes.
vmstat Used to get information about processes, memory, paging, block IO, disk and CPU scheduling
lsof Used to check list of open files.
htop Used to determine the cause of load of each process
iostat Used to monitor IO devices loading
nmon It displays performance about the CPU, MEMORY, NETWORK, DISKS, FILE SYSTEM, NFS, TOP PROCESSES, RESOURCES, AND POWER MICRO-PARTITION

Reading and Analysing Logs

A good system Administrator must have an idea of how to read and manage logs as they give a lot of crucial and required information.

Command Description
dmesg Used to print the message buffer of the kernel
tail Used to print details from the log files located in the folder /var/log
journalctl Used to read systemd logs



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.


Article Tags :

Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.