Here we list all the basic Linux commands essential to manage a Virtual Private Server, a cloud instance, or a dedicated server. We try to collect only the key commands you need to master to build a server to host your websites.
Linux itself is an operating system with hundreds or maybe thousands of commands. Luckily, you don’t need to remember it all. Just know what you really need for which in this case is for managing a web hosting server.
Let’s start from the very basic section, file management.
Organizing and managing files
1. Changing directory
Use cd to move from one directory to another. It’s a very simple and very basic command.
Example, moving from the root directory to /var/www/html:
Typing cd (and hitting Enter) without any additional instrument will bring you directly to the root directory.
The same also if you use cd ~ command:
Use cd .. (cd space two dots) to move to the upper directory.
A real example:
2. Listing directory files and folders
You are in the directory you want. Now, how to find out what files and folders are in the directory. The command you need is ls.
Example, change to the nginx directory located at /etc/nginx and list the content:
Use ls -l to list files and directories along with detailed information including file size, User owner, Group owner, last modified or date created, and permission.
Use ls -a to list all files and folders including hidden ones.
For example, list all files and directories (hidden and not) in the root directory.
See how the result is different between ls and ls -a command.
3. Deleting Files and Directories
Use the rm command followed by the file name to remove it.
For instance, let’s remove the backup.php file:
Use the rmdir command to remove a directory:
For example, let’s remove a test directory:
The rmdir command won’t work if the directory is not empty. Use the rm -rf command instead.
rm -rf directoryname
4. Moving and Renaming Files and Directories
Use mv to move a file to another directory. Usage:
mv filename newpath
Example. moving configs.php to the scripts directory:
mv configs.php scripts
You can also use a complete directory path. For instance, let’s move the configs.php file from the scripts directory (/root/scripts/) to the web directory located at /var/www/html.
mv configs.php /var/www/html
You can also use the mv command to rename files or folders. Example, let’s rename the configs.php to setup.php:
mv configs.php setup.php
5. Copying and Duplicating Files
Use cp command to copy or to duplicate a file.
cp file1.ext file2.ext
cp file1.ext /new/path/file1.txt
Example: duplicating the configs.php file to create a backup.
cp configs.php configbackup.php
1. Viewing the content of a file easily.
Use the cat command to display the contents of a file. It is usually used to easily view programs.
2. Inserting some text to a file quickly.
Us eth echo command to conveniently add a line of text to a file. For instance, let’s add “we test we know” text into the configs.php file.
3. Installing Nano Editor
On CentOS use:
yum install nano -y
On Ubuntu or Debian use:
apt-get install nano -y
On a recent version of Ubuntu or Debian use:
apt install nano
4. Editing a file with Nano
Use nano filename.ext. Example, to edit configs.php using Nano editor:
5. Saving Edited File with Nano
Press Control+O buttons on your keyboard.
6. Quitting Nano / Exit the Editing Mode
Press Control+Xbuttons on your keyboard.
7. Checking RAM Usage
8. Changing Password
Use passwd to change the password of currently logged in user.
9. Checking Disk Partitions
This command shows the available disk space in each of the partitions. You can see each mounted partition and the used/available space in % and in MBs.
10. Checking Disk Usage of Files and Folders
Use du to check the disk usage for a particular folder or file.
11. Zipping and unzipping
Zipping the whole directory recursively:
zip -r filename.zip /path/to/directory
Unzipping any .zip file:
12. Showing information about the system
The command prints the kernel release date, version, processor type, etc.
13. Showing Running Services
The top command prints all the running services along with its CPUs and RAM usage. You can also see the realtime system load status on the top.
Press Q on the keyboard to exit.
14. Canceling Any Command
Press Control+C on the keyboard to stop or to cancel the currently running task issued by the latest command. For instance, you have issued zip -r /var/www/html but the zipping process consumes a lot of time. Press Control+C to cancel it.
15. Quitting the SSH Session
This will close your current SSH login session and quit Terminal / Putty.
That’s all folks. Please do not hesitate to add more if you know some. Also, please do not hesitate to ask questions.