Linux Server Setup

Hardware Wish List

We have created a list of hardware – both complete servers and smaller hardware pieces that we are currently searching for.

Help serve the Open Source community by becoming a sponsor.

Hardware Wish List

Since we are completely dependant on sponsored equipment, being short of essential hardware is unfortunately kind of a natural state for us. So — here’s a quick list of what we currently need the most. If you know anyone (or any company) who could help us out, please drop us a note. Trying to work around old / weak / missing hardware is one of the most unpleasant parts of our job here :(
Mirror Service:
Our beloved mirror server could use:
A spare disk (We currently use Seagate barracuda ES 2, 1 TB Sata)
Backup Storage:
2-4 TB of diskspace (SATA RAID) for daily backups
Gigabit Managed Switch:
Our Cisco Catalyst 3550 with 10x Gb/s copper ports, is kind of old, and all sloths are filled up. Some new shiny (Cisco) switch with more ports, would be appreciated.
Most of our servers are not that new any more. New servers (e.g. big enough for visualizing) in general will be most appreciated.

Equipment rely on donated equipment, and on this page we present our current server farm. We are always searching for more and better hardware, and our wish list is full of hardware that would help us provide an even better service to the Open Source community.
Mirror Server
Right now our mirrors are stored on a
Qoad Core Xeon 2,0 GHz processor
32 GiB RAM
5 TB storage
Ubuntu Server
IRC Server
Dual Pentium III 800MHz
Project Login Server
A beefy HP Integrity rx2600-2 machine with dual 1,3GHz Itanium2 CPUs, 4GB RAM and 1TB fast storage attached via a Smart Array raid controller.
Usenet server
The server was kindly sponsored by Aalborg University.
HP compaq proliant DL380G3:
2x 2.8GHz Pentium 4 XEON CPU’s w. 512KB L3 cache
2x 1Gbit integrated network
Smart Array 5i Plus RAID controller (integrated, 2 SCSI channels)
Battery-Backed Write Cache Enabler for the Raid controller
2 Power Supplies
6x 72 GB/10K U320 hotswap SCSI disks
Running Diablo 5.0 on FreeBSD.
SunSITE server
Sun E3500 with 2 CPUs
Solaris 8

Previously this server ran all of the SunSITE services, and currently it runs services that we have not yet moved to other servers.
Staff Admin Server
Our internal administration box which runs administrative tasks, serves as a staff-login box and updates all of our mirrors. This box is a dual 1GHz P3 Compaq Proliant machine with 1GB RAM and a couple of fast disks.
Mail Server
A dual 1GHz P3 Compaq proliant (same make as the admin-box) with 1GB RAM and a couple of fast 15kRPM SCSI-disks in raid which serves as our mail- and list server.
Streamingserver, Debian Lenny, Icecast2
Dell PowerEdge 2800
2 * Dual Core Xeon 2,8 GHz processor
1,5 GiB RAM
BitTorrent server
BitTorrent server, Debian Lenny, rtorrent
2,67 GHz Intel P4
768 MiB RAM
800 GB storage for seeding files + 40 GB system disk.
An A-Z Index of the Bash command line for Linux.
alias    Create an alias
apropos  Search Help manual pages (man -k)
apt-get  Search for and install software packages (Debian)
aspell   Spell Checker
awk      Find and Replace text, database sort/validate/index
bash     GNU Bourne-Again SHell
bc       Arbitrary precision calculator language
bg       Send to background
break    Exit from a loop
builtin  Run a shell builtin
bzip2    Compress or decompress named file(s)
cal      Display a calendar
case     Conditionally perform a command
cat      Display the contents of a file
cd       Change Directory
cfdisk   Partition table manipulator for Linux
chgrp    Change group ownership
chmod    Change access permissions
chown    Change file owner and group
chroot   Run a command with a different root directory
chkconfig System services (runlevel)
cksum    Print CRC checksum and byte counts
clear    Clear terminal screen
cmp      Compare two files
comm     Compare two sorted files line by line
command  Run a command – ignoring shell functions
continue Resume the next iteration of a loop
cp       Copy one or more files to another location
cron     Daemon to execute scheduled commands
crontab  Schedule a command to run at a later time
csplit   Split a file into context-determined pieces
cut      Divide a file into several parts
date     Display or change the date & time
dc       Desk Calculator
dd       Convert and copy a file, write disk headers, boot records
ddrescue Data recovery tool
declare  Declare variables and give them attributes
df       Display free disk space
diff     Display the differences between two files
diff3    Show differences among three files
dig      DNS lookup
dir      Briefly list directory contents
dircolors Colour setup for `ls’
dirname  Convert a full pathname to just a path
dirs     Display list of remembered directories
dmesg    Print kernel & driver messages
du       Estimate file space usage
echo     Display message on screen
egrep    Search file(s) for lines that match an extended expression
eject    Eject removable media
enable   Enable and disable builtin shell commands
env      Environment variables
ethtool  Ethernet card settings
eval     Evaluate several commands/arguments
exec     Execute a command
exit     Exit the shell
expect   Automate arbitrary applications accessed over a terminal
expand   Convert tabs to spaces
export   Set an environment variable
expr     Evaluate expressions
false    Do nothing, unsuccessfully
fdformat Low-level format a floppy disk
fdisk    Partition table manipulator for Linux
fg       Send job to foreground
fgrep    Search file(s) for lines that match a fixed string
file     Determine file type
find     Search for files that meet a desired criteria
fmt      Reformat paragraph text
fold     Wrap text to fit a specified width.
for      Expand words, and execute commands
format   Format disks or tapes
free     Display memory usage
fsck     File system consistency check and repair
ftp      File Transfer Protocol
function Define Function Macros
fuser    Identify/kill the process that is accessing a file
gawk     Find and Replace text within file(s)
getopts  Parse positional parameters
grep     Search file(s) for lines that match a given pattern
groups   Print group names a user is in
gzip     Compress or decompress named file(s)
hash     Remember the full pathname of a name argument
head     Output the first part of file(s)
history  Command History
hostname Print or set system name
id       Print user and group id’s
if       Conditionally perform a command
ifconfig Configure a network interface
ifdown   Stop a network interface
ifup     Start a network interface up
import   Capture an X server screen and save the image to file
install  Copy files and set attributes
join     Join lines on a common field
kill     Stop a process from running
killall  Kill processes by name
less     Display output one screen at a time
let      Perform arithmetic on shell variables
ln       Make links between files
local    Create variables
locate   Find files
logname  Print current login name
logout   Exit a login shell
look     Display lines beginning with a given string
lpc      Line printer control program
lpr      Off line print
lprint   Print a file
lprintd  Abort a print job
lprintq  List the print queue
lprm     Remove jobs from the print queue
ls       List information about file(s)
lsof     List open files
make     Recompile a group of programs
man      Help manual
mkdir    Create new folder(s)
mkfifo   Make FIFOs (named pipes)
mkisofs  Create an hybrid ISO9660/JOLIET/HFS filesystem
mknod    Make block or character special files
more     Display output one screen at a time
mount    Mount a file system
mtools   Manipulate MS-DOS files
mv       Move or rename files or directories
mmv      Mass Move and rename (files)
netstat  Networking information
nice     Set the priority of a command or job
nl       Number lines and write files
nohup    Run a command immune to hangups
nslookup Query Internet name servers interactively
open     Open a file in its default application
op       Operator access
passwd   Modify a user password
paste    Merge lines of files
pathchk  Check file name portability
ping     Test a network connection
pkill    Stop processes from running
popd     Restore the previous value of the current directory
pr       Prepare files for printing
printcap Printer capability database
printenv Print environment variables
printf   Format and print data
ps       Process status
pushd    Save and then change the current directory
pwd      Print Working Directory
quota    Display disk usage and limits
quotacheck Scan a file system for disk usage
quotactl Set disk quotas
ram      ram disk device
rcp      Copy files between two machines
read     read a line from standard input
readonly Mark variables/functions as readonly
reboot   Reboot the system
renice   Alter priority of running processes
remsync  Synchronize remote files via email
return   Exit a shell function
rev      Reverse lines of a file
rm       Remove files
rmdir    Remove folder(s)
rsync    Remote file copy (Synchronize file trees)
screen   Multiplex terminal, run remote shells via ssh
scp      Secure copy (remote file copy)
sdiff    Merge two files interactively
sed      Stream Editor
select   Accept keyboard input
seq      Print numeric sequences
set      Manipulate shell variables and functions
sftp     Secure File Transfer Program
shift    Shift positional parameters
shopt    Shell Options
shutdown Shutdown or restart linux
sleep    Delay for a specified time
slocate  Find files
sort     Sort text files
source   Run commands from a file `.’
split    Split a file into fixed-size pieces
ssh      Secure Shell client (remote login program)
strace   Trace system calls and signals
su       Substitute user identity
sudo     Execute a command as another user
sum      Print a checksum for a file
symlink  Make a new name for a file
sync     Synchronize data on disk with memory
tail     Output the last part of files
tar      Tape ARchiver
tee      Redirect output to multiple files
test     Evaluate a conditional expression
time     Measure Program running time
times    User and system times
touch    Change file timestamps
top      List processes running on the system
traceroute Trace Route to Host
trap     Run a command when a signal is set(bourne)
tr       Translate, squeeze, and/or delete characters
true     Do nothing, successfully
tsort    Topological sort
tty      Print filename of terminal on stdin
type     Describe a command
ulimit   Limit user resources
umask    Users file creation mask
umount   Unmount a device
unalias  Remove an alias
uname    Print system information
unexpand Convert spaces to tabs
uniq     Uniquify files
units    Convert units from one scale to another
unset    Remove variable or function names
unshar   Unpack shell archive scripts
until    Execute commands (until error)
useradd  Create new user account
usermod  Modify user account
users    List users currently logged in
uuencode Encode a binary file
uudecode Decode a file created by uuencode
v        Verbosely list directory contents (`ls -l -b’)
vdir     Verbosely list directory contents (`ls -l -b’)
vi       Text Editor
vmstat   Report virtual memory statistics
watch    Execute/display a program periodically
wc       Print byte, word, and line counts
whereis  Report all known instances of a command
which    Locate a program file in the user’s path.
while    Execute commands
who      Print all usernames currently logged in
whoami   Print the current user id and name (`id -un’)
Wget     Retrieve web pages or files via HTTP, HTTPS or FTP
write    Send a message to another user
xargs    Execute utility, passing constructed argument list(s)
yes      Print a string until interrupted
.        Run a command script in the current shell
###      Comment / Remark
“Talk is cheap. Show me the code” – Linus Torvalds

Linux Commands for
Beginning Server Administrators nd
Summary Use
Command mostly used for checking existing Ethernet connectivity and IP address
Most 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.

Display filesystem information
Most 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 permissions here.

Display usage
Most 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.
Find locations of files/directories quickly across entire filesystem
Most 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

Command line tool to configure or check all network cards/interfaces
Most common uses: ifconfig and also ifconfig eth0
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 typing: man ifconfig

Allows you to change the server bootup on a specific runlevel
Most 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 file.

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:

joe or nano
Easy to use command line editors that are often included with the major Linux flavors
Most common uses:
joe filename
nano filename
A real world example for you to get a better sense on how this works:
nano /etc/dhcp3/dhcpd.conf
This allows you to edit using nano the dhcpd.conf configuration file from the command line.
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 commands listing. Try: more filename to list contents of the filename.

Summary of network connections and status of sockets
Most 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 head commands). Using the -r option gives you a very good look at the network routing addresses. This is directly linked to the route command.

Checks the domain name and IP information of a server
Most 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

Sends test packets to a specified server to check if it is responding properly
Most common use: ping (replace the with a true IP address)
This 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.

Lists all existing processes on the server
Most 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 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!

Removes/deletes directories and files
Most 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!

Lists the routing tables for your server
Most common use: route -v
This is pretty much the exact same output as the command netstat -r. 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!

Deletes a file securely by overwriting its contents
Most common use: shred -v filename (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 again. 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. :)

The super-user do command that allows you to run specific commands that require root access.
Most common use: sudo command (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 potentially dangerous.

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.

Displays many system statistics and details regarding active processes
Most 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 and stability.

Allows you to change the timestamp on a file.
Most common use: touch filename
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 help page.

For instance, to force a specific date and time upon all files in a directory, type:
touch *

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:

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.

Traces the existing network routing for a remote or local server
Most common use: traceroute hostname
(replace hostname with the name of your server such as
This 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 help page.
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!

An extension of the who command that displays details of all users currently on the server
Most common uses: w
This 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 superuser.
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.

Tool used to monitor who is on the system and many other server related characteristics
Most common uses: who and also who -q and also who -b
The plain command just lists the names of users currently on the server. Using the -q option allows you to quickly view just the total number of users on the system. Using the -b option reminds you how long it has been since you rebooted that stable Linux server! One of my servers had a -b of almost three years! Yes, that’s why we at call it really Linux!

Manipulating Files
Example and Explanation
Change directories.

cd /home/user
Change to the directory /home/user (the home directory for a user with the user name user).

cd ..
Go up one level from the current directory.
Copy a file.

cp oldfile newfile
Make a copy of the file oldfile in the current directory. The copy is named newfile.

cp oldfile /home/user
Make a copy of the file oldfile in the current directory. The copy also has the name oldfile and is in the directory /home/user.
Create a link from one file or directory to another file or directory.

ln -s /bin/program prolink
Create a soft link (shortcut) from the existing file /bin/program to prolink. The link prolink is created in the current working directory. If you enter the command prolink, you run the program /bin/program.
List the files in the current directory.

ls -al
List all (-a) the files in the current directory in long (-l) format.

ls *.html
List files in the current directory that end with .html. The * is a wild-card character that represents any number of characters. The ? is a wild-card character that represents a single character.

ls /home/user
List the files in the directory /home/user.
Make a new directory.

mkdir newdir
Make a new directory called newdir beneath the current directory.

mkdir /home/newdir
Make a new directory called newdir beneath the /home directory.
Move a file to a new directory or rename the file.

mv myfile /home/user
Move the file myfile from the current directory to the directory /home/user.

mv myfile yourfile
Rename the file myfile. The new filename is yourfile.
Show the path to the present working directory.
Tape ARchive, a command which combines many files into one for backup purposes. Below are some example commands:

tar -cvzf /local/servcons.tar.gz –exclude /proc –exclude /local –exclude /vmfs –exclude /data /

Create a gzipped tar backup file the whole Service Console.
tar -cf /local/vm-configs.tar /data

Create a tar backup file of all files in and under /data directory.
tar -xvzf /local/vm007-config.tar.gz

Extract gzipped tar backup file to current directory.
find / -type f -iname vm007* | tar -czvf /local/vm007-backup.tar.gz –
Find all files starting as ‘vm007’, and create a compressed backup tar file of them.

These command compress and decompress files. The recommended and default extension is .gz.


These commands are almost the same, and usually act in a pipe. They are used for file pagination to terminal. Below are some example commands:
zcat /var/log/vmksummary.1.gz | less
more /etc/passwd

Remove a file.

rm deadfile
Remove the file deadfile from the current directory.
Remove a directory.

rmdir gone
Remove the directory gone, which exists beneath the current directory.

Finding and Viewing Files

Example and Explanation
Concatenate the contents of files and display the content on the screen.

cat /proc/vmware/mem
Display the contents of the file /proc/vmware/mem.
Find files under a specified directory that match conditions you specify.

find / -name myfil*
Find files in the root directory and all directories under it that have file names beginning with myfil. The * is a wild-card character that represents any number of characters. The ? is a wild-card character that represents a single character.

find -name ‘*.vmx’ -print -exec chown User2 {} \;
Find all files in this directory and all subdirectories that end with .vmx, display the names of all files that are found on the screen and, for each file (indicated by the curly braces — {}), change its owner to User2.
The -print option is not necessary, but it is handy to track the progress of the find command. If you do not use -print, the find command is silent except for error messages from find or from chown.

find -name ‘*.vmx’ -exec grep -il ‘SOMETHING’ {} \;
Find all files in this directory and all subdirectories that end with .vmx and look for the pattern SOMETHING in each of the files. The -i option to grep makes the search case-insensitive. The -l option to grep causes grep to display the names of the files that have SOMETHING in them. When a file is found that contains SOMETHING, this command displays the full path to the file from the current directory (for example,
Search for a specified text pattern in a specified directory or list of files and display the lines in which the pattern is found.

grep “log file” *
Search all the files in the current directory for the text string log file.
Display the contents of a specified file one screen at a time. Use the arrow keys to move up and down through the file.

less myfile
Display the contents of the file myfile.

grep “log file” * | less
Search all the files in the current directory for the text string log file and use less to display the results so you can scroll up and down through them.
Display the contents of a specified file one screen at a time. Use the spacebar to move forward through the file a screen at a time; use the Enter key to move forward through the file one line at a time.

more myfile
Display the contents of the file myfile.

grep “log file” * | more
Search all the files in the current directory for the text string log file and use more to display the results so you can view them one screen at a time.

Managing the Computer and Its Users

Example and Explanation
Find commands with descriptions that include a specified word. Displays the name of the command and the first line of the description.

apropos file
Find commands with descriptions that include the word file.

apropos file | less
Find commands with descriptions that include the word file and use less to display the results so you can scroll up or down through them.
Display usage in kilobytes for contents of the current directory or for a specified file or directory.

du /bin
Show how much disk space is used by the /bin directory.
vdf is an ESX Server-customized version of the df command. Use vdf in place of the df command. vdf works with all the standard df options.
Displays free space for all mounted file systems. The listing also shows the total space, amount of space used and percentage of space used for each file system.
Do a floppy disk format.

fdformat /dev/fd0
Format a floppy disk in the first floppy disk drive.
Add a new group.

groupadd newgroup
Add a group named newgroup to the system.
Display the system’s host name.
Display the network interface configuration information for devices used by the service console.
Install a loadable module into the running kernel.

insmod parport
Install the loadable module named parport into the running kernel.
Kill a specified process.

kill 3456
Kill the process with a process ID of 3456.
kill -9 is the surest way to kill a process; however, use it only as a last resort since it will not save editor buffers.
List all loaded modules.
List PCI devices available to the service console.

lspci -v
List PCI devices in verbose mode.
These commands manually mount CDs, floppies, local partitions, and remote directories to a selected local directory. The local (empty) directory must exist before the mount can succeed. Example mound command would be “mount /dev/sdb5 /data”. Permanent mounting is done by editing the /etc/fstab file.
Shows all the active mounts.
mount -a
Remounts everything specified in /etc/fstab file.
mount /dev/cdrom
This command does the default mounting of a CD to the default mount point. In Service Console the CD is mounted to /mnt/cdrom directory.
mount /mnt/floppy
Mounts a normal 1440KB floppy (/dev/fd0) to the specified directory.
mount -t iso9660 -o loop /local/w2005srv.iso /mnt/isocd
Mount a CD/DVD ISO image file to the specified directory. This is very useful for testing and other purposes. The mount point directory must exist (mkdir /mnt/isocd) before mounting.
Change your password.

passwd user
Change the password for a user named user. You must be logged in as the root user (su) to change another user’s password.
Show names, process IDs and other information for running processes.

ps -ef
Show full (-f) information about every (-e) running process.
Shut down the computer.

shutdown -h 5
Completely halt (-h) the computer in 5 minutes.

shutdown -r now
Shut down and restart (-r) the computer immediately.
Unmount a specified device.

umount /mount/floppy
Unmount the device currently mounted at /mount/floppy.
Add a new user to the system.

useradd newuser
Add a new user with a user name of newuser to the system.
Show the user names of all users logged in to the system.
Show what user name you are currently using on the system.

Prints the manual page for a command or a configuration file entered as a parameter to this command.
Does a nice reboot on the system. Does “Force Power Off” for the VMs.
Does a nice halt on the system. Does “Force Power Off” for the VMs.
Generic command for shutting down or rebooting the system.
Command line disk partitioning program in Linux. It is powerful and has a very simple user interface.
fdisk /dev/sdb
On command line, starts fdisk against second available SCSI disk. “sda” is the first SCSI disk, “sdc” is the third SCSI disk etc. VMware ESX Server is installed on /dev/sda, and the external storage is /dev/sdb, and maybe some others too.
Fdisk subcommand, prints the current partition table on current disk.
Fdisk subcommand, deletes an existing partition. Enter the partition number to delete. It is recommended to printout the current partition table before deleting anything.
Fdisk subcommand, creates a new partition. Select partition type (primary, extended, or logical). Almost always you should use the default starting cylinder. For size, enter “+NNNNNm”, where NNNNN is the size in megabytes.
Fdisk subcommand, change partition type (id). By default fdisk creates ext2 type partitions. We might also want to use id “fb”, the vmfs type, or some other type.
Fdisk subcommand, writes the current partition table to disk. If you don’t get any errors, you don’t have to reboot. If you get errors at this point, the new partition table is used only after next system boot.
This command formats a partition for ext2, or ext3 file system.
mke2fs -j /dev/sdb1
Formats /dev/sdb1 using ext3 file system.
mke2fs /dev/sdb1
Formats /dev/sdb1 using ext2 file system
This is the RedHat’s tool to detect and configure hardware: adding new and removing old. When you run kudzu, or system runs it at bootup, be careful. Kudzu might offer to remove hardware you have dedicated solely to the VMs. Know your hardware and configuration. It might be a good idea to refer to /etc/modules.conf file before running kudzu. A safe action to select in kudzu is “Do nothing”. Select it when in doubt.
With this ‘disk dump’ command you can create ISO images and floppy images. You can also use it to create imagefiles of partitions and whole disks. Below are some example commands:
dd if=/dev/cdrom of=/local/suse90pro-dvd1.iso bs=2048
dd if=/dev/cdrom of=/local/w2003srv.iso bs=2048
The above two examples create an ISO image of a CD/DVD. You can safely ignore the error message usually shown at the end of the media.
dd if=/dev/fd0 of=/local/bootfloppy1.img bs=1440k
This command creates a floppy image quickly.
dd if=/dev/fd0 of=/local/bootfloppy2.img bs=512
This is a bit slower version of the above example.


This command takes an NTP server as a parameter and synchronises the clock once. This command doesn’t work when local NTP daemon is running. Example: ntpdate
This command is the main command for changing file modes. Like chown, it can do things recursively with parameter “-R”. Below are some example commands:
chmod -R 0775 /vmfs/* /data/* c
hmod u=rwx,g=rwx,o=r /vmfs/freebsd462/*
chmod g+rwx /vmfs/vm007/*
chmod -R u+rwx,g=r,o-rwx /var/log/*
chmod u=rw,g=rw,o=r /etc/modules.conf
chmod 664 /etc/modules.conf
chmod u=rw,g=rw /vmfs/*/*.dsk
It appears, that this last example works rather nicely. Note, that those VMs which are powered-on, have their .dsk files locked.