While I am very comfortable using Linux via a command line shell, I think all of us can admit that occasionally we need to look up a command or two due to non-regular use. Because time is short, and can be expensive when we have tons to do, I usually install Virtualmin (which also installs Webmin) on most of my servers. It is simply easier to login and get things done quickly.
Well, as I was setting up a new server at my hosting provider today and installing Virtualmin I ran into a little problem. The server was a fresh install, and Virtualmin would not install on my fresh load of Ubuntu 10.4 (which is a supported OS by Virtualmin). Instead I received the error:
... No apport report written because the error message indicates its a followup error from a previous failure pkg: dependency problems prevent configuration of virtualmin-base: virtualmin-base depends on dovecot-common; however: Package dovecot-common is not configured yet. virtualmin-base depends on dovecot-imapd; however: Package dovecot-imapd is not configured yet. virtualmin-base depends on dovecot-pop3d; however: Package dovecot-pop3d is not configured yet. dpkg: error processing virtualmin-base (--configure): dependency problems - leaving unconfigured Errors were encountered while processing: dovecot-common dovecot-imapd dovecot-pop3d virtualmin-base FATAL - 2011-09-01 00:07:13 - Fatal Error Occurred: Something went wrong during installation: 0 FATAL - 2011-09-01 00:07:13 - Cannot continue installation. FATAL - 2011-09-01 00:07:14 - Attempting to remove virtualmin repository configuration, so the installation can be FATAL - 2011-09-01 00:07:14 - re-attempted after any problems have been resolved. FATAL - 2011-09-01 00:07:14 - Removing temporary directory and files. FATAL - 2011-09-01 00:07:14 - If you are unsure of what went wrong, you may wish to review the log FATAL - 2011-09-01 00:07:14 - in /root/virtualmin-install.log
Well, after some Google searching I determined that the problem may be related to a bad hostname set on the server. This was a little confusing because the install also detected this at the beginning and asked me what I would like the hostname set to. However, it appears that providing the hostname did not make a difference because Virtualmin was not able to set it.
I first tested the hostname to see if this was the problem by doing:
$ hostname -f
Sure enough, it warned that the hostname was a problem. So here is how I fixed things:
First, I had to set the hostname on the server (I use sudo, but you could be logged in as root or change to superuser with su.):
# sudo vi /etc/hostname
In vi you would edit the hostname to be a fully qualified domain name (FDQN) and saving. (click “i” to enter insert mode, then “esc” to stop, and hit “ZZ” to save and close. Note: these are capital “ZZ”.)
Second, this requires a restart of the hostname service to apply the change. (Note: you can use ‘restart’ instead of stop and start.)
# sudo /etc/init.d/hostname stop # sudo /etc/init.d/hostname start
Third, I had to then update my hosts file to also reflect the change. (click “i” to enter insert mode, then “esc” to stop, and hit “ZZ” to save and close. Note: these are capital “ZZ”.)
# sudo vi /etc/hosts
IMPORTANT: If you do not include the “shortname” after the hostname applications will still not consider this a FDQN.
Example of what should be in the hosts file when you are done:
127.0.0.1 myhome.domain.com myhome
After doing these three steps I was able to successfully install Virtualmin with no issues.