While cPanel & WHM automates many server administration tasks, familiarity with the Linux® command line can prove useful for both WHM and cPanel users.
This documentation gives a brief overview of some basic Linux commands that you may wish to use as you manage your website or server.
Common Linux commands
Note:
To execute a command, enter the command with any options or arguments that it requires and press Enter.
The following table lists some basic Linux commands and their functions:
Command | Description |
---|---|
ls |
List files and directories that exist within your current directory. This command resembles the To view dotfiles (filenames that begin with a period) and additional file and directory details, add the ls -al |
cd location |
Navigate between directories. Replace cd /usr/local/apache/ |
cat filename |
Print the contents of the specified file to the CLI. Replace cat filename.txt Note: To view the data that currently displays on your server's console screen, run the following command: cat /dev/vcs1 |
tail filename |
Print the last 20 lines of a file to the command-line interface (CLI). Replace tail filename.txt You can add an argument to change the number of lines that this command prints. For example, to print the last 100 lines of the tail -100 filename.txt |
more filename |
Print the contents of a file to the CLI, one screen at a time. Replace more filename.txt
|
pico filename |
Open the specified file in the Replace pico filename.txt |
vi filename |
Open the specified file in the Replace vi filename.txt |
grep string filename |
Search for a string in a specified file, and prints each line that contains a match to the CLI. Replace grep 'coffee filters' grocerylist.txt |
touch filename |
Create an empty file in the specified location. Replace touch example.txt |
ln -s file1 file2 |
Create a symbolic link between the two specified files. Replace ln -s /pointtome/file.txt symlink-file.txt |
rm filename |
Delete the specified file. After you run this command, the system prompts you to confirm the file's deletion. Replace rm trash.txt |
last |
List which users recently logged in and the timestamp for each login. |
w |
List currently logged-in users and the location from which they logged in. |
netstat |
List all of the server's current network connections. |
file filename |
Guess a file's type, based on the file's contents. Replace file filename |
du |
Show the system's current disk usage for each directory and subdirectory. |
wc filename |
Display the word count for a specific file. Replace wc example.txt |
cp file1 file2 |
Copy a file into a new file. Replace cp original.txt /copies/duplicate.txt |
chmod permissions filename |
Change a file's octal permissions. Replace chmod 755 myfile.txt For more information, read the Wikipedia article about the |
chown user:group filename |
Change a file's user and group ownership. Replace chown joe:joesgroup joesfile.txt |
whereis name |
Query applications that match the You can find the most common applications in the following locations:
|
ps |
Return information about the server's current processes. To view all of the running processes, run one of the following commands: ps -auxww ps -cef |
Run multiple commands on the same line
Various command-line tasks may require that you use different commands on the same line. Linux includes easy methods to perform these tasks.
- Use the pipe character (
|
) to retrieve data from one program and "pipe" it to another program. - Use a single greater-than bracket (
>
) to create a new file if the file does not already exist, or to overwrite any existing content if the file does exist. - Use a double greater-than bracket (
>>
) to create a new file if the file does not already exist, or to append the new data to the file if the file does exist. - Use a single less-than bracket (
<
) to send input from a file to a command.
The table below lists examples of how to combine tasks into a single line:
Command | Description |
---|---|
grep User /usr/local/apache/conf/httpd.conf | more |
This command searches for all of the lines in the httpd.conf file that matches the user search term, and then prints the results to your terminal one screen at a time. |
last -a > /root/lastlogins.tmp |
This command prints all of the current login histories to the /root/lastlogins.tmp file. |
tail -10000 /var/log/exim_mainlog | grep 'example\.com' | more |
This command finds the last 10,000 lines from the Note: The system treats periods ( |
netstat -an | grep :80 | wc -l |
This command shows the number of active connections to Apache (Apache's httpd daemon runs on port 80 ). |
mysql --skip-column-names --batch -e 'show processlist' | wc -l |
This command lists the number of MySQL threads. If subselect expressions start new threads, the output of the show processlist command includes them. |
Common configuration files and directories
You can find common configuration files and directories in the following locations on your server:
Service | Locations |
---|---|
Exim |
/etc/exim.conf /var/log/exim_mainlog /var/log/exim_rejectlog /etc/valiases/ /etc/vfilters/ home/username/.forward |
MySQL® |
/root/.my.cnf /etc/my.cnf /var/lib/mysql/ |
Apache |
/usr/local/apache/conf/httpd.conf /usr/local/apache/domlogs/ |
System |
/var/log/messages /var/log/dmesg |
ProFTPD |
/etc/proftpd.conf /var/log/xferlog /etc/proftpd/ |
SSH |
/etc/ssh/sshd_config |
Additional documentation