【发布时间】:2017-05-18 05:23:06
【问题描述】:
我们有一个带有 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,磁盘.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 并正确反映其价值。所以这肯定不会导致问题。进行了搜索,但没有找到任何相关链接。请在这里指导我。
【问题讨论】: