Questão Como posso instalar software ou pacotes sem Internet (offline)?


Eu tenho um amigo que tem um computador que não está conectado à Internet. Existe alguma maneira de instalar o software off-line facilmente?


238
2017-08-05 06:12


origem


O link a seguir também pode ser interessante para você. askubuntu.com/questions/86358/… - starkus


Respostas:


Confira Keryx; é um gerenciador de repositórios offline.

Como funciona? Permite baixar atualizações e novos programas (com dependências) para o seu Flash drive.

Sua interface é semelhante ao synaptic, mas funciona a partir de um pendrive (não precisa de instalação). Infelizmente, a GUI precisa de wxwidgets, que não vêm pré-instalados no Ubuntu (eles são multi-plataforma e instaláveis ​​a partir de Aqui e repositório do Ubuntu Aqui). Ele só pode instalar software em um sistema Ubuntu, mas você pode baixar as atualizações ou novos pacotes em qualquer Linux, Windows ou OS X.

Aqui você pode encontrar um tutorial.

Outro tutorial passo-a-passo detalhado está em esta resposta.

O Launchpad também hospeda arquivos para download.

Uma captura de tela:

Screenshoot


123
2017-08-05 09:01



O keryx não está mais em desenvolvimento, se você está tentando isso em uma versão mais recente do Ubuntu, use a versão portátil para evitar o problema de dependências. - Alex R
Eu ainda uso keryx sem problemas, embora claramente precise de mais desenvolvimento e melhorias. - carnendil
Como eu uso isso? - carnendil
E se o outro computador offline não tiver gcc, g ++? É um novo Ubuntu instalado. Como posso instalar wxwidgets? Sem wxwidgets, ele reclama do módulo ausente ... - buzhidao
Acabei de lançar uma nova versão do Keryx (0,92.5), o que pode resolver algumas preocupações. A versão compilada deve conter dependências como wxWidgets e permitir que você execute no Windows sem problemas. - mac9416


Um rápido hack

Um truque rápido é copiar todos os pacotes que você baixou para sua instalação em sua máquina (instruções detalhadas aqui). Os arquivos .deb são armazenados em /var/cache/apt/archives, em seguida, no outro lançamento do computador Sináptica e selecione File -> Add Package Downloaded e pesquise na pasta onde você colocou os arquivos e abra-os, aceite tudo (ou instale a partir do terminal usando o comando sudo dpkg -i DEB_PACKAGE_NAME).

NOTA:
Isso pressupõe que o gerenciador de pacotes não esteja configurado para excluir os pacotes logo após a instalação. Ele também assume que você está executando a mesma versão do Ubuntu (10.10, 12.04, etc) e versão de arquitetura (32b ou 64b).


Um repositório de DVD

Se você quiser as últimas correções de bugs e patches de segurança disponíveis, dê uma olhada este tutorial, que abrange a criação de seu próprio repositório de DVD.


55
2017-08-05 10:38



Se você não pode correr sudo apt-get update isso não vai funcionar muito bem, ainda é uma boa economia de tempo ao configurar um novo sistema :) - GM-Script-Writer-62850
Concordo, apenas atualizei dois computadores para 13.10 de 13.04. O primeiro teve que baixar ~ 1.8Gb, copiando o conteúdo de /var/cache/apt/archives para o segundo, baixou apenas ~ 250Mb. Ainda assim, você precisa de uma conexão para executar a instalação. - Maxime R.
apt-get update não é necessário se você copiar /var/lib/apt/lists - este diretório contém as informações do repositório que são baixadas por apt-get update. - ignis
Eu copiei meu .deb para o meu usb a partir de /var/cache/apt/archives . No outro computador eu simplesmente abri o drive USB e cliquei duas vezes no .deb que lançou o Ubuntu GUI Software Updater. Fácil pezy. - Jacksonkr
@ jr0cket: Existe alguma maneira de evitar os pacotes nesta pasta /var/cache/apt/archives qual já (inbuilt) vem quando o Debian é instalado? .A razão pela qual eu estou perguntando isso é 4.8 GB é muito grande para o meu drive USB que é de 4 GB. - justin


Um repositório USB

Se você tem um pendrive USB de tamanho decente - assumindo em torno de 4-8Gb (ou disco rígido externo) você pode configurar uma cópia personalizada do repositório do Ubuntu e configurá-lo como um repositório local, conforme AptGet / Offline / Repository  em help.ubuntu.com.

Para obter os arquivos reais do pacote (os arquivos .deb), sugiro usar apt-mirror.

o apt-mirror pacote irá ajudá-lo a criar um espelho personalizado que deve ser menor que os 30Gb do repositório completo. Instale o pacote:

sudo apt-get install apt-mirror

e edite seu arquivo de configuração

gksudo gedit /etc/apt-mirror/mirror.list

ou desde o Ubuntu 14.04

gksudo gedit /etc/apt/mirror.list

Inclua apenas as seções do repositório que você deseja. Aqui está um exemplo simples que copia os arquivos .deb binários de todas as 4 seções (principal, restrito, universo e multiverso), bem como as últimas correções de bugs.

# apt-mirror configuration file
##
## The default configuration options (uncomment and change to override)
##
#
set base_path    /tmp/ubuntumirror
#

## Repositories to copy from - 

## use a mirror so you don't overload the main server!!!

# Lucid binaries - no source files
deb http://archive.ubuntu.com/ubuntu lucid main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu lucid-updates main restricted universe multiverse


## Clean up older .deb files no longer in the archive
clean http://archive.ubuntu.com/ubuntu

É guesstimated que você precisará de cerca de 15Gb de espaço para todas as 4 seções, sem a fonte.

Eu coloquei o caminho para todos os arquivos .deb ser /tmp, verifique se você tem espaço suficiente para que seu disco rígido não encha (se o seu disco rígido não encher e seu computador congelar, /tmpdeve ser limpo com uma reinicialização).

Se você quiser apenas os arquivos principais, remova os nomes restrito, universo e multiverso do arquivo de configuração.

Se você estiver usando uma arquitetura diferente (você tem 64 bits, mas seu amigo tem 32 bits), adicione o seguinte no início do mirror.list arquivo de configuração:

set defaultarch i386

Depois de ter o apt-mirror configuração desejada, execute apt-mirror e faça algo divertido ou em mudança de vida, pois levará horas ou dias para obter o repositório (dependendo da sua conexão e do espelho do Ubuntu que você está usando).

Depois de ter os arquivos .deb, copie os arquivos para o cartão de memória USB (ou disco rígido externo) e configure o repositório local de acordo com o artigo mencionado anteriormente.

Teste o que funciona antes de levá-lo ao seu amigo!


38
2018-04-18 20:55



O pacote apt-mirror está detalhado em:: apt-mirror.sourceforge.net - jr0cket
Quando eu tentei sudo apt-get install apt-mirror direto no Ubuntu 16.10 (Yakkety Yak), edição desktop / Rufus / USB stick / modo de teste, eu tenho "E: Unable to locate package apt-mirror". Havia conexão com a Internet, verificada por ping. - Peter Mortensen
Corrida sudo apt-get update não consertou. - Peter Mortensen


Você precisa primeiro de um PC com conexão à Internet, onde você pode baixar os arquivos .deb necessários. Depois de ter baixado todos os arquivos, agora você pode criar um CD / DVD ou arquivo ISO que você pode usar para instalar o software que você baixou no seu PC off-line.

Comece com uma instalação limpa ou VM.
sudo apt-get install aptoncd 

Instale os pacotes que você quer em um PC
sudo apt-get install gbrainy 

Executar aptoncd
enter image description here
Clique em Criar
enter image description here
Clique em Gravar e defina as opções e, em seguida, aplique
enter image description here
Queime ou salve
enter image description here

Note que aptoncd apenas faz o backup de coisas no apt-cache atual.
É por isso que começamos com uma VM / nova instalação limpa e fizemos tudo isso em uma execução.


29
2017-10-26 07:55



sooo, você está dizendo que se eu fizer um vm e instalar todos os aplicativos que eu quero, então execute este programa, leve o cd / dvd para o pc offline. e instalaria todos os aplicativos nele? - Alex
Contanto que você use a mesma mídia do sistema básico, sim. Se você está implantando um escritório e deseja uma maneira rápida e simples de adicionar algo, isso se torna muito útil. Se você usa o pacote create-meta, sim - RobotHumans
A restauração da imagem requer que o hal seja instalado, mas ela está obsoleta e não é mais suportada, tanto quanto eu entendo. - Flashrunner
Há uma construção para viva code.launchpad.net/~ubuntu-branches/ubuntu/vivid/hal/vivid - RobotHumans


Eu uso o apt-get com a opção "--print-uris" para fazê-lo. Eu também adiciono "-qq", então seria silencioso.

Use sed para remover caracteres extras adicionados a alguns nomes de arquivos (algo como 3% 2a) e para obter o url, filename e md5sum dos arquivos. Use o wget para baixar os arquivos. Use md5sum para verificar se os arquivos foram baixados corretamente.

Você pode usar isso para criar um script de shell para Linux ou Mac OS (substitua ".cmd" nos comandos para .sh e faça "chmod a + x (nome do arquivo) para adicionar permissão para executar o script) ou um arquivo de lote do Comando do Windows e um arquivo MD5Sum para garantir que os arquivos sejam baixados corretamente.

Comandos

Crie um script:

sudo apt-get <<<apt-get command and options>>> --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > script.cmd

Exemplos:

sudo apt-get install anjuta --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install-anjuta.cmd
sudo apt-get upgrade --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > upgrade.cmd
sudo apt-get dist-upgrade --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > dist-upgrade.cmd

Crie o arquivo md5sum:

sudo apt-get <<<apt-get command and options>>> --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4  .\/\2/p" > md5sum.txt

Exemplos:

sudo apt-get install anjuta --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4  .\/\2/p" > md5sum.txt
sudo apt-get upgrade --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4  .\/\2/p" > md5sum.txt
sudo apt-get dist-upgrade --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4  .\/\2/p" > md5sum.txt

Você precisa do md5sum para Windows se estiver usando esse sistema operacional para baixar arquivos.


Crie um script para baixar as listagens de repositório:

sudo apt-get update --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) :/wget -c \1 -O \2.bz2/p" > update.cmd

Verificando as somas MD5

Você pode adicioná-los ao final dos scripts para verificar o md5sum:

Linux:

md5sum --quiet -c md5sum.txt

Windows (usa md5sum antigo, não suporta --quiet):

md5sum -c md5sum.txt

Para adicionar automaticamente ao script:

echo -e "md5sum -c md5sum.txt\npause" >> script.cmd

Instalando arquivos de lista (comando Update)

Execute esses comandos no computador de destino.

Você precisa usar bunzip2 para extrair os arquivos da lista de repositórios:

bunzip2 *.bz2

Em seguida, copie para a pasta de listagem (a pasta atual contém apenas arquivos de lista):

sudo cp * /var/lib/apt/lists/

Acima combinado (a pasta atual pode conter outros arquivos):

for listfile in `ls *.bz2`; do bunzip2 $listfile; sudo cp ${listfile%.bz2} /var/lib/apt/lists/; done

Downloads mais rápidos

Se você quiser fazer o download dos arquivos mais rapidamente, tente usar o Axel.

Substituir wget -c ... -O ... com axel ... -o ....

Hierarquia de pastas (Download de arquivos usando o Windows)

Eu costumo criar uma pasta como esta:

  • apt-get /
    • bin /
      • msys-1.0.dll
      • msys-intl-8.dll
      • wget.exe
      • msys-iconv-2.dll
      • md5sum.exe
      • libeay32.dll
      • libintl3.dll
      • libssl32.dll
      • libiconv2.dll
    • atualizar/
      • update.cmd
      • md5sum.txt
    • instalar/
      • install-foo.cmd
      • install-bar.cmd
      • upgrade.cmd
      • md5sum.txt

Então mude wget nas linhas acima para ..\\bin\\wget.exe, md5sum para ..\\bin\\md5sum.exeetc.

Isso separará os arquivos * .deb e os arquivos de lista em pastas diferentes.

Atualizando seu sistema

  1. Inicialize para direcionar o computador que usa o Ubuntu
  2. Crie um script para atualização
  3. Inicialize em um computador com conexão à internet
  4. Execute update.sh (para Linux ou Mac OS) ou update.cmd (Windows)
  5. Volte para o computador de destino
  6. Instalar arquivos de lista
  7. Crie um script para upgrade / dist-upgrade (adicione os comandos md5sum ao final)
  8. Volte para o computador com conexão à internet
  9. Execute o upgrade.sh/dist-upgrade.sh (Linux ou Mac OS) ou upgrade.cmd / dist-upgrade.cmd (Windows)
  10. Volte para o computador de destino
  11. Copie os arquivos * .deb para o cache: sudo cp *.deb /var/cache/apt/archives/
  12. Corre: sudo apt-get upgrade ou sudo apt-get dist-upgrade

Baixar arquivos executáveis ​​para o Windows

Wget para Windows: http://gnuwin32.sourceforge.net/packages/wget.htm

md5sum para Windows: http://gnuwin32.sourceforge.net/packages/coreutils.htm ou http://www.etree.org/cgi-bin/counter.cgi/software/md5sum.exe

Você também pode usar os de MinGW, que são o que eu uso. Você só precisa do wget.exe, do md5sum.exe e das bibliotecas compartilhadas necessárias. Verifique a seção "Hierarquia da pasta".

Notas

  • Eu não tenho certeza se tudo acima dos comandos funcionará, já que eu não os usei por um mês agora. Especialmente o comando update, que eu não testei hoje algumas partes dele.
  • Para ver facilmente os resultados dos comandos, adicione uma linha de "pausa" no final dos scripts, se estiver usando o Windows.
  • Eu recomendo criar scripts de shell para atualizar, atualizar e instalar pacotes se você estiver usando esses comandos com freqüência.

27
2017-12-01 15:04



Você pode criar um simples gui para isso :) - Tachyons
usando janelas para isso parece muito estranho ... - Alex R
Também é aplicável ao Linux (o que é realmente melhor porque você não precisa instalar o md5sum e o wget). A parte do Windows é para aqueles que não têm um computador Linux com conexão à Internet, então você pode usá-lo em um cybercafé ou em um computador de um amigo que tenha apenas o Windows. - Arnel A. Borja
-qq opção parece suprimir toda a saída de apt-get update. Eu suponho que você realmente não quer essa opção. - Ruslan


Repositório Offline

Como criar um repositório offline é descrito Aqui: Você só precisa baixar os arquivos apropriados de archive.ubuntu.com. Alternativamente, você poderia usar apt-medium.

EDIT: Outra abordagem baseada em um rchive local de *.deb arquivos é descrito em diferentes entradas de blog Aqui e Aqui). Sarath Chandra resume da seguinte forma:

  1. Tornar um dir acessível (pelo menos pela raiz)

    sudo mkdir /var/my-local-repo
    
  2. Copie todos os arquivos deb para este diretório.

  3. Faça o diretório como um

    sudo bash -c 'dpkg-scanpackages /var/my-local-repo /dev/null | gzip -c9 > /var/my-local-repo/Packages.gz'
    

    ou

    sudo dpkg-scanpackages /var/my-local-repo /dev/null | gzip -c9 > /var/my-local-repo/Packages.gz
    
  4. Adicione o repositório local a fontes

    echo "deb file:/var/my-local-repo ./" > /tmp/my-local.list
    sudo mv /tmp/my-local.list /etc/apt/sources.list.d/my-local.list
    sudo apt-get update
    

21
2018-05-01 19:01





Etapa 1: obtenha os URLs de download em um arquivo:

Execute o seguinte comando substituindo os nomes de pacotes pelos necessários, separando por um espaço.

apt-get -y install --print-uris package-name | cut -d\' -f2 | grep http:// > apturls

Passo 2: Copie este arquivo (apturls) para uma máquina que tenha acesso à Internet de alta velocidade, e execute o seguinte comando para baixar os pacotes:

wget -i path-to-apturls-file 

Passo 3: Agora, pegue os pacotes baixados em sua máquina e instale-os usando:

cd path-to-the-downloaded-packages-directory

sudo dpkg -i *.deb

Feito!


18
2017-11-02 08:14



Faz --print-uris imprimir as dependências que já estão instaladas no sistema? - yuric


Você pode usar Cubo. É um gerenciador de pacotes portátil que permite baixar pacotes em outro computador conectado à Internet e instalá-los de volta ao seu computador Linux original, offline.

Download de aplicativos (no Windows)

Instalando aplicativos (no Linux)

Você pode baixá-lo em Cubosite.


17
2017-08-05 08:37



é .deb ou .exe?
Não existe nenhum arquivo .deb porque é autônomo, portátil e pode ser executado sem instalar (basta executar o arquivo normal do cubo). Cube.exe também está incluído para usuários do Windows. - Camicri
Mais pessoas precisam saber disso. Eu te amo. - howderek
Eu estou recebendo erro ao executar este aplicativo no win 7 Ultimate 32 bit. Imagem: i.stack.imgur.com/XW3wt.jpg  mensagem de erro: Assinatura do problema: Problema Nome do evento: CLR20r3 Assinatura do problema 01: cube.exe Assinatura do problema 02: 1.0.9.3 Assinatura do problema 03: 54bd0258 Assinatura do problema 04: glib-sharp Assinatura do problema 05: 2.12.0.0 Assinatura do problema 06: 517edc4c Assinatura do problema 07: 1b4 Assinatura do problema 08: 17 Assinatura do problema 09: System.DllNotFoundException Versão do SO: 6.1.7600.2.0.0.256.1 ID do local: 16393 - Sandeep
Olá e obrigado por usar o Cube. Infelizmente, a versão do cubo que você está usando não é mais mantida. Por favor, use o novo e estável Cube Server: launchpad.net/cube-server. Veja a resposta atualizada acima. - Camicri