diff --git a/ubuntu-kernel-cleanup.py b/ubuntu-kernel-cleanup.py
index 486d9f62a7e2ce224bc7eeb894af6f0f4336e85e..ba62d55ae1d8b27e06378f796edccb249a5692b1 100755
--- a/ubuntu-kernel-cleanup.py
+++ b/ubuntu-kernel-cleanup.py
@@ -61,21 +61,23 @@ def remove_pkg(version_number, prefix, execution_type):
             CACHE.update()
             CACHE.open()
         try:
+            # maybe this package does not exist in the DB
             CACHE[pkg].is_installed
         except KeyError:
             pass
         else:
-            if execution_type == 'real':
-                CACHE[pkg].mark_delete(True, True)
-                try:
-                    CACHE.commit()
-                except Exception as err:  # pylint: disable=W0703
-                    print("Package removal failed [{err}]".format(
-                        err=str(err)))
-                finally:
-                    CACHE.close()
-            else:
-                print('Would have removed {} (noop)'.format(pkg))
+            if CACHE[pkg].is_installed:
+                if execution_type == 'real':
+                    CACHE[pkg].mark_delete(True, True)
+                    try:
+                        CACHE.commit()
+                    except Exception as err:  # pylint: disable=W0703
+                        print("Package removal failed [{err}]".format(
+                            err=str(err)))
+                    finally:
+                        CACHE.close()
+                else:
+                    print('Would have removed {} (noop)'.format(pkg))
 
 
 def get_version(full_pkg_name):