Hi. I am attempting to install Virtualmin on a RHEL 4 box. The installation script fails when it tries to access the repository with an HTTP 404 error. It looks like the script cannot determine my OS version number and substitutes NULL as the directory name:
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://software.virtualmin.com/rhel/Null/i386/repodata/repomd.xml: [Errno 4] IOError: HTTP Error 404: Not Found
Trying other mirror.
Cannot open/read repomd.xml file for repository: virtualmin
failure: repodata/repomd.xml from virtualmin: [Errno 256] No more mirrors to try.
Error: failure: repodata/repomd.xml from virtualmin: [Errno 256] No more mirrors to try.
Is this a bug in the installation script, or is there some way that I have to manually set my OS version?
Yeah, that looks like a bug. Something must have changed in the Red Hat /etc/redhat-release file format that we’re not handling correctly. Could you post the contents of /etc/redhat-release so I can update the detection regex?
You can probably workaround it by finding this line in install.sh:
logger_info "Operating system version: $real_os_version"
And adding this right after it:
Still no change I’m afraid Joe. I’ve noticed that it seems to report the version as ‘4ES’ and manages to download virtualmin-release-latest.rpm shortly before:
INFO - 2008-03-06 23:55:35 - Operating system version: 4ES
INFO - 2008-03-06 23:55:35 - Installing virtualmin-release package for Redhat Enterprise Linux 4ES…
INFO - 2008-03-06 23:55:35 - Disabling SELinux during installation…
INFO - 2008-03-06 23:55:36 - setenforce 0 failed: 1
INFO - 2008-03-06 23:55:41 - Download of http://:@software.virtualmin.com/rhel/4/i386/virtualmin-release-latest.noarch.rpm Succeeded.
INFO - 2008-03-06 23:55:48 - Succeeded.
The contents of my /etc/redhat-release file:
Red Hat Enterprise Linux ES release 4 (Nahant Update 6)
Thanks for posting the release. I’ll try to get os_list.txt fixed in the next hour or so…in the meantime, I’d be happy to drop in on your box and figure out a working workaround.
OK, so this is really quite strange. install.sh is actually detecting it correctly on your system…but yum is not setting the $releasever variable when running. This is broken (or at least mis-configured) behavior…but I’m not sure what the solution is.
You have some sort of custom yum version there “yum-2.4.2-2migl”, so it’s almost certainly the source of trouble.
I’ve manually set it to use the correct repo in /etc/yum.repos.d/virtualmin.repo and completed the installation.
I don’t think there’s anything I can really do to accommodate a broken yum configuration in install.sh (or virtualmin-release, which I think is where a solution would have to go).