리눅스 팁 & 테크

조회 수 488 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

이제 우리가 원하는 롤백이 잘되는지 확인할 차례입니다.

(부트로더 다루는 것이 쉽지 않네요.ㅜㅜ)

 

나중에 실제 시스템에 적용하실 때에는  opensuse의 서브볼륨을 사용해 보십시오.

@, @var, @usr/local, @srv, @root, @opt, @home

 

원본 : https://dawoum.ddns.net/wiki/Ubuntu/20.04#Manage_btrfs

 

가상 기계에 설치된 우분투 20.04를 ext4에서 btrfs으로 전환했을 때, 필요한 내용을 기록해 둡니다.

Make sub volume

간혹, 부팅이 되지 않는 경우가 있는데, grub이 바뀌는 과정이 끝나기 전에 가상 기계를 강제 부팅해서 그런 것으로 판단됩니다. 따라서, 마지막 update-grub을 수행한 후에, grub.cfg에서 UUID가 새로운 것으로 바뀌었는지 확인을 하시기 바랍니다. 아니면, 라이브시디로 부팅한 것을 정상적으로 종료하고, 하드디스크로 부팅을 시도해 보시기 바랍니다!!

가상 기계에 설치된 우분투 22.04에서, 하나의 ext4 / 파티션을 /, /home 2개의 서브 파티션으로 나누는 과정입니다.

  • sudo su
  • lsblk
/dev/vda1 /boot/efi vfat, /dev/vda5 / ext4
  • fsck.ext4 -fyv /dev/vda5
  • btrfs-convert /dev/vda5
  • mount /dev/vda5 /mnt
  • btrfs subvolume list /mnt
  • cd /mnt
  • btrfs subvolume snapshot ./ ./@
  • btrfs subvolume create @home
  • cp -a home/* @home
  • /mnt 아래에 @, @home 및 ext2_saved를 제외한 모든 디렉토리와 파일을 제거
  • rm -rf @/home/*
  • cd
  • umount /mnt
  • mount -o subvol=@ /dev/vda5 /mnt
  • mount -o subvol=@home /dev/vda5 /mnt/home
  • mount -t vfat /dev/vda1 /mnt/boot/efi
  • for fs in proc sys dev dev/pts; do mount --bind /$fs /mnt/$fs; done
  • chroot /mnt /bin/bash
  • blkid /dev/vda5
  • nano /etc/fstab
UUID=.....    /      btrfs   noatime,subvol=@,compress=zstd:1   0    1
UUID=.....    /home  btrfs   noatime,subvol=@home,compress=zstd:1   0    1
  • grub-mkconfig -o /boot/grub/grub.cfg
  • update-initramfs -u
  • grub-install /dev/vda
  • update-grub
확인
  • cat /boot/grub/grub.cfg

Manage btrfs

파티션 테이블을 봅니다

  • lsblk
  • df -h | grep vda
/dev/vda5        25G   12G   13G  49% /
/dev/vda5        25G   12G   13G  49% /home
/dev/vda1       511M  4.0K  511M   1% /boot/efi

시스템 전체의 서브 볼륨을 확인합니다:

  • sudo btrfs subvolume list /
ID 256 gen 3 top level 5 path ext2_saved
ID 257 gen 517 top level 5 path @
ID 258 gen 518 top level 5 path @home

관련 프로그램을 설치합니다:

  • sudo apt install snapper apt-btrfs-snapshot

루트 설정을 만듭니다:

  • sudo snapper -c root create-config /
  • sudo btrfs subvolume list /
ID 256 gen 3 top level 5 path ext2_saved
ID 257 gen 592 top level 5 path @
ID 258 gen 592 top level 5 path @home
ID 268 gen 592 top level 257 path .snapshots

스냅샷을 별도로 관리하고 싶기 때문에, 서브 볼륨 root 아래에 두지 않고, vda5 바로 아래에 두기를 원합니다. 이전의 서브 볼륨을 지웁니다:

  • sudo btrfs subvolume delete /.snapshots
  • sudo mkdir /.snapshots
  • sudo mkdir /mnt/btrfs
  • sudo mount /dev/vda5 /mnt/btrfs
  • cd /mnt/btrfs
  • ls
@  ext2_saved  @home
  • sudo btrfs subvolume create @snapshots
  • ls
@  ext2_saved  @home  @snapshots
  • cd ..
  • sudo umount /mnt/btrfs
  • sudo rmdir /mnt/btrfs
  • cd
  • sudo nano /etc/fstab
UUID=xxx  /             btrfs   subvol=@,compress=zstd:1 0 0
UUID=yyy  /boot         ext4    defaults        1 2
UUID=xxx  /home         btrfs   subvol=@home,compress=zstd:1 0 0
UUID=xxx  /.snapshots   btrfs   subvol=@snapshots 0 0
  • sudo mount -a

확인하기

  • mount |grep btrfs
/dev/vda5 on / type btrfs (rw,noatime,compress=zstd:1,space_cache,subvolid=257,subvol=/@)
/dev/vda5 on /home type btrfs (rw,noatime,compress=zstd:1,space_cache,subvolid=258,subvol=/@home)
/dev/vda5 on /.snapshots type btrfs (rw,relatime,compress=zstd:1,space_cache,subvolid=269,subvol=/@snapshots)

서브 볼륨의 기본 볼륨을 root 서브 볼륨으로 바꿉니다:

  • sudo btrfs subvolume get-default /
ID 5 (FS_TREE)
  • sudo btrfs subvolume set-default 256 /
  • sudo btrfs subvolume get-default /
ID 256 gen 3 top level 5 path ext2_saved

그럽에서 rootflags=subvol=@를 제거하고 부팅을 해야 하는데, 이 과정을 해야 롤백이 됩니다.

  • sudo apt install grub-customizer

오류가 발생합니다:

  • sudo rm /etc/apt/apt.conf.d/80-btrfs-snapshot
  • sudo apt install grub-customizer
rootflags=subvol=@를 찾아서 공백으로 바꿔치기 하고 저장합니다.
  • sudo update-grub
  • reboot

바뀐 내용 확인

  • sudo btrfs subvolume get-default /
ID 256 gen 4822 top level 5 path root

부트로더에서 옵션을 제거하고 재부팅 후에, imitram 프롬트트가 올라오고 부팅이 되지 않을 수 있습니다. 부팅을 이어서 하면, 커널 패닉이 발생할 수 있습니다. 커널을 최신 커널로 올리고 테스트해 보십시오!! 5.15.5 커널을 사용했습니다.

Snapper

이제, 스냅샷을 다루는 것에 대해 알아보려고 합니다.

  • sudo snapper ls

이제 하나의 프로그램을 설치해 봅니다:

  • sudo apt install neofetch
  • sudo snapper ls
 # | Type   | Pre # | Date                            | User | Cleanup | Description | Userdata
---+--------+-------+---------------------------------+------+---------+-------------+---------
0  | single |       |                                 | root |         | current     |         
1  | single |       | Mon 29 Nov 2021 01:09:14 AM KST | root | number  | boot        |         
2  | pre    |       | Mon 29 Nov 2021 01:12:46 AM KST | root | number  | apt         |         
3  | post   |     2 | Mon 29 Nov 2021 01:12:48 AM KST | root | number  | apt         |     
  • neofetch
실행됩니다.

이제 neofetch가 설치되기 전의 상태로 돌아가 보겠습니다:

  • sudo snapper rollback 2
Creating read-only snapshot of current system. (Snapshot 4.)
Creating read-write snapshot of snapshot 2. (Snapshot 5.)
Setting default subvolume to snapshot 5.

위에서 오류가 발생하면 아래와 같이 입력해 보십시오.

  • sudo snapper --ambit classic rollback 2

이제 확인을 합니다:

  • sudo snapper ls
  • reboot
롤백이 되는지 확인하려고 합니다.

리부팅 후에 터미널을 열어서 neofetch를 입력해도 실행되지 않습니다. 정상적으로 롤백이 되었음을 알 수 있습니다:

  • sudo snapper ls

이제 neofetch가 설치된 3번으로 롤백해 보겠습니다:

  • sudo snapper rollback 3
Creating read-only snapshot of current system. (Snapshot 6.)
Creating read-write snapshot of snapshot 3. (Snapshot 7.)
Setting default subvolume to snapshot 7.
  • reboot

리부팅 후에 터미널을 열어서 neofetch를 입력하면 실행됩니다. 정상적으로 롤백이 되었음을 알 수 있습니다:

  • sudo snapper ls

필요없는 스냅샷을 지워 보겠습니다:

  • sudo snapper delete 4
  • sudo snapper ls

  1. 유튜브 프리미엄 우회 결제 - 우크라이나

    Date2023.12.17 ByKevin Views4183 Votes1
    read more
  2. 리눅스에서 자기 노트북의 모델명이 무엇인지 궁금할때는 dmidecode

    Date2023.12.17 ByKevin Views375 Votes1
    read more
  3. 하드웨어 호환성을 확인하고 싶을 때는 linux-hardware.org 를 사용해보세요

    Date2023.11.23 ByKevin Views699 Votes0
    read more
  4. 하모니카 7.0 카카오톡 hidpi 설정하기

    Date2023.11.22 ByKevin Views474 Votes0
    read more
  5. 리브레오피스에서 hwp 사용하기

    Date2023.10.11 By타조 Views1071 Votes0
    read more
  6. 산돌이네 님을 위해 글을 하나 더 작성하기로 결정......

    Date2023.01.05 ByKongS Views264 Votes0
    Read More
  7. 하모니카 6.0 간단 사용기

    Date2022.11.21 ByJapser Views549 Votes0
    Read More
  8. hamonikr 5.0 에서 저장소를 삭제했는데 다시 추가하려고 합니다

    Date2022.05.19 ByJapser Views397 Votes0
    Read More
  9. lutris 설치된 카카오톡 실행할때마다 업데이트 받는문제?

    Date2022.05.19 ByJapser Views436 Votes0
    Read More
  10. Lenovo ThinkPad T15 Gen2i 설치기

    Date2022.05.13 ByJapser Views526 Votes0
    Read More
  11. 도커, 쿠버네티스, CKA 교육 ??

    Date2022.03.03 ByRedHat Views262 Votes0
    Read More
  12. nvidia 설치 문제 발생시 해결 방법

    Date2022.01.08 By떠똘2 Views465 Votes0
    Read More
  13. arkzip 없이 압축파일 한글깨질때 해결 방법

    Date2022.01.08 By떠똘2 Views490 Votes0
    Read More
  14. 리눅스용 스마트폰 커스트롬 키친 프로그램 jodin3

    Date2022.01.01 By떠똘2 Views599 Votes0
    Read More
  15. 윈도우10과 리눅스 사용시 윈도우하드 마운트시 읽기 전용 나올때 해제 방법

    Date2021.12.27 By떠똘2 Views612 Votes0
    Read More
  16. #!/bin/bash /bin/sh 의 차이점

    Date2021.12.13 ByJapser Views1720 Votes0
    Read More
  17. ext4 파일 시스템 btrfs으로 전환하기(2)

    Date2021.11.29 By유리 Views488 Votes0
    Read More
  18. ext4 파일 시스템 btrfs으로 전환하기.

    Date2021.11.26 By유리 Views1044 Votes0
    Read More
  19. 코모도백신 설치후 한글화 방법

    Date2021.09.24 By떠똘2 Views687 Votes0
    Read More
  20. kime 한글 추천합니다

    Date2021.08.28 By떠똘2 Views1307 Votes0
    Read More
  21. 데비안 11 세팅 및 사용기 - 추가로 데비안 사용시 주의사항

    Date2021.10.31 ByMoordev Views2762 Votes0
    Read More
  22. [소개]리눅스용 치트엔진 비슷한프로그램

    Date2021.07.19 By떠똘2 Views1218 Votes0
    Read More
  23. [소개 ]컴퓨터 작곡 프로그램 musescore3 콩나물 달면 미디음악이 재생되네요

    Date2021.07.14 By떠똘2 Views1027 Votes0
    Read More
  24. idm 인터넷 다운로드 대용 프로그램 xdm 소개 합니다

    Date2021.07.10 By떠똘2 Views2756 Votes0
    Read More
  25. 하모니카 진과 우분투 20.04 cpu 정보 정보 보는 프로그램 소개 cpu-x

    Date2021.06.06 By떠똘2 Views1084 Votes0
    Read More
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 47 Next
/ 47
CLOSE