Como tornar um instantâneo btrfs gravável?


37

De acordo com o patch de snapshots do btrfs Readonly , é possível "definir um snapshot somente leitura / gravável em tempo real". Portanto, eu deveria poder transformar meu instantâneo somente leitura (criado com btrfs snapshot -r) gravável, de alguma forma.

Mas nem a página de manual do subtrolume btrfs nem qualquer outra parte dessa página de manual parece oferecer uma maneira de fazer isso.


Como solução alternativa, você pode criar uma imagem gravável do seu instantâneo somente leitura. (I fazer isso se eu não tenho a Internet para procurar a esta pergunta)
Matega

Respostas:


42

A página de manual do btrfs falha ao documentar o propertysubcomando, que eu encontrei ao grep'ing a fonte. É também na btrfs --help.

Para definir um instantâneo para leitura e gravação, faça algo assim:

btrfs property set -ts /path/to/snapshot ro false

Altere para truepara configurá-lo como somente leitura.

Você também pode usar listpara ver as propriedades disponíveis:

btrfs property list -ts /path/to/snapshot
ro                  Set/get read-only flag of subvolume.

-tespecifica o tipo de objeto no qual trabalhar, ssignifica subvolume. Outras opções são f(sistema de arquivos), i(inode) e d(dispositivo). Se você não especificar, ele mostrará todos os aplicáveis ​​(para lista) ou tentará adivinhar para obter / definir.

Edit: nas ferramentas btrfs mais recentes, há uma página de btrfs-propertymanual documentando esse subcomando, embora não seja mencionada na página de manual principal. Também está disponível como a página de propriedades btrfs no wiki .

(Nota: Isso requer ferramentas btrfs-novas o suficiente. Aparentemente, no Debian Wheezy, você precisará instalar o atualizado do wheezy-backports; obrigado artfulrobot ).


2
Você também descobrirá que, embora as APIs do kernel evoluam e as distribuições sejam enviadas com kernels cada vez mais novos, os btrfs-toolsencontrados em algumas mesmas distribuições nem sempre estão alinhados. Então, às vezes, você precisava compilar as mais recentes ferramentas btrfs do repositório git upstreams para poder usar os recursos btrfs do seu kernel (pelo menos esse foi o caso há alguns anos).
Stéphane Chazelas

@ StéphaneChazelas Sim, definitivamente. Embora neste caso eu esteja no teste do Debian, que possui o btrfs-tools 3.14, não tão insanamente antigo.
Derobert

11
@mikeserv De fato, parece 3.14.2 dividi-los. Eu tenho o 3.14.1, que é apenas alguns meses mais antigo, de acordo com o kernel.org git . Mas mesmo a página de manual atual não menciona propriedades. Também verifiquei (e vinculei) o atual no wiki. Acontece que é uma página de manual separada e não vinculada a ela.
derobert

Eu precisava instalar o btrfs-tools do Wheezy-backports para que isso funcionasse.
Artfulrobot

@artfulrobot obrigado, observação adicionada à resposta.
derobert
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.