Como dividir um arquivo grande de caixa do Thunderbird sem perder e-mails
Uma pasta do Thunderbird é um único arquivo mbox e, depois de quinze anos, pesa mais que o disco onde começou. Veja como cortá-la em caixas menores — com o Mbox Viewer ou com o mboxShell, nossa ferramenta de terminal de código aberto — e, principalmente, como provar depois que não falta nenhuma mensagem.
Uma pasta do Thunderbird não é uma pasta. É um único arquivo com todas as mensagens que você já recebeu, uma atrás da outra, na ordem em que chegaram. O projeto envelheceu surpreendentemente bem — é por isso que uma caixa escrita em 2004 ainda abre hoje —, mas tem uma consequência que se descobre tarde: depois de quinze anos, sua caixa de entrada é um único objeto de 14 GB, e tudo o que você queira fazer com uma parte dela implica mover o conjunto inteiro.
Cedo ou tarde aparece o motivo para dividir. Um advogado pede a correspondência de um ano. Você sai de uma empresa e só o e-mail do projeto é seu. Você quer o trecho 2008-2015 num disco externo e o resto em uso diário. Ou a pasta simplesmente ficou grande demais e você a quer em fatias que possa fazer backup separadamente.
O conselho que se lê em fóruns é cortar o arquivo com split, com um editor de texto ou com csplit em /^From /. Não faça isso. Aqui está o porquê — e o que fazer no lugar.
Por que cortar um mbox na mão dá errado
Um arquivo mbox é uma concatenação pura: cada mensagem começa com uma linha iniciada por From — a linha de envelope, não o cabeçalho From: — e vai até a próxima. Esse é o formato inteiro.
Corte esse arquivo num byte ou numa linha qualquer e você vai cair no meio de uma mensagem praticamente sempre. A primeira parte termina com metade dos cabeçalhos; a segunda começa com um corpo sem cabeçalho nenhum, que já não é uma mensagem, só texto. Os dois arquivos parecem certos — abrem, têm o tamanho esperado — e o estrago só aparece anos depois, no dia em que você procura justamente aquele e-mail.
Cortar pelo padrão From é mais esperto e continua inseguro. A família mbox escapa uma linha do corpo que comece com From escrevendo-a como >From , mas nem todo programa que já escreveu na sua caixa fez isso, e uma resposta citada pode perfeitamente conter uma linha começada por “From ”. Divida pelo padrão e essa mensagem se rasga em duas: um e-mail vira dois meios e-mails, e nada avisa você.
Que é o problema de fundo de todos os caminhos manuais: eles não dão nenhuma contagem. Você não sabe quantas mensagens entraram, quantas saíram, nem se os números batem. O jeito seguro de dividir uma caixa é tratá-la como correio e não como texto — analisar, selecionar mensagens inteiras e reescrevê-las — e depois conferir a aritmética.
Antes de cortar: três coisas sobre os arquivos do Thunderbird
Cada caixa vive como um arquivo sem extensão dentro do seu perfil:
- Windows:
%APPDATA%\Thunderbird\Profiles\<perfil>\Mail\Local Folders\ - macOS:
~/Library/Thunderbird/Profiles/<perfil>/Mail/Local Folders/ - Linux:
~/.thunderbird/<perfil>/Mail/Local Folders/
Lá dentro você encontra INBOX, Sent, Archives e os nomes das suas pastas, cada um ao lado de um arquivo .msf de mesmo nome. O .msf é só o índice do Thunderbird e pode ser ignorado: ele se refaz sozinho. O arquivo sem extensão é o correio em si, em formato mbox padrão. (Há um passeio mais completo nos nossos guias para macOS e Windows.)
Três regras antes de mexer em qualquer coisa:
Feche o Thunderbird. Ele mantém o arquivo aberto e escreve nele; dividir uma caixa que está recebendo mensagens é o caminho certo para terminar com meia mensagem no fim.
Trabalhe numa cópia. Copie o arquivo da caixa para outro lugar — a área de trabalho serve — e divida a cópia. Nunca tire o original do perfil: o Thunderbird vai dar a pasta como perdida.
Compacte antes, ou saiba o que está levando. Quando você apaga uma mensagem, o Thunderbird a marca e a deixa no arquivo; os bytes só somem quando a pasta é compactada. É por isso que uma pasta que mostra 4.000 mensagens pode ocupar 9 GB. Se dividir sem compactar, essas mensagens apagadas vão junto para os pedaços — e são e-mails perfeitamente legíveis. Clique com o botão direito na pasta → Compactar se não as quiser, e pule essa etapa de propósito se quiser.
Passo 1 — medir antes de cortar
Antes de decidir onde ficam os cortes, veja o que existe de fato no arquivo. O mboxShell, nossa ferramenta de terminal de código aberto (MIT), lê direto os arquivos sem extensão do Thunderbird, não tem limite de tamanho e nunca escreve no arquivo que abre:
$ mboxshell stats INBOX
File INBOX
File size 9.41 GiB
Messages 128,455
Date range 2004-02-11 — 2026-08-19
Index size 14.2 MiB
Indexing time 48.31s
With attachments 19,880 (15.5%)
Duplicates 312 (128,143 Unique IDs)
Anote esses dois números: quantas mensagens e qual a faixa de datas. É contra eles que você vai conferir no final.
Agora planeje os cortes sem produzir nada. O search conta uma fatia para você, então dá para testar limites até os pedaços ficarem do tamanho desejado:
$ mboxshell search INBOX "after:2004-01-01 before:2010-01-01" --json | head -3
{
"result_count": 31204,
after: inclui o próprio dia e before: exclui o dele, então faixas consecutivas escritas assim encaixam exatamente: sem buracos e sem sobreposição. É essa propriedade que faz a conferência final funcionar. A sintaxe de busca completa também permite fatiar por remetente, por tamanho ou por anexo em vez de por data, se for disso que a sua divisão trata.
Passo 2 — cortar a caixa
Com o Mbox Viewer, no Mac ou no Windows, dividir é a exportação que você já conhece:
- Abra a cópia da caixa — o arquivo sem extensão, sem renomear nada.
- Busque a fatia:
after:2004-01-01 before:2010-01-01. - Selecione as mensagens: clique na primeira linha e Shift+clique na última para pegar a faixa inteira.
- Arquivo → Exportar (⌘E) → MBOX. No Windows é Exportar → Para MBOX…, e ali dá para pular o passo 3: sem seleção, ele exporta tudo o que a busca deixou na tela.
Você recebe uma caixa nova, sugerida como INBOX-selection.mbox, com exatamente aquelas mensagens. Elas são copiadas byte a byte, então o resultado é uma caixa válida que qualquer cliente abre, e o arquivo que você abriu nunca é tocado: o app é estritamente somente leitura. Repita para cada fatia. Exportar para MBOX faz parte do nível gratuito; o que o gratuito limita é o tamanho da caixa que você abre, que é 1 GB.
Só com o mboxShell o caminho é outro, e vale dizer com todas as letras: o mboxShell exporta para EML, CSV, texto e HTML, mas não escreve um mbox parcial. Então a via só-terminal é exportar cada fatia como uma pasta de arquivos EML e deixar o Thunderbird reconstruir a caixa na importação:
$ mboxshell export INBOX --format eml --query "after:2004-01-01 before:2010-01-01" --output ./2004-2009/
Exporting 31204 message(s) as eml to ./2004-2009/
Exported 31204 .eml files
É um caminho mais longo, mas é grátis, não tem limite de tamanho e dá para automatizar. A outra metade do trabalho — juntar caixas — essa sim o mboxShell escreve em mbox: mboxshell merge a.mbox b.mbox -o combinado.mbox.
Passo 3 — provar que nada se perdeu
É o passo que separa uma divisão de uma aposta, e quase ninguém dá.
Conte cada pedaço. Rode stats em cada fatia e some as mensagens. O total tem que bater com o que o original dizia. Se ficar curto, um limite está errado; se passar, duas fatias se sobrepõem.
Confira as faixas de datas. A faixa de cada pedaço tem que caber dentro do limite pedido, e os pedaços têm que se encadear sem buraco entre um e o seguinte.
Reconstrua o original e compare. Este é o teste decisivo. Junte os pedaços — a desduplicação por Message-ID vem ligada por padrão — e leia o resumo:
$ mboxshell merge 2004-2009.mbox 2010-2017.mbox 2018-2026.mbox -o rebuilt.mbox
Merge complete:
Input files 3
Total messages 128,455
Duplicates removed 0
Output size 9.41 GiB
Output file rebuilt.mbox
Um “Total messages” igual ao do original e “Duplicates removed” em zero dizem, juntos, que suas fatias eram completas e disjuntas: cada mensagem está em uma, e só uma, delas. Se aparecerem duplicatas, suas faixas se sobrepõem. Se o total for menor, algo caiu entre dois cortes. Nos dois casos você descobre antes de apagar qualquer coisa — que é justamente o objetivo.
Só então é razoável guardar o original longe. E mesmo assim: guarde-o. Discos custam menos que os e-mails que você não consegue recuperar.
Passo 4 — devolver os pedaços ao Thunderbird
Se as fatias vão ficar no Thunderbird como pastas separadas, a extensão gratuita ImportExportTools NG importa um arquivo mbox direto para as Pastas locais como pasta nova — e também sabe importar um diretório de arquivos EML, que é o que fecha a via do mboxShell. Faça isso com o Thunderbird aberto, pela extensão, em vez de largar arquivos no perfil na mão: assim o Thunderbird constrói o próprio índice .msf e sabe o que tem.
E se os pedaços não forem voltar — o ano que vai para o advogado, o arquivo que fica no disco externo —, não precisam voltar. São arquivos mbox padrão. O Mbox Viewer abre, o mboxShell abre, e o que ler e-mail daqui a vinte anos também vai abrir, o que não se pode dizer da maioria dos formatos que vieram depois.
O que não fazer
- Não apague o original enquanto a aritmética do passo 3 não fechar.
- Não divida por bytes nem por linhas com
split,ddou um editor de texto, e nem abra uma caixa de vários gigas num editor. - Não renomeie nem mova o original dentro do perfil. O Thunderbird identifica as pastas pelo nome do arquivo.
- Não confie num pedaço que você não contou. Um arquivo que abre não é a mesma coisa que um arquivo completo.
Abra seu arquivo com o Mbox Viewer
App nativo para Mac e Windows. Processa arquivos MBOX e EML de qualquer tamanho, totalmente offline.