MRG Interactive Developments

Mesoscale Research Group, McGill/SUNY


Linux FAQ (Fedora Core 4)




How do I get information about CPU temperatures / fan speeds etc?

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.

Back To Top

Why do I get a CPAN error "Invalid variable `mark-symlinked-directories'"?

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, line 11.
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).

Back To Top


MRG Interactive is a supporter of open source initiatives and,

SourceForge.net Logo

Questions or Comments? Contact our WebMaster.