Atualizar o Java da Oracle no Linux

17 de novembro de 2013

1.1. Faça download do Sun Java.
Acesse www.java.com e faça download do instalador Java para o seu GNU/Linux. Não pegue o RPM! Faça download do seguinte tarball:
  • Para GNU/Linux de 32 bits:
    Código:
        jre-7u45-linux-i586.tar.gz
  • Para GNU/Linux de 64 bits:
    Código:
    jre-7u45-linux-x64.tar.gz

Notas:
1.1.1. jre é uma abreviatura para Java Runtime Environment (JRE), que significa "Ambiente de Execução Java". Dentro de um JRE sempre existe uma JVM (Java Virtual Machine, que significa "Máquina Virtual Java"). De maneira geral, nos JRE da Sun/Oracle a JVM é o arquivo java (sem extensão), que fica dentro da pasta bin (de binários, executáveis...), onde o JRE está instalado.

1.1.2. 7u45 significa "version 7, update 45" (versão 7, atualização 45).

1.1.3. linux obviamente significa que o arquivo é para instalação do Java no GNU/Linux.

1.1.4. i586 significa que o pacote é para instalação em um sistema de arquitetura "Intel 586", o que em outras palavras significa que é para sistemas operacionais de 32 bits. Caso o seu sistema seja de 64 bits, você deve pegar o arquivo que tem um x64 no lugar do i586.

1.1.5. .tar.gz significa que todos os arquivos e pastas do JRE primeiramente foram guardados dentro de um arquivo não compactado (extensão .tar) e em seguida o arquivo .tar foi compactado com o aplicativo GZIP, o que lhe adicionou a extensão .gz, após o .tar. Como já explicado nas notas preliminares, arquivos com extensão .tar.gz recebem o nome de tarball.

1.1.6. Se acontecer de você não saber se o seu sistema é de 32 ou de 64 bits, entre no terminal e execute o comando
Código:
uname -i
Se a resposta do comando for i386 (ou i486, ou i586, ou i686, ou qualquer iX86, em que X é um número inteiro maior que zero), então seu sistema é de 32 bits.
Se a resposta do comando for x86_64 (ou x86-64, ou amd64, ou x64, ou qualquer outra coisa contendo 64), então seu sistema é de 64 bits.


1.2. Instale o Sun Java.
Vamos supor o seguinte:
  • Que você gravou o tarball na sua pasta Downloads.
  • Que o seu nome de usuário é bogus.
  • Que a sua pasta Downloads está dentro da sua pasta pessoal (que é /home/bogus).
Neste caso, o arquivo obtido deverá estar dentro de /home/bogus/Downloads. Um atalho para aquela pasta é~/Downloads (o ~ é um atalho para a sua pasta pessoal). Substitua aqueles nomes e caminhos pelos valores corretos aí do seu sistema e execute este supercomando, no terminal:
  • Para GNU/Linux de 32 bits:
    Código:
        sudo mkdir /opt/java && sudo mv ~/Downloads/jre-7u45-linux-i586.tar.gz /opt/java && cd /opt/java && sudo chmod a+x jre-7u45-linux-i586.tar.gz && sudo tar -xvf jre-7u45-linux-i586.tar.gz && sudo mv ./jre1* ./jre && sudo rm -f ./jre-*.tar.gz
  • Para GNU/Linux de 64 bits:
    Código:
    sudo mkdir /opt/java && sudo mv ~/Downloads/jre-7u45-linux-x64.tar.gz /opt/java && cd /opt/java && sudo chmod a+x jre-7u45-linux-x64.tar.gz && sudo tar -xvf jre-7u45-linux-x64.tar.gz && sudo mv ./jre1* ./jre && sudo rm -f ./jre-*.tar.gz

Notas:
1.2.1. O que o supercomando acima faz? Ele cria a pasta java dentro de /opt, daí move o tarball para dentro daquela pasta, entra em /opt/java e torna o tarball executável. Em seguida, executa o aplicativo TAR para copiar o conteúdo do tarball executável para dentro de /opt/java. É então criada uma subpasta em /opt/java, a tal subpasta é renomeada para jre (é nesta pasta que ficam todos os arquivos do Sun Java) e daí o caminho dela fica sendo /opt/java/jre. Por fim, o tarball é então excluído.

1.2.2. Se preferir, você pode executar um comando de cada vez. Cada && daqueles serve para separar um comando do outro.

1.2.3. Se o seu sistema for Ubuntu (ao invés de XUbuntu, LUbuntu ou alguma outra variante do Ubuntu), então muito provavelmente você está executando o Unity. Neste caso, você pode usar a combinação de teclas Ctrl Alt T para acessar o terminal. Outra maneira comum de executar o terminal no GNU/Linux é clicar com o botão direito do mouse sobre uma área livre da sua Área de Trabalho (Desktop) e selecionar a opção que contenha a palavra terminal ou term. Lembre-se: você tem que abrir o terminal convencional (modo usuário). Não use o terminal em modo superusuário (root)!

1.2.4. Na página de download do Java da Sun existe um link com instruções de instalação. Porém, aquele manual sugere instalar o Java na pasta/usr/local, enquanto que neste tutorial eu recomendo instalar em /opt/java porque opt vem de optionals ("opcionais") e o Java da Sun é um "opcional", já que não é o JRE oficialmente fornecido com o seu GNU/Linux. Enfim: fica a seu critério (e risco) fazer diferente do aqui descrito.

1.2.5. Caso não saiba executar o terminal ou queira executar os comandos num console separado, use a combinação de teclas Ctrl Alt F1 para entrar no tty1 (terminal número 1), faça login no tty1 e execute os comandos aqui mostrados. Note que neste caso não será possível usar o mouse para copiar e colar comandos. Para retornar à interface gráfica (que fica em tty7), pressione a combinação de teclas Ctrl Alt F7. De maneira geral, para alternar entre a interface gráfica (terminal 7) e os outros terminais, basta pressionar a combinação de teclas Ctrl Alt Fn, em que n é um número inteiro entre 1 e 7, sendo 7 o terminal no qual a interface gráfica está sendo executada. Para desconectar de tty1, use a combinação de teclas Ctrl C(só para cancelar qualquer comando que você porventura estava digitando), em seguida use a combinação de teclas Ctrl D (ou então digite exit e pressione a tecla ENTER) e então retorne ao tty7 com Ctrl Alt F7.


1.3. Diga ao seu sistema que o Sun Java é o seu JRE padrão.

SE (E SOMENTE SE) você NUNCA executou o comando a seguir, deste tutorial, então execute-o, no terminal:

Código:
    sudo update-alternatives --install /usr/bin/java java /opt/java/jre/bin/java 10 && sudo update-alternatives --set java /opt/java/jre/bin/java


Notas:
1.3.1. Se em algum momento após a última instalação ou reinstalação do Sun Java você executou o comando do item 2.2, então você PRECISAexecutar o comando deste item 1.3.

1.3.2. O comando é o mesmo, tanto para sistemas de 32 bits quanto de 64 bits.

1.3.3. O comando só precisa ser executado na PRIMEIRA vez em que você instala algum (qualquer) JRE da Sun. Ele dirá ao seu sistema que o Sun Java foi instalado e que ele é o JRE padrão do seu sistema.

1.3.4. Este tutorial foi reformulado de modo que os nomes das instalações futuras sejam sempre modificados de jre1.7.0-45jre1.7.0-46jre1.7.0-47etc. para simplesmente jre. Isto tem duas vantagens. A primeira é que isso dispensa ficar executando o comando update-alternatives sempre que se instala uma nova versão do Sun Java, já que ela sempre será gravada na mesma pasta: jre. A segunda vantagem é que o seu sistema sempre terá apenas uma única (a mais recente) versão do Sun Java, que você instalou em /opt/java/jre, e isto é recomendável, por questões de segurança.


1.4. Verifique se o procedimento funcionou.

Não é possível saber diretamente qual é a versão do seu JRE padrão, mas indiretamente isso é possível: basta perguntar ao seu sistema qual é a versão da JVM que faz parte do seu JRE padrão. Para fazer essa pergunta ao seu sistema, execute este comando, no terminal:

Código:
    java -version


Se a resposta do comando acima contiver algo assim:

Código:
    java version "1.7.0_45"
...então o JRE da Sun foi realmente instalado e está corretamente configurado para ser o JRE padrão do seu sistema.

Nota:
O comando é o mesmo, tanto para sistemas de 32 bits quanto de 64 bits.



1.5. Crie a pasta de plugins do seu navegador.
  • No Google Chrome:
    Acesse a pasta /opt/google/chrome e crie uma pasta intitulada plugins. No terminal, o comando respectivo é este:
    Código:
    sudo mkdir /opt/google/chrome/plugins

    Nota:
    A Seção 2 não contém nenhum comando para exclusão da pasta de plugins do Google Chrome. Isto porque manter tal pasta no seu sistema pode ser útil caso você queira futuramente instalar manualmente algum outro plugin para o Google Chrome. Consequentemente, se você já instalou o Sun Java alguma vez utilizando os procedimentos deste tutorial, então a pasta de plugins do Chrome já existe, mesmo que você já tenha usado a Seção 2 alguma vez para desinstalar completamente o Sun Java. Em tal caso, o comando acima será desnecessário. Mas executá-lo novamente não fará mal nenhum ao seu sistema.
  • No Mozilla Firefox:
    Não é necessário fazer nada, pois a pasta já existe:
    Código:
        /usr/lib/firefox-addons/plugins
    Nota: A partir da versão 21.0 do navegador Mozilla Firefox, o plugin Sun Java só irá funcionar se o atalho para o plugin estiver dentro de /usr/lib/firefox-addons/plugins, ao invés de em/usr/lib/firefox/plugins. Os comandos deste tutorial foram atualizados para contemplar a versão mais recente do Firefox. Portanto, se você ainda estiver usando um Firefox mais antigo que a versão 21.0, use o caminho antigo (pasta firefox, ao invés de firefox-addons).
    Se você já atualizou seu Firefox para a versão 21.0 (ou alguma mais recente) mas antes disso estava criando o atalho para o plugin Sun Java dentro da pasta antiga, então a pasta antiga ainda existe mas já não serve para nada. Neste caso, execute o comando a seguir, para excluir a pasta antiga (e tudo o que estiver dentro dela):
    Código:
        sudo rm -rf /usr/lib/firefox/plugins
  • No Google Chromium:
    Não é necessário fazer nada, pois a pasta já existe:
    Código:
    /usr/lib/chromium-browser/plugins
  • No Opera Browser:
    Não é necessário fazer nada, pois a pasta já existe:
    Código:
        /usr/lib/opera/plugins

Notas:
1.5.1. Os caminhos acima (onde se lê chromefirefoxchromium-browser e opera) foram confirmados apenas no Ubuntu (de 32 bits e de 64 bits). Caso esteja usando outra distribuição GNU/Linux, verifique se os caminhos são de fato aqueles, no seu sistema.

1.5.2. Se você já havia instalado alguma versão anterior do Sun Java usando este tutorial e agora acabou de desinstalar versões anteriores do Sun Java usando a seção 2 ou 3 deste tutorial, não execute o comando que cria a pasta plugins em /opt/google/chrome/plugins, porque esse caminho já existe!

1.5.3. De qualquer modo, se você executar novamente esse comando, isto não vai chegar a fazer nada "ruim": o shell ("interpretador de comandos" do GNU/Linux) apenas emitirá uma mensagem de erro, informando que a pasta já existe.


1.6. Localize o arquivo do plugin Sun Java.

O plugin é o arquivo libnpjp2.so. Você pode procurá-lo abrindo o Nautilus (ou outro gerenciador de arquivos que você esteja utilizando, como por exemplo o Thunar ou o Konqueror) e verificando se o arquivo está dentro da seguinte pasta:
  • No GNU/Linux de 32 bits:
    Código:
        /opt/java/jre/lib/i386
  • No GNU/Linux de 64 bits:
    Código:
    /opt/java/jre/lib/amd64

Se quiser procurar via terminal, a linha de comando é esta:
Código:
cd / && sudo updatedb && locate -e libnpjp2.so


Nota:
Seja paciente. Às vezes o comando updatedb demora um tempinho...


Se até aqui você fez tudo certo, o arquivo constará no seguinte caminho:
  • No GNU/Linux de 32 bits:
    Código:
        /opt/java/jre/lib/i386/libnpjp2.so
  • No GNU/Linux de 64 bits:
    Código:
    /opt/java/jre/lib/amd64/libnpjp2.so

1.7. Vincule o plugin Sun Java ao(s) seu(s) navegador(es).

Agora precisamos informar a cada navegador seu que o plugin Sun Java está instalado em seu sistema. Isto se faz indo à pasta de plugins do navegador e colocando lá um "atalho" que aponte para onde o plugin realmente se encontra. Para fazer isto, retorne ao terminal e execute estas linhas de comando:
  • No GNU/Linux de 32 bits:
    • Para o navegador Google Chrome:
      Código:
      sudo ln -sf /opt/java/jre/lib/i386/libnpjp2.so /opt/google/chrome/plugins/sunjava
    • Para o navegador Mozilla Firefox:
      Código:
      sudo ln -sf /opt/java/jre/lib/i386/libnpjp2.so /usr/lib/firefox-addons/plugins/sunjava
    • Para o navegador Google Chromium:
      Código:
      sudo ln -sf /opt/java/jre/lib/i386/libnpjp2.so /usr/lib/chromium-browser/plugins/sunjava
    • Para o navegador Opera Browser:
      Código:
      sudo ln -sf /opt/java/jre/lib/i386/libnpjp2.so /usr/lib/opera/plugins/sunjava
  • No GNU/Linux de 64 bits:
    • Para o navegador Google Chrome:
      Código:
          sudo ln -sf /opt/java/jre/lib/amd64/libnpjp2.so /opt/google/chrome/plugins/sunjava
    • Para o navegador Mozilla Firefox:
      Código:
          sudo ln -sf /opt/java/jre/lib/amd64/libnpjp2.so /usr/lib/firefox-addons/plugins/sunjava
    • Para o navegador Google Chromium:
      Código:
          sudo ln -sf /opt/java/jre/lib/amd64/libnpjp2.so /usr/lib/chromium-browser/plugins/sunjava
    • Para o navegador Opera Browser:
      Código:
          sudo ln -sf /opt/java/jre/lib/amd64/libnpjp2.so /usr/lib/opera/plugins/sunjava

Notas:
1.7.1. Os caminhos acima (onde se lê chromefirefoxchromium-browser e opera) foram confirmados apenas no Ubuntu (de 32 bits e de 64 bits). Caso esteja usando outra distribuição GNU/Linux, verifique se os caminhos são de fato aqueles, no seu sistema.

1.7.2. Se você já instalou o Sun Java usando o método ensinado neste tutorial e, quando removeu a versão anteriormente instalada, você NÃO executou o(s) comando(s) do item 2.3, então você NÃO precisa executar novamente o(s) comando(s) acima, porque o(s) atalho(s) do plugin para o(s) seu(s) navegador(es) já existe(m)! De qualquer modo, executá-lo(s) novamente não fará mal nenhum, pois a letra f (na opção -sf do comandoln) significa "forçar", ou seja: se o atalho já existir, o sistema irá forçar a criação de um novo atalho, que vai substituir (sobrescrever) o anteriormente criado.

1.7.3. Se o plugin libnpjp2.so estiver em outro caminho que não seja /opt/java/jre/lib/i386 (sistema de 32 bits) ou /opt/java/jre/lib/amd64(sistema de 64 bits), substitua aquele caminho pelo caminho correto.

1.7.4. As versões mais recentes do Google Chrome estão identificando automaticamente o plugin que é colocado em /opt/java, portanto pode não ser necessário criar aquele atalho em /opt/google/chrome/plugins. Eu estou mantendo o comando acima apenas para fins de compatibilidade com outras arquiteturas e distribuições GNU/Linux. Seguro morreu de velho, já dizia o ditado...


1.8. Abra seu navegador e esvazie o cache.
  • No Google Chrome:
    Isso pode ser feito usando-se a combinação de teclas Ctrl Shift Del para abrir a janela de conteúdo do Chrome (ou você pode clicar na barra de endereços, digitar chrome://settings/clearBrowserData e pressionar a tecla ENTER, ou ainda ir ao menu Ferramentas e clicar em Limpar dados de navegação...). Em seguida, marque a caixa de verificação Esvaziar o cache e clique no botão Limpar dados de navegação.
  • No Mozilla Firefox:
    Isso pode ser feito usando-se a combinação de teclas Ctrl Shift Del (ou vá ao menu Ferramentas e clique em Limpar dados pessoais...). Em seguida, marque a caixa denominada cache e clique no botãoLimpar agora.
  • No Google Chromium:
    O procedimento é idêntico ao do Google Chrome.
  • No Opera Browser:
    Clique no botão de menu Opera, então clique em Configurações, clique em Excluir dados privados..., marque a caixa Excluir todo o cache e clique no botão Excluir.
Nota:
Os procedimentos são os mesmos, tanto para sistemas de 32 bits quanto para sistemas de 64 bits.


1.9. Veja se seu navegador reconhece o plugin.

Feche seu navegador e execute-o novamente. Clique na barra de endereços, digite o texto abaixo e pressione a tecla ENTER:
  • No Google Chrome:
    Código:
        chrome://plugins

    ou então (tanto faz)
    Código:
        about:plugins
  • No Mozilla Firefox:
    Código:
        about:plugins
  • No Google Chromium:
    O mesmo procedimento do Google Chrome.
  • No Opera Browser:
    Código:
    opera:plugins

    ou então (tanto faz)
    Código:
        about:plugins

Será aberta uma página contendo a lista dos plugins atualmente instalados no seu navegador. Veja se agora o plugin Java da Sun foi instalado. Se ele estiver instalado, a seguinte linha deverá aparecer na lista:

Java(TM) Plug-in 10.45.2

Nota: Você deve estar se perguntando por que é que apareceu aquele 10.45, já que o seu Java é versão 7.45. Para saber o motivo, consulte o item4.3 (Seção 4).

Se quiser testar seu navegador (qualquer um deles) diretamente no website da Sun, basta acessar a página de testes da Sun. Se o website confirmar que você possui aquela versão do Java instalada, está tudo ok!

1.10. Acesse o website do seu banco.
Se até aqui deu tudo certo, acesse o website do Banco do Brasil que agora vai funcionar! 

Notas finais desta seção:
1.10.1. Você não precisa desativar o plugin IcedTea para poder usar o plugin Java da Sun. Contudo, caso ele esteja instalado em seu navegador e você prefira desabilitá-lo, retorne àquela janela de visualização de plugins do seu navegador, procure pelo plugin IcedTea e clique no link "Desativar" que se encontra junto a ele.

1.10.2. Não é recomendável desinstalar os pacotes OpenJDK e IcedTea, porque se fizer isto você deixará de receber as atualizações daqueles pacotes. É possível que no futuro eles passem a funcionar com o website do Banco do Brasil. Também porque é sempre bom ter instalado no sistema o JRE de mais algum outro desenvolvedor (contanto que esteja tudo atualizado!), já que pode, por exemplo, ocorrer de você acessar algum website que eventualmente dê algum problema com o plugin Java da Sun mas funcione bem com o plugin do outro desenvolvedor. 

1.10.3. Se aquelas informações de versão não apareceram no seu navegador, é possível que o plugin não tenha sido instalado ou não esteja sendo reconhecido ou inicializado. Nestes casos, feche o navegador e verifique se você executou corretamente todos os passos deste tutorial. Experimente também reinicializar o seu sistema. Pelo menos no Debian e nas distribuições baseadas em Debian (como é o caso da família Ubuntu), você pode reinicializar o sistema por meio deste comando, no terminal:
Código:
    sudo telinit 6


Após reinicializar o sistema, caso o plugin ainda não esteja funcionando, execute o seguinte comando, no terminal:
  • Para GNU/Linux de 32 bits:
    • No Google Chrome:
      Código:
          sudo chmod 755 /opt/java/jre/lib/i386/libnpjp2.so && sudo chmod 755 /opt/google/chrome/plugins/sunjava && google-chrome
    • No Mozilla Firefox:
      Código:
          sudo chmod 755 /opt/java/jre/lib/i386/libnpjp2.so && sudo chmod 755 /usr/lib/firefox-addons/plugins/sunjava && firefox
    • No Google Chromium:
      Código:
          sudo chmod 755 /opt/java/jre/lib/i386/libnpjp2.so && sudo chmod 755 /usr/lib/chromium-browser/plugins/sunjava && chromium-browser
    • No Opera Browser:
      Código:
          sudo chmod 755 /opt/java/jre/lib/i386/libnpjp2.so && sudo chmod 755 /usr/lib/opera/plugins/sunjava && opera
  • Para GNU/Linux de 64 bits:
    • No Google Chrome:
      Código:
          sudo chmod 755 /opt/java/jre/lib/amd64/libnpjp2.so && sudo chmod 755 /opt/google/chrome/plugins/sunjava && google-chrome
    • No Mozilla Firefox:
      Código:
          sudo chmod 755 /opt/java/jre/lib/amd64/libnpjp2.so && sudo chmod 755 /usr/lib/firefox-addons/plugins/sunjava && firefox
    • No Google Chromium:
      Código:
          sudo chmod 755 /opt/java/jre/lib/amd64/libnpjp2.so && sudo chmod 755 /usr/lib/chromium-browser/plugins/sunjava && chromium-browser
    • No Opera Browser:
      Código:
          sudo chmod 755 /opt/java/jre/lib/amd64/libnpjp2.so && sudo chmod 755 /usr/lib/opera/plugins/sunjava && opera

Nota:
Os caminhos acima (onde se lê chromefirefoxchromium-browser e opera) foram confirmados apenas no Ubuntu (de 32 bits e de 64 bits). Caso esteja usando outra distribuição GNU/Linux, verifique se os caminhos são de fato aqueles, no seu sistema.


Se o problema persistir e você tiver certeza de que seguiu corretamente todos os passos desta seção 1, veja se a seção 4 consegue ajudar você.




0 comentários:

Postar um comentário

Veja outras Publicações