Ок — если хочешь “пересоздать заново и забыть старое”, то план такой: **сначала вынести `home/qemu`**, потом **размонтировать**, сделать **mkfs.btrfs -f с новым label**, заново создать subvol’ы и обновить NixOS-конфиг под новый label+пути. `mkfs.btrfs -f` реально **уничтожит** старую ФС и всё на ней.[1] ## 1) Скопировать данные в безопасное место Команда, которую ты написал, ок **если ты реально находишься в `/mnt/gentoo-root`** (как в примере), и `~/temp` существует: ```bash mkdir -p ~/temp cp -a /mnt/gentoo-root/home/qemu ~/temp/ ``` Рекомендую `cp -a` вместо `cp -r`, чтобы сохранить права/времена/симлинки. Проверь, что копия на месте: `ls -la ~/temp/qemu`. ## 2) Размонтировать старые точки Нужно отмонтировать все subvol-ы с этого диска (иначе `mkfs` не даст, или ты рискуешь). В NixOS: ```bash sudo umount /mnt/gentoo-root/images sudo umount /mnt/gentoo-root/distfiles sudo umount /mnt/gentoo-root/home sudo umount /mnt/gentoo-root ``` Если где-то “busy”, покажет кто держит: `sudo lsof +f -- /mnt/gentoo-root` (или `fuser -mv`). ## 3) Пересоздать btrfs с новым label Теперь форматируем раздел (у тебя это `/dev/nvme0n1p2` по `lsblk`), и задаём новый label, например `nvme-950`. Опция `-L/--label` задаёт label файловой системы.[1] ```bash sudo mkfs.btrfs -f -L nvme-950 /dev/nvme0n1p2 ``` ## 4) Создать subvol’ы заново (правильно — на top-level id=5) Чтобы создать subvol на “корне” btrfs, монтируем top-level (`subvolid=5`), создаём subvol, и размонтируем.[2][3] ```bash sudo mkdir -p /mnt/tmp_nvme950 sudo mount -o subvolid=5 /dev/disk/by-label/nvme-950 /mnt/tmp_nvme950 sudo btrfs subvolume create /mnt/tmp_nvme950/@ sudo btrfs subvolume create /mnt/tmp_nvme950/@home sudo btrfs subvolume create /mnt/tmp_nvme950/@distfiles sudo btrfs subvolume create /mnt/tmp_nvme950/@images sudo umount /mnt/tmp_nvme950 ``` ## 5) Обновить NixOS-конфиг Теперь можно: - переименовать mountpoint’ы на `/mnt/nvme-950/...` - и device сменить на `/dev/disk/by-label/nvme-950` То есть в твоём файле: - все `"/mnt/gentoo-root"` → `"/mnt/nvme-950"` - все `by-label/gentoo_root` → `by-label/nvme-950` - в `tmpfiles.rules` тоже заменить пути. После этого: ```bash sudo nixos-rebuild switch ``` ## 6) Вернуть qemu обратно Когда новый диск смонтировался: ```bash sudo mkdir -p /mnt/nvme-950/home sudo cp -a ~/temp/qemu /mnt/nvme-950/home/ sudo chown -R wave:users /mnt/nvme-950/home/qemu ``` Если это btrfs и ты хочешь отключить CoW для qcow2 (как раньше делал), делай `chattr +C` на каталог **до** создания/копирования новых qcow2. (На уже существующие файлы это не всегда помогает.) *** Перед тем как форматировать: подтверди, что правильный раздел — это **точно** `/dev/nvme0n1p2` (953.9G диск → 952.9G partition), а не второй NVMe на 1.8T. Самый надёжный чек: `ls -l /dev/disk/by-id/ | rg nvme0n1p2` и/или `blkid /dev/nvme0n1p2`. [1](https://man7.org/linux/man-pages/man8/mkfs.btrfs.8.html) [2](https://discussion.fedoraproject.org/t/btrfs-subvol-created-but-does-not-need-mounting/127943/4) [3](https://forum.endeavouros.com/t/want-to-create-btrfs-top-level-5-subvolume-in-an-already-installed-system/43712) [4](https://www.reddit.com/r/linuxquestions/comments/oj64ti/how_to_change_filesystem_label_using_commandline/) [5](https://www.cheat-sheets.org/project/tldr/command/mkfs.btrfs/os/linux/) [6](https://btrfs.readthedocs.io/en/latest/Administration.html) [7](https://gitlab.denx.de/denx/eldk/-/blob/4ebd9bbbeb0dd52a5f346266129eeae9b3c5941a/meta/recipes-devtools/btrfs-tools/btrfs-tools/upstream-tmp/0011-Add-the-btrfs-filesystem-label-command.patch) [8](https://www.reddit.com/r/NixOS/comments/1lhkffb/creating_a_new_btrfs_subvolume_on_existingrunning/) [9](https://man.archlinux.org/man/mkfs.btrfs.8.en) [10](https://github.com/nix-community/disko/blob/master/example/btrfs-subvolumes.nix) [11](https://www.mankier.com/8/mkfs.btrfs) [12](https://fedoramagazine.org/working-with-btrfs-subvolumes/) [13](https://wiki.nixos.org/wiki/Btrfs) [14](https://man7.org/linux/man-pages/man8/btrfs-property.8.html) [15](https://bbs.archlinux.org/viewtopic.php?id=276843) [16](https://mt-caret.github.io/blog/posts/2020-06-29-optin-state.html) [17](https://man.archlinux.org/man/btrfs.8.en) [18](https://btrfs.readthedocs.io/en/latest/btrfs-subvolume.html) [19](https://discourse.nixos.org/t/persistent-btrfs-subvolume-mounting/30021) [20](https://forum.mxlinux.org/viewtopic.php?t=79038)