Fiz uma busca na Support, mas não encontrei uma resposta existente, então peço desculpas pela pergunta rápida de suporte:
Temos usado o S3 para armazenar arquivos do Discourse desde cerca de 2016. Ao examinar a raiz do bucket S3, fiquei surpreso ao ver uma estrutura de diretórios “acima” do que eu esperava encontrar, como optimized/, original/, etc.
Vocês acham que é seguro remover os diretórios numerados na raiz, como 99/, devido talvez a uma cópia equivocada que ocorreu há muito tempo? É possível que eles tenham sido copiados para o local errado há muito tempo. Será que os posts teriam caminhos antigos “incorporados” a esses locais que eu não quero quebrar?
Veja como está a aparência, e meu objetivo é limpá-la (se for necessário):
Acho que talvez sejamos um pouco estranhos porque estamos rodando o Discourse desde cerca de 2015 e mudamos os locais de armazenamento ao longo dos anos.
Começamos usando armazenamento local para arquivos, crescemos um pouco e depois migrámos para uploads armazenados no S3. Naquela época, não acredito que tenhamos movido os arquivos existentes, recriando as postagens, então as postagens mais antigas ainda usam URLs de armazenamento não local.
Uma coisa que devo destacar é que não vamos remover nada como está agora, porque, mesmo que a organização tenha mudado ao longo dos anos, estamos falando de números pequenos, onde é mais seguro deixar o que já temos de qualquer forma.
Além de uma grande quantidade de diretórios numerados, de 1/ até 225/. Cada diretório numerado contém um único arquivo de imagem, com um nome como ‘874c0706216382af.jpg’.
O tombstone tem uma regra de ciclo de vida no S3 para ser marcado como excluído após 30 dias.
Então, chutando, seriam apenas optimized/, original/ e tombstone/ que são utilizados?
Esses arquivos sempre estiveram presentes em fóruns muito antigos (por volta de 2014). Acredito que eles sejam anteriores a optimized e original, e suspeito que ainda estejam sendo referenciados.
Não pude resistir em descobrir isso. Este é, de fato, um esquema de upload antigo. Ele foi abandonado mais tarde do que eu suspeitava, em maio de 2015, com este commit.
Esses uploads ainda estão sendo usados, então não os remova!
Obrigado, Michael. Como esses arquivos são do início da nossa jornada em 2014, os números dos arquivos são pequenos e vamos mantê-los onde estão.
Curiosamente, mudamos de servidor recentemente e optamos por um caminho de backup/restauração do Discourse (em vez de fazer uma atualização no local da versão base do Unix). Acredito que (embora não tenha 100% de certeza) a restauração não colocou esses arquivos locais corretamente. Eles estavam contidos no arquivo de backup, mas o processo de restauração pareceu funcionar apenas para os arquivos otimizados/originais.
Não foi um grande problema, pois pudemos extrair os arquivos manualmente do arquivo de backup com tar -x (quando notamos que os servidores antigo e novo tinham diferenças em seus uploads/conteúdos), mas é algo que poderia causar confusão para alguém, então quis mencionar aqui.
Embora 99,9% dos nossos uploads sejam servidos a partir do S3 atualmente (migramos de arquivos locais para o S3 relativamente cedo), acredito que devemos ter copiado os arquivos locais quando criamos manualmente o bucket S3 inicialmente. Em retrospecto, provavelmente deveríamos ter recriado os posts, mas sempre funcionou bem o suficiente, já que os posts muito pequenos (e antigos) tinham a URL de upload de arquivo local.