Você pode tentar uma abordagem diferente, por exemplo, usando um wrapper do FUSE para "montar" um arquivo remoto via HTTP e invocar as ferramentas padrão nele. As ferramentas tentarão ler bytes específicos e essas tentativas serão traduzidas para solicitações GET de intervalo de bytes HTTP.
Isso foi discutido no StackOverflow, em esta ótima resposta por Adam que usa HTTPFS :
Mount a remote zip file and extract one file from it:
mkdir mount_pt sudo ./httpfs http://server.com/zipfile.zip mount_pt sudo ls mount_pt zipfile.zip sudo unzip -p mount_pt/zipfile.zip the_file_I_want.txt > the_file_I_want.txt sudo umount mount_pt
No seu caso, se o arquivo não for um ZIP, por exemplo, um arquivo tar.gz
(não posso verificar porque o link que você forneceu requer registro), então você pode adaptar as etapas:
mkdir mount_pt
sudo ./httpfs http://example.com/file.tar.gz mount_pt
sudo tar xzvf mount_pt/file.tar.gz
Ou até mesmo chamar file-roller
ou outra ferramenta GUI no arquivo.