Exemplo n.º 1
0
def umount_dev(mntdir, rmdir=True):
    def umount_loop_dev(mntdir):
        cmd = '/bin/umount'
        argv = [mntdir]
        cmdres = run_bash(cmd, argv)
        if cmdres['ret']:
            return False, str(cmdres['err'])
        else:
            loop_dev, isopath = LOOP_DEVICES[mntdir]
            cmd = '/sbin/losetup'
            argv = ['-d', loop_dev]
            cmdres = run_bash(cmd, argv)
            if cmdres['ret']:
                return False, str(cmdres['err'])
            else:
                free_loop(loop_dev)
                LOOP_DEVICES.pop(mntdir, '')
                return True, ''

    isys.sync()
    if USE_ISYS:
        try:
            isys.umount(mntdir)
        except SystemError, e:
            errmsg = "umount_dev: umount failed: %s\n" % str(e)
            logger.e(errmsg)
            return False, errmsg
Exemplo n.º 2
0
def umount_dev(mntdir, rmdir=True):
    def umount_loop_dev(mntdir):
        cmd = '/bin/umount'
        argv = [mntdir]
        cmdres = run_bash(cmd, argv)
        if cmdres['ret']:
            return False, str(cmdres['err'])
        else:
            loop_dev, isopath = LOOP_DEVICES[mntdir]
            cmd = '/sbin/losetup'
            argv = ['-d', loop_dev]
            cmdres = run_bash(cmd, argv)
            if cmdres['ret']:
                return False, str(cmdres['err'])
            else:
                free_loop(loop_dev)
                LOOP_DEVICES.pop(mntdir, '')
                return True, ''

    isys.sync()
    if USE_ISYS:
        try:
            isys.umount(mntdir)
        except SystemError, e:
            errmsg = "umount_dev: umount failed: %s\n" % str(e)
            logger.e(errmsg)
            return False, errmsg
Exemplo n.º 3
0
        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(',')
        else:
            flag_list = []
        new_flag_list = []
        for f in flag_list:
            if f.strip().startswith('loop'):
                f_loop = True
            else:
                new_flag_list.append(f.strip())
Exemplo n.º 4
0
        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(',')
        else:
            flag_list = []
        new_flag_list = []
        for f in flag_list:
            if f.strip().startswith('loop'):
                f_loop = True
            else:
                new_flag_list.append(f.strip())