![]() ![]()
|
MRG Interactive DevelopmentsMesoscale Research Group, McGill/SUNY |
The lm_sensors package provides highly detailed sensor information
in a text format, but can be a little tricky to use, especially if you're working on an older kernel. If
you're on Linux kernel 2.4x or ealier, you will need to check the
lm_sensors home page before going any further with the
installation. If you're running a newer kernel, then you just have to be sure that the lm_sensors package
is installed by running rpm -qa | grep lm_sensors. Alternatively, you could update or install
the package using yum -install lm_sensors or the up2date interface.
Another popular hardware monitoring package is
GKrellM - it looks really
good, but I don't have any experience with it.
More information about installing lm_sensors may be available
at www.fedora-linux.org.
Once the lm_sensors package
is installed, you'll need to configure the sensor modules by running /usr/sbin/sensors-detect.
The defaults seem pretty good on the configuration, so unless you have any specific reason to use a non-default
entry, just keep hitting the return key until the configuration is complete. At this point, you'll need to
update your initialization scripts using a command that looks something like
cp /usr/share/doc/lm_sensors-2.9.1/lm_sensors.init /etc/rc.d/init.d/lm_sensors
(obviously, if you've installed a more recent version than 2.9.1, you'll need to change the path for
lm_sensors.init). Then run the daemon initialization script using
/etc/rc.d/init.d/lm_sensors start. Hopefully everything goes well and you can now use the
sensors command to get a full listing from the sensors on your machine.
Apparently some of the older initialization scripts (2.8.x) pointed to the wrong sensors executable
location, so a No such file or directory error was produced when the initialization script
was run. To fix this, locate the sensors executable (it should be in
/usr/local/bin - use find / -name sensors -print if it isn't there)
and update the PSENSORS=/usr/local/bin/sensors line in the
/etc/rc.d/init.d/lm_sensors initialization file. Note also that some Compaq
machines refuse to play nicely with lm_sensors and are unlikely to be supported by the project (although
some people seem to have had some luck lately on this one). There
is a cpqhealth
alternative for some kernels written by HP (you can also try the
Linux for Compaq mailing list archives.
The Comprehensive Perl Archive Network (CPAN) is a primary source of perl modules
and can be accessed using the very handy CPAN module to invoke an installer shell using
perl -MCPAN -e shell. This shell makes the installation, management and
updating of perl modules virtually painless. However, there have been a number of reports of startup
errors in the shell that look something like:
Undefined value assigned to typeglob at (eval 17) line 18,
Warning [/etc/inputrc line 11]:
Invalid variable `mark-symlinked-directories'
Generally, these reports are non-fatal. It seems that sometimes, though, it is connected with problems with installing subsequent modules.
The issue is that readline supports the mark-symlinked-directories argument, but the perl module
Term:ReadLine does not. The solution is to add skeleton support for this option (which is present by default
in the FC4 /etc/inputrc readline settings file). The module file readline.pm needs
to be modified. By default, this file is installed in /usr/lib/perl5/5.8.6/Term/ReadLine
(where 5.8.6 refers to the perl core version number and should be modified to match the output of
perl -v). If you can't find the readline.pm module,
run perl in verbose mode with perl -V and check in the directories listed in the
@INC output.
Once you locate the readline.pm module, the code should be modified near line
460 to look like:
## not yet supported... always off
for ('ConvertMeta', 'MetaFlag', 'MarkModifiedLines', 'PreferVisibleBell',
'BlinkMatchingParen', 'VisibleStats', 'ShowAllIfAmbiguous',
'PrintCompletionsHorizontally', 'MarkDirectories', 'ExpandTilde',
'EnableKeypad', 'DisableCompletion', 'CompletionIgnoreCase',
'MarkSymlinkedDirectories') {
${"var_$_"} = 0;
${"var_$_"}{'Off'} = 0;
${"var_$_"}{'On'} = 1;
Here, the 'MarkSymlinkedDirectories' list item has been appended to the end of the
anonymous array. As noted in the comment, this does not enable support of the readline
MarkSymlinkedDirectories, instead, this key joins a list of keys that are not
implemented by the perl Term::ReadLine module. The lack of symbolic link marking support does not seem to be
a problem (at least for the CPAN module), and the error message will disappear now that the typeglob
reference has a defined value (0).
MRG Interactive is a supporter of open source initiatives and,
Questions or Comments? Contact our WebMaster.