

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á.

# Criar imagens baseadas em Linux
<a name="create-linux-based-images"></a>

Você pode criar imagens da WorkSpaces Amazon Applications baseadas em Linux conectando-se a um construtor de imagens Linux, instalando os aplicativos necessários, criando configurações de aplicativo e variáveis de ambiente padrão e usando uma ferramenta de interface de linha de comando (CLI) ou uma ferramenta de assistente de imagem (GUI) para adicionar esses aplicativos ao catálogo de aplicativos. Para abrir a ferramenta de GUI, procure por **Assistente de Imagens** na lista de aplicações.

**Topics**
+ [Criar configurações padrão de aplicação para os usuários](create-default-app-settings.md)
+ [Criar variáveis de ambiente padrão para os usuários do Linux](create-default-variables-linux.md)
+ [Otimizar a performance de inicialização das aplicações do Linux](optimize-launch-performance.md)
+ [Criar scripts de sessão](create-session-scripts.md)
+ [Usar a ferramenta de CLI do Assistente de Imagens para Linux](image-assistant-cli.md)
+ [Habilitar e desabilitar o suporte para webcam](webcam-support.md)
+ [Ativação e desativação do modo de sincronização pesada de arquivos para pastas base](heavy-file-sync.md)
+ [Tutorial: Criar uma imagem personalizada de aplicativos baseados em Linux WorkSpaces](tutorial-create-linux-image.md)
+ [Tutorial: Habilitar suporte ao idioma japonês para imagens do Linux](enable-japanese-support-linux.md)

# Criar configurações padrão de aplicação para os usuários
<a name="create-default-app-settings"></a>

Siga estas etapas para criar configurações padrão de aplicações para seus usuários.

**Topics**
+ [Etapa 1: Instalar aplicações do Linux no construtor de imagens](#app-settings-image-install)
+ [Etapa 2: criar uma TemplateUser conta](#app-settings-template-user)
+ [Etapa 3: Criar configurações padrão de aplicação](#app-settings-image-create-default-app-settings)
+ [Etapa 4: Salvar as configurações padrão de aplicação](#app-settings-image-save-default-app-settings)
+ [Etapa 5: Testar as configurações padrão de aplicação (opcional)](#app-settings-image-test-applications)
+ [Etapa 6: Limpeza](#app-settings-image-finish)

## Etapa 1: Instalar aplicações do Linux no construtor de imagens
<a name="app-settings-image-install"></a>

Nesta etapa, conecte um construtor de imagens e instale aplicações nele.

**Para instalar aplicativos no criador de imagens**

1. Conecte-se ao construtor de imagens executando uma das seguintes ações: 
   + [Use o console de WorkSpaces aplicativos](managing-image-builders-connect-console.md) (somente para conexões com a web)
   + [Crie um URL de streaming](managing-image-builders-connect-streaming-URL.md) (para conexões de clientes da Web ou de WorkSpaces aplicativos)
**nota**  
Você estará logado como ImageBuilderAdmin usuário no desktop Amazon Linux GNOME e terá privilégios de administrador root.

1. Instale as aplicações que precisar. Por exemplo, para instalar um navegador Chromium de um repositório yum público, abra a aplicação do Terminal e execute o seguinte comando:

   **[ImageBuilderAdmin]\$1 sudo yum update && sudo yum install chromium.x86\$164** 

## Etapa 2: criar uma TemplateUser conta
<a name="app-settings-template-user"></a>

Nesta etapa, você cria uma TemplateUser conta, que cria as configurações padrão do aplicativo para seus usuários de streaming.

**Para criar uma TemplateUser conta**

1. Crie uma TemplateUser conta que não tenha permissões de root. Por exemplo, em uma janela do Terminal, execute os seguintes comandos para criar TemplateUser no construtor de imagens:

   **[ImageBuilderAdmin]\$1 sudo useradd -m TemplateUser** 

   **[ImageBuilderAdmin]\$1 echo -e '<*password*>\$1n<*password*>\$1n' \$1 sudo passwd TemplateUser**

1. Mude para a TemplateUser conta:

   **[ImageBuilderAdmin]\$1 su - TemplateUser** 

## Etapa 3: Criar configurações padrão de aplicação
<a name="app-settings-image-create-default-app-settings"></a>

Nesta etapa, você cria as configurações padrão do aplicativo para os usuários de seus WorkSpaces aplicativos. Isso permite que seus usuários comecem a usar os aplicativos rapidamente durante as sessões de streaming de WorkSpaces aplicativos, sem a necessidade de criar ou definir essas configurações sozinhos.

**Como criar configurações padrão de aplicação para os usuários**

1. Inicie a aplicação para a qual você quer criar as configurações padrão. Por exemplo, em uma janela do Terminal, execute o seguinte comando para iniciar o navegador Chromium:

    **[TemplateUser]\$1 chromium-browser**

1. Defina as configurações da aplicação. Por exemplo, defina a página inicial do navegador Chromium como **https://aws.amazon.com**.

1. Feche as aplicações.

1. Encerre a sessão:

   **[TemplateUser]\$1 logout** 

## Etapa 4: Salvar as configurações padrão de aplicação
<a name="app-settings-image-save-default-app-settings"></a>

Nesta etapa, copie as configurações padrão de aplicação adicionadas para o diretório **/etc/skel/** e disponibilize-as para os usuários de streaming.

**Como salvar as configurações padrão de aplicação**
+ Execute o seguinte comando em uma janela do Terminal para copiar as configurações padrão de aplicação para os usuários de streaming:

   **[ImageBuilderAdmin]\$1 sudo cp -r -f /home/TemplateUser/. /etc/skel**

## Etapa 5: Testar as configurações padrão de aplicação (opcional)
<a name="app-settings-image-test-applications"></a>

Nesta etapa, verifique se as aplicações que você adicionou são executadas corretamente e se as configurações padrão de aplicação funcionam conforme o esperado. 

**Como testar aplicações e configurações padrão em um construtor de imagens**

1. Crie um usuário de teste que não tenha permissões de raiz. Por exemplo, em uma janela do **Terminal**, execute os seguintes comandos para criar **test-user** no construtor de imagens:

   **[ImageBuilderAdmin]\$1 sudo useradd -m test-user**

   **[ImageBuilderAdmin]\$1 echo -e '*password*>\$1n<*password*>\$1n' \$1 sudo passwd test-user** 

1. Mude para o usuário de teste:

   **[ImageBuilderAdmin]\$1 su - test-user**

1. Inicialize a aplicação (por exemplo, Chromium) como o usuário de teste:

   **[test-user]\$1 /usr/bin/chromium-browser** 

1. Verifique se as configurações padrão estão disponíveis para o usuário de teste (por exemplo, a página inicial do Chromium é https://aws.amazon.com/).

1. Encerre a sessão:

   **[test-user]\$1 logout**

## Etapa 6: Limpeza
<a name="app-settings-image-finish"></a>

Por fim, a última etapa é realizar a limpeza.

**Para limpar**

1. Excluir TemplateUser:

   **[ImageBuilderAdmin]\$1 sudo killall -u TemplateUser**

   **[ImageBuilderAdmin]\$1 sudo userdel -r TemplateUser**

1. Excluir test-user (não é necessário se você pulou a etapa 5):

   **[ImageBuilderAdmin]\$1 sudo killall -u test-user**

   **ImageBuilderAdmin]\$1 sudo userdel -r test-user**

# Criar variáveis de ambiente padrão para os usuários do Linux
<a name="create-default-variables-linux"></a>

Você pode criar variáveis de ambiente em uma instância do construtor de imagens do Linux. As variáveis de ambiente criadas são disponibilizadas nas instâncias de streaming criadas com base na respectiva imagem. 

**nota**  
Em instâncias de frota Linux, as variáveis de ambiente definidas usando a ferramenta Image Assistant (GUI) e as variáveis de ambiente padrão do sistema são exportadas por meio do script/etc/profile.d/appstream\$1system\$1vars.sh script. To access these environment variables, you must explicitly source the /etc/profile.d/appstream\$1system\$1vars.sh em seus aplicativos.

**Como criar variáveis de ambiente para os usuários**

1. Se a pasta `/etc/profile` não existir, execute o seguinte comando para criá-la:

   **[ImageBuilderAdmin]\$1 sudo mkdir -p /etc/profile.d** 

1. Para criar um arquivo de script de shell (por exemplo, my-environment.sh) nessa pasta, execute o seguinte comando:

   **[ImageBuilderAdmin]\$1 vim my-environment.sh**

1. Na primeira linha do arquivo de script, adicione o seguinte conteúdo: 

   **\$1\$1/bin/sh **

1. Para cada linha subsequente, adicione um comando **export** para definir as variáveis de ambiente para a imagem. O exemplo a seguir adiciona `$HOME/bin` à variável `PATH`. 

   **export PATH=”\$1HOME/bin:\$1PATH”**

1. Pressione a tecla **Esc** para retornar ao modo de comando no vim, depois execute o seguinte comando para salvar o script e sair do vim: 

   **:x**

1. Execute o seguinte comando para permitir que o script seja executado como um programa: 

   **[ImageBuilderAdmin]\$1 chmod \$1x my-environment.sh**

# Otimizar a performance de inicialização das aplicações do Linux
<a name="optimize-launch-performance"></a>

Se você utiliza a ferramenta de GUI do Assistente de Imagens, ela otimiza automaticamente a performance de inicialização das aplicações.

Se você estiver usando a CLI do Assistente de Imagens, use as etapas a seguir para otimizar a performance de inicialização manualmente. Quando você cria e adiciona arquivos a um manifesto de otimização de aplicações, a aplicação será inicializada mais rapidamente quando for iniciada pela primeira vez em uma nova instância de frota. No entanto, isso também aumenta o tempo necessário para as instâncias de frota serem disponibilizadas aos usuários. O manifesto de otimização é um arquivo de texto delimitado por uma linha para cada aplicação.

Você pode criar um arquivo de manifesto (como < *your-app* >-manifest.txt) manualmente ou seguindo as etapas abaixo.

**Para criar um arquivo de manifesto**

1. Garanta que a aplicação que você está tentando otimizar tenha sido inicializada e esteja em execução.

1. Em um terminal do construtor de imagens do Linux, execute o seguinte comando: 

   **ps -ef \$1 grep <*application-process-name*>**

1. Pesquise o menor número PID na saída da última etapa. Esse é o PID do processo pai raiz da aplicação.

1. Mantenha a aplicação em execução e use os componentes iniciais exigidos pelos usuários. Isso garante que esses componentes sejam capturados pelo processo de otimização. 

1. Crie um arquivo de script (por exemplo, `~/getfilestool.sh`) com o seguinte conteúdo:

   ```
   #!/bin/bash
   ## usage getfilestool.sh $pid
   lsof -p $(pstree -p $1 | grep -o '([0-9]\+)' | grep -o '[0-9]\+' | tr '\012' ,)|grep REG | sed -n '1!p' | awk '{print $9}'|awk 'NF'
   ```

1. Garanta que o arquivo possa ser executado com o seguinte comando:

   **[ImageBuilderAdmin]\$1 chmod u\$1x \$1/getfilestool.sh**

1. Execute o comando a seguir para capturar todos os arquivos em execução do processo pai raiz encontrado na etapa 3 e salve-os em um arquivo de manifesto temporário.

   **[ImageBuilderAdmin]\$1 sudo \$1/getfilestool.sh <*root-parent-pid*> > /tmp/<y*our-app*>-manifest.txt **

1. Verifique o conteúdo do manifesto de otimização, que é um arquivo de texto delimitado por linhas para cada aplicação.

Você pode especificar o manifesto de otimização para cada aplicação usando as operações da ferramenta de interface de linha de comandos (CLI) do Assistente de Imagens. Para obter mais informações, consulte [Usar a ferramenta de CLI do Assistente de Imagens para Linux](image-assistant-cli.md).

# Criar scripts de sessão
<a name="create-session-scripts"></a>

WorkSpaces Os aplicativos fornecem scripts de sessão na instância em instâncias de streaming baseadas em Windows e Linux. Para obter mais informações sobre os scripts de sessão, consulte [Use scripts de sessão para gerenciar a experiência de streaming dos usuários de seus WorkSpaces aplicativos Amazon](use-session-scripts.md).

Os scripts de sessão são especificados em uma imagem de WorkSpaces aplicativos. Para localizar o arquivo de configuração dos scripts de sessão em uma instância do Linux, navegue até `/opt/appstream/SessionScripts/config.json`. O código a seguir é um exemplo de arquivo `config.json` que especifica um script de início de sessão chamado “`test-session-start`” e um script de fim de sessão chamado “`test-session-stop`” com os respectivos parâmetros de tempo de execução. que os scripts referenciados em `config.json` tenham permissões de execução e que um interpretador de comandos esteja definido (por exemplo, \$1\$1/bin/bash). 

```
{
     "SessionStart": {
          "Executables": [
               {
                    "Context": "system",
                    "Filename": "/opt/appstream/SessionScripts/test-session-start",
                    "Arguments": "arg1",
                    "S3LogEnabled": true
               }
          ],
          "WaitingTime": 30
     },
     "SessionTermination": {
          "Executables": [
               { 
                    "Context": "system",
                    "Filename": "/opt/appstream/SessionScripts/test-session-stop", 
                    "Arguments": "arg2", 
                    "S3LogEnabled": true
               }
          ],
          "WaitingTime": 30
     }
}
```

# Usar a ferramenta de CLI do Assistente de Imagens para Linux
<a name="image-assistant-cli"></a>

Em um construtor de imagens baseado em Linux, você pode usar a ferramenta CLI do Image Assistant **AppStreamImageAssistant**para criar e gerenciar sua imagem de aplicativos. WorkSpaces A ferramenta está localizada em `/usr/local/appstream/image-assistant/AppStreamImageAssistant` com um link simbólico em `/bin/AppStreamImageAssistant`. Essa ferramenta de CLI para Linux oferece suporte a várias das mesmas operações da ferramenta de CLI do Assistente de Imagens para Windows. Para obter mais informações sobre essas operações, consulte [Operações de CLI do Image Assistant para criar e gerenciar sua imagem de aplicativos Amazon WorkSpaces](cli-operations-managing-creating-image-image-assistant.md).

# Habilitar e desabilitar o suporte para webcam
<a name="webcam-support"></a>

WorkSpaces Os aplicativos oferecem suporte a áudio e vídeo (AV) em tempo real redirecionando a entrada de vídeo local da webcam para WorkSpaces as sessões de streaming de aplicativos. Esse recurso permite que seus usuários usem a webcam local para videoconferência e áudio em uma sessão de streaming de WorkSpaces aplicativos. Com AV em tempo real e suporte para áudio em tempo real, seus usuários podem colaborar usando aplicativos familiares de videoconferência e audioconferência sem precisar sair da sessão de streaming de WorkSpaces aplicativos.

Para usar esse recurso, você deve usar uma imagem de WorkSpaces aplicativos Linux que usa um agente de WorkSpaces aplicativos Linux lançado em ou após 21 de setembro de 2022.

**nota**  
O AV em tempo real não é compatível com as instâncias stream.standard.small baseadas no Rocky Linux ou Red Hat Enterprise Linux. Os usuários não veem os ícones da câmera e do microfone na barra de ferramentas do cliente. 

O recurso de AV em tempo real é habilitado por padrão em sessões de streaming do Linux. Para configurar permissões de webcam para os usuários em um construtor de imagens do Linux, crie `/etc/appstream/appstream.conf` e adicione o seguinte conteúdo:

**nota**  
Especifique **1** para habilitar a webcam ou **0** para desabilitá-la.

```
[webcam]
permission = 1
```

# Ativação e desativação do modo de sincronização pesada de arquivos para pastas base
<a name="heavy-file-sync"></a>

Você pode habilitar as Amazon Simple Storage Service opções de Pastas Pessoais para sua organização. Quando você habilita as pastas iniciais do Amazon S3 para uma pilha de WorkSpaces aplicativos, os usuários da pilha podem acessar uma pasta de armazenamento persistente durante suas sessões de streaming de aplicativos. Não é necessária nenhuma configuração adicional para que os usuários acessem a pasta base. Os dados armazenados pelos usuários em sua pasta inicial são automaticamente copiados para um bucket do Amazon S3 em sua Conta da AWS pasta e disponibilizados para esses usuários em sessões subsequentes. Para obter mais informações, consulte [Habilite e administre pastas pessoais para os usuários de seus WorkSpaces aplicativos](home-folders.md).

Para garantir uma experiência tranquila e resolver algumas limitações existentes, nas quais uma sincronização de arquivos inconsistente pode ser observada quando os usuários salvam grandes arquivos de texto de suas instâncias de streaming em suas pastas pessoais, os administradores de WorkSpaces aplicativos podem ativar a opção de configuração **heavy\$1sync** se o upload de arquivos grandes para o Amazon S3 for um cenário comum do usuário ao usar aplicativos. WorkSpaces A ativação dessa opção significa que ela pode adicionar alguma latência ao processo de sincronização de arquivos da pasta pessoal, mas a integridade de todas as sincronizações com o Amazon S3 é garantida.

Esse recurso está disponível em todas as imagens do Red Hat Enterprise Linux e imagens de WorkSpaces aplicativos Linux que usam um agente de WorkSpaces aplicativos Linux lançado em ou após 12 de setembro de 2024.

O recurso de sincronização pesada é desativado por padrão para sessões de streaming do Red Hat Enterprise Linux e do Amazon Linux. Para configurar a permissão de sincronização pesada para seus usuários em um criador de imagens do Red Hat Enterprise Linux ou do Amazon Linux, crie `/etc/appstream/appstream.conf` e adicione o seguinte conteúdo:

**nota**  
Especifique **1** para ativar a sincronização pesada ou **0** para desativar a sincronização pesada.

```
[storage]
heavy_sync = 1
```

# Tutorial: Criar uma imagem personalizada de aplicativos baseados em Linux WorkSpaces
<a name="tutorial-create-linux-image"></a>

Este tutorial descreve como criar uma imagem personalizada da WorkSpaces Amazon Applications baseada em Linux que contém aplicativos que você pode transmitir para seus usuários.

**Importante**  
Não crie um usuário chamado “as2-streaming-user” em seu criador de imagens. Esse é um nome de usuário reservado para a Frota. Se você criar esse nome de usuário fora do fluxo de trabalho dos WorkSpaces Aplicativos, poderá ter problemas de streaming no Fleets.

**Topics**
+ [Etapa 1: Instalar aplicações do Linux no construtor de imagens](#tutorial-linux-image-install)
+ [Etapa 2: Gerar o arquivo de manifesto de otimização de aplicações](#tutorial-linux-image-manifest)
+ [Etapa 3: Criar um catálogo de WorkSpaces aplicativos](#tutorial-linux-image-catalog)
+ [Etapa 4: Criar configurações padrão de aplicação e variáveis de ambiente](#tutorial-linux-image-create-default-app-settings)
+ [Etapa 5: Testar aplicações e configurações](#tutorial-linux-image-test-applications)
+ [Etapa 6: Terminar a criação da imagem](#tutorial-linux-image-finish-create-image)
+ [Etapa 7 (opcional): marcar e copiar uma imagem](#tutorial-linux-image-tag-copy)
+ [Etapa 8: limpar](#tutorial-linux-image-finish)

## Etapa 1: Instalar aplicações do Linux no construtor de imagens
<a name="tutorial-linux-image-install"></a>

Nesta etapa, conecte um construtor de imagens e instale aplicações nele.

**Para instalar aplicativos no criador de imagens**

1. Conecte-se ao construtor de imagens executando uma das seguintes ações: 
   + [Use o console de WorkSpaces aplicativos](managing-image-builders-connect-console.md) (somente para conexões com a web)
   + [Crie um URL de streaming](managing-image-builders-connect-streaming-URL.md) (para conexões de clientes da Web ou de WorkSpaces aplicativos)
**nota**  
Você estará logado como ImageBuilderAdmin usuário no desktop Amazon Linux GNOME e terá privilégios de administrador root.

1. Instale as aplicações que precisar. Por exemplo, para instalar um navegador Chromium de um repositório yum público, abra a aplicação do Terminal e execute o seguinte comando:

   **[ImageBuilderAdmin]\$1 sudo yum update && sudo yum install chromium.x86\$164** 
**nota**  
Baixe e instale aplicativos somente de sites em que você confia.

## Etapa 2: Gerar o arquivo de manifesto de otimização de aplicações
<a name="tutorial-linux-image-manifest"></a>

Nesta etapa, gere um arquivo de manifesto para cada aplicação instalada na etapa 1.

**Como gerar um arquivo de manifesto para otimizar a performance de inicialização de uma aplicação**

1. Garanta que a aplicação (por exemplo, Chromium) que você está tentando otimizar tenha sido inicializada e esteja em execução.

1. Em uma janela do Terminal, execute o seguinte comando para listar os processos relacionados à aplicação:

   **[ImageBuilderAdmin]\$1 ps -ef \$1 grep chromium **

1. Encontre o PID pai raiz na saída do comando acima. Veja a seguir um exemplo de saída, em que o PID pai raiz é 16712:  
**Example**  

   ```
   [ImageBuilderAdmin]$ ps -ef | grep chromium
   
   ImageBu+ 16712 4128 0 Aug26 ? 00:00:44 /usr/lib64/chromium- browser/chromium-browser --enable-plugins --enable-extensions -- enable-user- scripts --enable-printing --enable-gpu-rasterization -- enable-sync --auto-ssl- client-auth
   
   ImageBu+ 16726 16712 0 Aug26 ? 00:00:00 /usr/lib64/chromium- browser/chromium-browser --type=zygote --no-zygote-sandbox ImageBu+ 16727 16712 0 Aug26 ? 00:00:00 /usr/lib64/chromium- browser/chromium- browser --type=zygote
   
   ImageBu+ 16731 16727 0 Aug26 ? 00:00:00 /usr/lib64/chromium- browser/chromium-browser --type=zygot
   ```

1. Mantenha a aplicação em execução e use os componentes iniciais exigidos pelos usuários. Isso garante que esses componentes sejam capturados pelo processo de otimização. 

1. Crie um arquivo de script (por exemplo, `~/getfilestool.sh`) com o seguinte conteúdo:

   ```
   #!/bin/bash
   ## usage getfilestool.sh $pid
   lsof -p $(pstree -p $1 | grep -o '([0-9]\+)' | grep -o '[0-9]\+' | tr '\012' ,)|grep REG | sed -n '1!p' | awk '{print $9}'|awk 'NF'
   ```

1. Execute o seguinte comando para verificar se o arquivo pode ser executado:

   **[ImageBuilderAdmin]\$1 chmod u\$1x \$1/getfilestool.sh** 

1. Execute o seguinte comando para capturar todos os arquivos em execução do processo pai raiz encontrado na etapa 3 acima e salve-os em um arquivo de manifesto temporário:

   **[ImageBuilderAdmin]\$1 sudo \$1/getfilestool.sh 16712 > /tmp/chromium-manifest.txt **

1. Verifique o conteúdo do manifesto de otimização, que é um arquivo de texto delimitado por linhas para cada aplicação.

## Etapa 3: Criar um catálogo de WorkSpaces aplicativos
<a name="tutorial-linux-image-catalog"></a>

Nesta etapa, você usa a ferramenta CLI `AppStreamImageAssistant` no construtor de imagens para criar um catálogo de WorkSpaces aplicativos especificando aplicativos para sua imagem. Para cada aplicação da qual pretende fazer streaming, você pode especificar o nome, o nome de exibição, o arquivo executável para inicializar e o ícone para exibição.

**Para criar um catálogo de WorkSpaces aplicativos**

1. Na área de trabalho do construtor de imagens, abra o **Terminal** pelo painel lateral ou abrindo a grade da aplicação.

1. Execute **AppStreamImageAssistant --help** para ver a lista de comandos disponíveis. Você usará esses comandos para adicionar aplicações e criar uma imagem. 

1. Execute o comando a seguir para adicionar um aplicativo instalado (por exemplo, Chromium) à lista de WorkSpaces aplicativos para usuários de aplicativos:

   ```
   AppStreamImageAssistant add-application \
    --name Chromium \
    --absolute-app-path /usr/lib64/chromium-browser/chromium-browser \
    --display-name Chromium \
    --absolute-icon-path /usr/share/icons/hicolor/256x256/apps/chromium-browser.png \
    --absolute-manifest-path /tmp/chromium-manifest.txt
   ```

   Como alternativa, você pode executar o seguinte comando:

   ```
   AppStreamImageAssistant add-application \
    --name="Chromium" \
    --absolute-app-path="/usr/lib64/chromium-browser/chromium-browser" \
    --display-name="Chromium" \
    --absolute-icon-path="/usr/share/icons/hicolor/256x256/apps/chromium-browser.png" \
    --absolute-manifest-path="/tmp/chromium-manifest.txt"
   ```

1. Para adicionar mais aplicações, repita a etapa 3 para cada aplicação adicional.

1. Para ver a lista de aplicações que foram adicionadas ao catálogo e seus metadados, como caminhos de ícones e parâmetros de inicialização, execute o seguinte comando:

   **AppStreamImageAssistant list-applications**

1. Para remover aplicações do catálogo, execute o seguinte comando:

   **AppStreamImageAssistant remove-application –-name *application\$1name***

## Etapa 4: Criar configurações padrão de aplicação e variáveis de ambiente
<a name="tutorial-linux-image-create-default-app-settings"></a>

Nesta etapa, você cria configurações de aplicativo e variáveis de ambiente padrão para os usuários de seus WorkSpaces aplicativos. Isso permite que seus usuários comecem a usar os aplicativos rapidamente durante as sessões de streaming de WorkSpaces aplicativos, sem a necessidade de criar ou definir essas configurações sozinhos.

**Como criar configurações padrão de aplicação e variáveis de ambiente para os usuários**

1. Inicialize a aplicação para a qual você deseja criar as configurações padrão. Por exemplo, em uma janela do Terminal, execute o seguinte comando para iniciar o navegador Chromium:

    **[ImageBuilderAdmin]\$1 chromium-browser**

1. Defina as configurações da aplicação. Por exemplo, defina a página inicial do navegador Chromium como **https://aws.amazon.com**.

1. Verifique se o aplicativo Chromium está fechado e execute os seguintes comandos para copiar a configuração do Chromium para **/etc/skel**:

   **[ImageBuilderAdmin]\$1 sudo mkdir /etc/skel/.config**

   **[ImageBuilderAdmin]\$1 sudo cp -R \$1/.config/chromium /etc/skel/.config** 

1. Defina as variáveis de ambiente e adicione-as ao arquivo de script. Por exemplo, execute os seguintes comandos:

   **[ImageBuilderAdmin]\$1 echo "export *FOO*=*BAR*" \$1 sudo tee -a /etc/profile.d/myenvvars.sh** 

   **[ImageBuilderAdmin]\$1 sudo chmod \$1x /etc/profile.d/myenvvars.sh** 

## Etapa 5: Testar aplicações e configurações
<a name="tutorial-linux-image-test-applications"></a>

Nesta etapa, verifique se as aplicações que você adicionou são executadas corretamente e se as configurações padrão de aplicação e as variáveis de ambiente funcionam conforme o esperado. 

**Como testar aplicações e configurações padrão em um construtor de imagens**

1. Crie um usuário de teste que não tenha permissões de raiz. Por exemplo, em uma janela do **Terminal**, execute os seguintes comandos para criar **test-user** no construtor de imagens:

   **[ImageBuilderAdmin]\$1 sudo useradd -m test-user**

   **[ImageBuilderAdmin]\$1 echo -e 'Pa55w0rdas2\$1\$1\$1\$1nPa55w0rdas2\$1\$1\$1\$1n' \$1 sudo passwd test-user** 

1. Mude para o usuário de teste:

   **[ImageBuilderAdmin]\$1 su - test-user**

1. Inicialize a aplicação (por exemplo, Chromium) como o usuário de teste:

   **[test-user]\$1 /usr/bin/chromium-browser** 

1. Verifique se as configurações padrão estão disponíveis para o usuário de teste (por exemplo, a página inicial do Chromium é https://aws.amazon.com/).

1. Verifique se as variáveis de ambiente estão disponíveis para o usuário de teste. Por exemplo, execute o comando a seguir:

   **[test-user]\$1 echo \$1*FOO***

   Esse comando deve exibir a saída ***BAR*** no terminal.

1. Execute os seguintes comandos para excluir o usuário de teste antes de criar uma imagem usando esse construtor de imagens: 

   **\$1 logout test user**

   **[test-user]\$1 logout**

   **\$1 kill test user's running processes**

   **[ImageBuilderAdmin]\$1 sudo killall -u test-user**

   **\$1 delete user**

   **[ImageBuilderAdmin]\$1 sudo userdel -r test-user**

## Etapa 6: Terminar a criação da imagem
<a name="tutorial-linux-image-finish-create-image"></a>

Nesta etapa, selecione um nome de imagem e termine a criação da sua imagem. 

**Para criar a imagem**

1. Em uma janela do **Terminal**, crie uma imagem do construtor de imagens executando **AppStreamImageAssistant create-image**. Essa imagem contém suas aplicações instaladas e registradas, além de todos os scripts de sessão e configurações padrão de aplicação que você definiu.

   Para ver a lista de opções disponíveis, execute **AppStreamImageAssistant create-image --help**. Para obter mais informações, consulte a operação **create-image** em [Crie sua imagem de WorkSpaces aplicativos da Amazon de forma programática usando as operações de CLI do Image Assistant](programmatically-create-image.md).

1. A sessão remota é desconectada após instantes. Quando a mensagem **Lost Connectivity (Conectividade perdida)** aparecer, feche a guia do navegador. Enquanto a imagem é criada, o status do criador de imagens aparece como **Snapshotting (Criação de snapshots)**. Não é possível se conectar ao criador de imagens até que esse processo seja concluído. 

1. Retorne ao console e vá até **Images**, **Image Registry**. Verifique se a nova imagem é exibida na lista.

   Enquanto a imagem estiver sendo criada, o status dela no registro de imagens do console aparece como **Pending** (Pendente). Não é possível se conectar a imagens com status **Pendente**. 

1. Selecione o ícone **Atualizar** para atualizar o status. Assim que a imagem for criada, o status da imagem muda para **Available (Disponível)** e o criador de imagens é interrompido automaticamente.

   Para continuar a criar imagens, inicie o criador de imagens e conecte-se a ele a partir do console ou crie um novo criador de imagens.

## Etapa 7 (opcional): marcar e copiar uma imagem
<a name="tutorial-linux-image-tag-copy"></a>

Você pode adicionar uma ou mais tags a uma imagem durante a criação de imagens ou depois de criar uma imagem. Você também pode copiar a imagem na mesma região ou em uma nova região na mesma conta da Amazon Web Services. Copiar uma imagem de origem resulta em uma imagem de destino idêntica, mas distinta. AWS no entanto, não copia nenhuma tag definida pelo usuário. Além disso, você só pode copiar as imagens personalizadas criadas por você, não as imagens base fornecidas pela AWS. 

**nota**  
Você pode copiar até duas imagens em um destino ao mesmo tempo. Se o destino no qual você está copiando uma imagem já atingiu o limite de imagens, você receberá um erro. Para copiar a imagem, neste caso, você deve remover imagens do destino. Depois que o destino estiver abaixo da cota de imagem (também conhecida como limite), inicie a cópia da imagem na região de origem. Para obter mais informações, consulte [Quotas do Amazon WorkSpaces Applications Service](limits.md).

**Para adicionar tags a uma imagem existente**

1. No painel de navegação, selecione **Images** (Imagens) e **Image Registry** (Registro de imagens). 

1. Na lista de imagens, selecione a imagem à qual você deseja adicionar tags.

1. Selecione **Etiquetas**, escolha **Adicionar/editar etiquetas** e selecione **Adicionar etiqueta**. Especifique a chave e o valor da etiqueta e selecione **Salvar**.

Para obter mais informações, consulte [Marcando seus recursos de WorkSpaces aplicativos da Amazon](tagging-basic.md).

**Como copiar uma imagem**

Copiar uma imagem em regiões geográficas diferentes permite o streaming de aplicativos de várias regiões com base na mesma imagem. Ao transmitir seus aplicativos mais perto de seus usuários, você pode melhorar a experiência dos usuários em streaming de aplicativos com WorkSpaces aplicativos.

1. No painel de navegação, selecione **Images** (Imagens) e **Image Registry** (Registro de imagens). 

1. Na lista de imagens, selecione a imagem que você deseja copiar.

1. Selecione **Actions** (Ações) e **Copy** (Copiar).

1. Na caixa de diálogo **Copy Image** (Copiar imagens), especifique as informações a seguir e, em seguida, selecione **Copy Image:** (Copiar imagem:).
   + Em **Destination region** (Região de destino), selecione a região na qual a nova imagem será copiada. 
   + Em **Name** (Nome), especifique o nome que a imagem terá quando for copiada no destino. 
   + Em **Description** (Descrição) (opcional), especifique a descrição que a imagem terá quando for copiada no destino. 

1. Para verificar o andamento da operação de cópia, volte ao console e navegue até **Images** (Imagens) e **Image Registry** (Registro de imagens). Use a barra de navegação para mudar para a região de destino (se aplicável) e verifique se a nova imagem é exibida na lista de imagens.

   A nova imagem é exibida inicialmente com o status **Copying** (Copiando) no registro de imagens do console. Quando a imagem é criada com êxito, o status muda para **Disponível**. Isso significa que você pode usá-la para iniciar uma pilha e fazer streaming de seus aplicativos. 

## Etapa 8: limpar
<a name="tutorial-linux-image-finish"></a>

Por fim, interrompa os construtores de imagens em execução para liberar recursos e evitar despesas não intencionais em sua conta. É recomendável interromper qualquer construtor de imagens em execução que não esteja sendo usado. Para obter mais informações, consulte [Preços de WorkSpaces aplicativos](https://aws.amazon.com/appstream2/pricing/).

**Para interromper o construtor de imagens em execução**

1. No painel de navegação, escolha **Images**, **Image Builders**, e selecione a instância do construtor de imagens em execução.

1. Escolha **Actions**, **Stop**.

# Tutorial: Habilitar suporte ao idioma japonês para imagens do Linux
<a name="enable-japanese-support-linux"></a>

Este tutorial descreve como habilitar o suporte ao idioma japonês para uma imagem do Linux. Isso permite que as aplicações na imagem exibam caracteres japoneses e que os usuários de streaming usem o método de entrada em japonês em sessões de streaming pela imagem.

**Topics**
+ [Etapa 1: Instalar uma fonte e um método de entrada em japonês](#tutorial-japanese-font)
+ [Etapa 2: Definir o fuso horário do sistema](#tutorial-japanese-zone)
+ [Etapa 3: Definir o local do sistema e o idioma de exibição](#tutorial-japanese-locale)
+ [Etapa 4: Configurar métodos de entrada](#tutorial-japanese-input)
+ [Etapa 5: Definir o layout do teclado](#tutorial-japense-keyboard)
+ [Etapa 6: Verificar no construtor de imagens](#tutorial-japense-verify)
+ [Etapa 7: Criar a imagem](#tutorial-japanese-create)

## Etapa 1: Instalar uma fonte e um método de entrada em japonês
<a name="tutorial-japanese-font"></a>

Nesta etapa, conecte um construtor de imagens do Linux e instale os pacotes de fonte e método de entrada de sua escolha.

**Como instalar uma fonte e um método de entrada em japonês**

1. Conecte-se ao construtor de imagens executando uma das seguintes ações: 
   + [Use o console de WorkSpaces aplicativos](managing-image-builders-connect-console.md) (somente para conexões com a web)
   + [Crie um URL de streaming](managing-image-builders-connect-streaming-URL.md) (para conexões de clientes da Web ou de WorkSpaces aplicativos)
**nota**  
Você estará logado como ImageBuilderAdmin usuário no desktop Amazon Linux GNOME e terá privilégios de administrador root.

1. Instale a fonte e o método de entrada necessários. Para isso, abra a aplicação do Terminal e execute os seguintes comandos:

   **sudo yum install vlgothic-p-fonts.noarch**

   **sudo yum install ibus-kkc.x86\$164**

1. Além dos comandos acima, para o Rocky Linux e Red Hat Enterprise Linux, execute o seguinte comando:

   **sudo yum install glibc-langpack-ja**

## Etapa 2: Definir o fuso horário do sistema
<a name="tutorial-japanese-zone"></a>

Para definir o fuso horário do sistema, execute o seguinte comando:

**sudo timedatectl set-timezone "Asia/Tokyo"**

## Etapa 3: Definir o local do sistema e o idioma de exibição
<a name="tutorial-japanese-locale"></a>

Para definir o local do sistema e o idioma de exibição, execute os comandos a seguir. 

**Como definir o local do sistema e o idioma de exibição**

1. Atualize o arquivo `cloud-init config` executando o comando **sudo vim /etc/cloud/cloud.cfg** e altere a **localidade** para **localidade: ja\$1JP.utf8**, depois salve e feche o arquivo.

1. Atualize as configurações do sistema executando **sudo localectl set-locale LANG=ja\$1JP.utf8**.

1. Atualize as configurações de shell do Gnome executando **sudo gsettings set org.gnome.system.locale region "ja\$1JP.utf8"**.

## Etapa 4: Configurar métodos de entrada
<a name="tutorial-japanese-input"></a>

Configure os métodos de entrada para a aplicação que você deseja adicionar à imagem. Para obter mais informações sobre como instalar uma aplicação, gerar um arquivo de manifesto e criar configurações padrão, consulte [Tutorial: Criar uma imagem personalizada de aplicativos baseados em Linux WorkSpaces](tutorial-create-linux-image.md). Nesta etapa, presumimos que você já tenha instalado a aplicação do Firefox, localizada em `/usr/local/firefox/firefox`.

**Como configurar métodos de entrada**

1. Crie um script executando o comando **sudo vim /usr/local/bin/update-input-method.sh** e adicione o seguinte conteúdo ao script:

   ```
   #!/bin/bash
   
   function start_process()
   {
       command=$1
       process_name=$2
   
       process_count=$(pgrep $process_name -c)
       echo "$(date) current $process_name count: $process_count"
       while [ $process_count -lt 1 ]
       do
           echo "$(date) starting $process_name"
           eval $command
           sleep 1
           process_count=$(pgrep $process_name -c)
       done
       echo "$(date) $process_name started"
   }
   
   start_process "ibus-daemon --xim &" "ibus-daemon"
   start_process "/usr/libexec/ibus-engine-kkc --ibus &" "ibus-engine-kkc"
   
   gsettings set org.gnome.desktop.input-sources sources "[('ibus','kkc'), ('xkb', 'us')]"
   gsettings set org.gnome.desktop.wm.keybindings switch-input-source "['<Control>space']"
   gsettings set org.gnome.desktop.wm.keybindings switch-input-source-backward "['<Shift><Control>space']"
   
   echo "$(date) updated input source and switch shortcut"
   ```

   No script acima, a primeira fonte de entrada ('ibus','kkc') é o método de entrada padrão. Você pode alterar o método de entrada padrão alterando a ordem das fontes de entrada. Além disso, “Control\$1Espaço” e “Shift\$1Control\$1Espaço” são especificados como combinações de teclas de atalho para alternar entre métodos de entrada. Você pode especificar suas próprias combinações de teclas que os usuários poderão usar para alternar os métodos de entrada durante as sessões de streaming.

1. Crie o script para inicializar a aplicação (Firefox) que você adicionará à imagem. Para fazer isso, execute o comando **sudo vim /usr/local/bin/firefox-jp.sh** e adicione o seguinte conteúdo ao script:

   ```
   #!/bin/bash
   
   # Gather required environment variables from the GNOME shell session
   while IFS= read -r -d $'\0' env_var; do
       case "$env_var" in
           DBUS_SESSION_BUS_ADDRESS=*|\
           GTK_IM_MODULE=*|\
           QT_IM_MODULE=*|\
           XMODIFIERS=*|\
           XAUTHORITY=*)
               echo "$env_var"
               export "$env_var"
               ;;
       esac
   done < "/proc/$(pgrep -u as2-streaming-user gnome-shell | head -n1)/environ"
   
   /usr/local/bin/update-input-method.sh > /var/tmp/update-input-method.log 2>&1 &
   
   /usr/local/firefox/firefox &
   ```

1. Adicione permissão de execução aos dois scripts executando os seguintes comandos:

   **sudo chmod \$1x /usr/local/bin/update-input-method.sh**

   **sudo chmod \$1x /usr/local/bin/firefox-jp.sh**

1. Se você já criou o arquivo de manifesto de otimização para a aplicação, execute os seguintes comandos para adicionar o script de inicialização da aplicação ao catálogo de aplicações:

   ```
   sudo AppStreamImageAssistant add-application \
   --name firefox \
   --absolute-app-path /usr/local/bin/firefox-jp.sh \
   --display-name firefox \
   --absolute-icon-path /usr/local/firefox/browser/chrome/icons/default/default128.png \
   --absolute-manifest-path /tmp/firefox-manifest.txt
   ```

Como alternativa, você também pode configurar os métodos de entrada adicionando o script update-input-method .sh como um aplicativo separado ao catálogo de aplicativos da imagem. Durante as sessões de streaming, os usuários poderão iniciar essa aplicação para habilitar a entrada em japonês e alternar entre os métodos de entrada com teclas de atalho especificadas na mesma sessão.

## Etapa 5: Definir o layout do teclado
<a name="tutorial-japense-keyboard"></a>

Defina o layout do teclado de acordo com os teclados que os usuários usarão durante as sessões de streaming. Você pode usar o comando **localectl list-keymaps** para listar todos os mapeamentos de teclas disponíveis e usar o comando **sudo localectl set-keymap jp106** para definir o mapeamento de teclas para o teclado japonês de 106 teclas, por exemplo.

## Etapa 6: Verificar no construtor de imagens
<a name="tutorial-japense-verify"></a>

Para verificar no construtor de imagens, reinicialize o construtor de imagens executando o comando **sudo shutdown -r now**. Após a reinicialização, conecte-se novamente ao construtor de imagens e verifique se tudo, incluindo fuso horário, local, idioma e método de entrada, funciona conforme o esperado.

## Etapa 7: Criar a imagem
<a name="tutorial-japanese-create"></a>

Crie a imagem no construtor de imagens. Para obter mais informações, consulte [Tutorial: Criar uma imagem personalizada de aplicativos baseados em Linux WorkSpaces](tutorial-create-linux-image.md). Crie configurações padrão de aplicação, incluindo as configurações regionais que você acabou de definir. Para obter mais informações, consulte “Creating Default Application Settings for Your Users” em [Criar imagens baseadas em Linux](create-linux-based-images.md).

Todas as instâncias de frota do Linux criadas com base nessa imagem terão as mesmas configurações padrão de fuso horário, local, idioma e método de entrada que você definiu para a imagem.