Should you kill or terminate a misbehaving process.

Have you ever had a linux process that was not running but when you try to start or restart the process nothing happens. You may find that you need to kill the process before you try to restart it because the process is actually still alive and not responding or not actually alive but the pid (which is a unique identifying number that tells the kernel that the process has stated or is alive) was not removed when the process ended. So the kernel thinks that the process is working just fine when in fact it is not and won’t start it a new.

Before you kill the process you should always try to terminate it first. Because terminate tries to end the process gracefully and finish writing any remaining data that the process may have stored in memory as well terminate will finish writing any logging data to assist you to find out what caused the process to fail in the first place

The command to terminate a process is

Code
kill -15 pid

replace pid with the pid number

If your attempt to terminate the process fails then you will have to use the more powerful kill command which will bypass the process and ask the kernel to kill the misbehaving process directly.

The command to have the kernel kill a process is

Code
kill -9 pid

replace pid with the pid number

Before you can kill the process you will have to find its pid. To find out the pid of a running process in virtualmin you can go to

Webmin> System> Running Processes>

and select pid from the Display menu then scroll to find the pid of the process you are looking for. Linux, kill, terminate, kill -15 pid, kill -15, kill -9 pid, kill -9, pid, linux process, process, not running, process not running, start, restart, start or restart, not responding, process not responding, kernel, pid not removed, kill the process, stop the process, terminate the process, end the process, end the process gracefully, writing any logging data, virtualmin, webmin, Running Processes,Click on the pid of the process you want to kill and you will be taken to a new screen where you can terminate or kill the process by clicking the matching button.

Linux, kill, terminate, kill -15 pid, kill -15, kill -9 pid, kill -9, pid, linux process, process, not running, process not running, start, restart, start or restart, not responding, process not responding, kernel, pid not removed, kill the process, stop the process, terminate the process, end the process, end the process gracefully, writing any logging data, virtualmin, webmin, Running Processes,If you are not a virtualmin user you can open a terminal window and type

Code
ps aux | less

which will give you a list that looks something like

Linux, kill, terminate, kill -15 pid, kill -15, kill -9 pid, kill -9, pid, linux process, process, not running, process not running, start, restart, start or restart, not responding, process not responding, kernel, pid not removed, kill the process, stop the process, terminate the process, end the process, end the process gracefully, writing any logging data, virtualmin, webmin, Running Processes,when you have the pid you need to kill the process. As mentioned above you should always try the terminate command first. In the terminal window type

Code
kill -15 pid

replace pid with the pid number

If the process does not terminate you will the need to use the more powerful kill command

Code
kill -9 pid

replace pid with the pid number

Additional Ubuntu Configuration.

Continued from Install Ubuntu 10.04 server for an installation of Virtualin, Webmin Usermin.

2.    Additional Ubuntu Configuration.
a.    After the server restarts login using the Username and password you created above EG: Administrator
i.    NOTE: For each command line instruction below you will have to add the prefix of “sudo”.
ii.    Or you can become the root user
(1)    By typing “sudo su”
(2)    Or enable the root user by typing “sudo passwd root”
(a)    Then enter the password for Administrator
(b)    Next provide a password for the root user when prompted and re-prompted.
(c)    Next, to switch to the root user enter “su root” then enter the password for the root user.
(3)    NOTE: enabling the root user is not recommended by the developers of Ubuntu. See http://ubuntuforums.org/showthread.php?t=765414

b.    Fail2ban.
i.    Fail2ban is not necessary (you do not have to install fail2ban to run webmin/virtualmin/usermin) however I always install fail2ban and then configure it after running install.sh and carrying out the post install configuration. I will give configuration instructions for fail2ban later in this tutorial. You can obtain more information about fail2ban at http://www.fail2ban.org/wiki/index.php/Main_Page
ii.    To install fail2ban type “apt-get install fail2ban” at the command line
(1)    When prompted enter y and fail2ban will install.
c.    Update the server just to be sure all software is up to date
i.    At the command line type “apt-get update && apt-get upgrade”
ii.    When prompted enter y to install the updates
iii.    This can take a few minutes depending on the number of updates.

Install Ubuntu 10.04 server for an installation of Virtualin, Webmin Usermin.

This tutorial shows the steps to install Ubuntu 10.04 server in preparation for an installation of Virtualin, Webmin and usermin.

NOTE: I do not issue any guarantee that this will work for you

Basic assumptions.
You have a CD with Ubuntu_10.04.iso on it or some other simular device.
You have set your CD drive or simular device to be the boot device.

All assumptions below are useful in this example. You will need this information to successfully install Ubuntu 10.04 server and  webmin/virtualmin/usermin. I suggest you gather this information before you start. Then replace each assumptions with your information through the tutorial.

1    You want the server name (hostname) to be “server1.mysite.com”
1.1    NOTE Throughout this tutorial only enter what is between the quotes, and not the quotes.
1.2    “server1.mysite.com” must also be the name of your name server record (glue record) at your registrar.
1.3    NOTE: Often the name server record (glue record) looks like “ns1.mysite.com” but you can make the “ns1” part any thing you want so long as the server name (hostname) and the server record (glue record) are the same.
1.3.1    NOTE: server name (hostname) is on your physical sever at your home/office
1.3.2    NOTE: server record (glue record) is at your domain name registry company.

2    You are required to have an additional or second name server record (glue record) at your registrar.
2.1    You want the second server name record (glue record) to be “server1r2.mysite.com”
2.2    NOTE: Both “server1.mysite.com” and “server1r2.mysite.com” will point to your IP Address 230.0.0.0

3    You want to create several virtual servers
3.1        mysite.com
3.2        customer.com NOTE: the second Virtual server is optional.

4    You have a static external IP Address 230.0.0.0 and want to install Ubuntu with this IP addres.

5    Your internal IP Address is 192.168.0.10

6    Your Name server address are 192.168.0.10 your_external_IP_address Your_ISPs_NameServer
6.1    NOTE: three name server addresses separated by spaces.
6.2    EG: 192.168.0.10 4.4.4.4 8.8.8.8

7    Your hostname will be server1

8    Your domain name will be mysite.com

Steps to Install ubuntu for webmin/virtualmin/usermin.

1.    Install Ubuntu
a.    Insert your Ubuntu install CD into the CD drive on your server and restart your server.
b.    Select the language the install process will use then hit enter.
c.    Then the next screen is to start the install process but it needs some modification so that you can install ubuntu with a fixed IP address.
i.    To be able to set the IP address during the install process press the F6 button and a line of text will appear towards the bottom of the screen.
ii.    There will not appear to be a cursor, ignore this and type “netcfg/disable_dhcp=true” then hit enter.
iii.    Note: by typing “netcfg/disable_dhcp=true” to the end of the install command line you are telling the installer to ask for additional information during the install process.
d.    The next screen is to choose your language for the operating system, for after you have completed this installation. So select the language you want Virtualmin to run in.
e.    Then select your country territory or area.
i.    Note The installer may present you with 1 to 3 screens depending on your location.
f.    Then select your keyboard layout
i.    There are several ways to select the keyboard layout follow the best for you. ( 2 to 8 screens)
ii.    Info: I have a standard keyboard so I choose the keyboard myself it is much quicker,
(1)    At “Detect keyboard layout?” I select “no”
(2)    Then I select “USA” keyboard from the list presented.
(3)    Then again I select “USA” keyboard from the list presented.
iii.    The installation will then install the required keyboard drivers and other components.
g.    The installer will run for a while detecting hardware and other things.
h.    The installation then detects the network and will allow you to configure the network.
i.    Note If the next question the installer asks is not for your ip address then you need to restart the installation because there has been a problem with “netcfg/disable_dhcp=true”.
i.    Enter each of these.
i.    Ip address 192.168.0.10
(1)    NOTE: Your internal IP address.
(2)    Do not use an IP address that is already used
ii.    Net mask 255.255.255.0
(1)    NOTE: Usually the default is presented and should be accepted.
(2)    NOTE: The zero (0) on the end.
iii.    Gateway 192.168.0.1
(1)    NOTE: Usually the default is presented and should be accepted.
(2)    NOTE: The one (1) on the end.
iv.    DNS Name servers address  192.168.0.10 your_external_IP58.96.112.202 Your_ISPs_NameServer
(1)    NOTE: three name server address separated by spaces EG 192.168.0.10 4.4.4.4 8.8.8.8
v.    Hostname “server1”
vi.    Domain “mysite.com”
j.    The installer will then set up the clock and ask you for your city. Select your city from the list.
k.    Then you have to partition your hard drive
i.    Chose the method from the options that best suite you.
ii.    I chose “Guided – use entire disk” for formatting my hard drive.
iii.    The only thing I may change during this process is I use ext4 for the file system type, otherwise I accept all other options as presented.
iv.    The final screen of the partitioner will show you the configuration and ask you to write the changes yes or no
v.    If you select no the installer will return you to the beginning of the partitioner
vi.    If you select yes goto the next section.
l.    The installer will now install the base system. This may take some time.
m.    Next create a user account
i.    EG: Administrator (don’t use the user name “admin” as it is a reserved name in Ubuntu) Or you could use your name.
n.    Next create a user name for the new account,
i.    EG: Administrator (yes it can be the same as the account name)
ii.    Enter a password for the user name you just created
iii.    Reenter the password you just entered when asked to
o.    Next choose weather or not you want your home directory encrypted. I chose no.
p.    Then configure the package manager.
i.    Leave the proxy line empty unless you’re using a proxy server to connect to the Internet:
ii.    The installer will now configure apt to run on your server.
q.    Next, updates will be done through virtualmin/webmin so select “no automatic updates”
r.    Choose the software to install.
i.    NOTE: Don’t choose any use the tab key to move to the Continue button then hit enter.
ii.    The installer will then install all remaining standard packages
s.    The installer will then download and install the latest version of Grub boot loader
i.    Then the installer will ask if it is ok to install the Grub boot loader to the master boot record. If this is the only operating system on your server answer yes.
t.    The installation will then run until it has completed.
i.    When you see the “Installation is complete” message, remove the cd from the drive and select continue.

In the next section I will cover the additional configuration needed before installing Virtualin, Webmin and Usermin.