pkg opções de pesquisa para que a cópia local do catálogo seja atualizada se for bem-sucedida, mas não excluída na falha?

3

Estou tentando usar pkg search no FreeBSD para procurar por "pacotes conhecidos" nos repositórios configurados. O código existente usa pkg search -R <format_args> all para consultar repositórios remotos e atualizar a cópia do catálogo local e, em seguida, retornar informações brutas em todos os pacotes.

O problema é que isso funciona bem se o repositório estiver disponível. Mas se o repositório remoto não estiver disponível (problemas de DNS, sem internet, seja qual for), a cópia local também será removida, portanto, qualquer informação poderia ter sido obtida da cópia do catálogo local (mesmo que dois pacotes desatualizados) serão perdidos até que o contato on-line seja feito com o repositório remoto. Isso significa que, após a falha no acesso ao repositório, qualquer tipo de atividade off-line que exija uma pesquisa no catálogo local será impossível.

As únicas opções que posso encontrar que não implicam a limpeza da cópia local em caso de falha são -U (que simplesmente impede que qualquer atualização que possa estar disponível seja tentada ou não tenha sido bem-sucedida) e pkg info (que fornece dados pkg instalados localmente e não fornece dados do catálogo de cópias do repo); nem parece útil.

Existe uma maneira de usar o pkg que atualiza a cópia do catálogo antes, como de costume, se uma atualização válida puder ser obtida, mas não apagá-la se não puder ?

    
por Stilez 14.01.2017 / 01:29

1 resposta

0

Edite seu pkg.conf e defina REPO_AUTOUPDATE para NO , conforme mencionado no man pkg search :

Package repository  catalogues will be automatically updated whenever pkg
 search is run by a user ID with write access to the package database,
 unless disabled by the -U flag or setting REPO_AUTOUPDATE to NO in
 pkg.conf(5).
    
por 17.01.2017 / 22:51