当前位置: 首页>>代码示例>>Python>>正文


Python MountPoints.umount方法代码示例

本文整理汇总了Python中MountPoints.MountPoints.umount方法的典型用法代码示例。如果您正苦于以下问题:Python MountPoints.umount方法的具体用法?Python MountPoints.umount怎么用?Python MountPoints.umount使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在MountPoints.MountPoints的用法示例。


在下文中一共展示了MountPoints.umount方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: HddMount

# 需要导入模块: from MountPoints import MountPoints [as 别名]
# 或者: from MountPoints.MountPoints import umount [as 别名]

#.........这里部分代码省略.........
		elif selected == 2:
			self.setMountPoint("/media/hdd2")
		elif selected == 3:
			self.setMountPoint("/media/hdd3")
		elif selected == 4:
			self.setMountPoint("/media/hdd4")
		elif selected == 5:
			self.setMountPoint("/media/hdd5")
		elif selected == 6:
			self.setMountPoint("/media/usb")
		elif selected == 7:
			self.setMountPoint("/media/usb1")
		elif selected == 8:
			self.setMountPoint("/media/usb2")
		elif selected == 9:
			self.setMountPoint("/media/usb3")
		elif selected == 10:
			self.setMountPoint("/media/usb4")
		elif selected == 11:
			self.setMountPoint("/media/usb5")
		elif selected == 12:
			self.session.openWithCallback(self.customPath, VirtualKeyBoard, title = (_("Insert mount point:")), text = _("/media/custom"))

	def green(self):
		self.fast = True
		selected = self["menu"].getSelectedIndex()
		if selected == 0:
			self.setMountPoint("/media/hdd")
		elif selected == 1:
			self.setMountPoint("/media/hdd1")
		elif selected == 2:
			self.setMountPoint("/media/hdd2")
		elif selected == 3:
			self.setMountPoint("/media/hdd3")
		elif selected == 4:
			self.setMountPoint("/media/hdd4")
		elif selected == 5:
			self.setMountPoint("/media/hdd5")
		elif selected == 6:
			self.setMountPoint("/media/usb")
		elif selected == 7:
			self.setMountPoint("/media/usb1")
		elif selected == 8:
			self.setMountPoint("/media/usb2")
		elif selected == 9:
			self.setMountPoint("/media/usb3")
		elif selected == 10:
			self.setMountPoint("/media/usb4")
		elif selected == 11:
			self.setMountPoint("/media/usb5")
		elif selected == 12:
			self.session.openWithCallback(self.customPath, VirtualKeyBoard, title = (_("Insert mount point:")), text = _("/media/custom"))

	def customPath(self, result):
		if result and len(result) > 0:
			result = result.rstrip("/")
			os.system("mkdir -p %s" % result)
			self.setMountPoint(result)

	def setMountPoint(self, path):
		self.cpath = path
		if self.mountpoints.exist(path):
			self.session.openWithCallback(self.setMountPointCb, ExtraMessageBox, _("Selected mount point is already used by another drive."), _("Mount point exist!"),
																[ [ _("Change old drive with this new drive"), "ok.png" ],
																[ _("Keep old drive"), "cancel.png" ],
																])
		else:
			self.setMountPointCb(0)

	def setMountPointCb(self, result):
		if result == 0:
			if self.mountpoints.isMounted(self.cpath):
				if not self.mountpoints.umount(self.cpath):
					self.session.open(MessageBox, _("Cannot umount current drive.\nA record in progress, timeshift or some external tools (like samba, swapfile and nfsd) may cause this problem.\nPlease stop this actions/applications and try again"), MessageBox.TYPE_ERROR)
					self.close()
					return
			self.mountpoints.delete(self.cpath)
			if not self.fast:
				self.mountpoints.add(self.device, self.partition, self.cpath)
			self.mountpoints.write()
			if not self.mountpoints.mount(self.device, self.partition, self.cpath):
				self.session.open(MessageBox, _("Cannot mount new drive.\nPlease check filesystem or format it and try again"), MessageBox.TYPE_ERROR)
			elif self.cpath == "/media/hdd":
				os.system("/bin/mkdir -p /media/hdd/movie")

			if not self.fast:
				message = _("Device Fixed Mount Point change needs a system restart in order to take effect.\nRestart your %s %s now?") % (getMachineBrand(), getMachineName())
				mbox = self.session.openWithCallback(self.restartBox, MessageBox, message, MessageBox.TYPE_YESNO)
				mbox.setTitle(_("Restart %s %s") % (getMachineBrand(), getMachineName()))
			else:
				self.close()

	def restartBox(self, answer):
		if answer is True:
			self.session.open(TryQuitMainloop, 2)
		else:
			self.close()

	def quit(self):
		self.close()
开发者ID:jkfrln,项目名称:enigma2,代码行数:104,代码来源:HddMount.py

示例2: HddPartitions

# 需要导入模块: from MountPoints import MountPoints [as 别名]
# 或者: from MountPoints.MountPoints import umount [as 别名]
class HddPartitions(Screen):
    skin = '\n\t<screen name="HddPartitions" position="center,center" size="560,430" title="Hard Drive Partitions">\n\t\t<ePixmap pixmap="/usr/share/enigma2/skin_default/buttons/red.png" position="0,0" size="140,40" alphatest="on" />\n\t\t<ePixmap pixmap="/usr/share/enigma2/skin_default/buttons/green.png" position="140,0" size="140,40" alphatest="on" />\n\t\t<ePixmap pixmap="/usr/share/enigma2/skin_default/buttons/yellow.png" position="280,0" size="140,40" alphatest="on" />\n\t\t<ePixmap pixmap="/usr/share/enigma2/skin_default/buttons/blue.png" position="420,0" size="140,40" alphatest="on" />\n\t\t<widget name="key_red" position="0,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#9f1313" transparent="1" />\n\t\t<widget name="key_green" position="140,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#1f771f" transparent="1" />\n\t\t<widget name="key_yellow" position="280,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#a08500" transparent="1" />\n\t\t<widget name="key_blue" position="420,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#18188b" transparent="1" />\n\t\t<widget name="label_disk" position="20,45" font="Regular;20" halign="center" size="520,25" valign="center" />\n\t\t<widget source="menu" render="Listbox" position="20,75" size="520,350" scrollbarMode="showOnDemand">\n\t\t\t<convert type="TemplatedMultiContent">\n\t\t\t\t{"template": [\n\t\t\t\t\tMultiContentEntryPixmapAlphaTest(pos = (5, 0), size = (48, 48), png = 0),\n\t\t\t\t\tMultiContentEntryText(pos = (65, 10), size = (330, 38), font=0, flags = RT_HALIGN_LEFT|RT_VALIGN_TOP, text = 1),\n\t\t\t\t\tMultiContentEntryText(pos = (405, 10), size = (125, 38), font=0, flags = RT_HALIGN_LEFT|RT_VALIGN_TOP, text = 2),\n\t\t\t\t\t],\n\t\t\t\t\t"fonts": [gFont("Regular", 18)],\n\t\t\t\t\t"itemHeight": 50\n\t\t\t\t}\n\t\t\t</convert>\n\t\t</widget>\n\t</screen>'

    def __init__(self, session, disk):
        self.session = session
        Screen.__init__(self, session)
        self.disk = disk
        self.refreshMP(False)
        self['menu'] = List(self.partitions)
        self['menu'].onSelectionChanged.append(self.selectionChanged)
        self['key_red'] = Button('')
        self['key_green'] = Button('')
        self['key_yellow'] = Button('')
        self['key_blue'] = Button(_('Exit'))
        self['label_disk'] = Label('%s - %s' % (self.disk[0], self.disk[3]))
        self['actions'] = ActionMap(['OkCancelActions', 'ColorActions'], {'blue': self.quit,
         'yellow': self.yellow,
         'green': self.green,
         'red': self.red,
         'cancel': self.quit}, -2)
        self.onShown.append(self.setWindowTitle)
        if len(self.disk[5]) > 0:
            if self.disk[5][0][3] == '83' or self.disk[5][0][3] == '7' or self.disk[5][0][3] == 'b':
                self['key_green'].setText(_('Check'))
                self['key_yellow'].setText(_('Format'))
                mp = self.mountpoints.get(self.disk[0], 1)
                rmp = self.mountpoints.getRealMount(self.disk[0], 1)
                if len(mp) > 0 or len(rmp) > 0:
                    self.mounted = True
                    self['key_red'].setText(_('Unmount'))
                else:
                    self.mounted = False
                    self['key_red'].setText(_('Mount'))

    def setWindowTitle(self):
        self.setTitle(_('Partitions'))

    def selectionChanged(self):
        self['key_green'].setText('')
        self['key_yellow'].setText('')
        self['key_red'].setText('')
        if len(self.disk[5]) > 0:
            index = self['menu'].getIndex()
            if self.disk[5][index][3] == '83' or self.disk[5][index][3] == '7' or self.disk[5][index][3] == 'b':
                self['key_green'].setText(_('Check'))
                self['key_yellow'].setText(_('Format'))
                mp = self.mountpoints.get(self.disk[0], index + 1)
                rmp = self.mountpoints.getRealMount(self.disk[0], index + 1)
                if len(mp) > 0 or len(rmp) > 0:
                    self.mounted = True
                    self['key_red'].setText(_('Unmount'))
                else:
                    self.mounted = False
                    self['key_red'].setText(_('Mount'))

    def chkfs(self):
        disks = Disks()
        ret = disks.chkfs(self.disk[5][self.index][0][:3], self.index + 1, self.fstype)
        if ret == 0:
            self.session.open(MessageBox, _('Check disk terminated with success'), MessageBox.TYPE_INFO)
        elif ret == -1:
            self.session.open(MessageBox, _('Cannot umount current drive.\nA record in progress, timeshift or some external tools (like samba, swapfile and nfsd) may cause this problem.\nPlease stop this actions/applications and try again'), MessageBox.TYPE_ERROR)
        else:
            self.session.open(MessageBox, _('Error checking disk. The disk may be damaged'), MessageBox.TYPE_ERROR)

    def mkfs(self):
        disks = Disks()
        ret = disks.mkfs(self.disk[5][self.index][0][:3], self.index + 1, self.fstype)
        if ret == 0:
            self.session.open(MessageBox, _('Format terminated with success'), MessageBox.TYPE_INFO)
        elif ret == -2:
            self.session.open(MessageBox, _('Cannot format current drive.\nA record in progress, timeshift or some external tools (like samba, swapfile and nfsd) may cause this problem.\nPlease stop this actions/applications and try again'), MessageBox.TYPE_ERROR)
        else:
            self.session.open(MessageBox, _('Error formatting disk. The disk may be damaged'), MessageBox.TYPE_ERROR)

    def isExt4Supported(self):
        return 'ext4' in open('/proc/filesystems').read()

    def domkfs(self, result):
        if self.disk[5][self.index][3] == '83':
            if self.isExt4Supported():
                if result < 2:
                    self.fstype = result
                    self.session.open(ExtraActionBox, _('Formatting disk %s') % self.disk[5][self.index][0], _('Formatting disk'), self.mkfs)
            elif result < 1:
                self.fstype = 1
                self.session.open(ExtraActionBox, _('Formatting disk %s') % self.disk[5][self.index][0], _('Formatting disk'), self.mkfs)
        elif self.disk[5][self.index][3] == '7':
            if result < 1:
                self.fstype = 2
                self.session.open(ExtraActionBox, _('Formatting disk %s') % self.disk[5][self.index][0], _('Formatting disk'), self.mkfs)
        elif self.disk[5][self.index][3] == 'b':
            if result < 1:
                self.fstype = 3
                self.session.open(ExtraActionBox, _('Formatting disk %s') % self.disk[5][self.index][0], _('Formatting disk'), self.mkfs)

    def green(self):
        if len(self.disk[5]) > 0:
            index = self['menu'].getIndex()
            if self.disk[5][index][3] == '83' or self.disk[5][index][3] == '7' or self.disk[5][index][3] == 'b':
#.........这里部分代码省略.........
开发者ID:fairbird,项目名称:Blackhole-OpenPLI,代码行数:103,代码来源:HddPartitions.py

示例3: HddPartitions

# 需要导入模块: from MountPoints import MountPoints [as 别名]
# 或者: from MountPoints.MountPoints import umount [as 别名]
class HddPartitions(Screen):
	skin = """
	<screen name="HddPartitions" position="center,center" size="560,430" title="Hard Drive Partitions">
		<ePixmap pixmap="skin_default/buttons/red.png" position="0,0" size="140,40" alphatest="on" />
		<ePixmap pixmap="skin_default/buttons/green.png" position="140,0" size="140,40" alphatest="on" />
		<ePixmap pixmap="skin_default/buttons/yellow.png" position="280,0" size="140,40" alphatest="on" />
		<ePixmap pixmap="skin_default/buttons/blue.png" position="420,0" size="140,40" alphatest="on" />
		<widget name="key_red" position="0,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#9f1313" transparent="1" />
		<widget name="key_green" position="140,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#1f771f" transparent="1" />
		<widget name="key_yellow" position="280,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#a08500" transparent="1" />
		<widget name="key_blue" position="420,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#18188b" transparent="1" />
		<widget name="label_disk" position="20,45" font="Regular;20" halign="center" size="520,25" valign="center" />
		<widget source="menu" render="Listbox" position="20,75" size="520,350" scrollbarMode="showOnDemand">
			<convert type="TemplatedMultiContent">
				{"template": [
					MultiContentEntryPixmapAlphaTest(pos = (5, 0), size = (48, 48), png = 0),
					MultiContentEntryText(pos = (65, 10), size = (330, 38), font=0, flags = RT_HALIGN_LEFT|RT_VALIGN_TOP, text = 1),
					MultiContentEntryText(pos = (405, 10), size = (125, 38), font=0, flags = RT_HALIGN_LEFT|RT_VALIGN_TOP, text = 2),
					],
					"fonts": [gFont("Regular", 18)],
					"itemHeight": 50
				}
			</convert>
		</widget>
	</screen>"""

	def __init__(self, session, disk):
		self.session = session
		
		Screen.__init__(self, session)
		self.disk = disk
		self.refreshMP(False)
		
		self["menu"] = List(self.partitions)
		self["menu"].onSelectionChanged.append(self.selectionChanged)
		self["key_red"] = Button(_("Exit"))
		self["key_green"] = Button("")
		self["key_yellow"] = Button("")
		self["key_blue"] = Button("")
		self["label_disk"] = Label("%s - %s" % (self.disk[0], self.disk[3]))
		self["actions"] = ActionMap(["OkCancelActions", "ColorActions"],
		{
			"red": self.quit,
			"yellow": self.yellow,
			"green": self.green,
			"blue": self.blue,
			"cancel": self.quit,
		}, -2)

		self.onShown.append(self.setWindowTitle)

		if len(self.disk[5]) > 0:
			if self.disk[5][0][3] == "83" or self.disk[5][0][3] == "7" or self.disk[5][0][3] == "b":
				self["key_green"].setText(_("Check"))
				self["key_yellow"].setText(_("Format"))
				
				mp = self.mountpoints.get(self.disk[0], 1)
				rmp = self.mountpoints.getRealMount(self.disk[0], 1)
				if len(mp) > 0 or len(rmp) > 0:
					self.mounted = True
					self["key_blue"].setText(_("Unmount"))
				else:
					self.mounted = False
					self["key_blue"].setText(_("Mount"))

	def setWindowTitle(self):
		self.setTitle(_("Partitions"))

	def selectionChanged(self):
		self["key_green"].setText("")
		self["key_yellow"].setText("")
		self["key_blue"].setText("")
		
		if len(self.disk[5]) > 0:
			index = self["menu"].getIndex()
			if self.disk[5][index][3] == "83" or self.disk[5][index][3] == "7" or self.disk[5][index][3] == "b":
				self["key_blue"].setText(_("Check"))
				self["key_yellow"].setText(_("Format"))
				
				mp = self.mountpoints.get(self.disk[0], index+1)
				rmp = self.mountpoints.getRealMount(self.disk[0], index+1)
				if len(mp) > 0 or len(rmp) > 0:
					self.mounted = True
					self["key_blue"].setText(_("Unmount"))
				else:
					self.mounted = False
					self["key_blue"].setText(_("Mount"))

	def chkfs(self):
		disks = Disks()
		ret = disks.chkfs(self.disk[5][self.index][0][:3], self.index+1, self.fstype)
		if ret == 0:
			self.session.open(MessageBox, _("Check disk terminated with success"), MessageBox.TYPE_INFO)
		elif ret == -1:
			self.session.open(MessageBox, _("Cannot umount current drive.\nA record in progress, timeshift or some external tools (like samba, swapfile and nfsd) may cause this problem.\nPlease stop this actions/applications and try again"), MessageBox.TYPE_ERROR)
		else:
			self.session.open(MessageBox, _("Error checking disk. The disk may be damaged"), MessageBox.TYPE_ERROR)

	def mkfs(self):
		disks = Disks()
#.........这里部分代码省略.........
开发者ID:OUARGLA86,项目名称:enigma2,代码行数:103,代码来源:HddPartitions.py

示例4: HddMount

# 需要导入模块: from MountPoints import MountPoints [as 别名]
# 或者: from MountPoints.MountPoints import umount [as 别名]
class HddMount(Screen):
    skin = '\n\t<screen name="HddMount" position="center,center" size="560,430" title="Hard Drive Mount">\n\t\t<ePixmap pixmap="/usr/share/enigma2/skin_default/buttons/red.png" position="0,0" size="140,40" alphatest="on" />\n\t\t<ePixmap pixmap="/usr/share/enigma2/skin_default/buttons/green.png" position="140,0" size="140,40" alphatest="on" />\n\t\t<ePixmap pixmap="/usr/share/enigma2/skin_default/buttons/yellow.png" position="280,0" size="140,40" alphatest="on" />\n\t\t<ePixmap pixmap="/usr/share/enigma2/skin_default/buttons/blue.png" position="420,0" size="140,40" alphatest="on" />\n\t\t<widget name="key_red" position="0,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#9f1313" transparent="1" />\n\t\t<widget name="key_green" position="140,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#1f771f" transparent="1" />\n\t\t<widget name="key_yellow" position="280,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#a08500" transparent="1" />\n\t\t<widget name="key_blue" position="420,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#18188b" transparent="1" />\n\t\t<widget name="menu" position="20,45" scrollbarMode="showOnDemand" size="520,380" transparent="1" />\n\t</screen>'

    def __init__(self, session, device, partition):
        Screen.__init__(self, session)
        self.device = device
        self.partition = partition
        self.mountpoints = MountPoints()
        self.mountpoints.read()
        self.fast = False
        self.list = []
        self.list.append(_('Mount as /universe'))
        self.list.append(_('Mount as /media/usb'))
        self.list.append(_('Mount as /media/hdd'))
        self.list.append('Mount as /media/cf')
        self.list.append('Mount as /media/mmc1')
        self.list.append('Mount on custom path')
        self['menu'] = MenuList(self.list)
        self['key_red'] = Button(_('Fixed mount'))
        self['key_green'] = Button('Fast mount')
        self['key_blue'] = Button(_('Exit'))
        self['key_yellow'] = Button('')
        self['actions'] = ActionMap(['OkCancelActions', 'ColorActions'], {'blue': self.quit,
         'green': self.green,
         'ok': self.ok,
         'red': self.ok,
         'cancel': self.quit}, -2)
        self.onShown.append(self.setWindowTitle)

    def setWindowTitle(self):
        self.setTitle(_('Mountpoints'))

    def ok(self):
        self.fast = False
        selected = self['menu'].getSelectedIndex()
        if selected == 0:
            self.setMountPoint('/universe')
        elif selected == 1:
            self.setMountPoint('/media/usb')
        elif selected == 2:
            self.setMountPoint('/media/hdd')
        elif selected == 3:
            self.setMountPoint('/media/cf')
        elif selected == 4:
            self.setMountPoint('/media/mmc1')
        elif selected == 5:
            self.session.openWithCallback(self.customPath, VirtualKeyBoard, title=_('Insert mount point:'), text='/media/custom')

    def green(self):
        self.fast = True
        selected = self['menu'].getSelectedIndex()
        if selected == 0:
            self.setMountPoint('/universe')
        elif selected == 1:
            self.setMountPoint('/media/usb')
        elif selected == 2:
            self.setMountPoint('/media/hdd')
        elif selected == 3:
            self.setMountPoint('/media/cf')
        elif selected == 4:
            self.setMountPoint('/media/mmc1')
        elif selected == 5:
            self.session.openWithCallback(self.customPath, VirtualKeyBoard, title=_('Insert mount point:'), text='/media/custom')

    def customPath(self, result):
        if result and len(result) > 0:
            result = result.rstrip('/')
            os.system('mkdir -p %s' % result)
            self.setMountPoint(result)

    def setMountPoint(self, path):
        self.cpath = path
        if self.mountpoints.exist(path):
            self.session.openWithCallback(self.setMountPointCb, ExtraMessageBox, 'Selected mount point is already used by another drive.', 'Mount point exist!', [['Change old drive with this new drive', 'ok.png'], ['Mantain old drive', 'cancel.png']])
        else:
            self.setMountPointCb(0)

    def setMountPointCb(self, result):
        if result == 0:
            if not self.mountpoints.isMounted(self.cpath) and self.mountpoints.umount(self.cpath):
                self.session.open(MessageBox, _('Cannot umount current drive.\nA record in progress, timeshit or some external tools (like samba and nfsd) may cause this problem.\nPlease stop this actions/applications and try again'), MessageBox.TYPE_ERROR)
                self.close()
                return None
            self.mountpoints.delete(self.cpath)
            if not self.fast:
                self.mountpoints.add(self.device, self.partition, self.cpath)
            self.mountpoints.write()
            if not self.mountpoints.mount(self.device, self.partition, self.cpath):
                self.session.open(MessageBox, _('Cannot mount new drive.\nPlease check filesystem or format it and try again'), MessageBox.TYPE_ERROR)
            elif self.cpath == '/media/hdd':
                os.system('/bin/mkdir /hdd/movie')
                os.system('/bin/mkdir /hdd/music')
                os.system('/bin/mkdir /hdd/picture')
            self.close()

    def restartBox(self, answer):
        if answer is True:
            self.session.open(TryQuitMainloop, 2)
        else:
            self.close()
#.........这里部分代码省略.........
开发者ID:fairbird,项目名称:Blackhole-OpenPLI,代码行数:103,代码来源:HddMount.py


注:本文中的MountPoints.MountPoints.umount方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。