Quando mudamos de um sistema para outro, precisamos deixá-lo o mais semelhante possível com o sistema original. Às vezes sabemos o nome de um comando, mas não nos recordamos a qual pacote o arquivo pertence. Para instalar o software, precisamos desta informação.
Sistemas Debian GNU/Linux e derivados, como o Ubuntu, possuem o comando apt-file, que permite consultar a relação de arquivos disponíveis na sua distribuição e nos fornecem exatamente esta informação. IMPORTANTE: vale lembrar que a listagem não se restringe aos pacotes de software instalados em seu sistema, e sim à totalidade dos arquivos disponíveis na distribuição, o que é bem mais interessante. Para obter informações restritas ao que existe no seu sistema, utilize o comando dpkg.
Para instalar:
apt-get install apt-file
Uma vez instalado o software, temos que criar o banco de dados, a partir dos repositórios listados no arquivo /etc/apt/sources.list. Este comando faz o download dos arquivos chamados Contents-.gz dos repositórios. Para isto, emita o comando:
apt-file update
O comando irá gerar uma saída como:
Downloading Index ftp://linorg.usp.br/debian/dists/testing/Contents-i386.diff/Index:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1913 100 1913 0 0 16327 0 --:--:-- --:--:-- --:—:— 207k
Calculating old sha1sum... File is up-to-date.
Isto feito, o comando já pode ser usado. Por exemplo, para determinar a qual pacote pertence o comando txt2tags, emita o comando:
% apt-file search txt2tags
txt2tags: /usr/bin/txt2tags
txt2tags: /usr/share/doc-base/txt2tags-quickref
txt2tags: /usr/share/doc-base/txt2tags-userguide
txt2tags: /usr/share/doc/txt2tags/README
txt2tags: /usr/share/doc/txt2tags/README.Debian
txt2tags: /usr/share/doc/txt2tags/TODO.gz
txt2tags: /usr/share/doc/txt2tags/changelog.Debian.gz
txt2tags: /usr/share/doc/txt2tags/changelog.gz
txt2tags: /usr/share/doc/txt2tags/copyright .... dezenas de linhas excluídas
Vemos que neste caso, o comando txt2tags pertence ao pacote txt2tags. Neste caso, a resposta é bastante óbvia. Mas se pegarmos, da lista de arquivos do próprio pacote txt2tags, algum arquivo com nome obscuro, fica mais evidente a utilidade do sofware:
% apt-file search module-body.py
txt2tags: /usr/share/doc/txt2tags/examples/module/module-body.py
Uma mão na roda. Não dá para viver sem ele. Também não dá para viver sem o txt2tags. ;D
--
Artigo de Rubens Queiroz de Almeida.