web-dev-qa-db-ja.com

btrfsスナップショットを削除するには?

私は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

私は少し迷子になっていて、グーグルは本当の助けを明らかにしていません。参考になればもっと情報を掲載させていただきたいと思いますが、今のところ、どうすればよいかわからないほどです。

8
mlissner

この質問に適切に回答することはできませんでしたが、問題をよりよく理解したら、新しい質問をaskubuntuに投稿しました。私は最終的にそこで解決策を得ることができました:

https://askubuntu.com/questions/513534/cannot-delete-encrypted-btrfs-snapshot/513547#513547

0
mlissner

出力から、スナップショットがあるサブボリュームは実際にはecryptfsプライベートディレクトリであると推測しています。それが正しい場合、プライベートディレクトリをアンマウントしてから、スナップショットを削除してみてください。

エラーメッセージは、デバイスが使用中であることを示しています。そのディレクトリを現在の作業ディレクトリとして使用しておらず、スナップショット内のデータをアクティブに使用している他のプロセスがないと仮定すると、暗号化レイヤーは心配する必要があります。

編集:私の当初の想定では、プライベートフォルダーのみが暗号化されていました。あなたのコメントから、あなたの家全体が暗号化されていると思います。したがって、それを操作する場合は、家を非アクティブにする必要があります。これに対処する便利な方法として、以下を試すことができます。

A.システムに別のユーザーを追加し、そのユーザーに管理者権限(Sudoを使用する権利など)を付与します。 Ubuntuでこれを行う方法の手順: ユーザーを追加 、次に ユーザーに管理権限を付与

B.新しく作成されたユーザーでログオンします。次に、スナップショットをリストして破棄してみます。元のユーザーがログインしていないことを確認してください。ログインすると、ホームディレクトリの復号化(つまり、使用)がトリガーされます。

C.保持する必要がなければ、最初のステップで作成したユーザーを削除します。

ああ、そしてくださいバックアップがあることを確認してください操作するファイルシステム間違いはすぐに犯されます。

9