![]() |
Fusion inventory et HP 11.11 / PA Risc / pas de cpu pas de mémoire - Printable Version +- Forums FusionInventory (https://forum.fusioninventory.org) +-- Forum: Français (https://forum.fusioninventory.org/forumdisplay.php?fid=4) +--- Forum: fusioninventory-agent (https://forum.fusioninventory.org/forumdisplay.php?fid=9) +--- Thread: Fusion inventory et HP 11.11 / PA Risc / pas de cpu pas de mémoire (/showthread.php?tid=261) |
Fusion inventory et HP 11.11 / PA Risc / pas de cpu pas de mémoire - whocare - 2011-03-18 Bonjour, En testant l'agent 2.1.7 sur un HP 9000 PA risc / HP UX 11.11 je me suis aperçu qu'il ne retournait pas la mémoire et le modèle de CPU. Ces deux patch peuvent corriger le problème : $ diff -Naur CPU.pm.orig CPU.pm --- CPU.pm.orig 2010-12-04 13:29:29.000000000 +0100 +++ CPU.pm 2011-03-18 16:13:30.000000000 +0100 @@ -21,7 +21,7 @@ my $params = shift; my $inventory = $params->{inventory}; - my $CPUinfo = { MANUFACTURER => 'unknow', TYPE => 'unknow', SERIAL => 'No Serial Number available!', SPEED => 0 }; + my $CPUinfo = { MANUFACTURER => 'unknow', NAME => 'unknow', SERIAL => 'No Serial Number available!', SPEED => 0 }; my $CPUcount; # Using old system HpUX without machinfo @@ -65,7 +65,7 @@ if (/Number of CPUs = (\d+)/) { $CPUcount = $1; } elsif (/processor model: \d+ (.+)$/) { - $CPUinfo->{TYPE} = $1; + $CPUinfo->{NAME} = $1; } elsif (/Clock speed = (\d+) MHz/) { $CPUinfo->{SPEED} = $1; } elsif (/vendor information =\W+(\w+)/) { @@ -85,13 +85,15 @@ } else { chomp(my $DeviceType =`model |cut -f 3- -d/`); my $tempCpuInfo = $cpuInfos{"$DeviceType"}; - if ( $tempCpuInfo =~ /^(\S+)\s(\S+)/ ) { - $CPUinfo->{TYPE} = $1; - $CPUinfo->{SPEED} = $2; + if (defined $tempCpuInfo) { + if ( $tempCpuInfo =~ /^(\S+)\s(\S+)/ ) { + $CPUinfo->{NAME} = $1; + $CPUinfo->{SPEED} = $2; + } } else { for ( `echo 'sc product cpu;il' | /usr/sbin/cstm | grep "CPU Module"` ) { - if ( /(\S+)\s+CPU\s+Module/ ) { - $CPUinfo->{TYPE} = $1; + if ( /\s+(\S+)\s+CPU\s+Module/ ) { + $CPUinfo->{NAME} = $1; } } for ( `echo 'itick_per_usec/D' | adb -k /stand/vmunix /dev/kmem` ) { @@ -106,11 +108,11 @@ my $serie; chomp($serie = `uname -m`); - if ( $CPUinfo->{TYPE} eq 'unknow' and $serie =~ /ia64/) { - $CPUinfo->{TYPE} = "Itanium" + if ( $CPUinfo->{NAME} eq 'unknow' and $serie =~ /ia64/) { + $CPUinfo->{NAME} = "Itanium" } if ( $serie =~ /9000/) { - $CPUinfo->{TYPE} = "PA" . $CPUinfo->{TYPE}; + $CPUinfo->{NAME} = "PA" . $CPUinfo->{NAME}; } foreach ( 1..$CPUcount ) { $inventory->addCPU($CPUinfo) } --- Memory.pm.orig 2010-12-04 13:29:29.000000000 +0100 +++ Memory.pm 2011-03-18 16:13:45.000000000 +0100 @@ -62,7 +62,7 @@ $ok=0; #print "FRU Source memory\n"; } - if ( /Source\s+Detail\s+=\s4/ ) { + if ( /Source\s+Detail\s+=\s0x4/ ) { $ok=1; #print "Source Detail IMM\n"; } @@ -71,7 +71,7 @@ #print "Extended sub $subnumslot\n"; }; if ( /DIMMS\s+Rank\s+=\s+(\S+)/ ) { - $numslot=sprintf("%02x",$1); + $numslot=sprintf("%02x",hex($1)); #print "Num slot $numslot\n"; } Par ailleurs, pour les personnes intéressées j'ai une version packagée de l'agent pour PA-Risc / HP UX 11.11 ( un endroit ou l'uploader ? ) Merci, Fusion inventory et HP 11.11 / PA Risc / pas de cpu pas de mémoire - wawa - 2011-03-19 pour l'agent packagé, contacte moi, pour les patchs, je laisse gonéri intéger tout ça merci du retour ! Fusion inventory et HP 11.11 / PA Risc / pas de cpu pas de mémoire - goneri - 2011-03-20 Merci Yanick, j'ai appliqué le premier patch https://github.com/fusinv/fusioninventory-agent/commit/7f29af93a697b4159622f610ca8ff6f79df5bc87 Peux tu me confirmer que le patch marche bien ? Pour Memory.pm: la ligne "Source Detail", la valeur est en hexa sur les autres versions de HP-UX aussi ? Fusion inventory et HP 11.11 / PA Risc / pas de cpu pas de mémoire - whocare - 2011-03-30 Pour Memory.pm : je ne sais pas pour les i64 mais dans le cas qui nous concerne sur les PA RISC que je posséde en 11.11 c'est le cas Patch complémentaire pour Memory (mise à jour de HARDWARE / Memory et swap) --- Memory.pm.2 2011-03-18 16:13:45.000000000 +0100 +++ Memory.pm 2011-03-30 14:03:49.000000000 +0200 @@ -57,7 +57,6 @@ my $ok=0; for ( `echo 'sc product system;il' | /usr/sbin/cstm` ) { - if ( /FRU\sSource\s+=\s+\S+\s+\(memory/ ) { $ok=0; #print "FRU Source memory\n"; @@ -116,6 +115,14 @@ } # $ok eq 1 } # /Serial\s+Number\.*:\s*(\S+)\s+/ } # echo 'sc product system;il' | /usr/sbin/cstm + foreach ( @list_mem ) { + if (/Total Configured Memory\s*:\s(\d+)\sMB/i) { + my $TotalMemSize = $1; + my $TotalSwapSize = `swapinfo -dt | tail -n1`; + $TotalSwapSize =~ s/^total\s+(\d+)\s+\d+\s+\d+\s+\d+%\s+\-\s+\d+\s+\-/$1/i; + $inventory->setHardware({ MEMORY => $TotalMemSize, SWAP => sprintf("%i", $TotalSwapSize/1024), }); + } + } } } Fusion inventory et HP 11.11 / PA Risc / pas de cpu pas de mémoire - whocare - 2011-03-30 Pour Memory.pm et l'hexa, je ne sais pas pour les versions inférieur ou supérieure de l'os Fusion inventory et HP 11.11 / PA Risc / pas de cpu pas de mémoire - goneri - 2011-03-30 J'ai créé le ticket ici http://forge.fusioninventory.org/issues/737 (en anglais) |