저는 btrfs를 처음 접했고 파티셔닝 및 하위 볼륨 전략에 대한 조언을 듣고 싶습니다. 시스템은 경량 웹 서버이며 단일 디스크만 있다고 가정합니다.
ext 파일 시스템을 사용하면 항상 /, /var, 스왑(및 /boot 및 /home)에 대해 별도의 파티션을 만들었습니다. 나에게 있어 /var에는 항상 중요한 웹 서버 데이터(예: MySQL 데이터베이스)가 모두 포함되어 있고 코드는 포함되어 있지 않습니다. 이를 통해 데이터를 다른 시스템으로 쉽게 이동하거나(/var 이동 또는 복사) 데이터를 중단하지 않고 OS를 다시 설치할 수 있습니다(재포맷/).
btrfs를 사용하면 동일한 작업을 수행하고 동일한 파티션 구성표를 사용할 수 있으며 각 파티션에 별도의 btrfs 파일 시스템을 가질 수 있습니다. 또는 단일 파티션을 갖고 /, /var 등에 대해 btrfs 하위 볼륨을 사용할 수 있습니다. 그것의 장점과 단점은 무엇입니까?
/전용 및 /var 전용 스냅샷을 사용하면 몇 가지 이점이 있을 수 있는 것 같습니다(예: "모든 데이터를 이전 체크포인트로 복원" vs "모든 코드 복원" vs "둘 다 복원"). 그렇습니까, 아니면 그렇게만 나타납니까?
보너스 질문: btrfs 파일 시스템 아래에서 lvm을 사용하면 이점이 있습니까?
보너스 질문 2: 시스템에 동일한 크기의 디스크가 두 개 있다면 조언이 어떻게 바뀌겠습니까?
"이것이 내가 한 일이고 그것이 나에게 어떻게 작용했는지" 기사에 대한 조언도 감사하겠습니다. 내가 할 수 있는 일에 대한 많은 자료를 찾을 수 있지만 "이것이 내가 시도한 것이고 이것이 작동했거나 작동하지 않은 이유입니다"라고 말하는 것을 많이 찾지 못했습니다.
답변1
특별한 요구 사항이 없으면 다른 파일 시스템을 사용하는 것처럼 btrfs를 사용하십시오. /home을 분리하는 것이 좋습니다.
개인적으로 홈 서버에서 유일한 하위 볼륨은 /etc이므로 구성의 스냅샷을 만들 수 있습니다. 이는 snapper와 같은 도구를 사용하여 자동화할 수 있습니다.
일반적으로 /lib/stuff도 복원해야 하기 때문에 /var의 이전 버전만 복원하는 데에는 관심이 거의 없습니다. 그것은 전부 아니면 전무(all-or-nothing) 상황이다.
/home의 스냅샷은 매우 클 수 있으므로 디스크 크기 관리가 곧 문제가 됩니다. 문제없이 할 수 있지만 남은 공간을 잘 살펴보세요. 또한 스냅샷은 동일한 디스크에만 생성 가능하므로 디스크 장애 시 백업을 위한 솔루션이 아닙니다. "앗, 이 파일을 2시간 전에 삭제했는데 아직도 필요해요"와 같은 상황을 위한 것으로 생각해보세요.
보너스 1 : 없음. 실제로 btrfs는 mdadm+lvm+fs 스택을 단순화하기 위해 설계되었습니다. 그러니 피하는 것이 정말 좋습니다.
보너스 2: 아니요, 하지만 RAID 1을 만드세요! 간단하고 효율적이므로 데이터가 마음에 들 것입니다 :)
닌자 보너스: 당신은 아마도 닌자를 잘 보고 싶을 것입니다.btrfs 위키.
답변2
나는 최근에 이것을 다시 방문했고 하위 볼륨을 포함하는 최상위 디렉토리가 있는 하나의 파티션을 제안하는 매우 신중한 게시물을 공유하고 싶다고 생각했습니다.https://bbs.archlinux.org/viewtopic.php?id=194491
TL;DR
subvolid=0
├── subvol_root
│ └── /usr, /bin, /sbin, /.snapshots, etc
├── subvol_snapshots
├── subvol_home
└── subvol_opt