function check_xen_dirlocation() { $diro = getFirstFromList($this->main->__t_new_xen_location_a_list); $dirlocation = $diro->nname; if (!csb($dirlocation, "lvm:")) { return; } $dirlocation = fix_vgname($dirlocation); $ret = exec_with_all_closed_output("vgdisplay -c {$dirlocation}"); if (!csa($ret, ":")) { throw new lxException("the_lvm_doesnt_exist", 'nname', $dirlocation); } }
function get_partition($disk, $root) { $lv = basename($disk); $root = fix_vgname($root); $path = "/dev/mapper/{$root}-{$lv}"; lxshell_return("kpartx", "-a", $path); $out = lxshell_output("kpartx", "-l", $path); $o = explode("\n", $out); $o = trimSpaces($o[0]); $o = explode(" ", $o); $partition = trimSpaces($o[0]); $partition = "/dev/mapper/{$partition}"; //lxshell_return("ntfsfix", $partition); return $partition; }
public function getSnapshotName() { $vgname = fix_vgname($this->main->corerootdir); $snap = "/dev/{$vgname}/{$this->main->nname}_snapshot"; return $snap; }
function lvm_create($vgname, $lvmname, $size) { $vgname = fix_vgname($vgname); $lvmname = basename($lvmname); return lxshell_return("lvcreate", "-L{$size}M", "-n{$lvmname}", $vgname); }
function lxfile_get_ntfs_disk_usage($file, $root) { $file = expand_real_root($file); $root = fix_vgname($root); $ldevice = get_partition($file, $root); $res = lxshell_output("ntfscluster", "-f", $ldevice); $base = basename($file); kpart_remove("/dev/mapper/{$root}-{$base}"); $res = explode("\n", $res); foreach ($res as $r) { $r = trim($r); if (!csa($r, ":")) { continue; } list($var, $val) = explode(":", $r); $var = trim($var); $val = trim($val); if ($var === "bytes per volume") { $total = round($val / (1024 * 1024), 1); } if ($var === "bytes of user data") { $used = round($val / (1024 * 1024), 1); } } $ret['total'] = $total; $ret['used'] = $used; return $ret; }
function getXenMaindiskName() { if ($this->isXenLvm()) { $vgname = $this->corerootdir; $vgname = fix_vgname($vgname); $maindisk = "/dev/{$vgname}/{$this->maindiskname}"; } else { $maindisk = "{$this->corerootdir}/{$this->nname}/{$this->maindiskname}"; } return $maindisk; }