def run_bash(cmd, argv=[], root=None, env=None, cwd=None): import subprocess def chroot(): if root: os.chroot(root) env = env and env or os.environ cmd_res = {} if cwd and root: cwd = '/%s/%s' % (root.strip('/'), cwd.strip('/')) logger.i('runbash: %s %s' % (cmd, ' '.join(argv))) res = subprocess.Popen([cmd] + argv, stdout=subprocess.PIPE, stderr=subprocess.PIPE, preexec_fn=chroot, cwd=cwd, close_fds=True, env=env) res.wait() cmd_res['out'] = res.stdout.readlines() cmd_res['err'] = res.stderr.readlines() cmd_res['ret'] = res.returncode return cmd_res
def run_bash(cmd, argv=[], root=None, env=None, cwd=None): import subprocess def chroot(): if root: os.chroot(root) env = env and env or os.environ cmd_res = {} if cwd and root: cwd = '/%s/%s' % (root.strip('/'), cwd.strip('/')) logger.i('runbash: %s %s' % (cmd, ' '.join(argv))) res = subprocess.Popen([cmd] + argv, stdout = subprocess.PIPE, stderr = subprocess.PIPE, preexec_fn = chroot, cwd = cwd, close_fds = True, env = env) res.wait() cmd_res['out']=res.stdout.readlines() cmd_res['err']=res.stderr.readlines() cmd_res['ret']=res.returncode return cmd_res
ret, msg = get_mnt_dir(devfn) if ret: mntdir = msg else: return False, msg else: #ret, msg = remove_empty_dir(mntdir) #if not ret: # return False, msg if not os.path.exists(mntdir): try: os.makedirs(mntdir) except OSError, e: return False, str(e) logger.i("mount_dev: Device = %s Mount = %s Fstype = %s\n" % \ (devfn, mntdir, fstype)) if not os.path.exists(mntdir): os.makedirs(mntdir) if USE_ISYS: try: isys.mount(fstype, devfn, mntdir, flags) except SystemError, e: errmsg = "mount_dev: mount failed: %s\n" % str(e) logger.e(errmsg) return False, errmsg else: return True, mntdir else: f_loop = False if flags: flag_list = flags.split(',')