

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Instalações de pacotes de sistema operacional por camada
<a name="per-layer-os-package-install"></a>

**Importante**  
O AWS OpsWorks Stacks serviço chegou ao fim da vida útil em 26 de maio de 2024 e foi desativado para clientes novos e existentes. É altamente recomendável que os clientes migrem suas cargas de trabalho para outras soluções o mais rápido possível. Se você tiver dúvidas sobre migração, entre em contato com a AWS Support equipe no [AWS re:POST](https://repost.aws/) ou por meio do Premium [AWS Support](https://aws.amazon.com/support).

Começando com o Chef 12, você deve usar receitas personalizadas para instalar pacotes em camadas que estão executando diferentes sistemas operacionais. Essa abordagem fornece a você o máximo de flexibilidade e controle sobre instalações de pacotes. 

Por exemplo, suponha que você queira instalar o Apache em camadas que estão executando RedHat as versões Ubuntu e Amazon do sistema operacional Linux. O pacote Apache para RedHat o Amazon Linux é chamado`httpd`, mas no Ubuntu, ele é chamado`apache2`. 

Para lidar com essa diferença na nomenclatura de pacotes, você pode usar uma sintaxe semelhante à receita de exemplo a seguir. A receita instala o pacote Apache apropriado para cada sistema operacional. Esse exemplo é baseado na [documentação do Chef](https://docs.chef.io/). 

```
package "Install Apache" do
   case node[:platform]
      when "redhat", "amazon"
         package_name "httpd"
      when "ubuntu"
         package_name "apache2"
   end
end
```

Para informações detalhadas sobre como usar o recurso `package` para gerenciar pacotes, acesse a página [package](https://docs.chef.io/resource_package.html) na documentação do Chef. 

Como alternativa, você pode usar o método auxiliar `value_for_platform` a partir do Chef Recipe DSL (linguagem específica do domínio), que faz a mesma coisa de maneira mais sucinta: 

```
package "Install Apache" do
   package_name value_for_platform(
      ["redhat", "amazon"] => { "default" => "httpd" },
      ["ubuntu"] => { "default" => "apache2" }
   )
end
```

Para informações sobre como usar o método auxiliar `value_for_platform`, consulte [Sobre o Recipe DSL](https://docs.chef.io/dsl_recipe.html). 