X-Git-Url: https://git.grml.org/?a=blobdiff_plain;ds=sidebyside;f=grml2usb;h=92c2cbfd10972acc70c4a86eba0d44005102444b;hb=411daf1e3e9fcbb9c4e4588a9fbe92513efb1ed1;hp=be6b2276b3606214d5975a837a34afcdf192fb4b;hpb=1d2aba6b461908251a2ac45fcd24a40861cccba0;p=grml2usb.git diff --git a/grml2usb b/grml2usb index be6b227..92c2cbf 100755 --- a/grml2usb +++ b/grml2usb @@ -166,14 +166,17 @@ def cleanup(): proc = subprocess.Popen(["sync"]) proc.wait() - try: - for device in MOUNTED: + for device in MOUNTED: + try: unmount(device, "") - for tmpfile in TMPFILES: + except RuntimeError: + logging.debug('RuntimeError while umount %s, ignoring' % device) + for tmpfile in TMPFILES: + try: os.unlink(tmpfile) - # ignore: RuntimeError: Set changed size during iteration - except RuntimeError: - logging.debug('caught exception RuntimeError, ignoring') + except RuntimeError: + msg = 'RuntimeError while removing temporary %s, ignoring' + logging.debug(msg % tmpfile) def register_tmpfile(path): @@ -1475,7 +1478,15 @@ def install(image, device): iso_mountpoint = image remove_image_mountpoint = False if os.path.isdir(image): - logging.info("Using %s as install base", image) + if options.force or os.path.exists(os.path.join(image, 'live')): + logging.info("Using %s as install base", image) + else: + q = raw_input("%s does not look like a grml system. " + "Do you really want to use this image? y/N " % image) + if q.lower() == 'y': + logging.info("Using %s as install base", image) + else: + logging.info("Skipping install base %s", image) else: logging.info("Using ISO %s", image) iso_mountpoint = tempfile.mkdtemp(prefix="grml2usb", dir=os.path.abspath(options.tmpdir)) @@ -1789,7 +1800,7 @@ def main(): for flavour in GRML_FLAVOURS: logging.info("Note: you can boot flavour %s using '%s' on the commandline.", flavour, flavour) - # finally be politely :) + # finally be polite :) logging.info("Finished execution of grml2usb (%s). Have fun with your grml system.", PROG_VERSION) except Exception, error: