mostly used for checking existing Ethernet connectivity and IP address
common use: arp
This command should be used in
conjunction with the ifconfig and route commands. It is mostly useful for me
to check a network card and get the IP address quick. Obviously there are
many more parameters, but I am trying to share the basics of server
administration, not the whole book of commands.
common use: df -h
Great way to keep tabs on how much
hard disk space you have on each mounted file system. You should also review
our other commands like file
common use, under a specific directory: du -a
Easily and quickly identify the size
of files/programs in certain directories. A word of caution is that you
should not run this command from the / directory. It will actually display
size for every file on the entire Linux harddisk.
This command is also particularly handy if you are checking system resources.
Although I provide a number of Linux
networking related commands if you're interested.
locations of files/directories quickly across entire filesystem
common use: find /
-name appname -type d -xdev
(replace the word appname with the name of a file or application like gimp)
This is a very powerful command and is
best used when running as root or superuser. The danger is that you will
potentially look across every single file on every filesystem, so the syntax
is very important. The example shown allows you to search against all
directories below / for the appname found in directories but only on the
existing filesystem. It may sound complex but the example shown allows
you to find a program you may need within seconds!
Other uses and more complex but
beneficial functions include using the -exec or execute a command.
You may also try the commands: locate or try slocate
line tool to configure or check all network cards/interfaces
common uses: ifconfig and also ifconfig eth0 10.1.1.1
Using the plain ifconfig command will
show you the details of all the already configured network cards or
interfaces. This is a great way to get a check that your network hardware is
working properly. You may also benefit from this review of server
configuration. Using the many other options of ifconfig such as the one
listed allows you to assign a particular interface a static IP address. I
only show an example and not a real world command above. Also review some
commands for file
permissions here.. Your best bet, if you want to configure your network
card using this command is to first read the manual pages. You access them by
you to change the server bootup on a specific runlevel
common use: init 5
This is a useful command, when for
instance a servers fails to identify video type, and ends up dropping to the
non-graphical boot-up mode (also called runlevel 3).
The server runlevels rely on scripts to basically start up a server with
specific processes and tools upon bootup. Runlevel 5 is the default
graphical runlevel for Linux servers. But sometimes you get stuck in a
different mode and need to force a level. For those rare cases, the init
command is a simple way to force the mode without having to edit the inittab
Of course, this command does not fix the underlying problem, it just provides
a fast way to change levels as needed. For a more permanent correction to the
runlevel, edit your /etc/inittab file to state: id:5:initdefault:
to use command line editor are always included with most Linux versions and
flavors. One I tend to use for fast easy editing is nano.
A real world example for you to get a
better sense on how this works:
This allows you to edit using nano the dhcpd.conf configuration file from the
Maybe you are not up to speed on vi,
or never learned how to use emacs?
On most Linux flavors the text editor
named joe or one named nano are available. These basic but easy
to use editors are useful for those who need a text editor on the command
line but don't know vi or emacs.
Although, I do highly recommend that
you learn and use Vi and Emacs
editors as well. Regardless, you will need to use a command line editor from
time to time. You can also use cat and more commands to list
contents of files, but this is basic stuff found under the basic linux
Try: more filename to list contents of the filename.
of network connections and status of sockets
common uses: netstat and also netstat |head and also netstat -r
Netstat command simply displays all
sockets and server connections. The top few lines are usually most helpful
regarding webserver administration. Therefore if you are doing basic
webserver work, you can quickly read the top lines of the netstat output by
including the |head (pipe and
Using the -r option gives
you a very good look at the network routing addresses. This is directly
linked to the route command.
the domain name and IP information of a server
common use: nslookup
You are bound to need this command for
one reason or another. When performing server installation and configuration
this command gives you the existing root server IP and DNS information and
can also provide details from other remote servers.
Therefore, it is also a very useful security
command where you can lookup DNS information regarding a particular host IP
that you may see showing up on your server access logs. Note there are some
other commands like file
permissions that may also help. There is a lot more to this command and
using the man pages will get you the details by typing: man nslookup
test packets to a specified server to check if it is responding properly
common use: ping
the 10.0.0.0 with a true IP address)
is an extremely useful command that is necessary to test network connectivity
and response of servers. It creates a series of test packets of data that are
then bounced to the server and back giving an indication whether the server
is operating properly.
It is the first line of testing if a
network failure occurs. If ping works but for instance FTP does not, then
chances are that the server is configured correctly, but the FTP daemon or
service is not. However, if even ping does not work there is a more
significant server connectivity issue& like maybe the wires are not
connected or the server is turned off!
The outcome of this command is pretty
much one of two things. Either it works, or you get the message destination
host unreachable. It is a very fast way to check even remote servers.
all existing processes on the server
common uses: ps and also ps -A |more
The simple command will list every
process associated with the specific user running on the server. This is
helpful in case you run into problems and need to for instance kill a
particular process that is stuck in memory. On the other hand, as a system
administrator, I tend to use the -A with the |more option.
This will list every process running
on the server one screen at a time. Read more of our commands on our reallylinux.com help
page. I use ps to quickly check what others are goofing with on my servers
and often find that I'm the one doing the dangerous goofing!
directories and files
common use: rm
-r name (replace name
with your file or directory name)
The -r option forces the command to also apply to each
subdirectory within the directory. This will work for even non-empty
directories. For instance if you are trying to delete the entire contents of
the directory x which includes directories y and z this command will do it in
one quick process. That is much more useful than trying to use the rmdir
command after deleting files! Instead use the rm -r command and you will save
time and effort.
You may already have known this but
since server administrators end up spending a lot of time making and deleting
I included this tip!
the routing tables for your server
common use: route
This is pretty much the exact same
output as the command netstat
You can suit yourself which you prefer to run. I tend to type netstat
commands a lot more than just route and so it applies less to my situation,
but who knows, maybe you are going to love and use route the most!
a file securely by overwriting its contents
common use: shred
(replace filename with your specific file)
The -v option is useful since it
provides extra view of what exactly the shred tool is doing while you wait.
On especially BIG files this could take a bit of time. The result is that
your file is so thoroughly deleted it is very unlikely to ever be retrieved
This is especially useful when trying
to zap important server related files that may include confidential
information like user names or hidden processes. It is also useful for
deleting those hundreds of love notes you get from some of the users on your
server, another bonus of being a server administrator. :)
super-user do command that allows you to run specific commands that require
common use: sudo
(replace command with your specific one)
This command is useful when you are
logged into a server and attempt a command that requires super-user or root
privileges. In most cases, you can simply run the command through sudo,
without having to log in as root. In fact, this is a very beneficial way to
administer your server without daily use of the root login, which is
Note there are other commands for file permissions here.
Below is a simple example of the sudo capabilities:
sudo cd /root
This command allows you to change directories to the /root without having to
login as root. Note that you must enter the root password once, when running
a sudo command.
many system statistics and details regarding active processes
common use: top
This is a very useful system
administrator tool that basically gives you a summary view of the system
including number of users, memory usage, CPU usage, and active processes.
Often during the course of a day when
running multiple servers, one of my Xwindows workstations just displays the
top command from each of the servers as a very quick check of their status
you to change the timestamp on a file.
common use: touch
Using the basic touch command, as
above, will simply force the current date and time upon the specified file.
This is helpful, but not often used.
However, another option that I've used in the past when administering servers,
is to force a specific timestamp on a set of files in a directory. Read more
of our commands on our reallylinux.com
For instance, to force a specific date and time upon all files in a
You can also force a specific date/time stamp using the -t option like this: touch -t200103041200.00 *
The command above will change all files in the current directory to take on
the new date of March 4th, 2001 at noon.
The syntax follows this pattern: YYYYMMDDhhmm.ss
YYYY represents the four digit year, then the two digit month, day, hour and
minutes. You can even specify seconds as noted above. In any case, this is a
useful way to control timestamps on any files on your server.
the existing network routing for a remote or local server
common use: traceroute
hostname with the name of your server such as reallylinux.com)
is a very powerful network command that basically gives the exact route
between your machine and a server. In some cases you can actually watch the
network hops from country to country across an ocean, through data centers,
etc. Read more of our commands on our reallylinux.com help
This comes in handy when trying to fix
a network problem, such as when someone on the network can not get access to
your server while others can. This can help identify the break or error along
the network line. One strong note to you is not to misuse this command!
When you run the traceroute everyone
of those systems you see listed also sees YOU doing the traceroute and
therefore as a matter of etiquette and respect this command should be used
when necessary not for entertainment purposes. A key characteristic of
gainfully employed server administrators: knowing when to use commands and
when not to use them!
extension of the who command that displays details of all users currently on
common uses: w
is a very important system admin tool I use commonly to track who is on the
server and what processes they are running. It is obviously most useful when
run as a super-user.
The default setting for the w command
is to show the long list of process details. You can also run the command w -s to review a
shorter process listing, which is helpful when you have a lot of users on the
server doing a lot of things! Remember that this is different than the ‘who’
command that can only display users not their processes.