]> git.datanom.net - omvzfs.git/blobdiff - gui/rpc/zfs.inc
Fix reldirpath value when creating a shared folder.
[omvzfs.git] / gui / rpc / zfs.inc
index beaefa49e3e6b21921ca3bbbdd7f9ddd4d581d33..af69ec4d6f7492cdc897d8be92476fbad0d68399 100644 (file)
@@ -63,7 +63,16 @@ class OMVRpcServiceZFS extends OMVRpcServiceAbstract {
                        $opts .= "-m " . $params['mountpoint'] . " ";
                }
 
+               //Use /dev/disk/by-path as deafult when creating new pools as suggested in ZoL FAQ.
                $disks = preg_split("/[,;]/", $params['devices']);
+               if (file_exists("/dev/disk/by-path/")) {
+                       $tmp_disks = array();
+                       foreach ($disks as $disk) {
+                               $tmp_disks[] = OMVModuleZFSUtil::getDiskPath($disk);
+                       }
+                       $disks = $tmp_disks;
+               }
+
                $vdev = new OMVModuleZFSVdev($params['name'], $pooltype, $disks);
                $pool = new OMVModuleZFSZpool($vdev, $opts);
                //Ugly fix to solve the problem of blkid not displaying info on newly created pools
@@ -284,7 +293,11 @@ class OMVRpcServiceZFS extends OMVRpcServiceAbstract {
                $uuid = OMVUtil::uuid();
                $pathName = $tmp->getMountPoint();
                $subdirs = preg_split('/\//',$pathName);
-               $reldirpath = $subdirs[count($subdirs)-1];
+               $reldirpath = "";
+               for ($i=2;$i<count($subdirs);$i++) {
+                       $reldirpath .= $subdirs[$i] . "/";
+               }
+               $reldirpath = rtrim($reldirpath, "/");
                $object = array(
                        "uuid" => $uuid,
                        "name" => $params['sharename'],
This page took 0.030282 seconds and 5 git commands to generate.