/ if (open(PIPE,"locale |")) { my @lines = <PIPE>; close(PIPE); print "Checking root bash language"; my ($is_english,$is_posix); foreach my $line (@lines) { if ($line =~ /^LANG=en/) { $is_english = 1; print "... OK\n"; last; } elsif ($line =~ /^LANG=POSIX/) { $is_posix = 1; } if ($is_posix) { if ($line =~ /^LC_CTYPE=en/) { $is_english = 1; print "... OK\n"; last; } } } if (!$is_english) { print "\n**** WARNING: You seem to have a non-English root bash. This can cause incorrect error messages.\n". " It is recommended that you set your bash language to English by setting LANG=en_US.UTF-8 in /root/.bashrc\n"; } } my $osmsg = "\n**** WARNING: You seem to have a non-English operating system.\n"; if ('' eq 'sles9' || '' eq 'sles10' || '' eq 'sles11' || '' eq 'sles12' || '' eq 'suse11.1' || '' eq 'suse11.2' || '' eq 'suse11.3' || '' eq 'suse11.4' || '' eq 'suse12.1' || '' eq 'suse12.2' || '' eq 'suse12.3' || '' eq 'suse13.1' || '' eq 'suse13.2') { if (open(PIPE,"cat /etc/sysconfig/language |grep '^RC_LANG' |")) { print "Checking OS language"; if (<PIPE> =~ /^RC_LANG="en/) { print "... OK\n"; } else { print $osmsg. "It is recommended that you set LANG=\"en_US.UTF-8\" in /etc/sysconfig/language\n"; } close(PIPE); } } elsif ('' eq 'debian5' || '' eq 'debian6' || '' eq 'ubuntu6' || '' eq 'ubuntu8' || '' eq 'ubuntu10' || '' eq 'ubuntu12' || '' eq 'ubuntu14' || '' eq 'ubuntu16' || '' eq 'ubuntu18' || '' eq 'ubuntu20') { if (open(PIPE,"cat /etc/default/locale |grep '^LANG' |")) { print "Checking OS language"; if (<PIPE> =~ /^LANG="en/) { print "... OK\n"; } else { print $osmsg. "It is recommended that you set LANG=\"en_US.UTF-8\" in /etc/default/locale\n"; } close(PIPE); } } elsif ('' eq 'fedora18' || '' eq 'fedora19' || '' eq 'fedora20' || '' eq 'fedora21' || '' eq 'fedora22' || '' eq 'fedora23' || '' eq 'fedora24' || '' eq 'fedora25' || '' eq 'fedora26' || '' eq 'fedora27' || '' eq 'fedora28' || '' eq 'fedora29' || '' eq 'fedora30' || '' eq 'fedora31' || '' eq 'rhes7' || '' eq 'centos7' || '' eq 'scientific7' || '' eq 'rhes8' || '' eq 'centos8' || '' eq 'oracle7') || '' eq 'oracle8') { if (open(PIPE,"cat /etc/locale.conf |grep '^LANG' |")) { print "Checking OS language"; if (<PIPE> =~ /^LANG="en/) { print "... OK\n"; } else { print $osmsg. "It is recommended that you set LANG=\"en_US.UTF-8\" in /etc/locale.conf\n"; } close(PIPE); } } elsif ('' eq 'sles15') { if (open(PIPE,"cat /etc/locale.conf |grep '^LANG' |")) { print "Checking OS language"; if (<PIPE> =~ /^LANG=en/) { print "... OK\n"; } else { print $osmsg. "It is recommended that you set LANG=en_US.UTF-8 in /etc/locale.conf\n"; } close(PIPE); } } else { if (open(PIPE,"cat /etc/sysconfig/i18n |grep '^LANG' |")) { print "Checking OS language"; if (<PIPE> =~ /^LANG="en/) { print "... OK\n"; } else { print $osmsg. "It is recommended that you set LANG=\"en_US.UTF-8\" in /etc/sysconfig/i18n.\n"; } close(PIPE); } }