|
@@ -110,17 +110,12 @@ func (m *Manager) CreateRAIDDevice(devName string, raidLevel int, raidDeviceIds
|
|
|
allDeviceIds := append(raidDeviceIds, spareDeviceIds...)
|
|
|
|
|
|
// Build the mdadm command
|
|
|
- cmdArgs := []string{"mdadm", "--create", "--yes", devName, fmt.Sprintf("--level=%d", raidLevel),
|
|
|
- fmt.Sprintf("--raid-devices=%d", raidDev), fmt.Sprintf("--spare-devices=%d", spareDevice)}
|
|
|
- cmdArgs = append(cmdArgs, allDeviceIds...)
|
|
|
-
|
|
|
- cmd := exec.Command("sudo", cmdArgs...)
|
|
|
+ cmd := exec.Command("bash", "-c", fmt.Sprintf("yes | sudo mdadm --create %s --level=%d --raid-devices=%d --spare-devices=%d %s",
|
|
|
+ devName, raidLevel, raidDev, spareDevice, strings.Join(allDeviceIds, " ")))
|
|
|
|
|
|
cmd.Stdout = os.Stdout
|
|
|
cmd.Stderr = os.Stderr
|
|
|
|
|
|
- //TODO: REMOVE AFTER DEBUG
|
|
|
- fmt.Println(cmdArgs)
|
|
|
err := cmd.Run()
|
|
|
if err != nil {
|
|
|
return fmt.Errorf("error running mdadm command: %v", err)
|