저는 btrfs를 처음 사용합니다. 스냅샷과 롤백을 시도하고 있습니다. 나는 여기에서 대답을 읽었습니다.
아직도 이해가 안 돼요.
내 subvolid=0은 시작 시 설치되지 않습니다. 대신 부팅 시 세 개의 하위 볼륨( root
, /home
및 ) 을 마운트했습니다 /.snapshots
. 루트의 스냅샷을 생성한다고 가정해 보겠습니다.
NOW=$(date +"snapshot-%d-%m-%y-%H-%M-%s")
btrfs subvolume snapshot / /.snapshots/$NOW
그런 다음 일부 패키지를 설치합니다(저는 아치형입니다).
pacman -S vim
내 시스템이 설치하기 불편해서 이전에 만든 스냅샷으로 롤백하고 싶습니다.
opts=defaults,x-mount.mkdir,compress=lzo,ssd,noatime
sudo mount -t btrfs -o subvolid=0,$opts LABEL=system /mnt/btrfs-root
cd /mnt/btrfs-root
mv ./snapshots/$NOW ./rollback-root
mv ./root ./b4-$NOW-root
mv ./rollback-root ./root
cd
umount /mnt/btrfs-root
sudo reboot now
이를 통해 스냅샷 당시 실행 중이던 시스템으로 성공적으로 부팅했습니다.
그러나 이제 더 이상 사용되지 않고 /root
이름이 변경된 새 하위 볼륨이 있습니다 b4-$NOW-root
.
subvolid=0을 마운트하고 하위 볼륨을 삭제하려고 하면 오류 메시지가 나타납니다.
또한 마운트된 하위 볼륨을 보면 vim
bin 디렉터리 중 하나에 내가 설치한 패키지를 볼 수 있습니다.
파일 시스템에서 사용하는 바이트 수도 두 배로 늘어난 것 같습니다. 예상대로 설치 후 한 번, 롤백한 후 다시 한 번. 개념적으로는 왜 이런 일이 발생하는지 이해하지만 두 배나 많은 파일 시스템 바이트를 사용하고 있다는 사실이 "롤백"이라는 문구에 대한 의미론적 이해를 위반하는 것 같습니다. 롤백 시 사전 설치된 시스템에서 사용된 원래 바이트로 되돌릴 수 있는 btrfs 롤백에 대한 몇 가지 모범 사례가 있습니까?