Skip to content

Commit d6fb745

Browse files
committed
remote v0.92 beta
1 parent 1ef272f commit d6fb745

File tree

3 files changed

+88
-40
lines changed

3 files changed

+88
-40
lines changed

README.md

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,17 @@ OEM的卡混插导致的)的RAID卡时,使用StorCli代替MegaCli时会出
2424
可能发生的问题:
2525
远程模块我没有测试过对端如果完全没有安装过MegaCli或是StorCli能不能单靠一个运行文件就run起来,虽然我有试过移除这两种工具的安装,但是也许依赖库没有被移除呢?欢迎大家测试后mail我:[email protected]
2626

27+
----------------------------------------------
28+
v0.92-remote beta
29+
30+
发布时间:2016.7.17
31+
32+
1、改善远程管理程序配置时出错后的友好程度;
33+
2、增加修改磁盘组缓存设置的功能;
34+
3、BUG修正;
35+
4、文字优化。
36+
37+
2738
----------------------------------------------
2839
v0.91-remote beta
2940

@@ -33,7 +44,7 @@ v0.91-remote beta
3344

3445
说明:
3546
默认将程序运行目录下的storcli64传输到远端的/tmp目录下,可以根据需要将MegaCli/perccli等工具改名为storcli64(比如storcli64运行出错时),当然也可以直接修改Python脚本:D
36-
远程能力需要Python的paramiko模块支持,我把pip放在解压后的根目录下了,先安装pip,然后进入paramiko目录pip install *
47+
远程能力需要Python的paramiko模块支持,我把pip放在解压后的根目录下了,先安装pip,然后进入paramiko目录pip install *
3748
如果有外网的情况下,也可以pip install paramiko或是直接下载paramiko安装包安装。
3849
建议使用pip安装,相对简单些。
3950

megamenu-remote.py

Lines changed: 59 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -433,12 +433,13 @@ def vdinfo(num):
433433
return details1(num)
434434
else:
435435
selectDG = int(li.current() - 1)
436-
li2 = Listbox(height = 7, width = 43, returnExit = 1, showCursor = 0, scroll = 1)
436+
li2 = Listbox(height = 9, width = 43, returnExit = 1, showCursor = 0, scroll = 1)
437437
li2.append("查看" + str(vdshow[selectDG].replace('SPANNED DISK GROUP','组合磁盘组').replace('DISK GROUP','普通磁盘组')).strip('\n') + " 的详细信息", 1)
438438
li2.append("指定" + str(vdshow[selectDG].replace('SPANNED DISK GROUP','组合磁盘组').replace('DISK GROUP','普通磁盘组')).strip('\n') + " 的热备盘", 2)
439439
if int(vdhsp[selectDG]) != 0:
440440
li2.append("查看" + str(vdshow[selectDG].replace('SPANNED DISK GROUP','组合磁盘组').replace('DISK GROUP','普通磁盘组')).strip('\n') + " 的热备盘", 3)
441441
li2.append("指定" + str(vdshow[selectDG].replace('SPANNED DISK GROUP','组合磁盘组').replace('DISK GROUP','普通磁盘组')).strip('\n') + " 为BOOT磁盘组", 4)
442+
li2.append("设定" + str(vdshow[selectDG].replace('SPANNED DISK GROUP','组合磁盘组').replace('DISK GROUP','普通磁盘组')).strip('\n') + " 的缓存策略", 5)
442443
f = GridForm(screen, "请选择", 1, 10)
443444
f.add(li2, 0, 1)
444445
bb2 = CompactButton('返回')
@@ -510,6 +511,45 @@ def vdinfo(num):
510511
return vdinfo(num)
511512
warwindows(screen, "警告", "BOOT磁盘组设置失败")
512513
return vdinfo(num)
514+
elif li2.current() == 5:
515+
r, t, y = client.exec_command(megacli + " -ldinfo -l" + str(selectDG) + " -a" + num + " -nolog | egrep 'Current Cache Policy|Disk Cache Policy'")
516+
currentcachepolicy = t.read()
517+
CachePolicyRB = RadioBar(screen, (("强制打开", " -ForcedWB", 0), ("打开", " -wt", 0), ("关闭", " -wb", 1)))
518+
RAPolicyRB = RadioBar(screen, (("打开", " -ra", 1), ("关闭", " -nora", 0), ("自适应", " -adra", 0)))
519+
DiskCachePolicyRB = RadioBar(screen, (("关闭", " -DisDskCache", 1), ("打开", " -EnDskCache", 0)))
520+
BBUPolicyRB = RadioBar(screen, (("否", " -nocachedbadbbu", 1), ("是", " -cachedbadbbu", 0)))
521+
bb = ButtonBar(screen, (("确定", "ok"), ("取消", "cancel")))
522+
g = GridForm(screen, str(vdshow[selectDG].replace('SPANNED DISK GROUP','组合磁盘组').replace('DISK GROUP','普通磁盘组')).strip('\n') + " 缓存策略", 4, 10)
523+
g.add(Textbox(40, 5, "当前缓存状态:\n" + currentcachepolicy, wrap = 1), 3, 6)
524+
g.add(TextboxReflowed(10, "RAID卡缓存", flexDown = 5, flexUp = 10, maxHeight = -1), 1, 2)
525+
g.add(CachePolicyRB, 1, 3)
526+
g.add(TextboxReflowed(10, "预读选项", flexDown = 5, flexUp = 10, maxHeight = -1), 1, 4)
527+
g.add(RAPolicyRB, 1, 5)
528+
g.add(TextboxReflowed(10, "磁盘缓存策略", flexDown = 5, flexUp = 10, maxHeight = -1), 2, 2)
529+
g.add(DiskCachePolicyRB, 2, 3)
530+
g.add(bb, 3, 7)
531+
rc = g.runOnce(25,3)
532+
if rc == 'ESC' or bb.buttonPressed(rc) == 'cancel':
533+
return details1(num)
534+
CachePolicy = str(CachePolicyRB.getSelection()).strip('\n')
535+
RAPolicy = str(RAPolicyRB.getSelection()).strip('\n')
536+
DiskCachePolicy = str(DiskCachePolicyRB.getSelection()).strip('\n')
537+
k = []
538+
if CachePolicy == ' -wb':
539+
k.append(megacli + " -LDSetProp -NoCachedBadBBU -l" +str(selectDG) + " -a" + num + " -nolog")
540+
k.append(megacli + " -LDSetProp" + CachePolicy + " -l" +str(selectDG) + " -a" + num + " -nolog")
541+
k.append(megacli + " -LDSetProp" + RAPolicy + " -l" +str(selectDG) + " -a" + num + " -nolog")
542+
k.append(megacli + " -LDSetProp -Direct -l" +str(selectDG) + " -a" + num + " -nolog")
543+
k.append(megacli + " -LDSetProp" + DiskCachePolicy + " -l" +str(selectDG) + " -a" + num + " -nolog")
544+
for i in k:
545+
r, t, y = client.exec_command(i)
546+
success = t.read()
547+
if "success" not in success:
548+
warwindows(screen, "警告", "设置失败")
549+
break
550+
return details1(num)
551+
warwindows(screen, "完成", "已重新设置磁盘策略")
552+
return details1(num)
513553
else:
514554
warwindows(screen, "警告", "还未创建磁盘组")
515555
return details1(num)
@@ -809,7 +849,7 @@ def AddSDGR10(num):
809849
DiskCachePolicy = DiskCachePolicyRB.getSelection()
810850
BBUPolicy = BBUPolicyRB.getSelection()
811851
StripSize = StripSizeRB.getSelection()
812-
k = megacli + " -cfgspanadd -r10" + arraygroup + str(RAPolicy).strip('\n') + " -cached" + str(BBUPolicy).strip('\n') + str(StripSize).strip('\n') + " -a" + str(num).strip('\n') + " -nolog | grep VD | awk -F ' ' '{print$5}'"
852+
k = megacli + " -cfgspanadd -r10" + arraygroup + str(RAPolicy).strip('\n') + " -Direct" + str(BBUPolicy).strip('\n') + str(StripSize).strip('\n') + " -a" + str(num).strip('\n') + " -nolog | grep VD | awk -F ' ' '{print$5}'"
813853
if str(DiskCachePolicy).strip('\n') != "on":
814854
ss = ProWin(screen, "请等待", "创建磁盘组中")
815855
ss.show()
@@ -1048,7 +1088,7 @@ def AddSDGR50(num):
10481088
DiskCachePolicy = DiskCachePolicyRB.getSelection()
10491089
BBUPolicy = BBUPolicyRB.getSelection()
10501090
StripSize = StripSizeRB.getSelection()
1051-
k = megacli + " -cfgspanadd -r50" + arraygroup + str(RAPolicy).strip('\n') + " -cached" + str(BBUPolicy).strip('\n') + str(StripSize).strip('\n') + " -a" + str(num).strip('\n') + " -nolog | grep VD | awk -F ' ' '{print$5}'"
1091+
k = megacli + " -cfgspanadd -r50" + arraygroup + str(RAPolicy).strip('\n') + " -Direct" + str(BBUPolicy).strip('\n') + str(StripSize).strip('\n') + " -a" + str(num).strip('\n') + " -nolog | grep VD | awk -F ' ' '{print$5}'"
10521092
if str(DiskCachePolicy).strip('\n') != "on":
10531093
ss = ProWin(screen, "请等待", "创建磁盘组中")
10541094
ss.show()
@@ -1287,7 +1327,7 @@ def AddSDGR60(num):
12871327
DiskCachePolicy = DiskCachePolicyRB.getSelection()
12881328
BBUPolicy = BBUPolicyRB.getSelection()
12891329
StripSize = StripSizeRB.getSelection()
1290-
k = megacli + " -cfgspanadd -r60" + arraygroup + str(RAPolicy).strip('\n') + " -cached" + str(BBUPolicy).strip('\n') + str(StripSize).strip('\n') + " -a" + str(num).strip('\n') + " -nolog | grep VD | awk -F ' ' '{print$5}'"
1330+
k = megacli + " -cfgspanadd -r60" + arraygroup + str(RAPolicy).strip('\n') + " -Direct" + str(BBUPolicy).strip('\n') + str(StripSize).strip('\n') + " -a" + str(num).strip('\n') + " -nolog | grep VD | awk -F ' ' '{print$5}'"
12911331
if str(DiskCachePolicy).strip('\n') != "on":
12921332
ss = ProWin(screen, "请等待", "创建磁盘组中")
12931333
ss.show()
@@ -1493,7 +1533,7 @@ def AddDG(num):
14931533
for i in DiskSelection2:
14941534
j = j + str(i).strip('\n')
14951535
j = j.rstrip(',') + "]"
1496-
k = megacli + " -cfgldadd" + str(RAIDLevel).strip('\n') + j.strip('\n') + str(CachePolicy).strip('\n') + str(RAPolicy).strip('\n') + " -cached" + str(BBUPolicy).strip('\n') + str(StripSize).strip('\n') + " -a" + str(num).strip('\n') + " -nolog | grep VD | awk -F ' ' '{print$5}'"
1536+
k = megacli + " -cfgldadd" + str(RAIDLevel).strip('\n') + j.strip('\n') + str(CachePolicy).strip('\n') + str(RAPolicy).strip('\n') + " -Direct" + str(BBUPolicy).strip('\n') + str(StripSize).strip('\n') + " -a" + str(num).strip('\n') + " -nolog | grep VD | awk -F ' ' '{print$5}'"
14971537
if str(DiskCachePolicy).strip('\n') != "on":
14981538
ss = ProWin(screen, "请等待", "创建磁盘组中")
14991539
ss.show()
@@ -1597,7 +1637,7 @@ def MakeAllRaid0(num):
15971637
ss = ProWin(screen, "请等待", "创建磁盘组中")
15981638
ss.show()
15991639
ss.update(3)
1600-
r, t, y = client.exec_command(megacli + " -CfgEachDskRaid0 -wt -ra -cached -nocachedbadbbu -strpsz128 -a" + str(num).strip('\n') + " -nolog | grep 'Created VD' | awk -F ' ' '{print$5}'")
1640+
r, t, y = client.exec_command(megacli + " -CfgEachDskRaid0 -wt -ra -Direct -nocachedbadbbu -strpsz128 -a" + str(num).strip('\n') + " -nolog | grep 'Created VD' | awk -F ' ' '{print$5}'")
16011641
k = t.readlines()
16021642
if k ==[]:
16031643
ss.close()
@@ -1837,21 +1877,25 @@ def config(getconfig = None):
18371877
ss.close()
18381878
connectok = 1
18391879
except:
1840-
screen.finish()
1841-
print traceback.format_exc()
1842-
print "指定的参数无效"
1843-
break
1880+
ss.close()
1881+
warwindows(screen, "警告", "指定的参数无效")
1882+
connectok = 0
1883+
config()
1884+
continue
18441885
megacli = "/tmp/MegaCli64"
18451886
r , test, t = client.exec_command(megacli + " -v -nolog")
18461887
test = test.read()
18471888
if "Exit Code: 0x00" in test:
18481889
main()
18491890
else:
1850-
screen.finish()
1851-
print "远程命令执行失败"
1852-
break
1891+
warwindows(screen, "警告", "远程命令执行失败")
1892+
connectok = 0
1893+
config()
1894+
continue
18531895
else:
1854-
warwindows(screen, "警告", "远程链接建立失败")
1855-
getconfig = config()
1896+
warwindows(screen, "警告", "各项参数不能为空")
1897+
connectok = 0
1898+
config()
1899+
continue
18561900
screen.finish()
18571901
print "感谢使用!"

megamenu.py

Lines changed: 17 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@ def details1(num):
201201
h.add(li, 0, n + 5)
202202
bb = CompactButton('返回')
203203
h.add(bb, 0, 14)
204-
rc = h.runOnce(43,3)
204+
rc = h.runOnce(44,3)
205205
if rc == "ESC" or "snack.CompactButton" in str(rc):
206206
return ADPSelect()
207207
elif li.current() == 1:
@@ -279,7 +279,7 @@ def pdinfo(num):
279279
if 'None' in pdforeign[n]:
280280
li.append(str(i).strip('\n').replace('Slot Number','槽位') + "\t大小: " + str(pdsize[n]).strip('\n') + "\t状态: " + str(pdstate[n]).strip('\n').replace(' ',''), n + 1)
281281
else:
282-
li.append(str(i).strip('\n').replace('Slot Number','<Foreign>槽位') + "\t大小: " + str(pdsize[n]).strip('\n') + "\t状态: " + str(pdstate[n]).strip('\n').replace(' ',''), n + 1)
282+
li.append(str(i).strip('\n').replace('Slot Number','<Foreign>槽位') + "\t大小: " + str(pdsize[n]).strip('\n') + "\t\t状态: " + str(pdstate[n]).strip('\n').replace(' ',''), n + 1)
283283
n = n + 1
284284
g = GridForm(screen, "物理磁盘信息", 1, 10)
285285
g.add(li, 0, 1)
@@ -301,7 +301,7 @@ def pdinfo(num):
301301
f.add(li2, 0, 1)
302302
bb2 = CompactButton('返回')
303303
f.add(bb2, 0, 2)
304-
rf = f.runOnce(43,3)
304+
rf = f.runOnce(44,3)
305305
if rf == 'ESC' or 'snack.CompactButton' in str(rf) :
306306
return pdinfo(num)
307307
elif li2.current() == 1:
@@ -405,7 +405,7 @@ def vdinfo(num):
405405
f.add(li2, 0, 1)
406406
bb2 = CompactButton('返回')
407407
f.add(bb2, 0, 2)
408-
rf = f.runOnce(43,3)
408+
rf = f.runOnce(44,3)
409409
if rf == 'ESC' or 'snack.CompactButton' in str(rf) :
410410
return vdinfo(num)
411411
elif li2.current() == 1:
@@ -460,7 +460,7 @@ def vdinfo(num):
460460
bb = CompactButton('返回')
461461
h.add(Textbox(55, 15, gethsp, scroll = 1, wrap = 1), 0, 1)
462462
h.add(bb, 0, 2)
463-
rq = h.runOnce(43,3)
463+
rq = h.runOnce(44,3)
464464
return vdinfo(num)
465465
elif li2.current() == 4:
466466
setbootdrv = os.popen(megacli + " -adpbootdrive -set -l" + str(selectDG) + " -a" + num + " -nolog").read()
@@ -502,7 +502,7 @@ def CommandList(num):
502502
g = GridForm(screen, "命令清单", 1, 10)
503503
g.add(li, 0, 1)
504504
g.add(bb, 0, 2)
505-
rc = g.runOnce(43, 3)
505+
rc = g.runOnce(44, 3)
506506
if rc == 'ESC' or 'snack.CompactButton' in str(rc) :
507507
return ADPSelect()
508508
elif li.current() == 1:
@@ -534,13 +534,12 @@ def AddSDG(num):
534534
li.append("\tRaid-10", 1)
535535
li.append("\tRaid-50", 2)
536536
li.append("\tRaid-60", 3)
537+
li.append("\t 返回", 4)
537538
g = GridForm(screen, "选择RAID级别", 1, 10)
538-
bb = CompactButton('返回')
539539
g.add(li, 0, 1)
540-
g.add(bb, 0, 2)
541-
rc = g.runOnce(43,3)
540+
rc = g.runOnce(44,3)
542541
SelectRaidLevel = li.current()
543-
if 'snack.CompactButton' in str(rc) or rc == 'ESC':
542+
if li.current() == 4 or rc == 'ESC':
544543
return CommandList(num)
545544
if li.current() == 1:
546545
if diskcount < 4 :
@@ -610,7 +609,7 @@ def AddSDGR10(num):
610609
g.add(ct, 0, 2)
611610
g.add(Label(" "), 1, 2)
612611
g.add(bb, 0, 3, growx = 1)
613-
rc = g.runOnce(43,3)
612+
rc = g.runOnce(44,3)
614613
else:
615614
warwindows(screen, "警告", "剩余磁盘不足")
616615
return CommandList(num)
@@ -756,8 +755,6 @@ def AddSDGR10(num):
756755
g.add(CachePolicyRB, 1, 4)
757756
g.add(bb, 3, 2, growx = 1)
758757
rc = g.runOnce(25,3)
759-
if rc == 'ESC' or str(bb.buttonPressed(rc)) == "cancel" :
760-
return AddSDG(num)
761758
arraygroup = ''
762759
for i in j:
763760
arraygroup = arraygroup + str(i).strip('\n')
@@ -766,7 +763,7 @@ def AddSDGR10(num):
766763
DiskCachePolicy = DiskCachePolicyRB.getSelection()
767764
BBUPolicy = BBUPolicyRB.getSelection()
768765
StripSize = StripSizeRB.getSelection()
769-
k = megacli + " -cfgspanadd -r10" + arraygroup + str(RAPolicy).strip('\n') + " -cached" + str(BBUPolicy).strip('\n') + str(StripSize).strip('\n') + " -a" + str(num).strip('\n') + " -nolog | grep VD | awk -F ' ' '{print$5}'"
766+
k = megacli + " -cfgspanadd -r10" + arraygroup + str(RAPolicy).strip('\n') + " -Direct" + str(BBUPolicy).strip('\n') + str(StripSize).strip('\n') + " -a" + str(num).strip('\n') + " -nolog | grep VD | awk -F ' ' '{print$5}'"
770767
if str(DiskCachePolicy).strip('\n') != "on":
771768
ss = ProWin(screen, "请等待", "创建磁盘组中")
772769
ss.show()
@@ -993,8 +990,6 @@ def AddSDGR50(num):
993990
g.add(CachePolicyRB, 1, 4)
994991
g.add(bb, 3, 2, growx = 1)
995992
rc = g.runOnce(25,3)
996-
if rc == 'ESC' or str(bb.buttonPressed(rc)) == "cancel" :
997-
return AddSDG(num)
998993
arraygroup = ''
999994
for i in j:
1000995
arraygroup = arraygroup + str(i).strip('\n')
@@ -1003,7 +998,7 @@ def AddSDGR50(num):
1003998
DiskCachePolicy = DiskCachePolicyRB.getSelection()
1004999
BBUPolicy = BBUPolicyRB.getSelection()
10051000
StripSize = StripSizeRB.getSelection()
1006-
k = megacli + " -cfgspanadd -r50" + arraygroup + str(RAPolicy).strip('\n') + " -cached" + str(BBUPolicy).strip('\n') + str(StripSize).strip('\n') + " -a" + str(num).strip('\n') + " -nolog | grep VD | awk -F ' ' '{print$5}'"
1001+
k = megacli + " -cfgspanadd -r50" + arraygroup + str(RAPolicy).strip('\n') + " -Direct" + str(BBUPolicy).strip('\n') + str(StripSize).strip('\n') + " -a" + str(num).strip('\n') + " -nolog | grep VD | awk -F ' ' '{print$5}'"
10071002
if str(DiskCachePolicy).strip('\n') != "on":
10081003
ss = ProWin(screen, "请等待", "创建磁盘组中")
10091004
ss.show()
@@ -1230,8 +1225,6 @@ def AddSDGR60(num):
12301225
g.add(CachePolicyRB, 1, 4)
12311226
g.add(bb, 3, 2, growx = 1)
12321227
rc = g.runOnce(25,3)
1233-
if rc == 'ESC' or str(bb.buttonPressed(rc)) == "cancel" :
1234-
return AddSDG(num)
12351228
arraygroup = ''
12361229
for i in j:
12371230
arraygroup = arraygroup + str(i).strip('\n')
@@ -1240,7 +1233,7 @@ def AddSDGR60(num):
12401233
DiskCachePolicy = DiskCachePolicyRB.getSelection()
12411234
BBUPolicy = BBUPolicyRB.getSelection()
12421235
StripSize = StripSizeRB.getSelection()
1243-
k = megacli + " -cfgspanadd -r60" + arraygroup + str(RAPolicy).strip('\n') + " -cached" + str(BBUPolicy).strip('\n') + str(StripSize).strip('\n') + " -a" + str(num).strip('\n') + " -nolog | grep VD | awk -F ' ' '{print$5}'"
1236+
k = megacli + " -cfgspanadd -r60" + arraygroup + str(RAPolicy).strip('\n') + " -Direct" + str(BBUPolicy).strip('\n') + str(StripSize).strip('\n') + " -a" + str(num).strip('\n') + " -nolog | grep VD | awk -F ' ' '{print$5}'"
12441237
if str(DiskCachePolicy).strip('\n') != "on":
12451238
ss = ProWin(screen, "请等待", "创建磁盘组中")
12461239
ss.show()
@@ -1441,7 +1434,7 @@ def AddDG(num):
14411434
for i in DiskSelection2:
14421435
j = j + str(i).strip('\n')
14431436
j = j.rstrip(',') + "]"
1444-
k = megacli + " -cfgldadd" + str(RAIDLevel).strip('\n') + j.strip('\n') + str(CachePolicy).strip('\n') + str(RAPolicy).strip('\n') + " -cached" + str(BBUPolicy).strip('\n') + str(StripSize).strip('\n') + " -a" + str(num).strip('\n') + " -nolog | grep VD | awk -F ' ' '{print$5}'"
1437+
k = megacli + " -cfgldadd" + str(RAIDLevel).strip('\n') + j.strip('\n') + str(CachePolicy).strip('\n') + str(RAPolicy).strip('\n') + " -Direct" + str(BBUPolicy).strip('\n') + str(StripSize).strip('\n') + " -a" + str(num).strip('\n') + " -nolog | grep VD | awk -F ' ' '{print$5}'"
14451438
if str(DiskCachePolicy).strip('\n') != "on":
14461439
ss = ProWin(screen, "请等待", "创建磁盘组中")
14471440
ss.show()
@@ -1493,7 +1486,7 @@ def ADPSelect():
14931486
li.setCurrent(adpl)
14941487
h.add(li, 0, 1)
14951488
h.add(bb, 0, 9)
1496-
rc = h.run(24,3)
1489+
rc = h.run(25,3)
14971490
if "snack.CompactButton" in str(rc) or rc == 'ESC':
14981491
return mainform()
14991492
else :
@@ -1520,7 +1513,7 @@ def QCCMDList(num):
15201513
g = GridForm(screen, "命令清单", 1, 10)
15211514
g.add(li, 0, 1)
15221515
g.add(bb, 0, 2)
1523-
rc = g.runOnce(43, 3)
1516+
rc = g.runOnce(44, 3)
15241517
if rc == 'ESC' or "snack.CompactButton" in str(rc):
15251518
return ADPSelect()
15261519
elif li.current() == 1:
@@ -1542,7 +1535,7 @@ def MakeAllRaid0(num):
15421535
ss = ProWin(screen, "请等待", "创建磁盘组中")
15431536
ss.show()
15441537
ss.update(3)
1545-
k = os.popen(megacli + " -CfgEachDskRaid0 -wt -ra -cached -nocachedbadbbu -strpsz128 -a" + str(num).strip('\n') + " -nolog | grep 'Created VD' | awk -F ' ' '{print$5}'").readlines()
1538+
k = os.popen(megacli + " -CfgEachDskRaid0 -wt -ra -Direct -nocachedbadbbu -strpsz128 -a" + str(num).strip('\n') + " -nolog | grep 'Created VD' | awk -F ' ' '{print$5}'").readlines()
15461539
if k ==[]:
15471540
ss.close()
15481541
warwindows(screen, "警告", "单盘Raid-0创建失败")

0 commit comments

Comments
 (0)