Instalação do pacote específico do sistema operacional Apple Remote Desktop (ARD)

2

Confrontado com o Java recente kerfuffle imposta pelas atualizações silenciosas da Apple Eu estou procurando uma solução para instalar arquivos .pkg específicos para a versão do sistema operacional.

A Apple continua a fornecer atualizações de Java para o 10.6, mas para o 10.7+ precisamos obter o arquivo do Oracle. A Apple finalmente lançou a atualização do Java para o 10.6 na sexta-feira, mas o software estava disponível antes de aparecer como uma atualização de software através da seção de atualização de software do sistema operacional.

Para o 10.6, podemos acabar recorrendo à espera de que a Apple o faça através de suas Atualizações de Software e use o ARD para executar essas Atualizações de Software, mas ao enviar atualizações Java através do ARD usando o arquivo .pkg fornecido pela Oracle, gostaria de garantir que estamos apenas tentando instalar em máquinas que são 10.7+ e não em nada menos que isso.

Pergunta: Eu queria saber se o ARD Software Distribution tem a capacidade de instalar Com base na versão do SO do cliente, não quero tentar instalar o Oracle Java destinado a máquinas 10.7+ em qualquer um dos nossos clientes 10.6. Não consigo encontrar nenhuma documentação ou discussões on-line. Qualquer / toda ajuda é apreciada.

Resposta Eu formulei (grande ajuda da resposta abaixo, só queria oferecer um resultado final para as pessoas que ainda podem estar coçando as cabeças):

#!/bin/bash
os_ver_maj=$(sw_vers -productVersion | cut -d . -f 2)
    if [ $os_ver_maj -ge 7 ]; then
        mkdir /Volumes/ARD && mount_afp afp://ardservername.localdomain/ARD_pkgs /Volumes/ARD && installer -pkg /Volumes/ARD/jre-7u13-macosx-x64.pkg -target /
    else
        mkdir /Volumes/ARD && mount_afp afp://ardservername.localdomain/ARD_pkgs /Volumes/ARD && installer -pkg /Volumes/ARD/Java6u12OSX10.6.pkg -target /
    fi
umount /Volumes/ARD

Explicação:

  • Eu escolhi hospedar os arquivos diretamente no servidor ARD, o download do Oracle é quase impossível e tenho certeza de que isso mudará sem aviso prévio.
  • Eu também optei por não usar softwareupdate para 10.6, muitos outros problemas surgiram, mesmo ao escolher o PackageName específico.
  • Quando novas atualizações do Java forem lançadas, faremos o download e extrairemos o .pkg do .dmg, colocá-lo no servidor ARD no diretório ARD_pkgs e atualizaremos o script para refletir a alteração da versão do pacote.

Espero que isso ajude os outros, obrigado pela contribuição e orientação.

    
por TryTryAgain 04.02.2013 / 23:27

2 respostas

4

Itens de Cópia do Apple Remote Desktop & Os recursos de instalação de pacotes não têm a capacidade de filtragem específica para fazer isso, mas você pode fazer isso em duas etapas fáceis com uma lista inteligente:

  1. Clique no botão "+" no canto inferior esquerdo da janela da Área de trabalho remota e selecione "Nova lista inteligente ..."
  2. Nomeie a nova "Lista inteligente", em que "Versão do Mac OS" é "maior que", versão "10.7" (você pode adicionar outros filtros, se desejar) e clique em OK.
  3. Selecione a nova lista inteligente na lista de fontes.
  4. Selecione todos os computadores nessa lista.
  5. Clique no botão Instalar pacotes (ou selecione Gerenciar - > Instalar pacotes ...) para continuar a instalação do pacote Oracle Java somente nos Macs selecionados.

Como alternativa, se você deseja executar a Atualização de Software ou instalar o pacote Oracle Java em todas as máquinas de uma só vez, pode escrever um script de shell para verificar a versão do sistema operacional. Aqui está um exemplo em bash :

os_ver_maj=$(sw_vers -productVersion | cut -d . -f 2) # get the major OS version
if [ $os_ver_maj -ge 7 ]; then
    # download & install the Oracle Java package
else
    # run software update
fi

Uma vez que você construiu um script que faz corretamente o que você quer, então você pode selecionar todas as máquinas no ARD, então você pode fazer Gerenciar - > Execute o comando UNIX ... (ou clique no botão Comando Send UNIX) & cole no script.

    
por 05.02.2013 / 00:16
3

Acho que o que você está procurando é sw_vers . Você pode criar um script que o chama e analisa a saída. Se corresponder (ou não corresponder), chame o instalador de pacotes.

Exemplo de saída:

Marks-MacBook-Pro:~ mark$ sw_vers
ProductName:    Mac OS X
ProductVersion: 10.8.2
BuildVersion:   12C60
    
por 05.02.2013 / 00:15