Proxmox 4.3 with S.M.A.R.T.?

Hi,
I made this work with an hp raid controler on proxmox 6.3-3 with this patch
Diff:
diff -cr8 /usr/share/perl5/PVE/Diskmanage.pm{_BK,}
*** /usr/share/perl5/PVE/Diskmanage.pm_BK       2021-01-01 23:44:12.901938706 +0100
--- /usr/share/perl5/PVE/Diskmanage.pm  2021-01-02 01:00:34.377774450 +0100
***************
*** 86,101 ****
--- 86,115 ----

      if ($disk =~ m!^/dev/(nvme\d+n\d+)$!) {
        my $info = get_sysdir_info("/sys/block/$1");
        $disk = "/dev/".($info->{device}
            or die "failed to get nvme controller device for $disk\n");
      }

      my $cmd = [$SMARTCTL, '-H'];
+     #HP controller
+     push @$cmd, '-d', 'cciss,0' if ($disk  =~ /sda$/);
+     push @$cmd, '-d', 'cciss,1' if ($disk  =~ /sdb$/);
+     push @$cmd, '-d', 'cciss,2' if ($disk  =~ /sdc$/);
+     push @$cmd, '-d', 'cciss,3' if ($disk  =~ /sdd$/);
+     push @$cmd, '-d', 'cciss,4' if ($disk  =~ /sde$/);
+     push @$cmd, '-d', 'cciss,5' if ($disk  =~ /sdf$/);
+     push @$cmd, '-d', 'cciss,6' if ($disk  =~ /sdg$/);
+     push @$cmd, '-d', 'cciss,7' if ($disk  =~ /sdh$/);
+     # usb
+     push @$cmd, '-d', 'sat' if ($disk  =~ /sdaa$/);
+     # sas
+     push @$cmd, '-d', 'scsi' if ($disk  =~ /sd[mnop]$/);
+     ###
      push @$cmd, '-A', '-f', 'brief' if !$healthonly;
      push @$cmd, $disk;

      eval {
        $returncode = run_command($cmd, noerr => 1, outfunc => sub{
            my ($line) = @_;

  # ATA SMART attributes, e.g.:

and systemctl restart pvedaemon pveproxy

I suppose that its similar with megaraid, you just have to correctly map the x of "-d megaraid,X" to the correct device.
 
Last edited: