Instalando o Java em computadores sem conexão com a Internet?

2

Eu tenho uma rede de 20 computadores (todos executando o Ubuntu 10.04 LTS), conectados juntos em uma rede. A maioria das máquinas é colocada em lugares que são realmente difíceis de alcançar.

Eu tenho uma máquina central da qual eu posso usar livremente ssh para todas as outras máquinas. esta máquina central é a única que está conectada à internet.

Agora tenho a necessidade de instalar o Java 1.6 em todas as máquinas 'remotas' (aquelas que não estão conectadas à internet).

Seria possível fazer isso acessando-os de dentro da máquina 'central' e fornecendo-lhes os arquivos de instalação do Java 1.6 (ou de alguma outra forma?), como faço para isso?

    
por user11833 13.04.2011 / 01:17

3 respostas

4

zip de download

Você sempre pode fazer o downsload de um JDK arquivado do oracle. Isso pode ser movido para uma posição apropriada e extraído lá.

O Java não precisa de muita configuração. Configurar JAVA_HOME em um arquivo de perfil é uma boa ideia e colocar o JDK / bin-dir no caminho. No entanto ...

  • Se já existe um OpenJDK instalado, ou Java-1.5, pode ser mais complicado. Muitas vezes existem muitos links em / etc / alternatives para Java - verifique isso.

central machine como repositório

Eu não sei se é possível usar o pc central como proxy. para instalar o JDK lá e dizer às outras máquinas para usá-lo como fonte. Palavras-chave para uma pesquisa: repository, apt-get, proxy.

subopção / variante:

Copie os arquivos .dep baixados para os clientes e use dpkg -i xy.deb para instalá-lo.

Rede vodoo

Você pode usar alguns comandos, colocados em um script, para usar a máquina central como roteador, para visitar a Internet a partir dos clientes. Você precisa de 2 comandos nos clientes também. Então você poderia usar o apt-get dos clientes para acessar a internet.

Eu não entendo esses scripts sozinho - apenas no sofar, para adotá-lo de acordo com minhas necessidades. :) Este é o meu script 'gateway.sh', para ser executado no roteador com o sudo:

#!/bin/bash
# test if ip-forward is up - if not, enable it:
#
# maybe the network card has no IPv4 adress? Use a static IP:
# if you have a static, well known IP, comment this out:
ifconfig eth0 192.168.32.8 up 
#
# Tell the kernel to do ip-forwarding:
#
ipf=$(cat /proc/sys/net/ipv4/ip_forward)
if [[ ipf -eq "0" ]] ; then 
    echo "1" > /proc/sys/net/ipv4/ip_forward
fi
#
# forward-masquerade, script follows:
#
. /etc/ppp/masquerade
#
# might or might not be needed. 
# start dhcp-server, older method:
# /etc/init.d/dhcp3-server start
# newer method:
# /etc/init.d/dhcdbd start

Então você precisa do script ip-masquerade, que você não precisa colocar em / etc / ppp / masqeuerade, mas mude a linha em gateway.sh, se você não fizer isso.

iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
#
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
#
iptables -A FORWARD -p tcp --tcp-flags SYN,RST, SYN -j TCPMSS --clamp-mss-to-pmtu

Apenas algumas linhas. Agora você iniciaria sudo gateway.sh e esperaria pelos clientes. Isso não faria muito:

 sudo route add default gw 192.168.32.8 

qualquer que seja o IP da máquina central. Isso já poderia ser suficiente. Talvez você modifique o DNS-Server, para ter um dos seus ISPs DNS lá:

 sudo edit /etc/resolv.conf 

Um avahi-daemon em execução e o NetworkManager podem interferir nos clientes, principalmente.

conclusão:

Pela terceira e primeira maneira, eu sei como fazê-lo exatamente, mas a maneira mais elegante provavelmente seria a segunda, mas eu nunca fiz isso sozinha. Então eu recomendo procurar um pouco, ou esperar um pouco, talvez alguém saiba como fazer isso, ou como fazer algo melhor.

    
por user unknown 13.04.2011 / 02:23
0

Você pode configurar um proxy apt. Se você pesquisar no Synaptic por apt proxy , encontrará várias opções. No passado, eu usei o apt-cacher ou o apt-cacher-ng; Não me lembro qual.

O proxy apt deve permitir que suas máquinas "remotas" usem o apt como se estivessem conectados à Internet. E você só usará a largura de banda para baixar um pacote específico uma vez.

    
por Scott Severance 13.04.2011 / 14:47
0

Que tal configurar a máquina central como um servidor NFS e colocar os arquivos de atualização do JDK lá e montá-los em outras máquinas na intranet?

    
por papashou 08.05.2012 / 02:33