This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.
>From: Gilbert Sebenste <address@hidden> >Organization: NIU >Keywords: 200511140002.jAE0297s026598 LDM ldmadmin Hi Gilbert, re: continuing to scope out why 'ldmadmin watch' doesn't work on weather >Thanks! Not critical, more of a convenience thing than anything but again, >this just started in 6.4.3. Just thought you'd want to know! I think I found the problem. /etc/hosts on weather does not define the localhost like it should. Consider /etc/hosts on weather3: # Do not remove the following line, or various programs # that require network functionality will fail. 127.0.0.1 weather3.admin.niu.edu weather3 localhost.localdomain localhost Compare this with /etc/hosts on weather: # Do not remove the following line, or various programs # that require network functionality will fail. 131.156.8.47 weather.admin.niu.edu Many actions run out of 'ldmadmin' try to determine if the LDM is running. Whether or not the LDM is running is determined by the procedure isRunning in ldmadmin itself: ############################################################################### # check if the LDM is running. return 1 if running, 0 if not. ############################################################################### sub isRunning { my($pid, $running, $cmd_line); $pid= getPid(); if ($pid != -1) { system("kill -0 $pid > /dev/null 2>&1"); $running = !$?; } if (!$running) { $cmd_line = "ldmping -i 0"; if (length($ip_addr)) { $cmd_line .= " $ip_addr"; } system("$cmd_line > /dev/null 2>&1"); $running = !$?; } return $running; } On both weather3 and weather, the first test: $pid= getPid(); if ($pid != -1) { system("kill -0 $pid > /dev/null 2>&1"); $running = !$?; } passes with no error. The second test, however, fails on weather and succeeds on weather3: if (!$running) { $cmd_line = "ldmping -i 0"; if (length($ip_addr)) { $cmd_line .= " $ip_addr"; } system("$cmd_line > /dev/null 2>&1"); $running = !$?; } 'ldmping' is attempting to contact 'localhost' in this code (since no host is specified). On weather3, 'localhost' is defined; on weather it is not. Solution: Modify /etc/hosts on weather to match what is on weather3. After the mod, you should be able to run 'ldmadmin watch' from both your and the 'mcidas' accounts. Cheers, Tom -- NOTE: All email exchanges with Unidata User Support are recorded in the Unidata inquiry tracking system and then made publicly available through the web. If you do not want to have your interactions made available in this way, you must let us know in each email you send to us. >From address@hidden Mon Nov 14 12:52:27 2005 re: Modify /etc/hosts on weather to match what is on weather3 >I have NO clue how that line got deleted, and that's an important line. >Once I did that, voila! All was well and ldmadmin works in my account! >Somehow, someway the FC4 upgrade must have taken that one out. Odd. >And Tom, as always... THANK YOU SO MUCH for your help!!!!!! ******************************************************************************* Gilbert Sebenste ******** (My opinions only!) ****** Staff Meteorologist, Northern Illinois University **** E-mail: address@hidden *** web: http://weather.admin.niu.edu ** *******************************************************************************