如何删除btrfs快照?


8

我是btrfs的新手,我正试图删除几个月前制作的一些快照。他们占用了约20GB的空间,而我又需要那个空间。

这似乎列出了快照:

↪ sudo btrfs subvolume list /
ID 257 gen 82021 top level 5 path @
ID 258 gen 82021 top level 5 path @home
ID 263 gen 81983 top level 5 path @home/.ecryptfs/mlissner/.Private/ECRYPTFS_FNEK_ENCRYPTED.FWa8iOdaTukmNEROkGj4b5OZHZ0bKOqrvAQxu4dgX.2jUELJL22wpV94oU--/ECRYPTFS_FNEK_ENCRYPTED.FWa8iOdaTukmNEROkGj4b5OZHZ0bKOqrvAQxHunTlBS-30iHyukjeY9-EE--/root_post_install_2014-04-29
ID 364 gen 81986 top level 5 path @home/.ecryptfs/mlissner/.Private/ECRYPTFS_FNEK_ENCRYPTED.FWa8iOdaTukmNEROkGj4b5OZHZ0bKOqrvAQxu4dgX.2jUELJL22wpV94oU--/ECRYPTFS_FNEK_ENCRYPTED.FWa8iOdaTukmNEROkGj4b5OZHZ0bKOqrvAQxHunTlBS-30iHyukjeY9-EE--/root_post_install_2014-05-04
ID 376 gen 81996 top level 5 path @home/.ecryptfs/mlissner/.Private/ECRYPTFS_FNEK_ENCRYPTED.FWa8iOdaTukmNEROkGj4b5OZHZ0bKOqrvAQxu4dgX.2jUELJL22wpV94oU--/ECRYPTFS_FNEK_ENCRYPTED.FWa8iOdaTukmNEROkGj4b5OZHZ0bKOqrvAQxHunTlBS-30iHyukjeY9-EE--/root_post_install_2014-05-14

如何删除它们?当我尝试显而易见的事情时,出现错误:

↪ sudo btrfs subvolume delete root_post_install_2014-04-29
Delete subvolume '/home/mlissner/.btrfs/snapshots/root_post_install_2014-04-29'
ERROR: cannot delete '/home/mlissner/.btrfs/snapshots/root_post_install_2014-04-29' - Device or resource busy

我感到有些迷茫,Google并未显示出真正的帮助。我很乐意发布更多信息(如果有帮助的话),但是目前,我对如何进行操作感到困惑。

Answers:


9

从输出中,我猜测您拥有快照的子卷实际上是ecryptfs私有目录。如果是正确的话,您可以尝试卸载专用目录然后尝试删除快照吗?

该错误消息指出该设备正在使用中。假设您没有将该目录用作当前工作目录,并且没有其他进程在积极使用快照中的数据,那么加密层就不用担心了。

编辑:我最初的假设是您只有加密的专用文件夹。根据您的评论,我想您的整个房屋都是加密的。因此,如果我们要操纵它,则需要您的房屋处于非活动状态。为了方便地处理此问题,可以尝试以下操作:

A.将另一个用户添加到系统,赋予该其他用户管理权限(即使用sudo的权限)。在Ubuntu中执行此操作的说明:添加用户,然后赋予用户管理权限

B.使用新创建的用户登录。现在尝试列出并销毁快照。确保原始用户未登录,因为这将触发主目录的解密(并因此触发使用)。

C.删除第一步中创建的用户,除非您需要保留该用户。

哦,而且,确保已备份了要操作的文件系统。很快就会犯错。


这就说得通了。我没有做任何明确的事情来挂载加密目录。你知道怎么卸载吗?
mlissner 2014年

尝试使用ecryptfs-umount-private
文森特·德·巴尔

好的,我尝试这样做ecryptfs-umount-private --help,而不是给我帮助文档,而是迅速卸载了我的主目录,这是一件令人恐惧的事情,它很快使所有内容崩溃。我设法重新安装了它,但这感觉很不对劲,因为我不必做任何类似的事情来制作快照。我很乐意解释为什么现在有必要这样做,因为那时还不如没有我的整个系统崩溃的情况下如何做到这一点。
mlissner 2014年

btrfs子卷列表的输出显示了一个包含隐藏目录(.ecryptfs)的路径。该目录包含已加密的数据。我的猜测是,您在安装OS时会以某种方式选择加密主目录。我正在用一种可能的方式来编辑我的答案。
文森特·德·巴尔

不幸的是,以上过程无效。当用户未登录时,该目录的路径似乎不存在。看起来加密+ btrfs超级难使用。
mlissner,2014年

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.