Meine Wette ist, dass Ihr Verzeichnis tatsächlich ein Btrfs-Subvolume ist. Ich habe einen Test gemacht. Wenn ich versuche, rm
mein Test-Subvolumen zu testen, bekomme ich "Operation nicht erlaubt".
Wenn ich recht habe, sollte Folgendes in Ihrem Fall funktionieren:
sudo btrfs subvolume delete foo
Ich verstehe, dass Ihr Verzeichnis bereits leer ist, aber im Allgemeinen müssen Sie es zuvor leeren.
Weitere Erklärung auf Wunsch:
Ein Subvolume ist ein Teil des Dateisystems mit einer eigenen und unabhängigen Datei- / Verzeichnishierarchie. Subvolumes können Dateierweiterungen gemeinsam nutzen.
Sie können mehr vom btrfs Wiki lernen . Die Hauptgründe, aus denen ein Subvolume anstelle eines regulären Verzeichnisses erstellt werden kann, sind:
- Ein Subvolume kann gemountet werden, da es sich um ein separates Dateisystem mit eigenen Optionen handelt (vergleiche: Sie können zwar ein reguläres Verzeichnis mit Bind-Mount mounten, es muss jedoch in einem bereits gemounteten Dateisystem vorhanden sein; das Btrfs-Subvolume kann leicht als Root-Dateisystem gemountet werden
/
); - Es kann ein Subvolume-Snapshot erstellt werden, bei dem es sich um ein separates Subvolume handelt, das anfänglich alle Dateierweiterungen mit dem Quell-Subvolume gemeinsam nutzt.
Praxisbeispiel:
Mein btrfs-Dateisystem hat die folgende interne Struktur (bedenken Sie, dass diese Struktur sich von der Verzeichnisstruktur unterscheidet, die das System sieht; dazu gehören Mountpoints):
/ # btrfs root filesystem mounted as /mnt/ssd/ @ # a subvolume I use as the root filesystem (mounted as /) @backups @-20161215-1-working # a snapshot of @ just in case
Nehmen wir an, ich möchte mich mit meinem System beschäftigen. Als Vorsichtsmaßnahme erstelle ich zunächst einen Schnappschuss:
cd /mnt/ssd/@backups sudo btrfs subvolume snapshot ../@ @-20161224-1-just_in_case
Ich mache es aus meinem Arbeitssystem heraus und es dauert keine Zeit. Es nimmt anfangs auch keinen Speicherplatz in Anspruch. Der zusätzliche Speicherplatz wird später zugewiesen, wenn sich die entsprechenden Dateien und Verzeichnisbäume unterscheiden.
Als nächstes kann ich sogar mein System, das sich im @
Subvolume befindet, brechen. Solange das @backups/@-20161224-1-just_in_case
Subvolume intakt ist, kann ich durch @
dieses Backup ersetzen, als wäre nichts passiert. Im schlimmsten Fall muss ich von einer Live-Distribution booten. Wenn mein Bootloader (GRUB2) weiterhin funktioniert, kann ich den Eintrag zur Boottime bearbeiten und temporär @backups/@-20161224-1-just_in_case
anstelle von @
Subvolume als Root-Dateisystem verwenden. Dann mache ich aus dem wieder funktionierenden System:
cd /mnt/ssd/ sudo btrfs subvolume delete @ # I may have to empty it first sudo btrfs subvolume snapshot @backups/20161224-1-just_in_case @
Danach starte ich neu. Das System wird wiederhergestellt.