version 1.5, 2003/11/24 16:56:47
|
version 1.16, 2009/07/05 23:58:38
|
Line 42 if (-e '/etc/redhat-release') {
|
Line 42 if (-e '/etc/redhat-release') {
|
} elsif ($version=~/^9/) { |
} elsif ($version=~/^9/) { |
$dist='redhat9'; |
$dist='redhat9'; |
} |
} |
} elsif ($versionstring =~ /Fedora Core release ([\d\.]+) /) { |
} elsif ($versionstring =~ /Fedora( Core)? release ([\d\.]+) /) { |
$dist = 'fedora'.$1; |
my $version=$2; |
|
if ($version - int($version) > .9) { |
|
$dist = 'fedora'.(int($version)+1); |
|
} else { |
|
$dist = 'fedora'.int($version); |
|
} |
|
} elsif ($versionstring =~ /Red Hat Enterprise Linux [AE]S release ([\d\.]+) /) { |
|
$dist = 'rhes'.$1; |
|
} elsif ($versionstring =~ /Red Hat Enterprise Linux Server release (\d+)/) { |
|
$dist = 'rhes'.$1; |
|
} elsif ($versionstring =~ /CentOS release (\d+)/) { |
|
$dist = 'centos'.$1; |
|
} elsif ($versionstring =~ /Scientific Linux SL release ([\d\.]+) /) { |
|
$dist = 'scientific'.$1; |
} else { |
} else { |
warn('Unable to interpret /etc/redhat-release '. |
warn('Unable to interpret /etc/redhat-release '. |
'to determine system type'); |
'to determine system type'); |
} |
} |
|
} elsif (-e '/etc/SuSE-release') { |
|
open(IN,'</etc/SuSE-release'); |
|
my $versionstring=<IN>; |
|
chomp($versionstring); |
|
close(IN); |
|
if ($versionstring =~ /^SUSE LINUX Enterprise Server ([\d\.]+) /i) { |
|
$dist='sles'.$1; |
|
} elsif ($versionstring =~ /^SuSE Linux ([\d\.]+) /i) { |
|
$dist = 'suse'.$1; |
|
} elsif ($versionstring =~ /^openSUSE ([\d\.]+) /i) { |
|
$dist = 'suse'.$1; |
|
} else { |
|
warn('Unable to interpret /etc/SuSE-release '. |
|
'to determine system type'); |
|
} |
|
} elsif (-e '/etc/issue') { |
|
open(IN,'</etc/issue'); |
|
my $versionstring=<IN>; |
|
chomp($versionstring); |
|
close(IN); |
|
if ($versionstring =~ /^Ubuntu (\d+)\.\d+/i) { |
|
$dist = 'ubuntu'.$1; |
|
} elsif ($versionstring =~ /^Debian\s+GNU\/Linux\s+(\d+)\.\d+/i) { |
|
$dist = 'debian'.$1; |
|
} elsif (-e '/etc/debian_version') { |
|
open(IN,'</etc/debian_version'); |
|
my $version=<IN>; |
|
chomp($version); |
|
close(IN); |
|
if ($version =~ /^(\d+)\.\d+\.?\d*/) { |
|
$dist='debian'.$1; |
|
} else { |
|
warn('Unable to interpret /etc/debian_version '. |
|
'to determine system type'); |
|
} |
|
} else { |
|
warn('Unable to interpret /etc/issue '. |
|
'to determine system type'); |
|
} |
} elsif (-e '/etc/debian_version') { |
} elsif (-e '/etc/debian_version') { |
open(IN,'</etc/debian_version'); |
open(IN,'</etc/debian_version'); |
my $version=<IN>; |
my $version=<IN>; |
chomp($version); |
chomp($version); |
close(IN); |
close(IN); |
if ($version eq '2.2') { |
if ($version =~ /^(\d+)\.\d+\.?\d*/) { |
$dist='debian2.2'; |
$dist='debian'.$1; |
|
} else { |
|
warn('Unable to interpret /etc/debian_version '. |
|
'to determine system type'); |
} |
} |
} else { |
} else { |
warn('Unknown installation: expecting a debian or redhat system'); |
warn('Unknown installation: expecting a debian, suse, or redhat system'); |
} |
} |
print $dist; |
print $dist; |