스냅샷을 삭제하려면 btrfs 기본 하위 볼륨을 변경하세요.

스냅샷을 삭제하려면 btrfs 기본 하위 볼륨을 변경하세요.

나는 사용했다도미Fedora 26을 사용하여 btrfs 시스템의 스냅샷을 생성하고 다시 시작하려고 합니다(예: snapper 및 그 밖의 모든 작업 삭제). 그러나 기본 하위 볼륨인 것 같아서 삭제할 수 없는 스냅샷이 있습니다(삭제할 수 있음). 기억나지 않음) 왜 이런 일이 일어나는지, 아마도 롤백을 시도했을 수도 있습니다.)

# snapper delete 535
Deleting snapshot failed.
# btrfs subvolume get-default /
ID 1630 gen 112224 top level 275 path .snapshots/535/snapshot
# btrfs subvolume show /
/
    Name:                   root
    UUID:                   544f9215-4537-fe4b-b1b5-4da21d9abb9c
    Parent UUID:            -
    Received UUID:          -
    Creation time:          2017-07-19 21:28:42 +0100
    Subvolume ID:           257
    Generation:             112591
    Gen at creation:        8
    Parent ID:              5
    Top level ID:           5
    Flags:                  -
    Snapshot(s):

여기서 묻는 내용이 맞는지 잘 모르겠지만 기본 하위 볼륨을 원래 시스템을 설정할 때 가지고 있던 상위(;master;root, 올바른 단어가 확실하지 않음) 볼륨으로 다시 변경하고 싶습니다. 파일 시스템 수준의 최상위(즉, /, 기본 변경 전)에 있습니다.

# btrfs subvolume list / -a -p -t
ID      gen     parent  top level       path
--      ---     ------  ---------       ----
257     112604  5       5               <FS_TREE>/root
258     112604  5       5               <FS_TREE>/home
263     112214  257     257             root/var/lib/machines
275     112593  257     257             root/.snapshots
276     112577  258     258             <FS_TREE>/home/.snapshots
1630    112224  275     275             <FS_TREE>/root/.snapshots/535/snapshot
1639    112604  257     257             root/var/log
1641    111548  257     257             root/mnt/virtualbox

btrfs subvolume set-default이를 달성하기 위해 이들 중 하나를 실행할 수 있습니까 ? /...가 무엇을 의미하는지 잘 모르겠습니다. 기본값을 ID 257의 루트로 변경해야 한다고 생각했지만 실패했습니다.

이 스냅샷의 파일은 이제 /에 있는 파일에 비해 오래되었으므로 /를 스냅샷의 내용으로 덮어쓰고 싶지 않습니다.

답변1

BTRFS 파일 시스템을 마운트하면 마운트하거나 마운트하지 않을 하위 볼륨을 지정할 수 있습니다.

Btrfs 파일 시스템에는 기본 하위 볼륨이 있습니다. 이 하위 볼륨은 처음에 [ID는 항상 5인] 최상위 하위 볼륨으로 설정되고 subvol 또는 subvolid 옵션이 지정되지 않은 경우 마운트됩니다. -https://btrfs.wiki.kernel.org/index.php/SysadminGuide#Snapshots

subvol다음 옵션을 사용하여 파일 시스템을 마운트할 때 기본 하위 볼륨을 재정의할 수 있습니다.

mount /dev/sda / -o subvol=root/.snapshots/535/snapshot

귀하의 경우 롤백을 수행했을 때 하위 볼륨 275가 기본값으로 변경되었습니다.

롤백 [옵션] [수량]

두 개의 새 스냅샷을 생성하고 기본 하위 볼륨을 설정합니다.기본적으로 시스템은 루트 파일 시스템의 기본 하위 볼륨에서 부팅됩니다.-http://snapper.io/manpages/snapper.html

Snapper 매핑 페이지가 여기서 암시하는 것은 루트 파일 시스템의 마운트 지점이 다음과 같을 것으로 예상한다는 것입니다.아니요하위 볼륨을 지정합니다. 그렇지 않으면 롤백 명령이 옵션에 의해 재정의되므로 아무런 효과가 없습니다 subvol.

원래 기본 하위 볼륨은 최상위 수준(ID 5)이었습니다. 물론 btrfs subvolume set-default다시 기본값으로 설정할 수도 있지만... 그렇게 하면 안 될 수도 있습니다.

535 하위 볼륨에서 부팅한 경우 시간이 지남에 따라 해당 하위 볼륨에 많은 변경 사항이 누적되었을 수 있습니다. 최상위 하위 볼륨으로 복원한다는 것은 의미합니다.손실나는 이러한 변화라는 단어를 사용합니다.손실다른 하위 볼륨에만 변경 사항이 여전히 존재한다는 점을 고려하면 여기서는 너무 느슨합니다.

관련 정보