我们有一个带有 idrac 7 的戴尔服务器,我正在尝试编写一个简单的 bash 脚本来使用 racadm 为所有物理磁盘创建一个虚拟磁盘,但它失败了。流程是:
disks=`sshpass -p "$idracpasswd" ssh -o StrictHostKeyChecking=no root@someidracIP racadm raid get pdisks`
all_disks=$(echo $disks | sed 's/ /\,/g')
echo $all_disks
createvd=`sshpass -p "$idracpasswd" ssh -o StrictHostKeyChecking=no root@someidracIP racadm raid createvd:RAID.Integrated.1-1 -rl r0 -pdkey:$all_disks`
echo $createvd
$all_disks 的输出是Disk.Bay.0:Enclosure.Internal.0-1:RAID.Integrated.1-1,Disk.Bay.1:Enclosure.Internal.0-1:RAID.Integrated.1-1,Disk .Bay.2:Enclosure.Internal.0-1:RAID.Integrated.1-1,Disk.Bay.3:Enclosure.Internal.0-1:RAID.Integrated.1-1,Disk.Bay.4:Enclosure .Internal.0-1:RAID.Integrated.1-1,Disk.Bay.5:Enclosure.Internal.0-1:RAID.Integrated.1-1
基本上是一个带有逗号分隔物理磁盘的字符串。所以整个命令是这样的
'sshpass -p *passwd* ssh -o StrictHostKeyChecking=no root@$line racadm raid createvd:RAID.Integrated.1-1 -rl r0 -pdkey:Disk.Bay.0:Enclosure.Internal.0-1:RAID.Integrated.1-1,Disk.Bay.1:Enclosure.Internal.0-1:RAID.Integrated.1-1,Disk.Bay.2:Enclosure.Internal.0-1:RAID.Integrated.1-1,Disk.Bay.3:Enclosure.Internal.0-1:RAID.Integrated.1-1,Disk.Bay.4:Enclosure.Internal.0-1:RAID.Integrated.1-1,Disk.Bay.5:Enclosure.Internal.0-1:RAID.Integrated.1-1`
但是每次脚本失败并显示以下错误消息
cmdstat
status : 2
status_tag : COMMAND PROCESSING FAILED
error : 253
error_tag : COMMAND NOT RECOGNIZED
我从 racadm 控制台发出了相同的命令,它工作正常,但从本地失败。
我正在阅读$idracpasswd及其正确反映的价值。所以这肯定不会导致问题。进行了搜索,但没有找到任何相关链接。请在这里指导我。