Você pode usar o recurso Fuse (filesystems-in-user-space) do kernel do Linux para montar um bucket do S3 como se fosse um sistema de arquivos local normal. Existem várias implementações disso; aqui está um que eu sei que está sendo desenvolvido ativamente .
Existem algumas possíveis desvantagens, como o fato de você pagar por fazer coisas simples, como listagens de arquivos. Não muito, mas se um processo automatizado faz muito isso, você pode ter uma surpresa. (Então, você provavelmente não quer deixar o sistema de arquivos montado e acessível a qualquer coisa, exceto quando estiver intencionalmente usando-o.)
Então, sem pesar na sabedoria da abordagem em geral, há uma maneira de fazer isso.