É possível copiar pacotes / software para outra máquina no Linux?

2

Aqui está um cenário de amostra:

Comece em um novo diretório, digamos / myapps. Instale um python separado (pré-compilado ou fonte) para dizer ./usr/bin (relativo ao diretório de instalação e não ao sistema / usr / bin) e instale vários ovos nesse python customizado. Isso pode ser feito usando talvez algo como buildout.

Agora, outro usuário que tem a mesma versão do SO, apenas a pasta do rsync, que mantém a estrutura de pastas exata, será capaz de usar o Python da mesma forma que o outro usuário. Ele precisa realmente instalar o material novamente?

Eu achei que a maioria do gerenciador de pacotes Linux funciona assim com / myapps análogo ao que / usr é, por exemplo, uma convenção padrão para onde os arquivos devem ser mantidos. A compilação não é obrigatória, a menos que você queira otimizar como a instalação do gentoo. Em outras palavras, acho que o que a maioria dos gerenciadores de pacotes faz é:

1) Verificação de requisitos

2) Copie / Cole de material pré-compilado para um local padrão como / usr / lib / usr / bin

3) Faça uma atualização do menu

Algumas pré-condições na primeira máquina:

Instale tudo neste diretório e não fora dele. É executado como um usuário normal e sem sudo.

No Windows eu acho que isso vai ser um desafio por causa do registro, etc, que eu não tenho certeza como conceito de sistema de arquivos normal. Mas no * nix este trabalho deveria ser tão simples assim?

    
por Nishant 12.08.2014 / 15:19

1 resposta

3

É perfeitamente possível (mas geralmente você obtém o mesmo resultado com o virtualenv e o empacotamento de todo o seu root virtualenv). Você terá problemas se alguns dos pacotes python precisarem de bibliotecas externas e se outro usuário não os tiver instalado (é por isso que você geralmente faz isso com virtualenv e pip / freeze).

O gerenciador de pacotes executa os chamados scripts de instalação. Eles podem conter qualquer código, mas geralmente eles adicionam usuários / grupos requeridos, editam algumas outras configurações (porque você não pode "instalar" uma linha na configuração; o movimento para dividir todos os * .conf para * .conf.d ajuda um pouco, mas nós não estamos nem perto de terminar ainda) mas com a maioria dos pacotes python, você estará bem.

    
por 12.08.2014 / 16:22

Tags