Eu tenho dois sistemas Ubuntu e eles são exatamente iguais.
Eu executo vários apt-get install XXX
em um sistema e posso obter os pacotes deb relativos em /var/cache/apt/archives/
. Então eu copio esses arquivos deb para o outro sistema /home/me/archives/
e executo apt-get install ./*.deb
.
Eu pensei que deveria instalar os pacotes deb localmente, mas para minha surpresa, ele ainda baixou novamente todos os arquivos deb. Eu não sei por quê.
Há três coisas estranhas:
Quando eu executo
apt-get install ./*.deb
, muitas mensagens aparecem:Note, selecting 'python-rospkg' instead of './python-rospkg_1.1.4-100_all.deb' Note, selecting 'python-serial' instead of './python-serial_3.0.1-1_all.deb' Note, selecting 'python-service-identity' instead of './python-service-identity_16.0.0-2_all.deb' Note, selecting 'python-setuptools' instead of './python-setuptools_20.7.0-1_all.deb' Note, selecting 'python-sip-dev' instead of './python-sip-dev_4.17+dfsg-1build1_amd64.deb' Note, selecting 'python-sip' instead of './python-sip_4.17+dfsg-1build1_amd64.deb' Note, selecting 'python-six' instead of './python-six_1.10.0-3_all.deb'
Eu tento instalar um dos pacotes deb, por exemplo,
apt-get install libwebp-dev_0.4.4-1_amd64.deb
, mas sempre recebo o erro:Reading package lists... Done Building dependency tree Reading state information... Done E: Unable to locate package libwebp-dev_0.4.4-1_amd64.deb E: Couldn't find any package by glob 'libwebp-dev_0.4.4-1_amd64.deb' E: Couldn't find any package by regex 'libwebp-dev_0.4.4-1_amd64.deb'
Eu também tentei usar
dpkg -i *.deb
para instalar esses pacotes deb locais, mas produziu o erro de alguns pacotes ausentes, então executeiapt install -f
para obter o pacote deb ausente da Internet, mas os pacotes ausentes vindos da Internet e os pacotes locais originais são exatamente iguais...
Em uma palavra, meu sistema não pode instalar pacotes deb locais como esperado.
O comando "apt-get" não pode ser usado como você deseja. Você pode instalar com ele apenas a partir de repositórios. Mas a maneira correta é usar os comandos "dpkg" ou "apt":
ou
O uso do dpkg pode quebrar as dependências do pacote, que não resolvem automaticamente, então você pode usar o apt-get para resolver o problema:
Esse problema vem aqui:
Eu executei vários
apt install XXX
, que são sobre módulo python, comopython-numpy
etc. Achei que dependeriapython2.7
entãopython2.7
seria baixado e instalado automaticamente mas me enganei (talvez seja pqpython3.5
vem instalado por padrão? Não sei exatamente o motivo) . Significando que devo executar mais um comando:apt install python2.7
. Caso contrário,apt install ./*deb
fará o download novamente de todos os pacotes. Além disso, não sei por que, masdpkg -i *.deb && apt install -f
não instalei opython2.7
.De qualquer forma, depois de instalar
python2.7
e juntar seu pacote deb com outros pacotes, posso instalar todos eles localmente com o comandoapt install ./*.deb
.