diff --git a/lib/backend.py b/lib/backend.py index 419b9a7d00b2181cd55f87620bf6834e035c72e3..45434dcafbb0f115b475cecf9d983eb03b169aff 100644 --- a/lib/backend.py +++ b/lib/backend.py @@ -768,12 +768,14 @@ def _RemoveBlockDevLinks(instance_name): """Remove the block device symlinks belonging to the given instance. """ - for i in os.listdir(constants.DISK_LINKS_DIR): - if os.path.islink(i) and i.startswith('%s-' % instance_name): + for short_name in os.listdir(constants.DISK_LINKS_DIR): + link_name = os.path.join(constants.DISK_LINKS_DIR, short_name) + if (os.path.islink(link_name) and + short_name.startswith('%s-' % instance_name)): try: - os.remove(link) - except OSError, e: - pass # Ignore errors when removing the symlinks + os.remove(link_name) + except OSError: + logging.exception("Can't remove symlink '%s'", link_name) def _GatherAndLinkBlockDevs(instance):