TrueNAS 부팅 안될 때 자동백업파일 추출하기(2)

개요

얼마 전 TrueNAS의 boot-pool에서 백업파일을 추출하는 글을 작성한 적이 있습니다.

TrueNAS 부팅 안될 때 설정파일 추출하기(1)

그러나 해당 글을 통해 추출한 파일은 기초설정만 살아있는 파일로, share 목록 등은 건져내지 못합니다.

이번 글은, TrueNAS에서 매일 자동 백업되는 설정파일을 추출하는 글입니다.

추출 환경 준비하기

우분투를 사용할 수 없는 이유

이전 글은 우분투를 사용했지만, TrueNAS 24버전 기준에 맞게, 모든 ZFS풀의 업그레이드를 마쳤다면, 아래처럼 오류가 나며 zpool import를 할 수 없게 됩니다.

root@ubuntu:~# zpool import -f -o readonly=on storage
This pool uses the following feature(s) not supported by this system:
        com.klarasystems:vdev_zaps_v2
cannot import 'storage': unsupported version or feature

해당 ‘com.klarasystems:vdev_zaps_v2’ 속성이 readonly도 막아버리기 때문입니다(readonly compatitable=no).

다행히 Proxmox에서는 이 zpool을 무리없이 import할 수 있으므로 Proxmox에서 수행해보겠습니다.

System Dataset에서 설정 파일 추출하기

Proxmox에 MobaXterm등을 이용해 SSH로 접속합니다.
(Proxmox 웹 환경에서 바로 Shell을 쓸 수 있는데 굳이? 싶으시겠지만, 추출해낸 파일을 편하게 다운받으려면 이 방법이 좋기 때문입니다.)

TrueNAS에서 사용하던 디스크를 연결한 뒤 zpool import를 입력합니다.

해당 명령어는 import되지 않은 zpool을 모두 보여줍니다.

root@fenta:~# zpool import

그러면 아래처럼 결과를 볼 수 있습니다.

   pool: media
     id: 15878658031923720337
  state: ONLINE
status: The pool was last accessed by another system.
 action: The pool can be imported using its name or numeric identifier and
        the '-f' flag.
   see: https://openzfs.github.io/openzfs-docs/msg/ZFS-8000-EY
 config:

        media                                     ONLINE
          raidz2-0                                ONLINE
            76ade51e-d42e-11ed-b4f8-4dc133087d01  ONLINE
            76998f64-d42e-11ed-b4f8-4dc133087d01  ONLINE
            76d94ab3-d42e-11ed-b4f8-4dc133087d01  ONLINE
            76725110-d42e-11ed-b4f8-4dc133087d01  ONLINE
            76e38bb2-d42e-11ed-b4f8-4dc133087d01  ONLINE
            76cfc3c4-d42e-11ed-b4f8-4dc133087d01  ONLINE
            76a326bf-d42e-11ed-b4f8-4dc133087d01  ONLINE
            768f2118-d42e-11ed-b4f8-4dc133087d01  ONLINE

   pool: pds
     id: 13393763003900774857
  state: ONLINE
status: The pool was last accessed by another system.
 action: The pool can be imported using its name or numeric identifier and
        the '-f' flag.
   see: https://openzfs.github.io/openzfs-docs/msg/ZFS-8000-EY
 config:

        pds                                       ONLINE
          raidz2-0                                ONLINE
            58d23d72-cba5-4f31-8cd6-b2cce39f983d  ONLINE
            7eb708bd-778b-47eb-927e-a44c14ea213e  ONLINE
            4661a086-4801-4953-a8bb-b838fa5a35a6  ONLINE
            bfa006b4-0478-4d00-8ac9-7bf8530ee7c7  ONLINE

   pool: k8s
     id: 10260077198865834824
  state: ONLINE
status: The pool was last accessed by another system.
 action: The pool can be imported using its name or numeric identifier and
        the '-f' flag.
   see: https://openzfs.github.io/openzfs-docs/msg/ZFS-8000-EY
 config:

        k8s                                       ONLINE
          mirror-0                                ONLINE
            7459ccbe-94c6-4f63-8d42-bf8cc0ec0350  ONLINE
            f3acf0d8-01e5-4117-8fc7-4cb9ad7d6d10  ONLINE

   pool: storage
     id: 11822224687889589541
  state: ONLINE
status: The pool was last accessed by another system.
 action: The pool can be imported using its name or numeric identifier and
        the '-f' flag.
   see: https://openzfs.github.io/openzfs-docs/msg/ZFS-8000-EY
 config:

        storage                                   ONLINE
          raidz2-0                                ONLINE
            04eab04b-01f9-481e-9683-30d6b2970a85  ONLINE
            046ffc38-c861-4a6e-89c5-558102bce9ed  ONLINE
            134078e5-b246-4de5-8f71-25827cf2386d  ONLINE
            0337af98-4ac2-4c9a-9591-fb7339ad246a  ONLINE

TrueNAS의 System Dataset은 보통 제일 먼저 생성된 풀에 만들어집니다.

그러나, 어떤 풀을 먼저 만들었는지 기억 못할 수도 있고, 저처럼 환경을 바꾸면서 통째로 import하면서 기억이 안날 수도 있습니다 =ㅅ=;

그러니 media풀부터 하나씩 import해보겠습니다.

root@fenta:~# zpool import media -f
root@fenta:~# zfs list
NAME                                                     USED  AVAIL  REFER  MOUNTPOINT
.
.
media                                                   36.6T  25.3T   239K  /media
media/.system                                           2.39G  25.3T  1.23G  legacy
media/.system/configs-ae32c386e13840b2bf9c0083275e7941  7.74M  25.3T  5.64M  legacy
media/.system/cores                                      205K  1024M   205K  legacy
media/.system/netdata-ae32c386e13840b2bf9c0083275e7941  1.14G  25.3T   460M  legacy
media/.system/samba4                                    5.64M  25.3T   717K  legacy
media/VA                                                1.03T  25.3T  1.03T  /media/VA
media/backup                                            4.37T  25.3T  4.37T  /media/backup
media/media                                             31.1T  25.3T  31.1T  /media/media
rpool                                                   80.9G   369G   104K  /rpool
rpool/ROOT                                              80.8G   369G    96K  /rpool/ROOT
rpool/ROOT/pve-1                                        80.8G   369G  80.8G  /
rpool/data                                                96K   369G    96K  /rpool/data

한 방에 찾았네요..=ㅅ=?

media/.system/configs-블라블라 폴더가 저희가 접근해야 하는 폴더입니다.

TrueNAS UI에서 우리가 생성해서 사용했던 dataset들은 자동적으로 마운트포인트가 잡히지만(마운트가 이루어지지만),

system dataset은 그렇지 않으므로, 마운트할 경로를 생성하고 마운트해주면 됩니다.

root@fenta:~ mkdir -p /mnt/databackup
root@fenta:~# mount -t zfs media/.system/configs-ae32c386e13840b2bf9c0083275e7941 /mnt/databackup
root@fenta:~# ls /mnt/databackup

그러면 아래처럼, 버전이 명시된 폴더를 확인할 수 있습니다.

해당 폴더 안의 내용을 들여다보면, 일별로 자동저장된 설정파일을 확인할 수 있습니다.

root@fenta:~# ls /mnt/databackup/TrueNAS-SCALE-24.04.2

Proxmox에 root로 로그인했다면 이대로 다운로드 받으면 되고, 아니라면 다른 곳에 복사, 권한 부여 후 다운로드 받으면 됩니다.

다운로드 후 Proxmox에서는 해당 zpool을 다시 제거해야 합니다.

root@fenta:~# zpool export media  

복원은 이전 글과 마찬가지로 진행하시면 됩니다.

마무리

Proxmox환경에서 부팅디스크 이미지 파일로 사용하는 TrueNAS는 많이 불안정한가 봅니다.

이 글을 두 번째 작성하게 되는 이유는, TrueNAS를 재부팅할 때 setting up plugins 단계에서 7분을 기다려도 middleware를 시작하지 못하다가 결국

middleware is not running 상태로 빠지면서 부팅에 실패했기 때문입니다.

레딧 등을 찾아보니, USB드라이브 등을 이용한 부팅 환경에서 많이 발생하는 것 같네요.

버전이 높아지면서 기능도 많아지고 무거워지다보니 이런 일이 발생하는건가 싶습니다.

복구하는 TrueNAS는 SSD를 패스스루해줄 예정입니다…ㅠ

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

위로 스크롤