install.sh EA4.0 and CentOS 5 support

Hi all,
<p>
I’ve just rolled out version EA4.0 of the install.sh automated install script, and opened up the repositories for CentOS 5 on i386 and x86_64 architecture systems. This release also fixes a few bugs in install.sh for various platforms, but nothing beyond CentOS 5 support counts as major.
<p>
Known issues (which will be fixed tomorrow, but I’m not going to delay it any further, and I need sleep!):
<p>
[list]

[]PHP4 packages are not installed by default, and when they are installed, you’ll need to manually edit the /etc/httpd/conf.d/php4.conf file to comment out all but the DirectoryIndex line. mod_php4 and mod_php5 cannot coexist in a single Apache. You must disable one of them. Release -2 will correct this by default.[/]

[]RHEL 5 is probably not going to work right away. It has not be tested, at all. I will begin testing tomorrow. I do not expect major problems, but the two platforms are different, and seem to grow further apart with each new release. If you try it, and it fails, don’t be surprised. It’ll be tested and working soon.[/]

[/list]

<p>
As always, file a bug if it’s broken, and let us know how it goes in the forums.
<p>
One more note regarding new versions of install.sh: Once you have installed your Virtualmin system, you never need to run install.sh again (and, in fact, you should never do so). I mention this, as it may seem like a new version will do something fun, but it won’t. It’ll only break things on an existing system. install.sh is for installation, and nothing else! :wink:

Thanks Joe… will wait for your "fixed" release.

Hi Joe,

Is the PHP issue fixed yet in install.sh? Thanks.

You will make another announcement when it’s ready, won’t you?

Any news yet?

Sorry to be a bit pushy. I know it’s Memorial Day long weekend at your part of the world. But it’s been more than 1 year since I bought Virtualmin Pro and I haven’t been able to launch my production server with it yet.

I have been holding back the launch because I wasn’t confident enough to launch our server with VMpro. You’d understand that VMpro’s reliability is paramount for any server administrator. Once the server is installed at the data centre and the websites go live, rectification of server problems becomes a very expensive exercise (financially, time-wise and in terms of customer relations repercussion).

I think my confidence in VMpro’s operational reliability is reaching the required level. The final step is to set up VMpro on a fresh CentOS 5.0 install and test it for the critical functions, and off we go. I hope we get to do that sooner than later.

Howdy A,

Don’t wait. The fix is easy, and not at all dangerous or risky.

Just install the OS. Install the php4 packages (just as you’ve done in the past with CentOS 4), and comment out the PHP 4 directives in /etc/httpd/conf.d/php4.conf. It’s actually the same steps as covered in this FAQ:

http://www.virtualmin.com/faq/one-faq?faq_id=1511#16765

No need to be nervous about the install. It’s not an actual problem with the binaries, just a configuration mishap on my part during packaging.

> The fix is easy, and not at all dangerous or risky.

Hehe… these things are easy for you… but not quite for me as I am always afraid of breaking something… which will take me 10 times the time you’d take to fix.

A quick question… if I install now and you release a installer.sh with PHP compiled with mcrypt later, do I have to reinstall the O/S and VMpro? If not, what is nvolved.

I really need to have phpmyadmin working efficiently as we are migrating huge databases across to the new server and will continue to use phpmyadmin to do a lot of mysql work after that. We are just so used to phpmyadmin.

Oh, you mean the mcrypt thing! That one doesn’t require any configuration at all. You’ll just upgrade to the new PHP packages when they become available in the repository (really soon…probably tomorrow for CentOS), and install php-mcrypt. Definitely not a big deal.

Oh, and I definitely wanted to address this one:

A quick question… if I install now and you release a installer.sh with PHP compiled with mcrypt later, do I have to reinstall the O/S and VMpro? If not, what is nvolved.

Definitely not. Nothing we do in the install.sh will be unavailable to older installs. And, in the vast majority of cases, the upgrades will silently appear on your box the next time you update virtualmin-base. All of the hard stuff happens in that package–not in install.sh.

install.sh gets a lot more credit than it deserves, for doing things. It’s the stupidest piece of our product (as anyone who’s run into trouble with it can attest!), and does almost nothing.

Here’s what install.sh does, in English:

Is this system sane and am I running as root?

What OS is this system?

Setup software repositories for this OS.

Download any necessary packages to use those repositories.

Install OS-provided dependencies and cleanup any extraneous packages that might be installed.

Install virtualmin-base.

Done.

Note that no configuration is listed above…it’s all tucked away in virtualmin-base. Likewise for our own internally developed software…everything gets pulled in based on what virtualmin-base says it needs…so we can add packages later without you having to explicitly install them (like the security updates module–after testing it out on a few of our braver users systems, we made it a dependency for virtualmin-base…next time that package updated, everybody got security-updates).

Of course, configuration can only safely happen once–so if we do change the default configuration it won’t get updated on existing systems, but those are changing quite slowly now, and when something dramatic happens we’ll usually handle it with some special case code. (Last time this happened it was the switch to procmail-wrapper.)

> Oh, you mean the mcrypt thing!

Actually I mean both - php config AND php compiled with mcrypt.

> upgrade to the new PHP packages when they become available in the repository (really soon…probably tomorrow for CentOS), and install php-mcrypt.

While I have your attention… could I ask what is the specific command I need to run to "upgrade to the new PHP packages" and "install php-mcrypt"?

Thanks.

I am downloading and running the install.sh now… fingers crossed.

I’m thrilled to report that the installation of VMpro on CentOS 5.0 Final went without a single hitch.

Everything seems to be in place. No error. Not too much configuration needed to get things going.

Installation failed for me. Something about clamav dependencies.

INFO - Installing Virtualmin and all related packages now using the command:
INFO - yum -y -d 2 install virtualmin-base
INFO - …in progress, please wait… -http://mirror.cpsc.ucalgary.ca/mirror/dag/redhat/el5/en/i386/dag/RPMS/scponly-4.6-4.el5.rf.i386.rpm: [[Errno 14]] HTTP Error 404: Not Found
Trying other mirror. |Error: Missing Dependency: clamav = 0.90.2-1.el5.rf is needed by package clamd …in progress, please wait… failed. Error (if any): 0

Displaying the last 15 lines of the install.log to help troubleshoot this problem:
–> Processing Dependency: fedora-usermgmt-core = 0.9-1.el5 for package: fedora-usermgmt
–> Processing Dependency: clamav = 0.90.2-1.el5.rf for package: clamd
–> Processing Dependency: setup(fedora-usermgmt) for package: fedora-usermgmt
–> Processing Dependency: instance(fedora-usermgmt) for package: fedora-usermgmt
–> Restarting Dependency Resolution with new changes.
–> Populating transaction set with selected packages. Please wait.
—> Downloading header for fedora-usermgmt-core to pack into transaction set.
—> Package fedora-usermgmt-core.noarch 0:0.9-1.el5 set to be updated
—> Downloading header for fedora-usermgmt-setup to pack into transaction set.
—> Package fedora-usermgmt-setup.noarch 0:0.8-1 set to be updated
—> Downloading header for fedora-usermgmt-shadow-utils to pack into transaction set.
—> Package fedora-usermgmt-shadow-utils.noarch 0:0.9-1.el5 set to be updated
–> Running transaction check
–> Processing Dependency: clamav = 0.90.2-1.el5.rf for package: clamd
–> Finished Dependency Resolution

FATAL - Fatal Error Occurred: Installation failed: 1
FATAL - Cannot continue installation.
FATAL - Attempting to remove virtualmin repository configuration, so the installation can be
FATAL - re-attempted after any problems have been resolved.
warning: /etc/yum.repos.d/virtualmin.repo saved as /etc/yum.repos.d/virtualmin.repo.rpmsave
FATAL - Removing temporary directory and files.
FATAL - If you are unsure of what went wrong, you may wish to review the log
FATAL - in /root/virtualmin-install.log.

And the other thing that I cannot understand is why installation process tries to use RHEL mirrors and sets yum to use RHEL repos when this is Centos 5. Maybe there is some reason.

OK by disabling priorities yum plugin installation went through but some errors came up. I don’t know what to think of these?!? Though system still seems to be working ok but I haven’t tested it very well yet.

INFO - Installing Virtualmin and all related packages now using the command:
INFO - yum -y -d 2 install virtualmin-base
INFO - …in progress, please wait… Error: Failed to regenerate table /etc/postfix/virtual: postmap: fatal: config variable inet_interfaces: host not found: localhost

Error

Failed to regenerate table /etc/postfix/virtual: postmap: fatal: config variable inet_interfaces: host not found: localhost

----- INFO - …in progress, please wait… Succeeded.
INFO - Installation of virtualmin-base completed.
INFO - If you are not regularly updating your system nightly using yum or up2date
INFO - we strongly recommend you update now, using the following commands:
INFO - Fedora/CentOS: yum update
INFO - RHEL: up2date -u
INFO - Checking for updates to Virtualmin-related packages…
INFO - …in progress, please wait… You need to give some command …in progress, please wait… failed. Error (if any): 0

Displaying the last 15 lines of the install.log to help troubleshoot this problem:
-C run entirely from cache, don’t update cache
-c [[config file]] config file location
-R [[minutes]] maximum command wait time
-d [[debug level]] debugging output level
-e [[error level]] error output level
-y answer yes for all questions
–version show Yum version and exit
–installroot=[[path]] set install root
–enablerepo=[[repo]] enable one or more repositories (wildcards allowed)
–disablerepo=[[repo]] disable one or more repositories (wildcards allowed)
-x [[package]], --exclude=[[package]]
exclude package(s) by name or glob
–obsoletes enable obsoletes processing during updates
–noplugins disable Yum plugins
None
INFO - There may have been a problem updating some packages.

For some reason I was missing localhost in /etc/hosts file. That fixed the postfix issue. Postfix just couldn’t find ip for localhost.

Then I did
rpm -e virtualmin-base
yum install virtualmin-base

and only one thing that was strange.

Enabling quotas on filesystem for /home
convertquota: Mountpoint (or device) / not found.

I’m using RAID 1. Maybe that’s why it printed that. Everything else went fine and also quotas come up in virtualmin just fine. Have to still do some testing but this was quite painless.

Hey Matti,

You’ve got RPMforge enabled. It’s gotta go, if you want Virtualmin to be able to install. Their packages are not compatible with Fedora Extras style packages (like we provide), and so will conflict in dramatic ways with almost all of our packages.

You’ll then need to uninstall all of the .rf packages that are installed, because you’ll probably have their PHP packages (which aren’t compatible with our PHP4+PHP5 stuff), httpd (which aren’t built with suexec docroot /home), and possibly others.

As always, the automated installation likes to see a fresh OS. We’re installing a couple dozen packages on CentOS/RHEL, and they’re in areas that RPMforge is incompatible with. If you need some packages out of RPMforge, you’ll need to install them after the Virtualmin install has completed. I don’t particularly recommend it, as you’ll run into compatibility issues down the road, but Virtualmin will probably be graceful about it. (All except Apache and the various PHP packages…those have to be ours.)

OK I disabled RPMForge and dag repos. Though only these packages are installed from RPMForge. I’ll remove these if you think there’s gonna be problems down the road. Thanks for the heads up.

denyhosts.noarch 2.6-1.el5.rf installed
fwlogwatch.i386 1.1-1.el5.rf installed
rpmforge-release.i386 0.3.6-1.el5.rf installed
tcping.i386 1.3.4-1.2.el5.rf installed
tcptraceroute.i386 1.5-0.beta7.el5.rf installed
vnstat.i386 1.4-3.2.el5.rf installed

But is it right that my virtualmin.repo file says

[[virtualmin]]
name=Red Hat Enterprise $releasever - $basearch - Virtualmin
baseurl=http://XXXXXXX:XXXXXXXX@software.virtualmin.com/rhel/$releasever/$basearch/

And this is CentOS 5. Just wondering because software.virtualmin.com also has centos.

Just did a CentOS 5 clean install. No updates from yum or anything. But I get an error while installing.

Please advice.


  • Welcome to the Virtualmin Professional installer, version EA4.0 *

WARNING: This is an Early Adopter release.

The installation is quite stable and functional when run on a freshly
installed supported Operating System, but upgrades from Virtualmin GPL
systems, or systems that already have Apache VirtualHost directives or
mail users, will very likely run into numerous problems. Please read
the Virtualmin and Early Adopter FAQs before proceeding if your system
is not a freshly installed and supported OS.

The systems currently supported by our install.sh are:
Fedora Core 3-6 on i386 and x86_64
CentOS and RHEL 3-5 on i386 and x86_64
OpenSUSE 10.0 on i586 and x86_64
Mandriva 2007 on i386
Debian 3.1 and 4.0 on i386 and amd64
Ubuntu 6.06 and 6.06.1 on i386 and amd64

If your OS is not listed above, this script will fail (and attempting
to run it on an unsupported OS is not recommended, or…supported).

Continue? (y/n) y
Checking for curl or wget…found /usr/bin/curl -s -O
Checking for perl…found /usr/bin/perl
Loading log4sh logging library…
INFO - Started installation log in virtualmin-install.log
INFO - Checking for fully qualified hostname…
INFO - Hostname OK: fully qualified as sekhmet.valhalla.ots.local
INFO - Installing serial number and license key into /etc/virtualmin-license
INFO - Loading OS selection library…
INFO - Download of http://software.virtualmin.com/lib/oschooser.pl Succeeded.
INFO - Loading OS list…
INFO - Download of http://software.virtualmin.com/lib/os_list.txt Succeeded.
INFO - Operating system name: CentOS Linux
INFO - Operating system version: 5
INFO - Installing virtualmin-release package for CentOS Linux 5…
INFO - Disabling SELinux during installation…
error: /usr/share/rhn/RPM-GPG-KEY: import read failed(-1).
INFO - Download of http://XXXXX:XXXXXXXXXX@software.virtualmin.com/rhel/5/i386/v irtualmin-release-latest.noarch.rpm Succeeded.
warning: virtualmin-release-latest.noarch.rpm: Header V3 DSA signature: NOKEY, k ey ID a0bdbcf9
Running updatedb so locate works…this will take a little while.
Attempting to import various system RPM-GPG-KEY files…Errors may occur,
if you’ve already imported them. It is safe to ignore these errors.
INFO - Succeeded.
INFO - Installing dependencies using command: /usr/bin/yum -y -d 2 install bind bind-chroot bind-utils caching-nameserver httpd postfix bind spamassassin procma il perl-DBD-Pg perl-DBD-MySQL quota iptables openssl python mailman subversion r uby rdoc ri mysql mysql-server postgresql postgresql-server rh-postgresql rh-pos tgresql-server logrotate webalizer php php-domxl php-gd php-imap php-mysql php-o dbc php-pear php-pgsql php-snmp php-xmlrpc php-mbstring mod_perl mod_python cyru s-sasl dovecot spamassassin mod_dav_svn cyrus-sasl-gssapi mod_ssl ruby rubygems perl-XML-Simple perl-Crypt-SSLeay
INFO - …in progress, please wait… | warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID e8562897 - Importing GPG key 0xE8562897 “CentOS-5 Key (CentOS 5 Official Signing Key)[cent os-5-key@centos.org>” from http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5I NFO - …in progress, please wait… Succeeded.
INFO - Succeeded.
INFO - Installing Virtualmin and all related packages now using the command:
INFO - yum -y -d 2 install virtualmin-base
INFO - …in progress, please wait… Enabling quotas on filesystem for /home I NFO - …in progress, please wait… Succeeded.
INFO - Installation of virtualmin-base completed.
INFO - If you are not regularly updating your system nightly using yum or up2dat e
INFO - we strongly recommend you update now, using the following commands:
INFO - Fedora/CentOS: yum update
INFO - RHEL: up2date -u
INFO - Checking for updates to Virtualmin-related packages…
INFO - …in progress, please wait… | You need to give some command . …in progress, please wait… failed. Error (if any): 0

Displaying the last 15 lines of the install.log to help troubleshoot this proble m:
-C run entirely from cache, don’t update cache
-c [[config file]] config file location
-R [[minutes]] maximum command wait time
-d [[debug level]] debugging output level
-e [[error level]] error output level
-y answer yes for all questions
–version show Yum version and exit
–installroot=[[path]] set install root
–enablerepo=[[repo]] enable one or more repositories (wildcards allowed)
–disablerepo=[[repo]] disable one or more repositories (wildcards allowed)
-x [[package]], --exclude=[[package]]
exclude package(s) by name or glob
–obsoletes enable obsoletes processing during updates
–noplugins disable Yum plugins
None
INFO - There may have been a problem updating some packages.

Hi Seb,

This is the sequence I did it. No problem for me.

  1. Install CentOS 5.0
  2. Yum Update
  3. Install Virtualmin Pro

Hi A H

My install went as far as everything is working as it’s supposed to do, but it’s the yum update error at the bottom I don’t understand why I get?

I’ve tried installing multiple times in vmware and on physical hardware with no difference.

When installing CentOS I deselect pretty much everything, so I have a completly clean OS. Do you do a standard with gnome and things like that?

Best Regards
Sebastian