Estou procurando um diretório LDAP que tenha um número muito maior de resultados do que o sizelimit atualmente definido, 500, pelo slapd.conf que, para todos os efeitos, não pode ser alterado)
Minha idéia era continuar executando o ldapsearch, mas de um deslocamento diferente a cada vez (501, 1001 etc.) até que todos os resultados fossem obtidos.
Eu vi as páginas de manual do ldapsearch e parece que isso é tratado por você usando as opções -E:
-E [!]<ext>[=<extparam>] search extensions (! indicates criticality)
[!]domainScope (domain scope)
[!]mv=<filter> (matched values filter)
[!]pr=<size>[/prompt|noprompt] (paged results/prompt)
[!]subentries[=true|false] (subentries)
[!]sync=ro[/<cookie>] (LDAP Sync refreshOnly)
rp[/<cookie>][/<slimit>] (LDAP Sync refreshAndPersist)
Então eu tentei:
ldapsearch -h $HOST -p $PORT -x -L -b "$BASE" '*' '+' -E pr=$SIZE
No entanto, quando os resultados (mesmo resultados paginados com tamanho = 50, por exemplo) atingem 500, recebo o mesmo erro como se os resultados não fossem paginados:
Size limit exceeded (4)
Eu vi nas páginas do manual que há outra opção para o virtuallistview, mas não consegui encontrar exemplos para ele, e também não acho que minha versão do ldapsearch tenha essa opção.
O objetivo aqui é criar um backup usando ldapsearch e a opção -L para criar um arquivo ldif adequado para restaurar o banco de dados.
Algumas pesquisas no Google aparecem com o mesmo problema que estou tendo, mas nenhuma tem uma solução aplicável.
loglevel
256 para ver o que diz.