← Voltar ao Blog
Tutorials & How-Tos

Bibliotecas externas do Immich: guia para um arquivo de fotografias apenas de leitura

As bibliotecas externas do Immich podem oferecer uma vista pesquisável das pastas de fotografias existentes, enquanto uma montagem apenas de leitura limita as operações de escrita nos originais. Este guia compara opções de armazenamento e propõe um projeto-piloto com uma pasta pequena, com verificações de caminhos, propriedade, análises, preparação da pesquisa e limitações dos metadados XMP.

Escrito por Hamza Diaz
29 de outubro de 202610 min de leitura63 visualizações

Suponha que as suas fotografias já estão organizadas em pastas nas quais confia. Pretende uma cronologia pesquisável sem entregar a outra aplicação o controlo dos originais. As bibliotecas externas do Immich podem indexar essas pastas, enquanto uma montagem apenas de leitura restringe as operações de escrita através dessa ligação. Existem limites: a indexação não acrescenta uma cópia de segurança, as alterações exigem análises e algumas edições de metadados na aplicação podem não ficar guardadas.

Este guia ajuda a decidir se essa configuração se adequa ao seu arquivo. Propõe um projeto-piloto com uma pasta pequena numa instalação Docker existente e autorizada. O projeto-piloto não foi executado; não é um tutorial de instalação completo nem um teste comparativo de pesquisa.

Escolher entre carregamentos geridos e uma biblioteca externa

Quando as pastas existentes devem continuar a ser a referência

Comece por definir quem controla os originais. Uma biblioteca externa acompanha ficheiros fora do armazenamento gerido pelo Immich e cria itens na base de dados para consulta. Os carregamentos geridos colocam os originais no armazenamento gerido pelo Immich, tal como descrito na documentação de armazenamento. Escolha em função do local onde pretende manter o arquivo.

DecisãoCarregamentos geridosBiblioteca externa apenas de leitura
Localização dos originaisArmazenamento gerido pelo ImmichPastas de origem existentes
Organização das pastasGerida pelo ImmichMantida fora do Immich
Deteção de alterações externasNão é um fluxo de trabalho com pastas externasRequer uma análise ou atualização adequada
Utilização previstaColeção gerida pelo ImmichConsulta de um arquivo mantido externamente
Armazenamento ainda necessárioOriginais e dados da aplicaçãoBase de dados e itens gerados, além dos originais existentes

Como explica a documentação das bibliotecas externas, a indexação dispensa o carregamento de uma cópia gerida desses originais. Continua a ser necessário espaço para a base de dados e os itens gerados. Reserve capacidade para ambos.

O relato de Jaisen Mathai sobre a sua experiência oferece um exemplo concreto: mantém o Elodie como organizador do arquivo e utiliza pastas externas apenas de leitura com o Immich. A escrita de dados EXIF de volta nos ficheiros depende de uma integração personalizada. Considere-a uma configuração pessoal, não uma capacidade integrada nem o resultado de uma implementação da Optijara.

A distinção entre uma origem e as suas cópias também importa ao preparar exportações de imagens e recursos ligados. Esse guia aborda a entrega de materiais por criadores, em vez da configuração do Immich, mas a decisão sobre o controlo dos originais é semelhante.

Distinguir o arquivo, o caminho no contentor e o proprietário da biblioteca

Uma montagem apenas de leitura limita a escrita, não define uma política de acesso

A pasta no sistema anfitrião tem um caminho. Dentro de um contentor, a mesma pasta pode ter um caminho diferente. Nenhum dos caminhos indica ao Immich qual a conta que deve ser proprietária da biblioteca. Segundo as instruções sobre propriedade e caminhos, seleciona-se um único proprietário na criação, sem possibilidade de o alterar posteriormente. O acesso de administrador não torna todos os utilizadores proprietários.

O sufixo :ro impede o Immich de eliminar originais ou escrever ficheiros auxiliares através da montagem de origem. As aplicações no sistema anfitrião continuam a poder alterar esses ficheiros. As permissões de visualização e as cópias de segurança exigem atenção separada. Siga o guia de montagem: adicione uma montagem externa distinta, mantenha ${UPLOAD_LOCATION}:/data e conserve todas as montagens geridas existentes.

Este é o percurso de leitura proposto. Não foi efetuada qualquer implementação para este artigo.

flowchart TD A[Pasta de amostra no anfitrião] --> B[Montagem apenas de leitura no contentor] B --> C[Análise da biblioteca externa] C --> D[Base de dados e itens gerados] D --> E[Consulta e pesquisa pelo proprietário]

A base de dados e os itens gerados continuam a precisar de armazenamento da aplicação com permissão de escrita. Apenas a montagem de origem é de leitura.

Realizar um projeto-piloto com um pequeno arquivo apenas de leitura

Montar e mapear uma pasta de amostra

Utilize a lista de verificação proposta, Montar, Mapear, Analisar, Verificar, para limitar a dimensão da primeira tentativa. É um método editorial, não uma funcionalidade do Immich nem um processo testado pela Optijara. Antes de começar, confirme que o Docker Compose funciona e que tem autorização de administrador. Escolha ficheiros multimédia de amostra sem dados sensíveis e com permissões de leitura. Exclua do projeto-piloto as fotografias privadas em produção.

  1. Montar. Adicione a entrada seguinte à lista volumes do serviço immich-server existente. Substitua o marcador em maiúsculas pelo caminho absoluto da pasta de amostra no anfitrião. Mantenha todas as montagens geridas existentes. Este excerto ilustrativo está incompleto e não foi executado; não serve como ficheiro Compose autónomo.
- /ABSOLUTE/HOST/SAMPLE:/mnt/photos-source:ro

Aplicar a alteração requer uma ação separada do operador. Siga o guia oficial para atualizar as montagens. Não é comunicado aqui qualquer reinício de contentores.

  1. Mapear. Confirme que /mnt/photos-source tem acesso de leitura dentro de todos os contentores relevantes, sejam servidores ou processos de trabalho separados. Verifique as permissões efetivas. As orientações de resolução de problemas destacam a ausência de montagens nos processos de trabalho e os problemas com ligações simbólicas, por isso não assuma que uma ligação simbólica entre montagens irá funcionar.

Crie a biblioteca em Administração > Bibliotecas externas e selecione o proprietário pretendido. Introduza /mnt/photos-source como caminho de importação. /ABSOLUTE/HOST/SAMPLE pertence ao anfitrião; o Immich precisa do diretório visível dentro dos seus contentores. Pare se esse diretório estiver inacessível.

Analisar e verificar antes de alargar

  1. Analisar. Adicione exclusões antes da análise. Por exemplo, utilize /Raw/ apenas se pretender excluir os diretórios chamados Raw e o respetivo conteúdo, não todos os ficheiros em formato raw. As regras documentadas para os padrões correspondem a caminhos completos de forma recursiva e não distinguem maiúsculas de minúsculas. Em seguida, inicie a análise da biblioteca.
  1. Verificar. Registe o que observa. A tabela abaixo é um plano de medição proposto, não constitui prova de testes realizados.
VerificaçãoObservar antes de alargarGuardar como prova
Amostra incluídaO nome de ficheiro conhecido aparece para o proprietário pretendidoNome do ficheiro, proprietário, observação
Amostra excluídaO item deliberadamente excluído não aparecePadrão e resultado observado
ProcessamentoAs tarefas relevantes avançam sem erros por explicarEstado das tarefas e notas sobre erros
Limite de escritaA montagem de origem aplicada mantém a definição apenas de leituraConfiguração efetiva da montagem

Mantenha os testes de eliminação e a criação de ligações públicas fora deste projeto-piloto. Se o proprietário ou os limites de acesso diferirem do plano, interrompa o alargamento e investigue. Conceder acesso de escrita para ultrapassar um erro altera a configuração que pretendia testar.

Uma nota de planeamento breve pode registar a intenção separadamente das observações. O valor do caminho de importação abaixo identifica o tipo de caminho necessário; introduza o diretório real /mnt/photos-source no Immich. Este JSON é uma nota, não uma configuração da aplicação nem uma prova de sucesso.

{
  "workflow": "mount-map-scan-verify",
  "import_path_kind": "container-visible",
  "source_access": "read-only",
  "status": "proposed-unexecuted"
}

Interpretar análises e tarefas em segundo plano sem presumir sincronização em tempo real

A descoberta não equivale a processamento concluído

Encontrar um ficheiro é apenas parte do trabalho. As análises criam itens; a extração de metadados e a geração de miniaturas têm tarefas próprias. O processamento de pesquisa também afeta a disponibilidade. O guia das bibliotecas externas orienta os administradores a inspecionar as tarefas de Biblioteca, Gerar miniaturas e Extrair metadados. A documentação dos processos de trabalho explica esse processamento em segundo plano.

O facto de uma fotografia aparecer na cronologia não indica se todas as tarefas relevantes terminaram. Inspecione os estados das tarefas e os erros antes de avaliar a qualidade da pesquisa. Este guia não estabelece uma duração de processamento nem a integridade da indexação de todo o arquivo.

Numa verificação hipotética, selecione o nome de um ficheiro de amostra conhecido e registe se aparece para o proprietário pretendido. Guarde o caminho de importação e o estado das tarefas no momento da inspeção. Se o ficheiro estiver ausente, guarde o contexto do erro antes de alterar definições. Depois de corrigir o problema identificado, repita a mesma verificação. Mudar para uma consulta mais fácil pouco lhe diria sobre se a correção ajudou. Mesmo uma nova verificação bem-sucedida nada diz sobre ficheiros não examinados.

Novas análises, agendamentos e monitorização experimental

As alterações externas exigem novas análises ou atualizações de metadados adequadas. O Immich documenta uma análise automática diária da biblioteca cujo agendamento pode ser alterado pelos administradores. O seu monitor do sistema de ficheiros é uma funcionalidade experimental separada para utilizadores avançados. O aviso sobre o monitor indica que provavelmente não funcionará com fotografias numa unidade de rede. Planeie análises periódicas, a menos que tenha verificado outra configuração para o seu armazenamento.

Para itens ausentes ou desatualizados, comece pela visibilidade da origem e pelos caminhos de importação, depois inspecione exclusões, permissões e tarefas. A mesma documentação refere que a cache do navegador pode atrasar a apresentação de vistas atualizadas. Tenha essa possibilidade em conta, mas não a use para desvalorizar uma verificação falhada. Encontre a causa antes de adicionar mais pastas.

Saber o que os ficheiros auxiliares XMP podem ou não preservar

Os campos suportados não representam toda a biblioteca

O aviso geral sobre bibliotecas indica que os metadados introduzidos na aplicação não são guardados nos ficheiros multimédia externos. A documentação XMP descreve um suporte complementar de ficheiros auxiliares: determinados campos podem ser lidos de ficheiros auxiliares adjacentes e, com acesso de escrita adequado, escritos de volta nesses ficheiros. Essa escrita não edita diretamente o conteúdo multimédia original.

As categorias suportadas incluem descrição e classificação, além de data/hora, localização e etiquetas. Os mapeamentos de campos e os acionadores automáticos de tarefas variam. A pertença a álbuns e a organização de pessoas não devem ser tratadas como um formato XMP portátil completo; as disposições da interface também estão fora dessa garantia.

Para IMG_0001.jpg, o Immich prefere IMG_0001.jpg.xmp à alternativa IMG_0001.xmp quando ambos existem. Os metadados extraídos dos campos selecionados entram na base de dados. A tarefa DISCOVER associa os ficheiros auxiliares recém-descobertos a conteúdos multimédia que ainda não tenham um associado; SYNC volta a ler os ficheiros auxiliares associados após alterações externas. Nenhuma das tarefas estabelece uma resolução universal de conflitos entre editores.

O aviso sobre a edição de metadados apenas de leitura

Leia este aviso antes de tentar editar. Segundo o aviso XMP sobre acesso apenas de leitura, as alterações de metadados em itens apenas de leitura com ficheiros auxiliares podem falhar silenciosamente, tanto no ficheiro auxiliar como na base de dados. Uma alteração aparente na interface não prova que a base de dados a guardou.

Neste projeto-piloto, consulte os ficheiros no Immich e edite os metadados do arquivo na ferramenta externa que escolheu. Remover :ro para permitir a edição também permite eliminar ficheiros de origem, como explica o guia das bibliotecas externas. Isso exige uma decisão ponderada, não um atalho de resolução de problemas.

Os metadados descritivos também têm uma finalidade diferente das provas de autoria. Para conteúdos multimédia gerados ou editados, o guia de proveniência de conteúdos visuais aborda registos de origem e credenciais assinadas. Uma descrição no Immich não substitui esses registos.

Verificar a consulta com ficheiros conhecidos antes de confiar na pesquisa inteligente

Usar nomes de ficheiros, pastas e datas em verificações pontuais

Neste projeto-piloto, uma simples verificação do nome de ficheiro é mais útil do que uma demonstração impressionante de pesquisa semântica. Comece com um nome de ficheiro conhecido ou um fragmento. Depois, utilize Caminho completo ou pasta e um intervalo temporal esperado. Estes filtros de pesquisa documentados permitem inspecionar a amostra escolhida sem interpretar correspondências descritivas. Continuam a ser verificações pontuais, não uma prova de indexação completa.

Se precisar da hierarquia existente, ative a vista opcional de pastas em Definições da conta > Funcionalidades > Pastas, tal como descrito no guia das bibliotecas. Esta oferece outra forma de consulta; a sua ferramenta externa continua a organizar a origem.

A pesquisa contextual CLIP aceita consultas em linguagem livre sem exigir palavras-chave literais dos metadados. Utilize-a para encontrar possíveis correspondências, não para estabelecer uma cobertura completa do arquivo. A documentação recomenda considerar os idiomas das consultas e os recursos necessários ao modelo. Os compromissos entre memória e processamento variam com a escolha do modelo, pelo que um resultado apelativo é uma base fraca para recomendar um modelo. Confirme a visibilidade dos nomes de ficheiros e dos caminhos antes de avaliar pesquisas descritivas.

Evitar os erros que separam os ficheiros do seu histórico na biblioteca

Mover um ficheiro não é uma simples mudança de nome na base de dados

Defina a organização da origem antes de dedicar tempo à organização na aplicação. Segundo o comportamento documentado para movimentações, mover um ficheiro de origem dentro de uma biblioteca pode criar um novo item numa nova análise e perder metadados anteriores exclusivos do Immich ou associações a álbuns. Não assuma que a base de dados acompanhará uma reorganização do sistema de ficheiros.

Eliminar um ficheiro de origem move o respetivo item para o lixo numa nova análise. Remover toda a cobertura dos caminhos de importação tem o mesmo efeito. Uma entrada no lixo não é uma cópia do original em falta; restaure o próprio ficheiro de origem.

É possível evitar vários erros comuns:

  • Se introduziu o caminho do anfitrião na interface, substitua-o pelo caminho de importação visível no contentor.
  • Uma montagem apenas no contentor da API é insuficiente quando os processos de trabalho relevantes precisam de acesso de leitura ao mesmo caminho de origem.
  • Corrija a ausência de :ro antes de analisar mais pastas.
  • Planeie análises periódicas para o seu armazenamento, em vez de assumir que o monitor funciona em todo o lado.
  • Trate com cautela as edições aparentes de metadados, tendo em conta o aviso XMP sobre acesso apenas de leitura.

Repita o pequeno projeto-piloto sempre que uma premissa de base mudar.

Definir os limites antes de utilizar um arquivo maior

Armazenamento, partilha e manutenção contínua

Antes de alargar, confirme o proprietário pretendido e o acesso de leitura aos caminhos em todos os contentores relevantes. Verifique se a montagem de origem continua apenas de leitura e reveja as observações da amostra. Resolva os erros das tarefas que ainda não têm explicação. Defina onde os metadados serão editados e escolha um agendamento de análises. Qualquer verificação não realizada continua pendente.

A indexação não acrescenta uma cópia dos seus originais. As cópias da base de dados contêm metadados, não fotografias ou vídeos, por isso proteja as pastas de origem externas separadamente dos dados geridos pelo Immich. Os procedimentos de cópia de segurança e restauro estão fora do âmbito deste guia.

As permissões de visualização precisam de uma revisão própria. A partilha no Immich distingue quem pode visualizar álbuns de quem os pode editar. O acesso de parceiros pode abranger uma biblioteca inteira, enquanto as ligações públicas oferecem opções como palavras-passe ou expiração. Mantenha a partilha inalterada durante o projeto-piloto.

Preveja a manutenção da instalação e o armazenamento de conteúdos multimédia gerados, além dos recursos dos modelos e da resolução de problemas das tarefas. Reveja a privacidade e a exposição separadamente das permissões de escrita no sistema de ficheiros. Não se promete qualquer poupança nem resultado de segurança. A indexação externa adequa-se a quem pretende utilizar o Immich para consultar um arquivo mantido noutro local e aceita as limitações dos metadados. Se a sincronização com escrita for um requisito, resolva-o antes de alargar.

Pontos principais

  • 1Escolha a indexação externa quando as pastas de fotografias existentes devem continuar a ser a referência; os carregamentos geridos representam uma escolha de armazenamento diferente.
  • 2Utilize uma montagem distinta apenas de leitura no contentor e escolha o proprietário da biblioteca de forma ponderada, porque a propriedade não pode ser alterada posteriormente.
  • 3Valide uma amostra sem dados sensíveis através de Montar, Mapear, Analisar, Verificar antes de alargar; o projeto-piloto proposto não foi executado.
  • 4Inspecione os estados das tarefas e os nomes de ficheiros conhecidos, em vez de tratar uma cronologia visível ou um monitor experimental como prova de que tudo está pronto.
  • 5As edições de metadados em itens apenas de leitura com ficheiros auxiliares podem falhar silenciosamente tanto no ficheiro auxiliar como na base de dados; não confie em alterações aparentes na interface.
  • 6Estabilize os caminhos de origem antes de organizar os itens na aplicação e trate separadamente as permissões de partilha e a proteção dos originais.

Conclusão

Escolha as bibliotecas externas do Immich quando pretender uma camada de consulta sobre pastas mantidas noutro local. Comece com uma amostra sem dados sensíveis e mantenha a montagem de origem apenas de leitura. Confirme o proprietário pretendido e registe o que os estados das tarefas e as verificações de ficheiros conhecidos mostram antes de alargar. O aviso sobre edição XMP merece atenção especial: uma edição aparente pode não ficar guardada. Defina desde cedo a responsabilidade pelos metadados e os caminhos de origem, e reveja a partilha e as cópias de segurança separadamente. Se precisar de sincronização de metadados com escrita, resolva esse requisito primeiro. Uma cronologia pesquisável só é útil se os seus limites se adequarem à forma como mantém o arquivo.

Perguntas frequentes

Uma biblioteca externa do Immich copia ou reorganiza as fotografias existentes?

Não é necessário um carregamento gerido: a biblioteca indexa os ficheiros nas pastas existentes. O seu organizador externo continua a ser responsável pela disposição dos ficheiros. O Immich continua a precisar de armazenamento para a base de dados e os itens gerados. Consulte a [documentação das bibliotecas externas](https://docs.immich.app/features/libraries/).

Que caminho deve ser utilizado nas definições de importação da biblioteca externa?

Utilize o diretório visível no contentor, como `/mnt/photos-source`, e não o caminho do anfitrião. Os processos de trabalho separados relevantes também precisam de acesso de leitura nesse caminho. Escolha o proprietário pretendido ao criar a biblioteca; não é possível alterar a propriedade posteriormente. Consulte as [instruções sobre caminhos e propriedade](https://docs.immich.app/features/libraries/).

O Immich pode eliminar fotografias ou guardar edições de metadados através de uma montagem apenas de leitura?

Uma montagem apenas de leitura corretamente aplicada impede a eliminação de ficheiros de origem e a escrita de ficheiros auxiliares através dessa montagem, mas não impede alterações no anfitrião. Não confie em edições aparentes de metadados: o [aviso XMP](https://docs.immich.app/features/xmp-sidecars/) indica que as edições em itens apenas de leitura com ficheiros auxiliares podem falhar silenciosamente tanto no ficheiro auxiliar como na base de dados.

Porque é que as fotografias externas estão ausentes ou desatualizadas após a análise?

Verifique primeiro as montagens dos contentores e dos processos de trabalho, os caminhos de importação, as permissões, as exclusões e os erros das tarefas. O processamento ou a cache do navegador podem afetar a disponibilidade aparente. A [monitorização experimental](https://docs.immich.app/features/libraries/) é diferente da análise periódica e provavelmente não funcionará em unidades de rede. As verificações pontuais não provam uma indexação completa.

O que acontece quando uma fotografia indexada é movida para outra pasta?

O Immich pode tratar a nova localização como um novo item numa nova análise, perdendo metadados exclusivos do Immich ou associações a álbuns. Estabilize as pastas antes de as organizar na aplicação. Uma entrada no lixo não pode restaurar um original em falta; restaure o próprio ficheiro de origem. Consulte o [comportamento documentado para movimentações e eliminações](https://docs.immich.app/features/libraries/).

Fontes

Compartilhar este artigo

Hamza Diaz

Escrito por

Hamza Diaz

Hamza Diaz é o fundador da Optijara, onde cria agentes de IA práticos, sistemas de automação e fluxos de trabalho do Copilot para empresas de serviços. Ele escreve sobre operações de IA, estratégia de agentes e implementação no mundo real para equipes que querem sistemas úteis em vez de exagero.