function do_mount_samba($info) { global $var; if (!($info[fstype] == "nfs" && (strtoupper($var['NAME']) == strtoupper($info['ip']) || $var['IPADDR'] == $info['ip']))) { $dev = $info['device']; $dir = $info['mountpoint']; $fs = $info['fstype']; if (!is_mounted($dev) || !is_mounted($dir, true)) { @mkdir($dir, 0777, TRUE); if ($fs == "nfs") { $params = get_mount_params($fs, '$dev'); $cmd = "/sbin/mount -t {$fs} -o " . $params . " '{$dev}' '{$dir}'"; $o = shell_exec($cmd . " 2>&1"); } else { $params = sprintf(get_mount_params($fs, '$dev'), $info['user'] ? $info['user'] : "******", $info['pass']); $cmd = "/sbin/mount -t {$fs} -o " . $params . " '{$dev}' '{$dir}'"; $o = shell_exec($cmd . " 2>&1"); $params = sprintf(get_mount_params($fs, '$dev'), $info['user'] ? $info['user'] : "******", '*******'); } unassigned_log("Mount SMB/NFS command: mount -t {$fs} -o " . $params . " '{$dev}' '{$dir}'"); foreach (range(0, 5) as $t) { if (is_mounted($dev)) { @chmod($dir, 0777); @chown($dir, 99); @chgrp($dir, 100); unassigned_log("Successfully mounted '{$dev}' on '{$dir}'."); return TRUE; } else { sleep(0.5); } } unassigned_log("Mount of '{$dev}' failed. Error message: {$o}"); return FALSE; } else { unassigned_log("Share '{$dev}' already mounted..."); return FALSE; } } else { unassigned_log("Error: Cannot mount remote NFS '{$info[device]}' from this server onto this server."); return FALSE; } }
function do_mount($dev, $dir, $fs) { if (! is_mounted($dev) || ! is_mounted($dir)) { @mkdir($dir,0777,TRUE); $cmd = "mount -t auto -o ".get_mount_params($fs)." '${dev}' '${dir}'"; debug("Mounting drive with command: $cmd"); $o = shell_exec($cmd." 2>&1"); foreach (range(0,5) as $t) { if (is_mounted($dev)) { debug("Successfully mounted '${dev}' on '${dir}'"); return TRUE; } else { sleep(0.5);} } debug("Mount of ${dev} failed. Error message: $o"); return FALSE; } else { debug("Drive '$dev' already mounted"); } }