Infelizmente, a única maneira de fazer isso agora no BTRFS é offline com btrfs check
. Houve alguma discussão no passado sobre a inclusão de provisões para lidar com isso, mas não foi realmente a lugar algum (pelo menos, não publicamente, não tenho ideia do que qualquer desenvolvedor arbitrário possa estar trabalhando).
No entanto, existem algumas alternativas um pouco mais complicadas para fazer isso offline com uma unidade USB, como:
- Se você estiver usando o initramfs e o Systemd, será possível dizer ao systemd para parar o processo de inicialização antes de montar o sistema de arquivos raiz real e soltar-se em um shell. Infelizmente eu não me lembro como fazer isso (eu não uso systemd eu mesmo, então isso nunca acontece para mim), mas pode ser a opção mais fácil se você puder descobrir, porque isso lhe dará um ( principalmente) ambiente completo para recuperação do sistema.
- Geralmente, é possível configurar uma cópia local de um sistema Live USB ou Live CD no disco rígido. Esta é a abordagem que eu tomo, extraindo os arquivos relevantes de um SystemRescueCD ISO e soltando-os na minha partição de inicialização (e em meu caso atualizando o gerenciador de inicialização com uma entrada, embora se você usar o os-prober que deve pegá-lo automaticamente). O conjunto exato de arquivos varia de acordo com o sistema Live, mas para o SystemRescueCD você precisa de um dos kernels, a imagem initramfs, sysrcd.dat e sysrcd.md5.
- Se você tiver algum tempo e paciência para mantê-lo atualizado, você pode usar o Buildroot ou ferramentas semelhantes para criar um imagem que pode ser carregada diretamente por um gerenciador de inicialização e é executada inteiramente a partir da RAM, independentemente do resto do sistema. Você pode agrupar em qualquer ferramenta de recuperação que você quiser (como btrfs-progs), e inicializar quando precisar fazer coisas como essa (isso requer o máximo de esforço, mas usa menos espaço que a opção 2 e é mais confiável que a opção 1 ).
- Em algumas distros, você pode criar uma partição raiz de backup com muita facilidade que contenha as coisas necessárias para corrigir a principal. Isso pode ficar realmente envolvido, e não é a coisa mais fácil de se manter atualizada. O Debian e o Gentoo tornam isso realmente fácil (o Debian tem ferramentas para a configuração inicial, e pode executar atualizações de forma confiável em um chroot, o Gentoo é simplesmente trivial para fazer coisas assim, e nem precisa de um chroot para atualizações pode apontar emerge em um diretório arbitrário para tratar como um diretório raiz)).