Webmin/virtualmin down

Hi all,

I don’t know why, but I can’t reach webmin through the usual address :

https://ip:10000

I tried this to check

~# /etc/init.d/webmin status
Webmin is stopped

So, I tried this

~# /etc/init.d/webmin restart

Stopping Webmin server in /usr/share/webmin
cat: /var/webmin/miniserv.pid: No such file or directory
kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec … or kill -l [sigspec]
Starting Webmin server in /usr/share/webmin
/etc/webmin/start: line 11: /usr/share/webmin/miniserv.pl: No such file or directory
/etc/webmin/start: line 11: exec: /usr/share/webmin/miniserv.pl: cannot execute: No such file or directory

It seems something is missing…?

I am on a Debian Squeeze
I have a recent Webmin/Virtualmin configuration that was regularily updated.
Last update came yesterday through the usual process.

Can anyone help, since my server is in production with mail and domains ?

Have some packages maybe been uninstalled or broken during the last update? Debian should write a log about what it does during updates, you might want to check that.

Dear Locutus,
thank for your kind reply…

well, If I take a look in /var/cache/apt/archives, I can see that the last update performed (and that is when problems started) is :

-rw-r–r-- 1 root root 226334 2012-03-11 11:20 libdbd-pg-perl_2.17.1-2+squeeze1_amd64.deb

Start-Date: 2012-03-11 12:37:20
Commandline: apt-get -y install libdbd-pg-perl
Upgrade: libdbd-pg-perl:amd64 (2.17.1-2, 2.17.1-2+squeeze1)
End-Date: 2012-03-11 12:37:22

Is it possible that this update (that was proposed through the regular package updates section on the welcome screen) did wrong to all the installation ?

How can I repair that ? Maybe modify the wrong path now stated in the webmin start file ?

Howdy,

I have a few questions for you about what you’re seeing there –

  • Does the “/usr/share/webmin” dir exist? You can tell that with: ls -ld /usr/share/webmin

  • What Webmin version do you have? YOu can tell that with: dpkg -l ‘webmin’

  • What output do you see here: dmesg | tail

You may also want to take a peek in /var/log/apt/term.log to see if Webmin was updated recently.

-Eric

Dear andreycheck,
thank you for helping me !

Answers to your questions in order :

ls: cannot access /usr/share/webmin: No such file or directory

ii webmin 1.570 web-based administration interface for Unix

EXT4-fs (sda1): re-mounted. Opts: (null)
EXT4-fs (sda1): re-mounted. Opts: errors=remount-ro
EXT4-fs (sda3): mounted filesystem with ordered data mode. Opts: grpquota,usrquota
r8169 0000:01:00.0: eth0: link down
r8169 0000:01:00.0: eth0: link down
ADDRCONF(NETDEV_UP): eth0: link is not ready
r8169 0000:01:00.0: eth0: link up
ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
grsec: time set by /usr/sbin/ntpdate[ntpdate:2053] uid/euid:0/0 gid/egid:0/0, parent /etc/network/if-up.d/ntpdate[ntpdate:2051] uid/euid:0/0 gid/egid:0/0
sshd (3083): /proc/3083/oom_adj is deprecated, please use /proc/3083/oom_score_adj instead.

Log started: 2012-03-11 12:37:20
Log ended: 2012-03-11 12:37:22

This is approximately when started the problems…

Okay, I’m not seeing any kernel errors, or disk problems, in your output there – that much is good.

But the bad news is that it appears as if your Webmin directory is just altogether missing!

However, it looks like your system still thinks Webmin is installed, since “dpkg -l ‘webmin’” returned “ii”.

Is there someone else with admin access to your server? Could they have accidentally deleted the /usr/share/webmin directory?

We may be able to fix that, but that’s quite a predicament :slight_smile:

What is the output of this command:

dpkg -l ‘webmin*’

That should show all the Webmin and Virtualmin packages that were installed. From there, it should just be a matter of reinstalling them (though I’d first recommend making a backup of /etc/webmin).

-Eric

Thank you for this fast reply !
Here is the output of the command you asked me to type :

~# dpkg -l ‘webmin*’
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Description
++±==============-==============-============================================
ii webmin 1.570 web-based administration interface for Unix
un webmin-adsl (no description available)
un webmin-apache (no description available)
un webmin-bandwid (no description available)
un webmin-bind (no description available)
un webmin-burner (no description available)
un webmin-cfengin (no description available)
un webmin-cluster (no description available)
un webmin-core (no description available)
un webmin-cpan (no description available)
un webmin-dhcpd (no description available)
un webmin-exim (no description available)
un webmin-exports (no description available)
un webmin-fetchma (no description available)
un webmin-firewal (no description available)
un webmin-freeswa (no description available)
un webmin-frox (no description available)
un webmin-fsdump (no description available)
un webmin-grub (no description available)
un webmin-heartbe (no description available)
un webmin-htacces (no description available)
un webmin-inetd (no description available)
un webmin-jabber (no description available)
un webmin-ldap-ne (no description available)
un webmin-ldap-us (no description available)
un webmin-ldap-us (no description available)
un webmin-lilo (no description available)
un webmin-logrota (no description available)
un webmin-lpadmin (no description available)
un webmin-lvm (no description available)
un webmin-mailbox (no description available)
un webmin-mon (no description available)
un webmin-mysql (no description available)
un webmin-nis (no description available)
un webmin-openslp (no description available)
un webmin-postfix (no description available)
un webmin-postgre (no description available)
un webmin-ppp (no description available)
un webmin-pptp-cl (no description available)
un webmin-pptp-se (no description available)
un webmin-procmai (no description available)
un webmin-proftpd (no description available)
un webmin-pserver (no description available)
un webmin-quota (no description available)
un webmin-samba (no description available)
un webmin-sarg (no description available)
ii webmin-securit 4.4 Webmin module for 'Virtualmin Package Update
un webmin-sendmai (no description available)
un webmin-shorewa (no description available)
un webmin-slbacku (no description available)
un webmin-smart-s (no description available)
un webmin-snort (no description available)
un webmin-softwar (no description available)
un webmin-spamass (no description available)
un webmin-squid (no description available)
un webmin-sshd (no description available)
un webmin-status (no description available)
un webmin-stunnel (no description available)
un webmin-updown (no description available)
un webmin-usermin (no description available)
un webmin-vgetty (no description available)
ii webmin-virtual 3.90.gpl-2 Webmin module for 'Virtualmin Virtual Server
ii webmin-virtual 2.4 Webmin theme ‘Virtualmin Mobile Theme’
ii webmin-virtual 8.2 Webmin theme ‘Virtualmin Framed Theme’
ii webmin-virtual 4.7 Webmin module for ‘AWstats Reporting’
ii webmin-virtual 3.5 Webmin module for ‘Virtualmin DAV’
ii webmin-virtual 2.5 Webmin module for ‘Virtualmin Analytics’
ii webmin-virtual 2.5 Webmin module for 'Virtualmin Protected Dire
ii webmin-virtual 2.3 Webmin module for 'Virtualmin Bootup Actions
ii webmin-virtual 6.1 Webmin module for 'Virtualmin Mailman Mailin
ii webmin-virtual 1.2 Webmin module for ‘Nginx Webserver’
ii webmin-virtual 1.2 Webmin module for ‘Nginx SSL Webserver’
ii webmin-virtual 1.9 Webmin module for 'Virtualmin Oracle Databas
ii webmin-virtual 2.0 Webmin module for 'Virtualmin Domain Registr
ii webmin-virtual 1.3 Webmin module for 'Virtualmin Mailbox Signup
ii webmin-virtual 1.6 Webmin module for 'Virtualmin Slave DNS Plug
ii webmin-virtual 1.5 Webmin module for 'Virtualmin SQLlite Databa
ii webmin-virtual 4.9 Webmin module for 'Virtualmin Subversion Rep
un webmin-webaliz (no description available)
un webmin-wuftpd (no description available)
un webmin-wvdial (no description available)
un webmin-xinetd (no description available)

Okay, I have a better command :slight_smile:

How about this one, it’ll show the full package names:

dpkg --get-selections | grep webmin

Now, before we go any further… this isn’t something we’d normally suggest, so you’d want to make absolute certain that your /usr/share/webmin directory is really missing.

If it is, than what I’m going to suggest is probably the only way to fix it :slight_smile:

And then, this is what I’d suggest –

First, make a backup of your Webmin/Virtualmin directory… you can do that with: cp -ra /etc/webmin /etc/webmin.orig

Then, you’ll need to reinstall all the Webmin packages you saw using that dpkg command I mentioned. You can do that with: apt-get install --reinstall webmin webmin-virtual-server [insert all the other package names here]

And then lastly, try restarting Webmin: /etc/init.d/webmin restart

You wouldn’t want to do the above unless your /usr/share/webmin dir is missing… but if is indeed missing, there isn’t really a better way.

-Eric

Dearest Eric,
thank you for these precious informations.

Just for you to see, here is the content of my /usr
As you can see, there’s even no more share folder at all…

usr# ls -l

total 84
drwxr-xr-x 2 root root 20480 2012-03-08 11:26 bin
drwxr-xr-x 2 root root 4096 2010-11-13 13:12 games
drwxr-xr-x 31 root root 16384 2012-01-31 23:30 include
drwxr-xr-x 52 root root 20480 2012-03-08 22:12 lib
drwxr-xr-x 3 root root 4096 2010-12-30 17:12 lib32
lrwxrwxrwx 1 root root 3 2012-01-12 13:07 lib64 -> lib
drwxrwsr-x 11 root staff 4096 2012-01-12 13:11 local
drwxr-xr-x 2 root root 12288 2012-03-08 11:26 sbin
drwxr-xr-x 2 root root 4096 2010-11-13 13:12 src

now, for you to see, the output of dpkg --get-selections | grep webmin

webmin install
webmin-security-updates install
webmin-virtual-server install
webmin-virtual-server-mobile install
webmin-virtual-server-theme install
webmin-virtualmin-awstats install
webmin-virtualmin-dav install
webmin-virtualmin-google-analytics install
webmin-virtualmin-htpasswd install
webmin-virtualmin-init install
webmin-virtualmin-mailman install
webmin-virtualmin-nginx install
webmin-virtualmin-nginx-ssl install
webmin-virtualmin-oracle install
webmin-virtualmin-registrar install
webmin-virtualmin-signup install
webmin-virtualmin-slavedns install
webmin-virtualmin-sqlite install
webmin-virtualmin-svn install

I will try all your commands tonight, but before I want to make sure that the reinstallation will not empty
the home folder where lies all of my Virtualmin accounts, with mails, etc… Do you know anything about that ?

I will then backup the /etc/webmin (if that is all I need to backup…).

Thank you again, your help is very much appreciated. I like very much the webmin/virtualmin duo,
and I am very sorry of what happened and don’t understand why.

Sorry for my english, I am french… ;-/

Howdy,

Yeah, I agree with Locutus… you have a fairly significant problem there.

I’m hoping you have a set of backups for all of your Virtual Servers.

If that’s the case, my recommendation would be to reinstall your Linux distro, install Virtualmin on that, and then import your backups.

-Eric

Uh-oh… France, you have a problem. :slight_smile: If your whole /usr/share folder is gone, something is REALLY broken there. Usually, /usr/share contains much much more than just Webmin (see code below, from a healthy Ubuntu 10.04 system).

My immediate suggestion would be to reinstall the system and restore a backup of your hosting stuff. Repairing a deleted /usr/share folder will probably be much more hassle than that.

adduser byobu dict i18n keyutils mime popularity-contest readline terminfo apache2 ca-certificates doc icons landscape misc postfix recovery-mode ubuntu-serverguide applications calendar doc-base ifupdown language-selector mysql postgresql ri ufw apport clamav-testfiles dovecot images language-support mysql-common postgresql-common rsyslog unattended-upgrades apps command-not-found dpkg info libparse-debianchangelog-perl nano postgrey samba update-manager apt common-licenses e2fsprogs initramfs-tools lintian os-prober ppp screen update-notifier aptitude computerjanitor emacs initrd-tools locale pam proftpd sgml usermin avahi consolefonts file initscripts locale-langpack pam-configs pycentral-data sgml-base vim awstats console-setup fonts insserv locales perl pyshared smart w3m base-files consoletrans GeoIP installation-report mailman perl5 pyshared-data spamassassin webmin base-passwd dbus-1 gnupg iptables man php python ssl-cert X11 bind9 debconf groff java man-db php5 python-apt sysv-rc xml binfmts debhelper grub javascript mc pixmaps python-support tabset xml-core bug debianutils hal keyrings menu pkgconfig quota tasksel zoneinfo

Also, when or before you do the reinstall, it’d of course be quite interesting to know HOW your /usr/share folder got deleted in the first place, so it won’t happen again. I highly doubt any package deinstallation/update would cause that.

You might want to skim through the ~/.bash_history file, which records all commands you enter. At least that’s the naming and purpose on Ubuntu. Hopefully Debian uses the same, since Ubuntu is based on it. Also, using the last command, you can check who logged in when and from where.

MERCI to you two, Eric and Locutus, your help is greatly appreciated !!!

I will certainly re-install everything.

Unfortunately I don’t have any backup… Naughty frog of me… :-/
Is it possible to get the data from virtual servers simply by saving the folder "as is ", or I am just dreaming ?

I don’t know if Virtualmin and Webmin have enough security features provided within the install, or should I install a clean Debian first, than some more stuff, than W/V ?

Thank you again for your kind replies.

Fred

Easiest would have been, and which is highly recommended for the future, if you had backups created using Virtualmin’s backup function, then the restore is a matter of a few mouseclicks one Virtualmin is reinstalled.

Without that, what you should do at the least is make a copy of the home directories, that’s where Virtualmin-based hosting stores its essential stuff. That, plus the MySQL databases which are usually located in /var/lib/mysql if you did not change that directory. Or if that still works, you might make SQL dumps of the databases, that’s cleaner than copying away the binary DB files.

After Virtualmin re-installation, you then need to manually create all virtual servers again, and can use the home directory copy to populate them again. You need to know what goes where then though. Web contents are usually under “public_html”, and emails under “Maildir”.

About your second question about the installation order, I don’t really get what you mean there. Can you re-phrase that?

Eric will surely have some more input on this too. :slight_smile:

Are you by chance able to setup another server “beside” this one, allowing you to transfer your data from your current one to your new one?

If you can do that – what you could do is install Debian on your new server, the run Virtualmin’s install.sh, then start copying the rest of your data over like Locutus mentioned… /home, your databases in /var/lib/mysql, your config in /etc – it’d take longer, and may require some tweaking, but that may be the simplest way to do it.

-Eric