

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Pemecahan masalah AWS IoT Greengrass V2
<a name="troubleshooting"></a>

Gunakan informasi dan solusi pemecahan masalah di bagian ini untuk membantu menyelesaikan masalah. AWS IoT Greengrass Version 2

**Topics**
+ [Lihat perangkat lunak AWS IoT Greengrass inti dan log komponen](#troubleshoot-with-logs)
+ [AWS IoT Greengrass Masalah perangkat lunak inti](#greengrass-core-issues)
+ [AWS IoT Greengrass masalah cloud](#greengrass-cloud-issues)
+ [Masalah deployment perangkat inti](#greengrass-core-deployment-issues)
+ [Masalah komponen perangkat inti](#greengrass-core-component-issues)
+ [Masalah komponen fungsi Lambda perangkat inti](#greengrass-core-lambda-function-issues)
+ [Versi komponen dihentikan](#discontinued-component-version)
+ [Masalah Antarmuka Baris Perintah Greengrass](#greengrass-cli-issues)
+ [AWS Command Line Interface masalah](#aws-cli-issues)
+ [Kode kesalahan penyebaran terperinci](troubleshooting-deployment.md)
+ [Kode status komponen terperinci](troubleshooting-component.md)

## Lihat perangkat lunak AWS IoT Greengrass inti dan log komponen
<a name="troubleshoot-with-logs"></a>

Perangkat lunak AWS IoT Greengrass Core menulis log ke sistem file lokal yang dapat Anda gunakan untuk melihat informasi real-time tentang perangkat inti. Anda juga dapat mengonfigurasi perangkat inti untuk menulis CloudWatch log ke Log, sehingga Anda dapat memecahkan masalah perangkat inti dari jarak jauh. Log ini dapat membantu Anda mengidentifikasi masalah dengan komponen, penerapan, dan perangkat inti. Untuk informasi selengkapnya, lihat [Memantau AWS IoT Greengrass log](monitor-logs.md).

## AWS IoT Greengrass Masalah perangkat lunak inti
<a name="greengrass-core-issues"></a>

Memecahkan masalah perangkat lunak AWS IoT Greengrass inti. 

**Topics**
+ [ThrottlingException dari ListDeployments API](#ThrottlingException)
+ [Tidak dapat mengatur perangkat inti](#unable-to-set-up-core-device)
+ [Tidak dapat memulai perangkat lunak AWS IoT Greengrass Inti sebagai layanan sistem](#unable-to-start-system-service)
+ [Tidak dapat mengatur inti sebagai layanan sistem](#unable-to-set-up-system-service)
+ [Tidak dapat terhubung ke AWS IoT Core](#core-error-unable-to-connect-to-aws-iot)
+ [Kesalahan kehabisan memori](#java-out-of-memory)
+ [Tidak dapat menginstal Greengrass CLI](#unable-to-install-greengrass-cli)
+ [User root is not allowed to execute](#user-not-allowed-to-execute)
+ [com.aws.greengrass.lifecyclemanager.GenericExternalService: Could not determine user/group to run with](#missing-default-run-with-user)
+ [Failed to map segment from shared object: operation not permitted](#tmp-folder-noexec)
+ [Gagal mengatur layanan Windows](#failed-to-set-up-windows-service)
+ [com.aws.greengrass.util.exceptions.TLSAuthException: Failed to get trust manager](#failed-to-get-trust-manager)
+ [com.aws.greengrass.deployment.IotJobsHelper: No connection available during subscribing to Iot Jobs descriptions topic. Will retry in sometime](#iot-jobs-no-connection-available)
+ [software.amazon.awssdk.services.iam.model.IamException: The security token included in the request is invalid](#error-invalid-security-token)
+ [software.amazon.awssdk.services.iot.model.IotException: User: <user> is not authorized to perform: iot:GetPolicy](#missing-automatic-provisioning-permissions)
+ [Error: com.aws.greengrass.shadowmanager.sync.model.FullShadowSyncRequest: Could not execute cloud shadow get request](#shadow-manager-error-could-not-execute-shadow-get-request)
+ [Operation aws.greengrass\$1<operation> is not supported by Greengrass](#ipc-operation-not-supported)
+ [java.io.FileNotFoundException: <stream-manager-store-root-dir>/stream\$1manager\$1metadata\$1store (Permission denied)](#stream-manager-store-root-folder-not-found)
+ [com.aws.greengrass.security.provider.pkcs11.PKCS11CryptoKeyService: Private key or certificate with label <label> does not exist](#pkcs11-provider-error-private-key-or-certificate-does-not-exist)
+ [software.amazon.awssdk.services.secretsmanager.model.SecretsManagerException: User: <user> is not authorized to perform: secretsmanager:GetSecretValue on resource: <arn>](#secret-manager-error-not-authorized-to-perform-get-secret-value)
+ [software.amazon.awssdk.services.secretsmanager.model.SecretsManagerException: Access to KMS is not allowed](#secret-manager-error-no-kms-access)
+ [java.lang.NoClassDefFoundError: com/aws/greengrass/security/CryptoKeySpi](#hardware-security-incompatible-nucleus-version)
+ [com.aws.greengrass.security.provider.pkcs11.PKCS11CryptoKeyService: CKR\$1OPERATION\$1NOT\$1INITIALIZED](#ckr-operation-not-initialized)
+ [Greengrass core device stuck on nucleus v2.12.3](#v2.12.3-revise-deployment)
+ [Greengrass nucleus v2.14.0 systemd template issue](#v2.14.0-systemd-template)

### ThrottlingException dari ListDeployments API
<a name="ThrottlingException"></a>

`ThrottlingException`dari `ListDeployments` API: Anda mungkin melihat ini ketika Anda memiliki sejumlah besar penerapan di akun. 

Untuk mengatasi ini, lakukan salah satu hal berikut:
+ Jika Anda menggunakan SDK, tentukan MaxResult parameter. Misalnya, untuk [JavaSDK](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/services/greengrassv2/model/ListDeploymentsRequest.html#maxResults) dengan nilai kecil (misalnya 5).
+ Anda dapat menggunakan [AWS Service Quotas](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) untuk meminta kenaikan batas batas tarif API. `DescribeJob` Anda dapat pergi ke konsol kuota Layanan, pilih kuota AWS IoT dan nama limit adalah batas **DescribeJob throttle**. Anda dapat meningkatkannya dari 10 menjadi 50.

### Tidak dapat mengatur perangkat inti
<a name="unable-to-set-up-core-device"></a>

Jika penginstal perangkat lunak AWS IoT Greengrass Core gagal dan Anda tidak dapat menyiapkan perangkat inti, Anda mungkin perlu menghapus instalasi perangkat lunak dan mencoba lagi. Untuk informasi selengkapnya, lihat [Copot pemasangan perangkat lunak AWS IoT Greengrass Inti](uninstall-greengrass-core-v2.md).

### Tidak dapat memulai perangkat lunak AWS IoT Greengrass Inti sebagai layanan sistem
<a name="unable-to-start-system-service"></a>

Jika perangkat lunak AWS IoT Greengrass Core gagal memulai, [periksa log layanan sistem](monitor-logs.md#access-system-service-logs) untuk mengidentifikasi masalah. Salah satu masalah umum adalah di mana Java tidak tersedia pada variabel lingkungan PATH (Linux) atau variabel sistem PATH (Windows).

### Tidak dapat mengatur inti sebagai layanan sistem
<a name="unable-to-set-up-system-service"></a>

Anda mungkin melihat kesalahan ini ketika penginstal perangkat lunak AWS IoT Greengrass Core gagal diatur AWS IoT Greengrass sebagai layanan sistem. Pada perangkat Linux, kesalahan ini biasanya terjadi jika perangkat inti tidak memiliki sistem init [systemd](https://en.wikipedia.org/wiki/Systemd). Installer dapat berhasil mengatur perangkat lunak AWS IoT Greengrass Core bahkan jika gagal untuk mengatur layanan sistem.

Lakukan salah satu tindakan berikut:
+ Konfigurasikan dan jalankan perangkat lunak AWS IoT Greengrass Core sebagai layanan sistem. Anda harus mengkonfigurasi perangkat lunak sebagai layanan sistem untuk menggunakan semua fitur AWS IoT Greengrass. Anda dapat menginstal [systemd](https://en.wikipedia.org/wiki/Systemd) atau menggunakan sistem init yang berbeda. Untuk informasi selengkapnya, lihat [Konfigurasikan inti Greengrass sebagai layanan sistem](configure-greengrass-core-v2.md#configure-system-service).
+ Jalankan perangkat lunak AWS IoT Greengrass inti tanpa layanan sistem. Anda dapat menjalankan perangkat lunak menggunakan skrip loader yang disiapkan penginstal di folder root Greengrass. Untuk informasi selengkapnya, lihat [Jalankan perangkat lunak AWS IoT Greengrass Core tanpa layanan sistem](run-greengrass-core-v2.md#run-greengrass-core-no-system-service).

### Tidak dapat terhubung ke AWS IoT Core
<a name="core-error-unable-to-connect-to-aws-iot"></a>

Anda mungkin melihat kesalahan ini ketika perangkat lunak AWS IoT Greengrass Core tidak dapat terhubung AWS IoT Core untuk mengambil pekerjaan penerapan, misalnya. Lakukan hal-hal berikut:
+ Periksa apakah perangkat inti Anda dapat terhubung ke internet dan AWS IoT Core. Untuk informasi selengkapnya tentang AWS IoT Core titik akhir yang terhubung dengan perangkat Anda, lihat[Konfigurasikan perangkat lunak AWS IoT Greengrass Inti](configure-greengrass-core-v2.md).
+ Periksa apakah perangkat inti Anda AWS IoT menggunakan sertifikat yang memungkinkan`iot:Connect`,, `iot:Publish``iot:Receive`, dan `iot:Subscribe` izin.
+ Jika perangkat inti Anda menggunakan [proksi jaringan](configure-greengrass-core-v2.md#configure-network-proxy), periksa apakah perangkat inti Anda memiliki [peran perangkat](device-service-role.md) dan apakah perannya memungkinkan izin `iot:Connect`, `iot:Publish`, `iot:Receive`, dan `iot:Subscribe`.

### Kesalahan kehabisan memori
<a name="java-out-of-memory"></a>

Kesalahan ini biasanya terjadi jika perangkat Anda tidak memiliki memori yang cukup untuk mengalokasikan objek di tumpukan Java. Pada perangkat dengan memori terbatas, Anda mungkin perlu menentukan ukuran tumpukan maksimum untuk mengontrol alokasi memori. Untuk informasi selengkapnya, lihat [Kontrol alokasi memori dengan opsi JVM](configure-greengrass-core-v2.md#jvm-tuning).

### Tidak dapat menginstal Greengrass CLI
<a name="unable-to-install-greengrass-cli"></a>

Anda mungkin melihat pesan konsol berikut saat menggunakan `--deploy-dev-tools` argumen dalam perintah instalasi untuk AWS IoT Greengrass Core.

```
Thing group exists, it could have existing deployment and devices, hence NOT creating deployment for Greengrass first party dev tools, please manually create a deployment if you wish to
```

Hal ini terjadi ketika komponen Greengrass CLI tidak diinstal karena perangkat inti Anda adalah anggota dari grup objek yang memiliki deployment yang ada. Jika Anda melihat pesan ini, Anda dapat secara manual menyebarkan komponen Greengrass CLI (`aws.greengrass.Cli`) ke perangkat untuk menginstal Greengrass CLI. Untuk informasi selengkapnya, lihat [Instal Greengrass CLI](install-gg-cli.md).

### User root is not allowed to execute
<a name="user-not-allowed-to-execute"></a>

Anda mungkin melihat kesalahan ini ketika pengguna yang menjalankan perangkat lunak AWS IoT Greengrass Core (biasanya`root`) tidak memiliki izin untuk menjalankan `sudo` dengan pengguna dan grup apa pun. Untuk pengguna sistem `ggc_user` default, kesalahan ini terlihat seperti berikut:

```
Sorry, user root is not allowed to execute <command> as ggc_user:ggc_group.
```

Periksa bahwa file `/etc/sudoers` Anda memberikan izin pengguna untuk menjalankan `sudo` sebagai kelompok lain. Izin untuk pengguna di `/etc/sudoers` seharusnya terlihat seperti contoh berikut.

```
root    ALL=(ALL:ALL) ALL
```

### com.aws.greengrass.lifecyclemanager.GenericExternalService: Could not determine user/group to run with
<a name="missing-default-run-with-user"></a>

Anda mungkin melihat kesalahan ini ketika perangkat inti mencoba menjalankan komponen, dan inti Greengrass tidak menentukan pengguna sistem default yang akan digunakan untuk menjalankan komponen.

Untuk memperbaiki masalah ini, konfigurasikan inti Greengrass untuk menentukan pengguna sistem default yang menjalankan komponen. Untuk informasi selengkapnya, lihat [Konfigurasikan pengguna yang menjalankan komponen](configure-greengrass-core-v2.md#configure-component-user) dan [Konfigurasikan pengguna komponen default](configure-greengrass-core-v2.md#configure-default-component-user).

### Failed to map segment from shared object: operation not permitted
<a name="tmp-folder-noexec"></a>

Anda mungkin melihat kesalahan ini ketika perangkat lunak AWS IoT Greengrass Inti gagal memulai karena `/tmp` folder dipasang dengan `noexec` izin. [Pustaka AWS Common Runtime (CRT)](https://github.com/awslabs/aws-crt-java) menggunakan `/tmp` folder secara default.

Lakukan salah satu tindakan berikut:
+ Jalankan perintah berikut untuk memasang kembali `/tmp` folder dengan `exec` izin dan coba lagi.

  ```
  sudo mount -o remount,exec /tmp
  ```
+ Jika Anda menjalankan Greengrass nucleus v2.5.0 atau yang lebih baru, Anda dapat menyetel opsi JVM untuk mengubah folder yang digunakan pustaka CRT. AWS Anda dapat menentukan `jvmOptions` parameter dalam konfigurasi komponen inti Greengrass dalam penerapan atau saat Anda menginstal perangkat lunak Core. AWS IoT Greengrass Ganti */path/to/use* dengan jalur ke folder yang dapat digunakan perpustakaan AWS CRT.

  ```
  {
    "jvmOptions": "-Daws.crt.lib.dir=\"/path/to/use\""
  }
  ```

### Gagal mengatur layanan Windows
<a name="failed-to-set-up-windows-service"></a>

Anda mungkin melihat kesalahan ini jika Anda menginstal perangkat lunak AWS IoT Greengrass Core pada perangkat Microsoft Windows 2016. Perangkat lunak AWS IoT Greengrass Core tidak didukung pada Windows 2016, untuk daftar sistem operasi yang didukung, lihat[Platform yang didukung](greengrass-nucleus-component.md#greengrass-v2-supported-platforms).

Jika Anda harus menggunakan Windows 2016, Anda dapat melakukan hal berikut:

1. Buka zip arsip instalasi AWS IoT Greengrass Core yang diunduh

1. Di `Greengrass` direktori buka `bin/greengrass.xml.template` file.

1. Tambahkan `<autoRefresh>` tag ke akhir file tepat sebelum `</service>` tag.

   ```
     </log>
     <autoRefresh>false</autoRefresh>
   </service>
   ```

### com.aws.greengrass.util.exceptions.TLSAuthException: Failed to get trust manager
<a name="failed-to-get-trust-manager"></a>

Anda mungkin melihat kesalahan ini saat menginstal perangkat lunak AWS IoT Greengrass Core tanpa file root certificate authority (CA).

```
2022-06-05T10:00:39.556Z [INFO] (main) com.aws.greengrass.lifecyclemanager.Kernel: service-loaded. {serviceName=DeploymentService}
2022-06-05T10:00:39.943Z [WARN] (main) com.aws.greengrass.componentmanager.ClientConfigurationUtils: configure-greengrass-mutual-auth. Error during configure greengrass client mutual auth. {}
com.aws.greengrass.util.exceptions.TLSAuthException: Failed to get trust manager
```

Periksa apakah Anda menentukan file CA root yang valid dengan `rootCaPath` parameter dalam file konfigurasi yang Anda berikan kepada penginstal. Untuk informasi selengkapnya, lihat [Instal perangkat lunak AWS IoT Greengrass Core](install-greengrass-core-v2.md).

### com.aws.greengrass.deployment.IotJobsHelper: No connection available during subscribing to Iot Jobs descriptions topic. Will retry in sometime
<a name="iot-jobs-no-connection-available"></a>

Anda mungkin melihat pesan peringatan ini ketika perangkat inti tidak dapat terhubung AWS IoT Core untuk berlangganan pemberitahuan pekerjaan penerapan. Lakukan hal-hal berikut:
+ Periksa apakah perangkat inti terhubung ke internet dan dapat mencapai titik akhir AWS IoT data yang Anda konfigurasikan. Untuk informasi selengkapnya tentang titik akhir yang digunakan perangkat inti, lihat[Izinkan lalu lintas perangkat melalui proxy atau firewall](allow-device-traffic.md).
+ Periksa log Greengrass untuk kesalahan lain yang mengungkapkan akar penyebab lainnya.

### software.amazon.awssdk.services.iam.model.IamException: The security token included in the request is invalid
<a name="error-invalid-security-token"></a>

Anda mungkin melihat kesalahan ini saat [menginstal perangkat lunak AWS IoT Greengrass Core dengan penyediaan otomatis, dan penginstal](quick-installation.md) menggunakan token AWS sesi yang tidak valid. Lakukan hal-hal berikut:
+ Jika Anda menggunakan kredensil keamanan sementara, periksa apakah token sesi sudah benar dan Anda menyalin dan menempelkan token sesi lengkap.
+ Jika Anda menggunakan kredensil keamanan jangka panjang, periksa apakah perangkat tidak memiliki token sesi dari waktu di mana Anda sebelumnya menggunakan kredensil sementara. Lakukan hal-hal berikut:

  1. Jalankan perintah berikut untuk menghapus variabel lingkungan token sesi.

------
#### [ Linux or Unix ]

     ```
     unset AWS_SESSION_TOKEN
     ```

------
#### [ Windows Command Prompt (CMD) ]

     ```
     set AWS_SESSION_TOKEN=
     ```

------
#### [ PowerShell ]

     ```
     Remove-Item Env:\AWS_SESSION_TOKEN
     ```

------

  1. Periksa apakah file AWS kredensialnya,`~/.aws/credentials`, berisi token sesi,. `aws_session_token` Jika demikian, hapus baris itu dari file.

     ```
     aws_session_token = AQoEXAMPLEH4aoAH0gNCAPyJxz4BlCFFxWNE1OPTgk5TthT+FvwqnKwRcOIfrRh3c/LTo6UDdyJwOOvEVPvLXCrrrUtdnniCEXAMPLE/IvU1dYUg2RVAJBanLiHb4IgRmpRV3zrkuWJOgQs8IZZaIv2BXIa2R4Olgk
     ```

Anda juga dapat menginstal perangkat lunak AWS IoT Greengrass Core tanpa memberikan AWS kredensional. Untuk informasi selengkapnya, lihat [Instal perangkat lunak AWS IoT Greengrass Core dengan penyediaan sumber daya manual](manual-installation.md) atau [Instal perangkat lunak AWS IoT Greengrass Core dengan penyediaan AWS IoT armada](fleet-provisioning.md).

### software.amazon.awssdk.services.iot.model.IotException: User: <user> is not authorized to perform: iot:GetPolicy
<a name="missing-automatic-provisioning-permissions"></a>

Anda mungkin melihat kesalahan ini saat [menginstal perangkat lunak AWS IoT Greengrass Core dengan penyediaan otomatis, dan penginstal](quick-installation.md) menggunakan AWS kredensil yang tidak memiliki izin yang diperlukan. Untuk informasi selengkapnya tentang izin yang diperlukan, lihat[Kebijakan IAM minimal untuk penginstal untuk menyediakan sumber daya](provision-minimal-iam-policy.md).

Periksa izin untuk identitas IAM kredensil, dan berikan identitas IAM izin yang diperlukan yang hilang.

### Error: com.aws.greengrass.shadowmanager.sync.model.FullShadowSyncRequest: Could not execute cloud shadow get request
<a name="shadow-manager-error-could-not-execute-shadow-get-request"></a>

Anda mungkin melihat kesalahan ini saat menggunakan [komponen pengelola bayangan](shadow-manager-component.md) untuk [menyinkronkan bayangan perangkat dengan AWS IoT Core](sync-shadows-with-iot-core.md). Kode status HTTP 403 menunjukkan bahwa kesalahan ini terjadi karena AWS IoT kebijakan perangkat inti tidak memberikan izin untuk memanggil`GetThingShadow`.

```
com.aws.greengrass.shadowmanager.sync.model.FullShadowSyncRequest: Could not execute cloud shadow get request. {thing name=MyGreengrassCore, shadow name=MyShadow}
2021-07-14T21:09:02.456Z [ERROR] (pool-2-thread-109) com.aws.greengrass.shadowmanager.sync.SyncHandler: sync. Skipping sync request. {thing name=MyGreengrassCore, shadow name=MyShadow}
com.aws.greengrass.shadowmanager.exception.SkipSyncRequestException: software.amazon.awssdk.services.iotdataplane.model.IotDataPlaneException: null (Service: IotDataPlane, Status Code: 403, Request ID: f6e713ba-1b01-414c-7b78-5beb3f3ad8f6, Extended Request ID: null)
```

Untuk menyinkronkan bayangan lokal dengan AWS IoT Core, AWS IoT kebijakan perangkat inti harus memberikan izin berikut:
+ `iot:GetThingShadow`
+ `iot:UpdateThingShadow`
+ `iot:DeleteThingShadow`

Periksa AWS IoT kebijakan perangkat inti, dan tambahkan izin yang diperlukan yang tidak ada. Untuk informasi selengkapnya, lihat berikut ini:
+ [AWS IoT Core tindakan kebijakan](https://docs.aws.amazon.com/iot/latest/developerguide/iot-policy-actions.html) dalam *Panduan AWS IoT Pengembang*
+ [Memperbarui AWS IoT kebijakan perangkat inti](device-auth.md#update-core-device-iot-policy)

### Operation aws.greengrass\$1<operation> is not supported by Greengrass
<a name="ipc-operation-not-supported"></a>

Anda mungkin melihat kesalahan ini saat menggunakan [operasi komunikasi antarproses (IPC)](interprocess-communication.md) dalam komponen Greengrass kustom, dan komponen yang AWS disediakan yang diperlukan tidak diinstal pada perangkat inti.

Untuk memperbaiki masalah ini, tambahkan komponen yang diperlukan sebagai [dependensi dalam resep komponen Anda](component-recipe-reference.md#recipe-reference-component-dependencies), sehingga perangkat lunak AWS IoT Greengrass Core menginstal komponen yang diperlukan saat Anda menerapkan komponen Anda.
+ [Mengambil nilai rahasia](ipc-secret-manager.md) — `aws.greengrass.SecretManager`
+ [Berinteraksi dengan bayangan lokal](ipc-local-shadows.md) — `aws.greengrass.ShadowManager`
+ [Mengelola penerapan dan komponen lokal](ipc-local-deployments-components.md) — `aws.greengrass.Cli` v2.6.0 atau yang lebih baru
+ [Mengautentikasi dan mengotorisasi perangkat klien](ipc-client-device-auth.md) - `aws.greengrass.clientdevices.Auth` v2.2.0 atau yang lebih baru

### java.io.FileNotFoundException: <stream-manager-store-root-dir>/stream\$1manager\$1metadata\$1store (Permission denied)
<a name="stream-manager-store-root-folder-not-found"></a>

Anda mungkin melihat kesalahan ini di file log pengelola aliran (`aws.greengrass.StreamManager.log`) saat mengonfigurasi [pengelola aliran](stream-manager-component.md) untuk menggunakan folder root yang tidak ada atau memiliki izin yang benar. Untuk informasi selengkapnya tentang cara mengonfigurasi folder ini, lihat [konfigurasi manajer aliran](stream-manager-component.md#stream-manager-component-configuration).

### com.aws.greengrass.security.provider.pkcs11.PKCS11CryptoKeyService: Private key or certificate with label <label> does not exist
<a name="pkcs11-provider-error-private-key-or-certificate-does-not-exist"></a>

Kesalahan ini terjadi ketika [komponen penyedia PKCS \$111](pkcs11-provider-component.md) tidak dapat menemukan atau memuat kunci pribadi atau sertifikat yang Anda tentukan saat Anda mengonfigurasi perangkat lunak AWS IoT Greengrass Core untuk menggunakan [modul keamanan perangkat keras (HSM](hardware-security.md)). Lakukan hal-hal berikut:
+ Periksa apakah kunci pribadi dan sertifikat disimpan di HSM menggunakan slot, PIN pengguna, dan label objek yang Anda konfigurasikan perangkat lunak AWS IoT Greengrass Core untuk digunakan.
+ Periksa apakah kunci pribadi dan sertifikat menggunakan label objek yang sama di HSM.
+ Jika HSM Anda mendukung objek IDs, periksa apakah kunci pribadi dan sertifikat menggunakan ID objek yang sama di HSM.

Periksa dokumentasi untuk HSM Anda untuk mempelajari cara menanyakan detail tentang token keamanan di HSM. Jika Anda perlu mengubah slot, label objek, atau ID objek untuk token keamanan, periksa dokumentasi untuk HSM Anda untuk mempelajari cara melakukannya.

### software.amazon.awssdk.services.secretsmanager.model.SecretsManagerException: User: <user> is not authorized to perform: secretsmanager:GetSecretValue on resource: <arn>
<a name="secret-manager-error-not-authorized-to-perform-get-secret-value"></a>

Kesalahan ini dapat terjadi ketika Anda menggunakan [komponen manajer rahasia](secret-manager-component.md) untuk menyebarkan AWS Secrets Manager rahasia. Jika [IAM role pertukaran token](device-service-role.md) perangkat inti tidak memberikan izin untuk mendapatkan rahasia, deployment itu gagal dan log Greengrass mencakup kesalahan ini.

**Untuk mengotorisasi perangkat inti untuk mengunduh rahasia**

1. Tambahkan izin `secretsmanager:GetSecretValue` ke peran pertukaran token perangkat inti. Contoh pernyataan kebijakan berikut memberikan izin untuk mendapatkan nilai rahasia.

   ```
   {
       "Effect": "Allow",
       "Action": [
           "secretsmanager:GetSecretValue"
       ],
       "Resource": [
           "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyGreengrassSecret-abcdef"
       ]
   }
   ```

   Untuk informasi selengkapnya, lihat [Otorisasi perangkat inti untuk berinteraksi dengan layanan AWS](device-service-role.md).

1. Terapkan kembali deployment ke perangkat inti. Lakukan salah satu tindakan berikut:
   + Revisi deployment tanpa perubahan apa pun. Perangkat inti mencoba untuk mengunduh rahasia lagi ketika menerima deployment yang direvisi. Untuk informasi selengkapnya, lihat [Revisi deployment](revise-deployments.md).
   + Mulai ulang perangkat lunak AWS IoT Greengrass Core untuk mencoba lagi penyebaran. Untuk informasi selengkapnya, lihat [Jalankan perangkat lunak AWS IoT Greengrass Core](run-greengrass-core-v2.md)

   Deployment berhasil jika secret manager berhasil mengunduh rahasia tersebut.

### software.amazon.awssdk.services.secretsmanager.model.SecretsManagerException: Access to KMS is not allowed
<a name="secret-manager-error-no-kms-access"></a>

Kesalahan ini dapat terjadi ketika Anda menggunakan [komponen manajer rahasia](secret-manager-component.md) untuk menyebarkan AWS Secrets Manager rahasia yang dienkripsi oleh kunci. AWS Key Management Service Jika [peran IAM pertukaran token](device-service-role.md) perangkat inti tidak memberikan izin untuk mendekripsi rahasia, penerapan gagal dan log Greengrass menyertakan kesalahan ini.

Untuk memperbaiki masalah, tambahkan `kms:Decrypt` izin ke peran pertukaran token perangkat inti. Untuk informasi selengkapnya, lihat berikut ini:
+ [Enkripsi rahasia dan dekripsi](https://docs.aws.amazon.com/secretsmanager/latest/userguide/security-encryption.html) *dalam Panduan Pengguna AWS Secrets Manager *
+ [Otorisasi perangkat inti untuk berinteraksi dengan layanan AWS](device-service-role.md)

### java.lang.NoClassDefFoundError: com/aws/greengrass/security/CryptoKeySpi
<a name="hardware-security-incompatible-nucleus-version"></a>

Anda mungkin melihat kesalahan ini ketika mencoba menginstal perangkat lunak AWS IoT Greengrass Core dengan [keamanan perangkat keras](hardware-security.md) dan Anda menggunakan versi inti Greengrass sebelumnya yang tidak mendukung integrasi keamanan perangkat keras. Untuk menggunakan integrasi keamanan perangkat keras, Anda harus menggunakan Greengrass nucleus v2.5.3 atau yang lebih baru.

### com.aws.greengrass.security.provider.pkcs11.PKCS11CryptoKeyService: CKR\$1OPERATION\$1NOT\$1INITIALIZED
<a name="ckr-operation-not-initialized"></a>

Anda mungkin melihat kesalahan ini saat menggunakan TPM2 pustaka saat menjalankan AWS IoT Greengrass Core sebagai layanan sistem.

Kesalahan ini menunjukkan bahwa Anda perlu menambahkan variabel lingkungan yang menyediakan lokasi penyimpanan PKCS \$111 di file layanan systemd AWS IoT Greengrass Core. 

Untuk informasi selengkapnya, lihat bagian Persyaratan pada dokumentasi [Penyedia PKCS \$111](pkcs11-provider-component.md) komponen.

### Greengrass core device stuck on nucleus v2.12.3
<a name="v2.12.3-revise-deployment"></a>

Jika perangkat inti Greengrass Anda tidak akan merevisi penerapan Anda dari nucleus versi 2.12.3, Anda mungkin perlu mengunduh dan mengganti file dengan Greengrass nucleus versi 2.12.2. `Greengrass.jar` Lakukan hal-hal berikut:

1. Pada perangkat inti Greengrass Anda, jalankan perintah berikut untuk menghentikan perangkat lunak Greengrass Core.

------
#### [ Linux or Unix ]

   ```
   sudo systemctl stop greengrass
   ```

------
#### [ Windows Command Prompt (CMD) ]

   ```
   sc stop "greengrass"
   ```

------
#### [ PowerShell ]

   ```
   Stop-Service -Name "greengrass"
   ```

------

1. Di perangkat inti Anda, unduh AWS IoT Greengrass perangkat lunak ke file bernama`greengrass-2.12.2.zip`.

------
#### [ Linux or Unix ]

   ```
   curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-2.12.2.zip > greengrass-2.12.2.zip
   ```

------
#### [ Windows Command Prompt (CMD) ]

   ```
   curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-2.12.2.zip > greengrass-2.12.2.zip
   ```

------
#### [ PowerShell ]

   ```
   iwr -Uri https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-2.12.2.zip -OutFile greengrass-2.12.2.zip
   ```

------

1. Buka zip perangkat lunak AWS IoT Greengrass Core ke folder di perangkat Anda. Ganti *GreengrassInstaller* dengan folder yang ingin Anda gunakan.

------
#### [ Linux or Unix ]

   ```
   unzip greengrass-2.12.2.zip -d GreengrassInstaller && rm greengrass-2.12.2.zip
   ```

------
#### [ Windows Command Prompt (CMD) ]

   ```
   mkdir GreengrassInstaller && tar -xf greengrass-2.12.2.zip -C GreengrassInstaller && del greengrass-2.12.2.zip
   ```

------
#### [ PowerShell ]

   ```
   Expand-Archive -Path greengrass-2.12.2.zip -DestinationPath .\\GreengrassInstaller
   rm greengrass-2.12.2.zip
   ```

------

1. Jalankan perintah berikut untuk mengganti file JAR Greengrass versi 2.12.3 nukleus dengan file JAR Greengrass versi nukleus 2.12.2.

------
#### [ Linux or Unix ]

   ```
   sudo cp ./GreengrassInstaller/lib/Greengrass.jar /greengrass/v2/packages/artifacts-unarchived/aws.greengrass.Nucleus/2.12.3/aws.greengrass.nucleus/lib
   ```

------
#### [ Windows Command Prompt (CMD) ]

   ```
   robocopy ./GreengrassInstaller/lib/Greengrass.jar /greengrass/v2/packages/artifacts-unarchived/aws.greengrass.Nucleus/2.12.3/aws.greengrass.nucleus/lib /E
   ```

------
#### [ PowerShell ]

   ```
   cp -Path ./GreengrassInstaller/lib/Greengrass.jar -Destination /greengrass/v2/packages/artifacts-unarchived/aws.greengrass.Nucleus/2.12.3/aws.greengrass.nucleus/lib
   ```

------

1. Jalankan perintah berikut untuk memulai perangkat lunak Greengrass Core.

------
#### [ Linux or Unix ]

   ```
   sudo systemctl start greengrass
   ```

------
#### [ Windows Command Prompt (CMD) ]

   ```
   sc start "greengrass"
   ```

------
#### [ PowerShell ]

   ```
   Start-Service -Name "greengrass"
   ```

------

### Greengrass nucleus v2.14.0 systemd template issue
<a name="v2.14.0-systemd-template"></a>

Anda mungkin mengalami masalah ini jika Anda menginstal Greengrass nucleus v2.14.0 pada perangkat Linux dengan templat layanan systemd defaultnya. Lakukan hal-hal berikut:

1. Pada perangkat inti Greengrass Anda, jalankan perintah berikut untuk mengembalikan file layanan systemd seperti di nucleus v2.13.0 dan sebelumnya.

------
#### [ Linux or Unix ]

   ```
   sudo sed -i 's|ExecStart=/bin/sh -c "\(.*\) >> .*/logs/loader.log 2>&1"|ExecStart=/bin/sh \1|' /etc/systemd/system/greengrass.service
   ```

------

1. Terapkan perubahan.

------
#### [ Linux or Unix ]

   ```
   sudo systemctl daemon-reload
   sudo systemctl restart greengrass
   ```

------

## AWS IoT Greengrass masalah cloud
<a name="greengrass-cloud-issues"></a>

Gunakan informasi berikut untuk memecahkan masalah dengan AWS IoT Greengrass konsol dan API. Setiap entri sesuai dengan pesan kesalahan yang mungkin Anda lihat ketika Anda melakukan tindakan.

### An error occurred (AccessDeniedException) when calling the CreateComponentVersion operation: User: arn:aws:iam::123456789012:user/<username> is not authorized to perform: null
<a name="cloud-error-create-component-version-not-authorized-to-perform-null"></a>

Anda mungkin melihat kesalahan ini saat membuat versi komponen dari AWS IoT Greengrass konsol atau dengan [CreateComponentVersion](https://docs.aws.amazon.com/greengrass/v2/APIReference/API_CreateComponentVersion.html)operasi.

Kesalahan ini menunjukkan bahwa resep Anda bukan JSON atau YAML yang valid. Periksa sintaks resep Anda, perbaiki masalah sintaks, dan coba lagi. Anda dapat menggunakan pemeriksa sintaks JSON atau YAML online untuk mengidentifikasi masalah sintaks dalam resep Anda.

### Invalid Input: Encountered following errors in Artifacts: \$1<s3ArtifactUri> = Specified artifact resource cannot be accessed\$1
<a name="cloud-error-specified-artifact-resource-cannot-be-accessed"></a>

Anda mungkin melihat kesalahan ini saat membuat versi komponen dari AWS IoT Greengrass konsol atau dengan [CreateComponentVersion](https://docs.aws.amazon.com/greengrass/v2/APIReference/API_CreateComponentVersion.html)operasi. Kesalahan ini menunjukkan bahwa artefak S3 dalam resep komponen tidak valid.

Lakukan hal-hal berikut:
+ Periksa apakah bucket S3 berada di tempat yang sama Wilayah AWS di mana Anda membuat komponen. AWS IoT Greengrass tidak mendukung permintaan lintas wilayah untuk artefak komponen.
+ Periksa apakah URI artefak adalah URL objek S3 yang valid, dan periksa artefak yang ada di URL objek S3 tersebut.
+ Periksa apakah Anda Akun AWS memiliki izin untuk mengakses artefak di URL objek S3-nya.

### INACTIVE deployment status
<a name="cloud-error-inactive-deployment"></a>

Anda mungkin mendapatkan status `INACTIVE` penerapan saat memanggil [ListDeployments](https://docs.aws.amazon.com/greengrass/v2/APIReference/API_ListDeployments.html)API tanpa AWS IoT kebijakan dependen yang diperlukan. Anda harus memiliki izin yang diperlukan untuk mendapatkan status penerapan yang akurat. Anda dapat menemukan tindakan dependen dengan melihat di [Tindakan yang ditentukan oleh AWS IoT Greengrass V2](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotgreengrassv2.html#awsiotgreengrassv2-actions-as-permissions) dan mengikuti izin yang diperlukan`ListDeployments`. Tanpa AWS IoT izin dependen yang diperlukan, Anda masih akan melihat status penerapan tetapi Anda mungkin melihat status penerapan yang tidak akurat. `INACTIVE`

## Masalah deployment perangkat inti
<a name="greengrass-core-deployment-issues"></a>

Memecahkan masalah penerapan pada perangkat inti Greengrass. Setiap entri sesuai dengan pesan log yang mungkin Anda lihat di perangkat inti Anda.

**Topics**
+ [Error: com.aws.greengrass.componentmanager.exceptions.PackageDownloadException: Failed to download artifact](#core-error-failed-to-download-artifact-package-download-exception)
+ [Error: com.aws.greengrass.componentmanager.exceptions.ArtifactChecksumMismatchException: Integrity check for downloaded artifact failed. Probably due to file corruption.](#core-error-failed-to-download-artifact-checksum-mismatch-exception)
+ [Error: com.aws.greengrass.componentmanager.exceptions.NoAvailableComponentVersionException: Failed to negotiate component <name> version with cloud and no local applicable version satisfying requirement <requirements>](#core-error-no-available-component-version)
+ [software.amazon.awssdk.services.greengrassv2data.model.ResourceNotFoundException: The latest version of Component <componentName> doesn't claim platform <coreDevicePlatform> compatibility](#deployment-error-no-platform-compatibility)
+ [com.aws.greengrass.componentmanager.exceptions.PackagingException: The deployment attempts to update the nucleus from aws.greengrass.Nucleus-<version> to aws.greengrass.Nucleus-<version> but no component of type nucleus was included as target component](#deployment-error-nucleus-minor-version-update)
+ [Error: com.aws.greengrass.deployment.exceptions.DeploymentException: Unable to process deployment. Greengrass launch directory is not set up or Greengrass is not set up as a system service](#deployment-error-unable-to-process-deployment)
+ [Info: com.aws.greengrass.deployment.exceptions.RetryableDeploymentDocumentDownloadException: Greengrass Cloud Service returned an error when getting full deployment configuration](#core-error-getting-full-deployment-configuration)
+ [Warn: com.aws.greengrass.deployment.DeploymentService: Failed to get thing group hierarchy](#core-warning-failed-to-get-thing-group-hierarchy)
+ [Info: com.aws.greengrass.deployment.DeploymentDocumentDownloader: Calling Greengrass cloud to get full deployment configuration](#core-info-repetitive-get-full-deployment-configuration)
+ [Caused by: software.amazon.awssdk.services.greengrassv2data.model.GreengrassV2DataException: null (Service: GreengrassV2Data, Status Code: 403, Request ID: <some\$1request\$1id>, Extended Request ID: null)](#greengrassv2dataexception)

### Error: com.aws.greengrass.componentmanager.exceptions.PackageDownloadException: Failed to download artifact
<a name="core-error-failed-to-download-artifact-package-download-exception"></a>

Anda mungkin melihat kesalahan ini ketika perangkat lunak AWS IoT Greengrass Core gagal mengunduh artefak komponen saat perangkat inti menerapkan penerapan. Deployment gagal sebagai akibat dari kesalahan ini.

Ketika Anda menerima kesalahan ini, log juga mencakup jejak tumpukan yang dapat Anda gunakan untuk mengidentifikasi masalah tertentu. Masing-masing entri berikut sesuai dengan pesan yang mungkin Anda lihat di jejak tumpukan pesan kesalahan `Failed to download artifact`.

**Topics**
+ [software.amazon.awssdk.services.s3.model.S3Exception: null (Service: S3, Status Code: 403, Request ID: null, ...)](#core-error-failed-to-download-artifact-s3-permissions)
+ [software.amazon.awssdk.services.s3.model.S3Exception: Access Denied (Service: S3, Status Code: 403, Request ID: <requestID>](#core-error-failed-to-download-artifact-get-bucket-location-403)

#### software.amazon.awssdk.services.s3.model.S3Exception: null (Service: S3, Status Code: 403, Request ID: null, ...)
<a name="core-error-failed-to-download-artifact-s3-permissions"></a>

[PackageDownloadException Kesalahan](#core-error-failed-to-download-artifact-package-download-exception) mungkin termasuk jejak tumpukan ini dalam kasus berikut:
+ Artefak komponen tidak tersedia di URL objek S3 yang Anda tentukan dalam resep komponen. Pastikan Anda mengunggah artefak ke bucket S3 dan URI artefak cocok dengan URL objek S3 dari artefak di bucket.
+ [Peran pertukaran token](device-service-role.md) perangkat inti tidak mengizinkan perangkat lunak AWS IoT Greengrass Core mengunduh artefak komponen dari URL objek S3 yang Anda tentukan dalam resep komponen. Periksa apakah peran pertukaran token memungkinkan `s3:GetObject` URL objek S3 tempat artefak tersedia.

#### software.amazon.awssdk.services.s3.model.S3Exception: Access Denied (Service: S3, Status Code: 403, Request ID: <requestID>
<a name="core-error-failed-to-download-artifact-get-bucket-location-403"></a>

[PackageDownloadException Kesalahan](#core-error-failed-to-download-artifact-package-download-exception) mungkin termasuk jejak tumpukan ini ketika perangkat inti tidak memiliki izin untuk menelepon`s3:GetBucketLocation`. Pesan kesalahan juga menyertakan pesan berikut.

```
reason: Failed to determine S3 bucket location
```

Periksa apakah [peran pertukaran token](device-service-role.md) perangkat inti memungkinkan `s3:GetBucketLocation` bucket S3 tempat artefak tersedia.

### Error: com.aws.greengrass.componentmanager.exceptions.ArtifactChecksumMismatchException: Integrity check for downloaded artifact failed. Probably due to file corruption.
<a name="core-error-failed-to-download-artifact-checksum-mismatch-exception"></a>

Anda mungkin melihat kesalahan ini ketika perangkat lunak AWS IoT Greengrass Core gagal mengunduh artefak komponen saat perangkat inti menerapkan penerapan. Penerapan gagal karena checksum file artefak yang diunduh tidak cocok dengan checksum yang AWS IoT Greengrass dihitung saat Anda membuat komponen.

Lakukan hal-hal berikut:
+ Periksa apakah file artefak berubah dalam bucket S3 tempat Anda meng-hosting-nya. Jika file berubah sejak Anda membuat komponen, pulihkan ke versi sebelumnya yang diharapkan perangkat inti. Jika Anda tidak dapat memulihkan file ke versi sebelumnya, atau jika Anda ingin menggunakan versi baru dari file itu, buat versi baru dari komponen dengan file artefak.
+ Periksa koneksi internet perangkat inti Anda. Kesalahan ini dapat terjadi jika file artefak rusak saat mengunduh. Buat deployment baru dan coba lagi.

### Error: com.aws.greengrass.componentmanager.exceptions.NoAvailableComponentVersionException: Failed to negotiate component <name> version with cloud and no local applicable version satisfying requirement <requirements>
<a name="core-error-no-available-component-version"></a>

Anda mungkin melihat kesalahan ini bila perangkat inti tidak dapat menemukan versi komponen yang memenuhi persyaratan penyebaran untuk perangkat inti tersebut. Perangkat inti memeriksa komponen dalam AWS IoT Greengrass layanan dan perangkat lokal. Pesan kesalahan mencakup target setiap penyebaran dan persyaratan versi penyebaran untuk komponen. Target deployment dapat berupa objek, grup objek, atau `LOCAL_DEPLOYMENT`, yang mewakili deployment lokal pada perangkat inti.

Masalah ini dapat terjadi pada kasus berikut:
+ Perangkat inti adalah target dari beberapa penyebaran yang memiliki persyaratan versi komponen yang bertentangan. Sebagai contoh, perangkat inti tersebut mungkin menjadi target dari beberapa deployment yang mencakup komponen `com.example.HelloWorld`, di mana satu deployment memerlukan versi 1.0.0 dan yang lain memerlukan versi 1.0.1. Tidak mungkin memiliki komponen yang memenuhi kedua persyaratan tersebut, sehingga deployment itu gagal.
+ Versi komponen tidak ada di AWS IoT Greengrass layanan atau di perangkat lokal. Komponen mungkin telah dihapus, misalnya.
+ Ada versi komponen yang memenuhi persyaratan versi, tetapi tidak ada yang kompatibel dengan platform perangkat inti.
+  AWS IoT Kebijakan perangkat inti tidak memberikan `greengrass:ResolveComponentCandidates` izin. Cari `Status Code: 403` di log kesalahan untuk mengidentifikasi masalah ini. Untuk mengatasi masalah ini, tambahkan izin `greengrass:ResolveComponentCandidates` ke kebijakan perangkat inti AWS IoT . Untuk informasi selengkapnya, lihat [AWS IoT Kebijakan minimal untuk perangkat AWS IoT Greengrass V2 inti](device-auth.md#greengrass-core-minimal-iot-policy).

Untuk mengatasi masalah ini, revisi penyebaran dengan menyertakan versi komponen yang kompatibel atau hapus yang tidak kompatibel. Untuk informasi selengkapnya tentang cara merevisi penyebaran cloud, lihat [Revisi deployment](revise-deployments.md). Untuk informasi selengkapnya tentang cara merevisi deployment lokal, lihat perintah [AWS IoT Greengrass Buat CLI deployment](gg-cli-deployment.md#deployment-create).

### software.amazon.awssdk.services.greengrassv2data.model.ResourceNotFoundException: The latest version of Component <componentName> doesn't claim platform <coreDevicePlatform> compatibility
<a name="deployment-error-no-platform-compatibility"></a>

Anda mungkin melihat kesalahan ini saat menerapkan komponen ke perangkat inti, dan komponen tersebut tidak mencantumkan platform yang kompatibel dengan platform perangkat inti. Lakukan salah satu tindakan berikut:
+ Jika komponennya adalah komponen Greengrass kustom, Anda dapat memperbarui komponen agar kompatibel dengan perangkat inti. Tambahkan manifes baru yang cocok dengan platform perangkat inti, atau perbarui manifes yang ada agar sesuai dengan platform perangkat inti. Untuk informasi selengkapnya, lihat [AWS IoT Greengrass referensi resep komponen](component-recipe-reference.md).
+ Jika komponen disediakan oleh AWS, periksa apakah versi lain dari komponen tersebut kompatibel dengan perangkat inti. Jika tidak ada versi yang kompatibel, hubungi kami untuk [AWS re:Post](https://repost.aws/)menggunakan [AWS IoT Greengrass tag](https://repost.aws/tags/TA4ckIed1sR4enZBey29rKTg/aws-io-t-greengrass), atau kontak [Dukungan](https://aws.amazon.com/contact-us/).

### com.aws.greengrass.componentmanager.exceptions.PackagingException: The deployment attempts to update the nucleus from aws.greengrass.Nucleus-<version> to aws.greengrass.Nucleus-<version> but no component of type nucleus was included as target component
<a name="deployment-error-nucleus-minor-version-update"></a>

Anda mungkin melihat kesalahan ini saat menerapkan komponen yang bergantung pada inti [Greengrass, dan perangkat inti menjalankan versi inti Greengrass](greengrass-nucleus-component.md) sebelumnya daripada versi minor terbaru yang tersedia. Kesalahan ini terjadi karena perangkat lunak AWS IoT Greengrass Core mencoba memperbarui komponen secara otomatis ke versi terbaru yang kompatibel. Namun, perangkat lunak AWS IoT Greengrass Core mencegah inti Greengrass memperbarui ke versi minor baru, karena AWS beberapa komponen yang disediakan bergantung pada versi minor tertentu dari inti Greengrass. Untuk informasi selengkapnya, lihat [Perilaku pembaruan inti Greengrass](update-greengrass-core-v2.md#ota-update-behavior-nucleus).

Anda harus [merevisi penerapan](revise-deployments.md) untuk menentukan versi inti Greengrass yang ingin Anda gunakan. Lakukan salah satu tindakan berikut:
+ Merevisi penerapan untuk menentukan versi inti Greengrass yang saat ini dijalankan perangkat inti.
+ Merevisi penerapan untuk menentukan versi minor selanjutnya dari inti Greengrass. Jika Anda memilih opsi ini, Anda juga harus memperbarui versi semua komponen yang AWS disediakan yang bergantung pada versi minor tertentu dari inti Greengrass. Untuk informasi selengkapnya, lihat [Komponen yang disediakan oleh AWS](public-components.md).

### Error: com.aws.greengrass.deployment.exceptions.DeploymentException: Unable to process deployment. Greengrass launch directory is not set up or Greengrass is not set up as a system service
<a name="deployment-error-unable-to-process-deployment"></a>

Anda mungkin melihat kesalahan ini saat memindahkan perangkat Greengrass dari satu grup hal ke grup lainnya, lalu kembali ke grup asli dengan penerapan yang memerlukan Greengrass untuk memulai ulang. 

Untuk mengatasi masalah ini, buat ulang direktori peluncuran untuk perangkat. Kami juga sangat menyarankan untuk meningkatkan ke versi 2.9.6 atau yang lebih baru dari inti Greengrass.

Berikut ini adalah skrip Linux untuk membuat ulang direktori peluncuran. Simpan skrip dalam file bernama`fix_directory.sh`.

```
#!/bin/bash

set -e

GG_ROOT=$1
GG_VERSION=$2

CURRENT="$GG_ROOT/alts/current"

if [ ! -L "$CURRENT" ]; then
  mkdir -p $GG_ROOT/alts/directory_fix
  echo "Relinking $GG_ROOT/alts/directory_fix to $CURRENT"
  ln -sf $GG_ROOT/alts/directory_fix $CURRENT
fi

TARGET=$(readlink $CURRENT)

if [[ ! -d "$TARGET" ]]; then
  echo "Creating directory: $TARGET"
  mkdir -p "$TARGET"
fi

DISTRO_LINK="$TARGET/distro"
DISTRO="$GG_ROOT/packages/artifacts-unarchived/aws.greengrass.Nucleus/$GG_VERSION/aws.greengrass.nucleus/"
echo "Relinking Nucleus artifacts to $DISTRO_LINK"
ln -sf $DISTRO $DISTRO_LINK
```

Untuk menjalankan skrip, jalankan perintah berikut:

```
[root@ip-172-31-27-165 ~]# ./fix_directory.sh /greengrass/v2 2.9.5
Relinking /greengrass/v2/alts/directory_fix to /greengrass/v2/alts/current
Relinking Nucleus artifacts to /greengrass/v2/alts/directory_fix/distro
```

### Info: com.aws.greengrass.deployment.exceptions.RetryableDeploymentDocumentDownloadException: Greengrass Cloud Service returned an error when getting full deployment configuration
<a name="core-error-getting-full-deployment-configuration"></a>

Anda mungkin melihat kesalahan ini ketika perangkat inti menerima dokumen deployment yang besar, yang merupakan dokumen deployment yang lebih besar dari 7 KB (untuk deployment yang menargetkan objek) atau 31 KB (untuk deployment yang menargetkan grup objek). Untuk mengambil dokumen penerapan besar, AWS IoT kebijakan perangkat inti harus mengizinkan izin tersebut. `greengrass:GetDeploymentConfiguration` Kesalahan ini dapat terjadi ketika perangkat inti tidak memiliki izin ini. Ketika kesalahan ini terjadi, deployment tersebut mencoba ulang tanpa batas waktu, dan statusnya **Dalam proses** (`IN_PROGRESS`).

Untuk mengatasi masalah ini, tambahkan `greengrass:GetDeploymentConfiguration` izin ke AWS IoT kebijakan perangkat inti. Untuk informasi selengkapnya, lihat [Memperbarui AWS IoT kebijakan perangkat inti](device-auth.md#update-core-device-iot-policy).

### Warn: com.aws.greengrass.deployment.DeploymentService: Failed to get thing group hierarchy
<a name="core-warning-failed-to-get-thing-group-hierarchy"></a>

Anda mungkin melihat peringatan ini saat perangkat inti menerima penerapan dan AWS IoT kebijakan perangkat inti tidak mengizinkan `greengrass:ListThingGroupsForCoreDevice` izin tersebut. Saat Anda membuat penerapan, perangkat inti menggunakan izin ini untuk mengidentifikasi grup benda dan menghapus komponen untuk grup apa pun dari mana Anda menghapus perangkat inti. Jika perangkat inti menjalankan [Greengrass](greengrass-nucleus-component.md) nucleus v2.5.0, penerapan gagal. Jika perangkat inti menjalankan Greengrass nucleus v2.5.1 atau yang lebih baru, penerapan berlangsung tetapi tidak menghapus komponen. Untuk informasi selengkapnya tentang perilaku penghapusan grup benda, lihat[Menyebarkan AWS IoT Greengrass komponen ke perangkat](manage-deployments.md).

Untuk memperbarui perilaku perangkat inti untuk menghapus komponen untuk grup benda tempat Anda menghapus perangkat inti, tambahkan `greengrass:ListThingGroupsForCoreDevice` izin ke AWS IoT kebijakan perangkat inti. Untuk informasi selengkapnya, lihat [Memperbarui AWS IoT kebijakan perangkat inti](device-auth.md#update-core-device-iot-policy).

### Info: com.aws.greengrass.deployment.DeploymentDocumentDownloader: Calling Greengrass cloud to get full deployment configuration
<a name="core-info-repetitive-get-full-deployment-configuration"></a>

Anda mungkin melihat pesan informasi ini dicetak beberapa kali tanpa kesalahan, karena perangkat inti mencatat kesalahan di tingkat log `DEBUG`. Masalah ini dapat terjadi ketika perangkat inti menerima dokumen deployment yang besar. Ketika kesalahan ini terjadi, deployment ini mencoba ulang tanpa batas waktu, dan statusnya **Dalam proses** (`IN_PROGRESS`). Untuk informasi selengkapnya tentang cara mengatasi masalah ini, lihat [entri pemecahan masalah ini](#core-error-getting-full-deployment-configuration).

### Caused by: software.amazon.awssdk.services.greengrassv2data.model.GreengrassV2DataException: null (Service: GreengrassV2Data, Status Code: 403, Request ID: <some\$1request\$1id>, Extended Request ID: null)
<a name="greengrassv2dataexception"></a>

Anda mungkin melihat kesalahan ini ketika API dataplane tidak memiliki `iot:Connect` izin. Jika Anda tidak memiliki kebijakan yang benar, Anda akan menerima`GreengrassV2DataException: 403`. Untuk membuat kebijakan izin, ikuti petunjuk berikut:[Buat AWS IoT kebijakan](fleet-provisioning-setup.md#create-iot-policy).

## Masalah komponen perangkat inti
<a name="greengrass-core-component-issues"></a>

Memecahkan masalah komponen Greengrass pada perangkat inti.

**Topics**
+ [Warn: '<command>' is not recognized as an internal or external command](#component-warn-command-not-recognized)
+ [Skrip Python tidak mencatat pesan](#python-component-no-log-output)
+ [Konfigurasi komponen tidak diperbarui saat mengubah konfigurasi default](#update-component-configuration-to-default-configuration)
+ [awsiot.greengrasscoreipc.model.UnauthorizedError](#ipc-unauthorized-error)
+ [com.aws.greengrass.authorization.exceptions.AuthorizationException: Duplicate policy ID "<id>" for principal "<componentList>"](#ipc-duplicate-authorization-policy-ids)
+ [com.aws.greengrass.tes.CredentialRequestHandler: Error in retrieving AwsCredentials from TES (HTTP 400)](#token-exchange-service-credentials-http-400)
+ [com.aws.greengrass.tes.CredentialRequestHandler: Error in retrieving AwsCredentials from TES (HTTP 403)](#token-exchange-service-credentials-http-403)
+ [com.aws.greengrass.tes.CredentialsProviderError: Could not load credentials from any providers](#token-exchange-service-credentials-provider-error)
+ [Received error when attempting to retrieve ECS metadata: Could not connect to the endpoint URL: "<tokenExchangeServiceEndpoint>"](#token-exchange-service-not-running)
+ [copyFrom: <configurationPath> is already a container, not a leaf](#configuration-key-is-container-cannot-become-leaf)
+ [com.aws.greengrass.componentmanager.plugins.docker.exceptions.DockerLoginException: Error logging into the registry using credentials - 'The stub received bad data.'](#docker-login-stub-received-bad-data)
+ [java.io.IOException: Cannot run program "cmd" ...: [LogonUser] The password for this account has expired.](#windows-account-password-expired)
+ [aws.greengrass.StreamManager: Instant exceeds minimum or maximum instant](#stream-manager-instant-exceeds-maximun-minimum)

### Warn: '<command>' is not recognized as an internal or external command
<a name="component-warn-command-not-recognized"></a>

Anda mungkin melihat kesalahan ini di log komponen Greengrass ketika AWS IoT Greengrass perangkat lunak Core gagal menjalankan perintah dalam skrip siklus hidup komponen. Status komponen menjadi `BROKEN` sebagai akibat dari kesalahan ini. [Kesalahan ini dapat terjadi jika pengguna sistem yang menjalankan komponen, seperti`ggc_user`, tidak dapat menemukan perintah yang dapat dieksekusi di folder di PATH.](https://en.wikipedia.org/wiki/PATH_(variable))

Pada perangkat Windows, periksa apakah folder yang berisi executable ada di `PATH` untuk pengguna sistem yang menjalankan komponen. Jika hilang dari`PATH`, lakukan salah satu hal berikut:
+ Tambahkan folder executable ke variabel `PATH` sistem, yang tersedia untuk semua pengguna. Kemudian, restart komponen.

  Jika Anda menjalankan Greengrass nucleus 2.5.0, setelah Anda memperbarui `PATH` variabel sistem, Anda harus memulai ulang perangkat lunak Core untuk menjalankan komponen AWS IoT Greengrass dengan yang diperbarui. `PATH` Jika perangkat lunak AWS IoT Greengrass Core tidak menggunakan yang diperbarui `PATH` setelah Anda memulai ulang perangkat lunak, restart perangkat dan coba lagi. Untuk informasi selengkapnya, lihat [Jalankan perangkat lunak AWS IoT Greengrass Core](run-greengrass-core-v2.md).
+ Tambahkan folder executable ke variabel `PATH` pengguna untuk pengguna sistem yang menjalankan komponen.

### Skrip Python tidak mencatat pesan
<a name="python-component-no-log-output"></a>

Perangkat inti Greengrass mengumpulkan log yang dapat Anda gunakan untuk mengidentifikasi masalah dengan komponen. Jika pesan `stdout` dan `stderr` skrip Python Anda tidak muncul di log komponen Anda, Anda mungkin perlu menyiram buffer atau menonaktifkan buffer untuk stream output standar ini di Python. Lakukan salah satu langkah berikut ini:
+ Jalankan Python dengan [-u](https://docs.python.org/3/using/cmdline.html#cmdoption-u) untuk menonaktifkan buffering pada `stdout` dan `stderr`.

------
#### [ Linux or Unix ]

  ```
  python3 -u hello_world.py
  ```

------
#### [ Windows ]

  ```
  py -3 -u hello_world.py
  ```

------
+ Gunakan [Setenv](component-recipe-reference.md#lifecycle-setenv-definition) dalam resep komponen Anda untuk mengatur variabel lingkungan [PYTHONUNBUFFERED](https://docs.python.org/3/using/cmdline.html#envvar-PYTHONUNBUFFERED) pada string tak kosong. Variabel lingkungan ini menonaktifkan buffering pada `stdout` dan `stderr`.
+ Siram buffer untuk pengaliran `stdout` atau `stderr`. Lakukan salah satu tindakan berikut:
  + Siram pesan ketika Anda mencetak.

    ```
    import sys
    
    print('Hello, error!', file=sys.stderr, flush=True)
    ```
  + Siram pesan setelah Anda mencetak. Anda dapat mengirim beberapa pesan sebelum Anda menyiram stream.

    ```
    import sys
    
    print('Hello, error!', file=sys.stderr)
    sys.stderr.flush()
    ```

Untuk informasi selengkapnya tentang cara memverifikasi bahwa skrip Python mengeluarkan pesan log, lihat [Memantau AWS IoT Greengrass log](monitor-logs.md).

### Konfigurasi komponen tidak diperbarui saat mengubah konfigurasi default
<a name="update-component-configuration-to-default-configuration"></a>

Saat Anda mengubah `DefaultConfiguration` resep komponen, konfigurasi default baru tidak akan menggantikan konfigurasi komponen yang ada selama penerapan. Untuk menerapkan konfigurasi default baru, Anda harus mengatur ulang konfigurasi komponen ke pengaturan defaultnya. Saat Anda menerapkan komponen, tentukan satu string kosong sebagai [pembaruan reset](update-component-configurations.md#reset-configuration-update).

------
#### [ Console ]

**Setel ulang jalur**  

```
[""]
```

------
#### [ AWS CLI ]

Perintah berikut membuat penyebaran ke perangkat inti.

```
aws greengrassv2 create-deployment --cli-input-json file://reset-configuration-deployment.json
```

`reset-configuration-deployment.json`File berisi dokumen JSON berikut.

```
{
  "targetArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore",
  "deploymentName": "Deployment for MyGreengrassCore",
  "components": {
    "com.example.HelloWorld": {
      "componentVersion": "1.0.0",
      "configurationUpdate": {,
        "reset": [""]
      }
    }
  }
}
```

------
#### [ Greengrass CLI ]

Perintah [Greengrass CLI](greengrass-cli-component.md) berikut membuat penerapan lokal pada perangkat inti.

```
sudo greengrass-cli deployment create \
  --recipeDir recipes \
  --artifactDir artifacts \
  --merge "com.example.HelloWorld=1.0.0" \
  --update-config reset-configuration-deployment.json
```

`reset-configuration-deployment.json`File berisi dokumen JSON berikut.

```
{
  "com.example.HelloWorld": {
    "RESET": [""]
  }
}
```

------

### awsiot.greengrasscoreipc.model.UnauthorizedError
<a name="ipc-unauthorized-error"></a>

Anda mungkin melihat kesalahan ini di log komponen Greengrass ketika komponen tidak memiliki izin untuk melakukan operasi IPC pada sumber daya. Untuk memberikan izin komponen untuk memanggil operasi IPC, tentukan kebijakan otorisasi IPC dalam konfigurasi komponen. Untuk informasi selengkapnya, lihat [Otorisasi komponen untuk melakukan operasi IPC](interprocess-communication.md#ipc-authorization-policies).

**Tip**  <a name="tip-reset-configuration-to-apply-new-default-configuration"></a>
Jika Anda mengubah resep `DefaultConfiguration` dalam komponen, Anda harus mengatur ulang konfigurasi komponen ke konfigurasi default yang baru. Saat Anda menerapkan komponen, tentukan satu string kosong sebagai [pembaruan reset](update-component-configurations.md#reset-configuration-update). Untuk informasi selengkapnya, lihat [Konfigurasi komponen tidak diperbarui saat mengubah konfigurasi default](#update-component-configuration-to-default-configuration).

### com.aws.greengrass.authorization.exceptions.AuthorizationException: Duplicate policy ID "<id>" for principal "<componentList>"
<a name="ipc-duplicate-authorization-policy-ids"></a>

Anda mungkin melihat kesalahan ini jika beberapa kebijakan otorisasi IPC, termasuk di semua komponen pada perangkat inti, menggunakan ID kebijakan yang sama.

Periksa kebijakan otorisasi IPC komponen Anda, perbaiki duplikat apa pun, dan coba lagi. Untuk membuat kebijakan unik IDs, sebaiknya Anda menggabungkan nama komponen, nama layanan IPC, dan penghitung. Untuk informasi selengkapnya, lihat [Otorisasi komponen untuk melakukan operasi IPC](interprocess-communication.md#ipc-authorization-policies).

**Tip**  <a name="tip-reset-configuration-to-apply-new-default-configuration"></a>
Jika Anda mengubah resep `DefaultConfiguration` dalam komponen, Anda harus mengatur ulang konfigurasi komponen ke konfigurasi default yang baru. Saat Anda menerapkan komponen, tentukan satu string kosong sebagai [pembaruan reset](update-component-configurations.md#reset-configuration-update). Untuk informasi selengkapnya, lihat [Konfigurasi komponen tidak diperbarui saat mengubah konfigurasi default](#update-component-configuration-to-default-configuration).

### com.aws.greengrass.tes.CredentialRequestHandler: Error in retrieving AwsCredentials from TES (HTTP 400)
<a name="token-exchange-service-credentials-http-400"></a>

Anda mungkin melihat kesalahan ini ketika perangkat inti tidak bisa mendapatkan AWS kredensil dari layanan [pertukaran token](interact-with-aws-services.md). Kode status HTTP 400 menunjukkan bahwa kesalahan ini terjadi karena [peran IAM pertukaran token](device-service-role.md) perangkat inti tidak ada atau tidak memiliki hubungan kepercayaan yang memungkinkan penyedia AWS IoT kredensional untuk mengasumsikan itu.

Lakukan hal-hal berikut:

1. Identifikasi peran pertukaran token yang digunakan perangkat inti. Pesan kesalahan mencakup alias AWS IoT peran perangkat inti, yang menunjuk ke peran pertukaran token. Jalankan perintah berikut di komputer pengembangan Anda, dan ganti *MyGreengrassCoreTokenExchangeRoleAlias* dengan nama alias AWS IoT peran dari pesan kesalahan.

   ```
   aws iot describe-role-alias --role-alias MyGreengrassCoreTokenExchangeRoleAlias
   ```

   Tanggapan tersebut mencakup Nama Sumber Daya Amazon (ARN) dari peran IAM pertukaran token.

   ```
   {
     "roleAliasDescription": {
       "roleAlias": "MyGreengrassCoreTokenExchangeRoleAlias",
       "roleAliasArn": "arn:aws:iot:us-west-2:123456789012:rolealias/MyGreengrassCoreTokenExchangeRoleAlias",
       "roleArn": "arn:aws:iam::123456789012:role/MyGreengrassV2TokenExchangeRole",
       "owner": "123456789012",
       "credentialDurationSeconds": 3600,
       "creationDate": "2021-02-05T16:46:18.042000-08:00",
       "lastModifiedDate": "2021-02-05T16:46:18.042000-08:00"
     }
   }
   ```

1. Periksa apakah peran itu ada. Jalankan perintah berikut, dan ganti *MyGreengrassV2TokenExchangeRole* dengan nama peran pertukaran token.

   ```
   aws iam get-role --role-name MyGreengrassV2TokenExchangeRole
   ```

   Jika perintah mengembalikan `NoSuchEntity` kesalahan, peran tidak ada, dan Anda harus membuatnya. Untuk informasi selengkapnya tentang cara membuat dan mengonfigurasi peran ini, lihat[Otorisasi perangkat inti untuk berinteraksi dengan layanan AWS](device-service-role.md).

1. Periksa apakah peran tersebut memiliki hubungan kepercayaan yang memungkinkan penyedia AWS IoT kredensional untuk menganggapnya. Tanggapan dari langkah sebelumnya berisi`AssumeRolePolicyDocument`, yang mendefinisikan hubungan kepercayaan peran. Peran harus mendefinisikan hubungan kepercayaan yang memungkinkan `credentials.iot.amazonaws.com` untuk mengasumsikan itu. Dokumen ini akan terlihat mirip dengan contoh berikut.

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Principal": {
           "Service": "credentials.iot.amazonaws.com"
         },
         "Action": "sts:AssumeRole"
       }
     ]
   }
   ```

------

   Jika hubungan kepercayaan peran tidak memungkinkan `credentials.iot.amazonaws.com` untuk mengasumsikan itu, Anda harus menambahkan hubungan kepercayaan ini ke peran tersebut. Untuk informasi selengkapnya, lihat [Memodifikasi peran](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage_modify.html) dalam *Panduan AWS Identity and Access Management Pengguna*.

### com.aws.greengrass.tes.CredentialRequestHandler: Error in retrieving AwsCredentials from TES (HTTP 403)
<a name="token-exchange-service-credentials-http-403"></a>

Anda mungkin melihat kesalahan ini ketika perangkat inti tidak bisa mendapatkan AWS kredensil dari layanan [pertukaran token](interact-with-aws-services.md). Kode status HTTP 403 menunjukkan bahwa kesalahan ini terjadi karena AWS IoT kebijakan perangkat inti tidak memberikan `iot:AssumeRoleWithCertificate` izin untuk alias AWS IoT peran perangkat inti.

Tinjau AWS IoT kebijakan perangkat inti, dan tambahkan `iot:AssumeRoleWithCertificate` izin untuk alias AWS IoT peran perangkat inti. Pesan kesalahan menyertakan alias AWS IoT peran perangkat inti saat ini. Untuk informasi selengkapnya tentang izin ini dan cara memperbarui AWS IoT kebijakan perangkat inti, lihat [AWS IoT Kebijakan minimal untuk perangkat AWS IoT Greengrass V2 inti](device-auth.md#greengrass-core-minimal-iot-policy) dan[Memperbarui AWS IoT kebijakan perangkat inti](device-auth.md#update-core-device-iot-policy).

### com.aws.greengrass.tes.CredentialsProviderError: Could not load credentials from any providers
<a name="token-exchange-service-credentials-provider-error"></a>

Anda mungkin melihat kesalahan ini ketika komponen mencoba meminta AWS kredensional dan tidak dapat terhubung ke layanan [pertukaran token](interact-with-aws-services.md).

Lakukan hal-hal berikut:
+ Periksa apakah komponen mendeklarasikan ketergantungan pada komponen layanan pertukaran token,. `aws.greengrass.TokenExchangeService` Jika tidak, tambahkan ketergantungan dan gunakan kembali komponen.
+ Jika komponen berjalan di docker, pastikan Anda menerapkan pengaturan jaringan dan variabel lingkungan yang tepat, sesuai dengan. [Gunakan AWS kredensil dalam komponen wadah Docker (Linux)](run-docker-container.md#docker-container-token-exchange-service)
+ [Jika komponen ditulis dalam NodeJS, atur dns. setDefaultResultPerintah](https://nodejs.org/docs/latest/api/dns.html#dnssetdefaultresultorderorder) untuk**ipv4first**.
+ Periksa `/etc/hosts` entri yang dimulai dengan `::1` dan berisi`localhost`. Hapus entri untuk melihat apakah itu menyebabkan komponen terhubung ke layanan pertukaran token di alamat yang salah.

### Received error when attempting to retrieve ECS metadata: Could not connect to the endpoint URL: "<tokenExchangeServiceEndpoint>"
<a name="token-exchange-service-not-running"></a>

Anda mungkin melihat kesalahan ini ketika komponen tidak menjalankan [layanan pertukaran token](interact-with-aws-services.md) dan komponen mencoba meminta AWS kredensil.

Lakukan hal-hal berikut:
+ Periksa apakah komponen mendeklarasikan ketergantungan pada komponen layanan pertukaran token,. `aws.greengrass.TokenExchangeService` Jika tidak, tambahkan ketergantungan dan gunakan kembali komponen.
+ Periksa apakah komponen menggunakan AWS kredensional dalam siklus hidupnya`install`. AWS IoT Greengrass tidak menjamin ketersediaan layanan pertukaran token selama `install` siklus hidup. Perbarui komponen untuk memindahkan kode yang menggunakan AWS kredensil ke dalam `run` siklus hidup `startup` atau, lalu gunakan kembali komponen.

### copyFrom: <configurationPath> is already a container, not a leaf
<a name="configuration-key-is-container-cannot-become-leaf"></a>

Anda mungkin melihat kesalahan ini ketika Anda mengubah nilai konfigurasi dari tipe kontainer (daftar atau objek) ke tipe non-kontainer (string, angka, atau Boolean). Lakukan hal-hal berikut:

1. Periksa resep komponen untuk melihat apakah konfigurasi defaultnya menetapkan nilai konfigurasi itu ke daftar atau objek. Jika demikian, hapus atau ubah nilai konfigurasi itu.

1. Buat penerapan untuk mengatur ulang nilai konfigurasi itu ke nilai defaultnya. Untuk informasi selengkapnya, lihat [Buat deployment](create-deployments.md) dan [Perbarui konfigurasi komponen](update-component-configurations.md).

Kemudian, Anda dapat mengatur nilai konfigurasi itu ke string, angka, atau Boolean.

### com.aws.greengrass.componentmanager.plugins.docker.exceptions.DockerLoginException: Error logging into the registry using credentials - 'The stub received bad data.'
<a name="docker-login-stub-received-bad-data"></a>

Anda mungkin melihat kesalahan ini di log inti Greengrass saat komponen [pengelola aplikasi Docker mencoba mengunduh image Docker](docker-application-manager-component.md) dari repositori pribadi di Amazon Elastic Container Registry (Amazon ECR). Kesalahan ini terjadi jika Anda menggunakan `wincred` [Docker credential helper](https://github.com/docker/docker-credential-helpers) (). `docker-credential-wincred` Akibatnya, Amazon ECR tidak dapat menyimpan kredenal login.

Ambil salah satu tindakan berikut:
+ Jika Anda tidak menggunakan pembantu kredenal `wincred` Docker, hapus `docker-credential-wincred` program dari perangkat inti.
+ Jika Anda menggunakan pembantu kredenal `wincred` Docker, lakukan hal berikut:

  1. Ganti nama `docker-credential-wincred` program pada perangkat inti. Ganti `wincred` dengan nama baru untuk pembantu kredenal Windows Docker. Misalnya, Anda dapat mengganti namanya menjadi`docker-credential-wincredreal`.

  1. Perbarui `credsStore` opsi di file konfigurasi Docker (`.docker/config.json`) untuk menggunakan nama baru untuk pembantu kredensi Windows Docker. Misalnya, jika Anda mengganti nama program menjadi`docker-credential-wincredreal`, perbarui `credsStore` opsi ke`wincredreal`.

     ```
     {
       "credsStore": "wincredreal"
     }
     ```

### java.io.IOException: Cannot run program "cmd" ...: [LogonUser] The password for this account has expired.
<a name="windows-account-password-expired"></a>

Anda mungkin melihat kesalahan ini pada perangkat inti Windows ketika pengguna sistem yang menjalankan proses komponen, seperti`ggc_user`, memiliki kata sandi yang kedaluwarsa. Akibatnya, perangkat lunak AWS IoT Greengrass Core tidak dapat menjalankan proses komponen sebagai pengguna sistem tersebut.

**Untuk memperbarui kata sandi pengguna sistem Greengrass**

1. Jalankan perintah berikut sebagai administrator untuk mengatur kata sandi pengguna. Ganti *ggc\$1user* dengan pengguna sistem, dan ganti *password* dengan kata sandi yang akan diatur.

   ```
   net user ggc_user password
   ```

1. Gunakan [PsExec utilitas](https://docs.microsoft.com/en-us/sysinternals/downloads/psexec) untuk menyimpan kata sandi baru pengguna di instance Credential Manager untuk LocalSystem akun tersebut. Ganti *password* dengan kata sandi pengguna yang Anda tetapkan.

   ```
   psexec -s cmd /c cmdkey /generic:ggc_user /user:ggc_user /pass:password
   ```

**Tip**  <a name="windows-password-expiration-tip"></a>
Bergantung pada konfigurasi Windows Anda, kata sandi pengguna mungkin diatur untuk kedaluwarsa pada tanggal di masa mendatang. Untuk memastikan aplikasi Greengrass Anda terus beroperasi, lacak kapan kata sandi kedaluwarsa, dan perbarui sebelum kedaluwarsa. Anda juga dapat mengatur kata sandi pengguna agar tidak pernah kedaluwarsa.  
Untuk memeriksa kapan pengguna dan kata sandinya kedaluwarsa, jalankan perintah berikut.  

  ```
  net user ggc_user | findstr /C:expires
  ```
Untuk mengatur kata sandi pengguna agar tidak pernah kedaluwarsa, jalankan perintah berikut.  

  ```
  wmic UserAccount where "Name='ggc_user'" set PasswordExpires=False
  ```
Jika Anda menggunakan Windows 10 atau yang lebih baru di mana [`wmic`perintah tidak digunakan lagi](https://learn.microsoft.com/en-us/windows/win32/wmisdk/wmic), jalankan perintah berikut. PowerShell   

  ```
  Get-CimInstance -Query "SELECT * from Win32_UserAccount WHERE name = 'ggc_user'" | Set-CimInstance -Property @{PasswordExpires="False"}
  ```

### aws.greengrass.StreamManager: Instant exceeds minimum or maximum instant
<a name="stream-manager-instant-exceeds-maximun-minimum"></a>

Saat Anda memutakhirkan manajer aliran v2.0.7 ke versi antara v2.0.8 dan v2.0.11, Anda mungkin melihat kesalahan berikut di log komponen pengelola aliran jika komponen gagal memulai. 

```
2021-07-16T00:54:58.568Z [INFO] (Copier) aws.greengrass.StreamManager: stdout. Caused by: com.fasterxml.jackson.databind.JsonMappingException: Instant exceeds minimum or maximum instant (through reference chain: com.amazonaws.iot.greengrass.streammanager.export.PersistedSuccessExportStatesV1["lastExportTime"]). {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
2021-07-16T00:54:58.579Z [INFO] (Copier) aws.greengrass.StreamManager: stdout. Caused by: java.time.DateTimeException: Instant exceeds minimum or maximum instant. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
```

Jika Anda menerapkan manajer aliran v2.0.7 dan Anda ingin meningkatkan ke versi yang lebih baru, Anda harus meningkatkan ke manajer streaming v2.0.12 secara langsung. Untuk informasi selengkapnya tentang komponen pengelola aliran, lihat[Manajer pengaliran](stream-manager-component.md).

## Masalah komponen fungsi Lambda perangkat inti
<a name="greengrass-core-lambda-function-issues"></a>

Memecahkan masalah komponen fungsi Lambda pada perangkat inti.

**Topics**
+ [The following cgroup subsystems are not mounted: devices, memory](#lambda-cgroups-not-mounted)
+ [ipc\$1client.py:64,HTTP Error 400:Bad Request, b'No subscription exists for the source <label-or-lambda-arn> and subject <label-or-lambda-arn>](#v1-lambda-no-subscription-exists)

### The following cgroup subsystems are not mounted: devices, memory
<a name="lambda-cgroups-not-mounted"></a>

Anda mungkin melihat kesalahan ini saat menjalankan fungsi Lambda dalam kontainer dalam kasus berikut:
+ Perangkat inti tidak mengaktifkan cgroup v1 untuk memori atau cgroup perangkat.
+ Perangkat inti telah mengaktifkan cgroups v2. Fungsi Greengrass Lambda membutuhkan cgroups v1, dan cgroups v1 dan v2 saling eksklusif.

Untuk mengaktifkan cgroups v1, boot perangkat dengan parameter kernel Linux berikut.

```
cgroup_enable=memory cgroup_memory=1 systemd.unified_cgroup_hierarchy=0
```

**Tip**  
Pada Raspberry Pi, edit `/boot/cmdline.txt` file untuk mengatur parameter kernel perangkat.

### ipc\$1client.py:64,HTTP Error 400:Bad Request, b'No subscription exists for the source <label-or-lambda-arn> and subject <label-or-lambda-arn>
<a name="v1-lambda-no-subscription-exists"></a>

[Anda mungkin melihat kesalahan ini saat menjalankan fungsi Lambda V1, yang menggunakan AWS IoT Greengrass Core SDK, pada perangkat inti V2 tanpa menentukan langganan di komponen router langganan lama.](legacy-subscription-router-component.md) Untuk memperbaiki masalah ini, gunakan dan konfigurasikan router langganan lama untuk menentukan langganan yang diperlukan. Untuk informasi selengkapnya, lihat [Impor fungsi Lambda V1](set-up-v2-test-device.md#run-v1-lambda-functions).

## Versi komponen dihentikan
<a name="discontinued-component-version"></a>

Anda mungkin melihat pemberitahuan di Personal Health Dashboard (PHD) ketika versi komponen pada perangkat inti Anda dihentikan. Versi komponen mengirimkan pemberitahuan ini ke PHD Anda dalam waktu 60 menit setelah dihentikan.

Untuk melihat penerapan mana yang perlu Anda revisi, lakukan hal berikut menggunakan: AWS Command Line Interface

1. Jalankan perintah berikut untuk mendapatkan daftar perangkat inti Anda.

   ```
   aws greengrassv2 list-core-devices
   ```

1. Jalankan perintah berikut untuk mengambil status komponen pada setiap perangkat inti dari Langkah 1. Ganti `coreDeviceName` dengan nama setiap perangkat inti untuk kueri.

   ```
   aws greengrassv2 list-installed-components --core-device-thing-name coreDeviceName
   ```

1. Kumpulkan perangkat inti dengan versi komponen yang dihentikan yang diinstal dari langkah sebelumnya.

1. Jalankan perintah berikut untuk mengambil status semua pekerjaan penerapan untuk setiap perangkat inti dari Langkah 3. Ganti `coreDeviceName` dengan nama perangkat inti untuk kueri.

   ```
   aws greengrassv2 list-effective-deployments --core-device-thing-name coreDeviceName
   ```

   Tanggapan berisi daftar tugas deployment untuk perangkat inti. Anda dapat merevisi penerapan untuk memilih versi komponen lain. Untuk informasi selengkapnya tentang cara merevisi penerapan, lihat [Merevisi](https://docs.aws.amazon.com/greengrass/v2/developerguide/revise-deployments.html) penerapan.

## Masalah Antarmuka Baris Perintah Greengrass
<a name="greengrass-cli-issues"></a>

[Memecahkan masalah dengan CLI Greengrass.](gg-cli.md)

**Topics**
+ [java.lang.RuntimeException: Unable to create ipc client](#greengrass-cli-unable-to-create-ipc-client)

### java.lang.RuntimeException: Unable to create ipc client
<a name="greengrass-cli-unable-to-create-ipc-client"></a>

Anda mungkin melihat kesalahan ini saat menjalankan perintah Greengrass CLI dan Anda menentukan folder root yang berbeda dari tempat perangkat lunak Core diinstal. AWS IoT Greengrass 

Lakukan salah satu hal berikut untuk mengatur jalur root, dan ganti `/greengrass/v2` dengan jalur ke instalasi perangkat lunak AWS IoT Greengrass Core Anda:<a name="greengrass-cli-set-root-path"></a>
+ Atur `GGC_ROOT_PATH` variabel lingkungan ke `/greengrass/v2`.
+ Tambahkan `--ggcRootPath /greengrass/v2` argumen ke perintah Anda seperti yang ditunjukkan pada contoh berikut.

  ```
  greengrass-cli --ggcRootPath /greengrass/v2 <command> <subcommand> [arguments]
  ```

## AWS Command Line Interface masalah
<a name="aws-cli-issues"></a>

Memecahkan AWS CLI masalah untuk. AWS IoT Greengrass V2

**Topics**
+ [Error: Invalid choice: 'greengrassv2'](#aws-cli-invalid-choice-greengrassv2)

### Error: Invalid choice: 'greengrassv2'
<a name="aws-cli-invalid-choice-greengrassv2"></a>

Anda mungkin melihat kesalahan ini ketika Anda menjalankan AWS IoT Greengrass V2 perintah dengan AWS CLI (misalnya,`aws greengrassv2 list-core-devices`).

Kesalahan ini menunjukkan bahwa Anda memiliki versi AWS CLI yang tidak mendukung AWS IoT Greengrass V2. Untuk menggunakannya AWS IoT Greengrass V2 AWS CLI, Anda harus memiliki salah satu versi berikut atau yang lebih baru:<a name="minimum-aws-cli-versions"></a>
+ Versi AWS CLI V1 minimum: v1.18.197
+ Versi AWS CLI V2 minimum: v2.1.11

**Tip**  <a name="tip-check-aws-cli-version"></a>
Anda dapat menjalankan perintah berikut untuk memeriksa versi AWS CLI yang Anda miliki.  

```
aws --version
```

Untuk mengatasi masalah ini, perbarui AWS CLI ke versi yang lebih baru yang mendukung AWS IoT Greengrass V2. Untuk informasi selengkapnya, lihat [Menginstal, memperbarui, dan mencopot instalasi AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html) di *Panduan Pengguna AWS Command Line Interface *.

# Kode kesalahan penyebaran terperinci
<a name="troubleshooting-deployment"></a>

Gunakan kode kesalahan dan solusi di bagian ini untuk membantu menyelesaikan masalah dengan penerapan komponen saat menggunakan inti Greengrass versi 2.8.0 atau yang lebih baru.

Inti Greengrass melaporkan kesalahan penerapan sebagai hierarki dari yang paling tidak spesifik hingga kode paling spesifik yang tersedia. Anda dapat menggunakan hierarki ini untuk membantu menentukan alasan kesalahan penerapan. Misalnya, berikut ini adalah kemungkinan hierarki kesalahan:
+ DEPLOYMENT\$1FAILURE
  + ARTIFACT\$1DOWNLOAD\$1ERROR
    + IO\$1ERROR
      + DISK\$1SPACE\$1CRITICAL

Kode kesalahan diatur ke dalam jenis. Setiap jenis mewakili kelas kesalahan yang dapat terjadi. AWS IoT Greengrass melaporkan jenis kesalahan ini di konsol, API, dan AWS CLI. Mungkin ada lebih dari satu jenis kesalahan, tergantung pada kesalahan yang dilaporkan dalam hierarki kesalahan. Untuk contoh sebelumnya, jenis kesalahan yang dikembalikan adalah. `DEVICE_ERROR`

Jenisnya adalah:
+ **PERMISSION\$1ERROR** — Akses ke operasi yang memerlukan izin ditolak.
+ **REQUEST\$1ERROR** - Terjadi kesalahan karena masalah dalam dokumen penerapan.
+ **COMPONENT\$1RECIPE\$1ERROR** — Terjadi kesalahan karena masalah dalam resep komponen.
+ **AWS\$1COMPONENT\$1ERROR** — Terjadi kesalahan saat memulai atau menghapus komponen yang AWS disediakan.
+ **USER\$1COMPONENT\$1ERROR** — Terjadi kesalahan saat memulai atau menghapus komponen pengguna.
+ **COMPONENT\$1ERROR** — Terjadi kesalahan saat memulai atau menghapus komponen, tetapi inti Greengrass tidak dapat menentukan apakah komponen tersebut adalah komponen yang disediakan atau komponen pengguna. AWS 
+ **DEVICE\$1ERROR** - Terjadi kesalahan dengan kesalahan lokal I/O atau perangkat lain.
+ **DEPENDENCY\$1ERROR** — Penerapan gagal mengunduh artefak dari Amazon S3 atau menarik gambar dari registri ECR.
+ **HTTP\$1ERROR** — Terjadi kesalahan dengan permintaan HTTP.
+ **NETWORK\$1ERROR** — Terjadi kesalahan dengan jaringan perangkat.
+ **NUCLEUS\$1ERROR** — Inti Greengrass tidak dapat menemukan komponen atau tidak dapat menemukan versi inti aktif.
+ **SERVER\$1ERROR** — Server mengembalikan kesalahan 500 dalam menanggapi permintaan.
+ **CLOUD\$1SERVICE\$1ERROR — Terjadi kesalahan** dengan layanan cloud. AWS IoT Greengrass 
+ **UNKNOWN\$1ERROR** — Pengecualian yang tidak dicentang dilemparkan oleh komponen.

Banyak kesalahan di bagian ini melaporkan informasi tambahan di log AWS IoT Greengrass Inti. Log ini disimpan di sistem file lokal perangkat inti. Ada log untuk perangkat lunak AWS IoT Greengrass inti inti dan untuk setiap komponen individu. Untuk informasi tentang mengakses log, lihat[Akses log sistem file](monitor-logs.md#access-local-logs).

## Kesalahan izin
<a name="permission-error"></a>

ACCESS\$1DENIED  
Anda mungkin mendapatkan kesalahan ini ketika operasi AWS layanan mengembalikan kesalahan 403 karena izin tidak diatur dengan benar. Periksa kode kesalahan yang lebih spesifik untuk detailnya.

GET\$1DEPLOYMENT\$1CONFIGURATION\$1ACCESS\$1DENIED  
Anda mungkin mendapatkan kesalahan ini ketika AWS IoT kebijakan tidak mengizinkan izin untuk memanggil `GetDeploymentConfiguration` operasi. Tambahkan `greengrass::GetDeploymentConfiguration` izin ke kebijakan perangkat inti.

GET\$1COMPONENT\$1VERSION\$1ARTIFACT\$1ACCESS\$1DENIED  
Anda mungkin mendapatkan kesalahan ini ketika AWS IoT kebijakan perangkat inti tidak mengizinkan `greengrass:GetComponentVersionArtifact` izin. Tambahkan izin ke kebijakan perangkat inti.

RESOLVE\$1COMPONENT\$1CANDIDATES\$1ACCESS\$1DENIED  
Anda mungkin mendapatkan kesalahan ini ketika AWS IoT kebijakan perangkat inti tidak mengizinkan `greengrass:ResolveComponentCandidates` izin. Tambahkan izin ke kebijakan perangkat inti.

GET\$1ECR\$1CREDENTIAL\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika penerapan tidak dapat mengautentikasi dengan registri pribadi di ECR. Periksa log untuk kesalahan tertentu dan kemudian coba penerapan lagi.

USER\$1NOT\$1AUTHORIZED\$1FOR\$1DOCKER  
Anda mungkin mendapatkan kesalahan ini ketika pengguna Greengrass tidak berwenang untuk menggunakan Docker. Pastikan Anda menjalankan Greengrass sebagai root atau pengguna ditambahkan ke grup. `docker` Kemudian coba penerapan lagi.

S3\$1ACCESS\$1DENIED  
Anda mungkin mendapatkan kesalahan ini ketika operasi Amazon S3 mengembalikan kesalahan 403. Periksa kode kesalahan tambahan atau log untuk detailnya.

S3\$1HEAD\$1OBJECT\$1ACCESS\$1DENIED  
Anda mungkin mendapatkan kesalahan ini ketika peran pertukaran token perangkat tidak mengizinkan perangkat lunak AWS IoT Greengrass Core mengunduh artefak komponen dari URL objek S3 yang Anda tentukan dalam resep komponen atau artefak komponen tidak tersedia. Periksa apakah peran pertukaran token memungkinkan `s3:GetObject` URL objek S3 di mana artefak tersedia dan artefak ada.

S3\$1GET\$1BUCKET\$1LOCATION\$1ACCESS\$1DENIED  
Anda mungkin mendapatkan kesalahan ini ketika peran pertukaran token perangkat tidak mengizinkan `s3:GetBucketLocation` izin untuk bucket Amazon S3 tempat artefak tersedia. Periksa apakah perangkat mengizinkan izin kemudian coba penerapan lagi.

S3\$1GET\$1OBJECT\$1ACCESS\$1DENIED  
Anda mungkin mendapatkan kesalahan ini ketika peran pertukaran token perangkat tidak mengizinkan perangkat lunak AWS IoT Greengrass Core mengunduh artefak komponen dari URL objek S3 yang Anda tentukan dalam resep komponen atau artefak komponen tidak tersedia. Periksa apakah peran pertukaran token memungkinkan `s3:GetObject` URL objek S3 di mana artefak tersedia dan artefak ada.

## Kesalahan permintaan
<a name="request-error"></a>

NUCLEUS\$1MISSING\$1REQUIRED\$1ABILITIES  
Anda mungkin mendapatkan kesalahan ini ketika versi inti dalam penerapan tidak mampu menjalankan operasi yang diminta, seperti mengunduh konfigurasi besar atau menyetel batas sumber daya Linux. Coba lagi penerapan dengan versi nukleus yang mendukung operasi.

MULTIPLE\$1NUCLEUS\$1RESOLVED\$1ERROR  
Anda mungkin mendapatkan kesalahan ini saat penerapan mencoba menerapkan beberapa komponen inti. Periksa log untuk melihat apa yang menyebabkan kesalahan, lalu periksa halaman pembaruan perangkat lunak nukleus untuk melihat apakah masalah telah diperbaiki di versi nukleus yang lebih baru, atau kontak Dukungan.

COMPONENT\$1CIRCULAR\$1DEPENDENCY\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika dua komponen dalam penerapan Anda bergantung satu sama lain. Merevisi pengaturan komponen sehingga komponen dalam penerapan Anda tidak bergantung satu sama lain. 

UNAUTHORIZED\$1NUCLEUS\$1MINOR\$1VERSION\$1UPDATE  
Anda mungkin mendapatkan kesalahan ini ketika komponen dalam penerapan Anda memerlukan pembaruan versi inti minor, tetapi versi tersebut tidak ditentukan dalam penerapan. Ini membantu mengurangi pembaruan versi minor yang tidak disengaja untuk komponen yang bergantung pada versi yang berbeda. Sertakan versi inti minor baru dalam penerapan.

MISSING\$1DOCKER\$1APPLICATION\$1MANAGER  
Anda mungkin mendapatkan kesalahan ini saat menerapkan komponen Docker tanpa menerapkan manajer aplikasi Docker. Pastikan bahwa penerapan Anda menyertakan manajer aplikasi Docker.

MISSING\$1TOKEN\$1EXCHANGE\$1SERVICE  
Anda mungkin mendapatkan kesalahan ini ketika penerapan ingin mengunduh artefak gambar Docker dari registri ECR pribadi tanpa menerapkan layanan pertukaran token. Pastikan bahwa penyebaran Anda mencakup layanan pertukaran token.

COMPONENT\$1VERSION\$1REQUIREMENTS\$1NOT\$1MET  
Anda mungkin mendapatkan kesalahan ini ketika ada konflik kendala versi atau versi komponen tidak ada. Untuk informasi selengkapnya, lihat [Error: com.aws.greengrass.componentmanager.exceptions.NoAvailableComponentVersionException: Failed to negotiate component <name> version with cloud and no local applicable version satisfying requirement <requirements>](troubleshooting.md#core-error-no-available-component-version).

THROTTLING\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika operasi AWS layanan melebihi kuota tarif. Coba lagi deployment.

CONFLICTED\$1REQUEST  
Anda mungkin mendapatkan kesalahan ini ketika operasi AWS layanan mengembalikan kesalahan 409 karena penerapan Anda mencoba melakukan lebih dari satu operasi pada satu waktu. Coba lagi deployment.

RESOURCE\$1NOT\$1FOUND  
Anda mungkin mendapatkan kesalahan ini ketika operasi AWS layanan mengembalikan kesalahan 404 karena sumber daya tidak dapat ditemukan. Periksa log untuk sumber daya yang hilang.

RUN\$1WITH\$1CONFIG\$1NOT\$1VALID  
Anda mungkin mendapatkan kesalahan ini ketika`posixUser`,`posixGroup`, atau `windowsUser` informasi yang ditentukan untuk menjalankan komponen tidak valid. Periksa apakah pengguna valid dan kemudian coba lagi penerapan.

UNSUPPORTED\$1REGION  
Anda mungkin mendapatkan kesalahan ini ketika Wilayah yang ditentukan untuk penerapan tidak didukung oleh AWS IoT Greengrass. Periksa Region dan coba penerapan lagi.

IOT\$1CRED\$1ENDPOINT\$1NOT\$1VALID  
Anda mungkin mendapatkan kesalahan ini ketika titik akhir AWS IoT kredensi yang ditentukan dalam konfigurasi tidak valid. Periksa titik akhir dan coba permintaan Anda lagi.

IOT\$1DATA\$1ENDPOINT\$1NOT\$1VALID  
Anda mungkin mendapatkan kesalahan ini ketika titik akhir AWS IoT data yang ditentukan dalam konfigurasi tidak valid. Periksa titik akhir dan coba permintaan Anda lagi.

S3\$1HEAD\$1OBJECT\$1RESOURCE\$1NOT\$1FOUND  
Anda mungkin mendapatkan kesalahan ini ketika artefak komponen tidak tersedia di URL objek S3 yang Anda tentukan dalam resep komponen. Pastikan Anda mengunggah artefak ke bucket S3 dan URI artefak cocok dengan URL objek S3 dari artefak di bucket.

S3\$1GET\$1BUCKET\$1LOCATION\$1RESOURCE\$1NOT\$1FOUND  
Anda mungkin mendapatkan kesalahan ini ketika bucket Amazon S3 tidak ditemukan. Periksa apakah bucket ada dan coba penerapannya lagi.

S3\$1GET\$1OBJECT\$1RESOURCE\$1NOT\$1FOUND  
Anda mungkin mendapatkan kesalahan ini ketika artefak komponen tidak tersedia di URL objek S3 yang Anda tentukan dalam resep komponen. Pastikan Anda mengunggah artefak ke bucket S3 dan URI artefak cocok dengan URL objek S3 dari artefak di bucket.

IO\$1MAPPING\$1ERROR  
Anda mungkin mendapatkan kesalahan ini saat terjadi I/O kesalahan saat mengurai dokumen atau resep penerapan. Periksa kode kesalahan tambahan atau log untuk detailnya.

## Kesalahan resep komponen
<a name="component-recipe-error"></a>

RECIPE\$1PARSE\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika resep penerapan tidak dapat diuraikan karena ada kesalahan dalam struktur resep. Periksa apakah resep diformat dengan benar dan coba penerapannya lagi.

RECIPE\$1METADATA\$1PARSE\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika metadata resep penerapan yang diunduh dari cloud tidak dapat diuraikan. Kontak Dukungan.

ARTIFACT\$1URI\$1NOT\$1VALID  
Anda mungkin mendapatkan kesalahan ini ketika URI artefak dalam resep tidak diformat dengan benar. Periksa log untuk URI yang tidak valid, perbarui URI dalam resep, lalu coba penerapannya lagi.

S3\$1ARTIFACT\$1URI\$1NOT\$1VALID  
Anda mungkin mendapatkan kesalahan ini ketika URI Amazon S3 dari artefak dalam resep tidak valid. Periksa log untuk URI yang tidak valid, perbarui URI dalam resep, lalu coba penerapannya lagi.

DOCKER\$1ARTIFACT\$1URI\$1NOT\$1VALID  
Anda mungkin mendapatkan kesalahan ini ketika URI Docker dari artefak dalam resep tidak valid. Periksa log untuk URI yang tidak valid, perbarui URI dalam resep, lalu coba penerapannya lagi.

KOSONG\$1ARTIFACT\$1URI  
Anda mungkin mendapatkan kesalahan ini ketika URI artefak tidak ditentukan dalam resep. Periksa log untuk artefak yang tidak memiliki URI, perbarui URI dalam resep, lalu coba penerapannya lagi.

KOSONG\$1ARTIFACT\$1SCHEME  
Anda mungkin mendapatkan kesalahan ini ketika skema URI tidak ditentukan untuk artefak. Periksa log untuk URI yang tidak valid, perbarui URI dalam resep, lalu coba penerapannya lagi.

UNSUPPORTED\$1ARTIFACT\$1SCHEME  
Anda mungkin mendapatkan kesalahan ini ketika skema URI tidak didukung oleh versi nukleus yang sedang berjalan. URI tidak valid atau Anda perlu memperbarui versi nukleus. Jika URI tidak valid, periksa log untuk URI yang tidak valid, perbarui URI dalam resep, lalu coba penerapannya lagi.

RECIPE\$1MISSING\$1MANIFEST  
Anda mungkin mendapatkan kesalahan ini ketika bagian manifes tidak disertakan dalam resep. Tambahkan manifes ke resep dan coba penerapan lagi.

RECIPE\$1MISSING\$1ARTIFACT\$1HASH\$1ALGORITHM  
Anda mungkin mendapatkan kesalahan ini ketika artefak yang bukan lokal ditentukan di dalam resep tanpa algoritma hash. Tambahkan algoritma ke artefak dan kemudian coba permintaan lagi.

ARTIFACT\$1CHECKSUM\$1MISMATCH  
Anda mungkin mendapatkan kesalahan ini ketika artefak yang diunduh memiliki intisari yang berbeda dari yang ditentukan dalam resep. Pastikan resep berisi intisari yang benar dan kemudian coba penerapannya lagi. Untuk mengetahui informasi selengkapnya, lihat [Error: com.aws.greengrass.componentmanager.exceptions.ArtifactChecksumMismatchException: Integrity check for downloaded artifact failed. Probably due to file corruption.](troubleshooting.md#core-error-failed-to-download-artifact-checksum-mismatch-exception).

COMPONENT\$1DEPENDENCY\$1NOT\$1VALID  
Anda mungkin mendapatkan kesalahan ini ketika jenis ketergantungan yang ditentukan dalam resep penerapan tidak valid. Periksa resepnya dan coba permintaan Anda lagi.

CONFIG\$1INTERPOLATE\$1ERROR  
Anda mungkin mendapatkan kesalahan ini saat menginterpolasi variabel resep. Periksa log untuk detailnya.

IO\$1MAPPING\$1ERROR  
Anda mungkin mendapatkan kesalahan ini saat terjadi I/O kesalahan saat mengurai dokumen atau resep penerapan. Periksa kode kesalahan tambahan atau log untuk detailnya.

## AWS kesalahan komponen, kesalahan komponen pengguna, kesalahan komponen
<a name="component-error"></a>

Kode kesalahan berikut dikembalikan ketika ada masalah dengan komponen. Jenis kesalahan aktual yang dilaporkan tergantung pada komponen spesifik yang memunculkan kesalahan. Jika inti Greengrass mengidentifikasi komponen sebagai komponen yang disediakan oleh, ia kembali. AWS IoT Greengrass`AWS_COMPONENT_ERROR` Jika komponen diidentifikasi sebagai komponen pengguna, inti Greengrass kembali. `USER_COMPONENT_ERROR` Jika inti Greengrass tidak tahu, ia kembali. `COMPONENT_ERROR`

COMPONENT\$1UPDATE\$1ERROR  
Anda mungkin mendapatkan kesalahan ini saat komponen tidak diperbarui selama penerapan. Periksa kode kesalahan tambahan atau periksa log untuk melihat apa yang menyebabkan kesalahan.

COMPONENT\$1BROKEN  
Anda mungkin mendapatkan kesalahan ini saat komponen rusak selama penerapan. Periksa log komponen untuk detail kesalahan dan kemudian coba penerapan lagi.

REMOVE\$1COMPONENT\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika nukleus tidak dapat menghapus komponen selama penerapan. Periksa log untuk detail kesalahan dan kemudian coba penerapan lagi.

COMPONENT\$1BOOTSTRAP\$1TIMEOUT  
Anda mungkin mendapatkan kesalahan ini ketika tugas bootstrap komponen membutuhkan waktu lebih lama dari batas waktu yang dikonfigurasi. Tingkatkan batas waktu atau kurangi waktu eksekusi tugas bootstrap, lalu coba penerapan lagi.

COMPONENT\$1BOOTSTRAP\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika tugas bootstrap komponen mengalami kesalahan. Periksa log untuk detail kesalahan, lalu coba penerapan lagi.

COMPONENT\$1CONFIGURATION\$1NOT\$1VALID  
Anda mungkin mendapatkan kesalahan ini ketika nukleus tidak dapat memvalidasi konfigurasi yang diterapkan untuk komponen tersebut. Periksa log untuk detail kesalahan, lalu coba penerapan lagi.

## Kesalahan perangkat
<a name="device-error"></a>

IO\$1WRITE\$1ERROR  
Anda mungkin mendapatkan kesalahan ini saat menulis ke file. Periksa log untuk detailnya.

IO\$1READ\$1ERROR  
Anda mungkin mendapatkan kesalahan ini saat membaca dari file. Periksa log untuk detailnya.

DISK\$1SPACE\$1CRITICAL  
Anda mungkin mendapatkan kesalahan ini ketika tidak ada cukup ruang disk untuk menyelesaikan permintaan penerapan. Anda harus memiliki setidaknya 20 Mb ruang yang tersedia, atau cukup untuk menyimpan artefak yang lebih besar. Kosongkan beberapa ruang disk dan kemudian coba lagi penerapan.

IO\$1FILE\$1ATTRIBUTE\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika ukuran file yang ada tidak dapat diambil dari sistem file. Periksa log untuk detailnya.

SET\$1PERMISSION\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika izin tidak dapat disetel pada artefak atau artefak direktori yang diunduh. Periksa log untuk detailnya.

IO\$1UNZIP\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika artefak tidak dapat dibuka ritsletingnya. Periksa log untuk detailnya.

LOCAL\$1RECIPE\$1NOT\$1FOUND  
Anda mungkin mendapatkan kesalahan ini ketika salinan lokal dari file resep tidak dapat ditemukan. Coba penerapan lagi.

LOCAL\$1RECIPE\$1RUSAK  
Anda mungkin mendapatkan kesalahan ini ketika salinan lokal resep telah berubah sejak diunduh. Hapus salinan resep yang ada dan coba penerapannya lagi.

LOCAL\$1RECIPE\$1METADATA\$1NOT\$1FOUND  
Anda mungkin mendapatkan kesalahan ini ketika salinan lokal dari file metadata resep tidak dapat ditemukan. Coba penerapan lagi.

LAUNCH\$1DIRECTORY\$1CORRUPTED  
Anda mungkin mendapatkan kesalahan ini ketika direktori yang digunakan untuk meluncurkan Greengrass nucleus `/greengrass/v2/alts/current` () telah dimodifikasi sejak terakhir kali nukleus dimulai. Mulai ulang nukleus dan kemudian coba lagi penerapan.

HASHING\$1ALGORITHM\$1UNAVAILABLE  
Anda mungkin mendapatkan kesalahan ini ketika distribusi Java perangkat tidak mendukung algoritma hashing yang diperlukan atau ketika algoritma hash yang ditentukan dalam resep komponen tidak valid.

DEVICE\$1CONFIG\$1NOT\$1VALID\$1FOR\$1ARTIFACT\$1DOWNLOAD  
Anda mungkin mendapatkan kesalahan ini ketika ada kesalahan dalam konfigurasi perangkat yang mencegah penerapan mengunduh artefak dari Amazon S3 atau cloud Greengrass. Periksa log untuk kesalahan konfigurasi tertentu dan kemudian coba lagi penerapan.

## Kesalahan dependensi
<a name="dependency-error"></a>

DOCKER\$1ERROR  
Anda mungkin mendapatkan kesalahan ini saat menarik gambar Docker. Periksa kode kesalahan tambahan atau log untuk detailnya.

DOCKER\$1SERVICE\$1UNAVAILABLE  
Anda mungkin mendapatkan kesalahan ini ketika Greengrass tidak bisa masuk ke registri Docker. Periksa log untuk kesalahan tertentu dan kemudian coba penerapan lagi.

DOCKER\$1LOGIN\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika kesalahan tak terduga terjadi saat masuk ke Docker. Periksa log untuk kesalahan tertentu dan kemudian coba penerapan lagi.

DOCKER\$1PULL\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika kesalahan tak terduga terjadi saat menarik gambar Docker dari registri. Periksa log untuk kesalahan tertentu dan kemudian coba penerapan lagi.

DOCKER\$1IMAGE\$1NOT\$1VALID  
Anda mungkin mendapatkan kesalahan ini ketika gambar Docker yang diminta tidak ada. Periksa log untuk kesalahan tertentu dan coba penerapan lagi.

DOCKER\$1IMAGE\$1QUERY\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika kegagalan tak terduga terjadi saat menanyakan Docker untuk gambar yang tersedia. Periksa log untuk kesalahan spesifik dan coba penerapan lagi.

S3\$1KESALAHAN  
Anda mungkin mendapatkan kesalahan ini saat mengunduh artefak Amazon S3. Periksa kode kesalahan tambahan atau log untuk detailnya.

S3\$1RESOURCE\$1NOT\$1FOUND  
Anda mungkin mendapatkan kesalahan ini ketika operasi Amazon S3 mengembalikan kesalahan 404. Periksa kode kesalahan tambahan atau log untuk detailnya.

S3\$1BAD\$1PERMINTAAN  
Anda mungkin mendapatkan kesalahan ini ketika operasi Amazon S3 mengembalikan kesalahan 400. Periksa log untuk kesalahan tertentu dan coba permintaan lagi.

## Kesalahan HTTP
<a name="http-error"></a>

HTTP\$1REQUEST\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika terjadi kesalahan saat membuat permintaan HTTP. Periksa log untuk kesalahan spesifik.

DOWNLOAD\$1DEPLOYMENT\$1DOCUMENT\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika terjadi kesalahan HTTP saat mengunduh dokumen penerapan. Periksa log untuk kesalahan HTTP tertentu.

GET\$1GREENGRASS\$1ARTIFACT\$1SIZE\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika kesalahan HTTP terjadi saat mendapatkan ukuran artefak komponen publik. Periksa log untuk kesalahan HTTP tertentu.

DOWNLOAD\$1GREENGRASS\$1ARTIFACT\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika terjadi kesalahan HTTP saat mengunduh artefak komponen publik. Periksa log untuk kesalahan HTTP tertentu.

## Kesalahan jaringan
<a name="network-error"></a>

NETWORK\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika ada masalah koneksi selama penerapan. Periksa koneksi perangkat ke Internet dan coba penerapannya lagi.

## Kesalahan nukleus
<a name="nucleus-error"></a>

PERMINTAAN BURUK  
Anda mungkin mendapatkan kesalahan ini ketika operasi AWS cloud mengembalikan kesalahan 400. Periksa log untuk melihat API mana yang menyebabkan kesalahan, lalu periksa halaman pembaruan perangkat lunak nukleus untuk melihat apakah masalah telah diperbaiki di versi nukleus yang lebih baru, atau kontak Dukungan.

NUCLEUS\$1VERSION\$1NOT\$1FOUND  
Anda mungkin mendapatkan kesalahan ini ketika perangkat inti tidak dapat menemukan versi inti aktif. Periksa log untuk melihat apa yang menyebabkan kesalahan, lalu periksa halaman pembaruan perangkat lunak nukleus untuk melihat apakah masalah telah diperbaiki di versi nukleus yang lebih baru, atau kontak Dukungan.

NUCLEUS\$1RESTART\$1FAILURE  
Anda mungkin mendapatkan kesalahan ini ketika nukleus tidak dimulai ulang selama penerapan apa pun yang memerlukan restart nukleus. Periksa log pemuat untuk melihat apa yang menyebabkan kesalahan, lalu periksa halaman pembaruan perangkat lunak nukleus untuk melihat apakah masalah telah diperbaiki di versi nukleus yang lebih baru, atau kontak Dukungan. 

INSTALLED\$1COMPONENT\$1NOT\$1FOUND  
Anda mungkin mendapatkan kesalahan ini ketika nukleus tidak dapat menemukan komponen yang diinstal. Periksa log untuk melihat apa yang menyebabkan kesalahan, lalu periksa halaman pembaruan perangkat lunak nukleus untuk melihat apakah masalah telah diperbaiki di versi nukleus yang lebih baru, atau kontak Dukungan.

DEPLOYMENT\$1DOCUMENT\$1NOT\$1VALID  
Anda mungkin mendapatkan kesalahan ini saat perangkat menerima dokumen penerapan yang tidak valid. Periksa kode kesalahan tambahan atau periksa log untuk melihat apa yang menyebabkan kesalahan.

EMPTY\$1DEPLOYMENT\$1REQUEST  
Anda mungkin mendapatkan kesalahan ini saat perangkat menerima permintaan penerapan kosong. Periksa log untuk melihat apa yang menyebabkan kesalahan, lalu periksa halaman pembaruan perangkat lunak nukleus untuk melihat apakah masalah telah diperbaiki di versi nukleus yang lebih baru, atau kontak Dukungan.

DEPLOYMENT\$1DOCUMENT\$1PARSE\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika format permintaan penerapan tidak cocok dengan format yang diharapkan. Periksa log untuk melihat apa yang menyebabkan kesalahan, lalu periksa halaman pembaruan perangkat lunak nukleus untuk melihat apakah masalah telah diperbaiki di versi nukleus yang lebih baru, atau kontak Dukungan.

COMPONENT\$1METADATA\$1NOT\$1VALID\$1IN\$1DEPLOYMENT  
Anda mungkin mendapatkan kesalahan ini ketika permintaan penerapan berisi metadata komponen yang tidak valid. Periksa log untuk melihat apa yang menyebabkan kesalahan, lalu periksa halaman pembaruan perangkat lunak nukleus untuk melihat apakah masalah telah diperbaiki di versi nukleus yang lebih baru, atau kontak Dukungan.

LAUNCH\$1DIRECTORY\$1CORRUPTED  
Anda mungkin mendapatkan kesalahan ini saat memindahkan perangkat Greengrass dari satu grup hal ke grup lain, dan kemudian kembali ke grup asli dengan penerapan yang memerlukan Greengrass untuk memulai ulang. Untuk mengatasi kesalahan, buat ulang direktori peluncuran untuk Greengrass di perangkat.  
Untuk informasi selengkapnya, lihat [Error: com.aws.greengrass.deployment.exceptions.DeploymentException: Unable to process deployment. Greengrass launch directory is not set up or Greengrass is not set up as a system service](troubleshooting.md#deployment-error-unable-to-process-deployment).

## Kesalahan server
<a name="server-error"></a>

SERVER\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika operasi AWS layanan mengembalikan kesalahan 500 karena layanan tidak dapat memproses permintaan sekarang. Coba lagi penerapan nanti.

S3\$1SERVER\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika operasi Amazon S3 mengembalikan kesalahan 500. Periksa kode kesalahan tambahan atau log untuk detailnya.

## Kesalahan layanan cloud
<a name="cloud-service-error"></a>

RESOLVE\$1COMPONENT\$1CANDIDATES\$1BAD\$1RESPONSE  
Anda mungkin mendapatkan kesalahan ini ketika layanan cloud Greengrass mengirimkan respons yang tidak kompatibel ke operasi. `ResolveComponentCandidates` Periksa log untuk melihat apa yang menyebabkan kesalahan, lalu periksa halaman pembaruan perangkat lunak nukleus untuk melihat apakah masalah telah diperbaiki di versi nukleus yang lebih baru, atau kontak Dukungan.

DEPLOYMENT\$1DOCUMENT\$1SIZE\$1EXCEEDED  
Anda mungkin mendapatkan kesalahan ini ketika dokumen penerapan yang diminta melebihi kuota ukuran maksimum. Kurangi ukuran dokumen penyebaran dan coba penerapan lagi.

GREENGRASS\$1ARTIFACT\$1SIZE\$1NOT\$1FOUND  
Anda mungkin mendapatkan kesalahan ini ketika Greengrass tidak bisa mendapatkan ukuran artefak komponen publik. Periksa log untuk melihat apa yang menyebabkan kesalahan, lalu periksa halaman pembaruan perangkat lunak nukleus untuk melihat apakah masalah telah diperbaiki di versi nukleus yang lebih baru, atau kontak Dukungan.

DEPLOYMENT\$1DOCUMENT\$1NOT\$1VALID  
Anda mungkin mendapatkan kesalahan ini saat perangkat menerima dokumen penerapan yang tidak valid. Periksa kode kesalahan tambahan atau periksa log untuk melihat apa yang menyebabkan kesalahan.

EMPTY\$1DEPLOYMENT\$1REQUEST  
Anda mungkin mendapatkan kesalahan ini saat perangkat menerima permintaan penerapan kosong. Periksa log untuk melihat apa yang menyebabkan kesalahan, lalu periksa halaman pembaruan perangkat lunak nukleus untuk melihat apakah masalah telah diperbaiki di versi nukleus yang lebih baru, atau kontak Dukungan.

DEPLOYMENT\$1DOCUMENT\$1PARSE\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika format permintaan penerapan tidak cocok dengan format yang diharapkan. Periksa log untuk melihat apa yang menyebabkan kesalahan, lalu periksa halaman pembaruan perangkat lunak nukleus untuk melihat apakah masalah telah diperbaiki di versi nukleus yang lebih baru, atau kontak Dukungan.

COMPONENT\$1METADATA\$1NOT\$1VALID\$1IN\$1DEPLOYMENT  
Anda mungkin mendapatkan kesalahan ini ketika permintaan penerapan berisi metadata komponen yang tidak valid. Periksa log untuk melihat apa yang menyebabkan kesalahan, lalu periksa halaman pembaruan perangkat lunak nukleus untuk melihat apakah masalah telah diperbaiki di versi nukleus yang lebih baru, atau kontak Dukungan.

## Kesalahan umum
<a name="generic-error"></a>

Kesalahan umum ini tidak memiliki jenis kesalahan terkait.

DEPLOYMENT\$1INTERRUPTED  
Anda mungkin mendapatkan kesalahan ini ketika penerapan tidak dapat diselesaikan karena penghentian inti atau peristiwa eksternal lainnya. Periksa kode kesalahan tambahan atau log untuk detailnya.

ARTIFACT\$1DOWNLOAD\$1ERROR  
Anda mungkin mendapatkan kesalahan ini ketika ada masalah saat mengunduh artefak. Periksa kode kesalahan tambahan atau log untuk detailnya.

NO\$1AVAILABLE\$1COMPONENT\$1VERSION  
Anda mungkin mendapatkan kesalahan ini ketika versi komponen tidak ada di cloud atau secara lokal, atau jika ada konflik resolusi ketergantungan. Periksa kode kesalahan tambahan atau log untuk detailnya.

COMPONENT\$1PACKAGE\$1LOADING\$1ERROR  
Anda mungkin mendapatkan kesalahan ini saat kesalahan memproses artefak yang diunduh. Periksa kode kesalahan tambahan atau log untuk detailnya.

AWAN\$1 API\$1ERROR  
Anda mungkin mendapatkan kesalahan ini saat terjadi kesalahan saat memanggil API AWS layanan. Periksa kode kesalahan tambahan atau log untuk detailnya.

IO\$1ERROR  
Anda mungkin mendapatkan kesalahan ini saat terjadi I/O kesalahan selama penerapan. Periksa kode kesalahan tambahan atau log untuk detailnya.

COMPONENT\$1UPDATE\$1ERROR  
Anda mungkin mendapatkan kesalahan ini saat komponen tidak diperbarui selama penerapan. Periksa kode kesalahan tambahan atau periksa log untuk melihat apa yang menyebabkan kesalahan.

## Kesalahan tidak diketahui
<a name="unknown-error"></a>

DEPLOYMENT\$1FAILURE  
Anda mungkin mendapatkan kesalahan ini saat penerapan gagal karena pengecualian yang tidak dicentang dilemparkan. Periksa log untuk melihat apa yang menyebabkan kesalahan, lalu periksa halaman pembaruan perangkat lunak nukleus untuk melihat apakah masalah telah diperbaiki di versi nukleus yang lebih baru, atau kontak Dukungan.

DEPLOYMENT\$1TYPE\$1NOT\$1VALID  
Anda mungkin mendapatkan kesalahan ini ketika jenis penerapan tidak valid. Periksa log untuk melihat apa yang menyebabkan kesalahan, lalu periksa halaman pembaruan perangkat lunak nukleus untuk melihat apakah masalah telah diperbaiki di versi nukleus yang lebih baru, atau kontak Dukungan.

# Kode status komponen terperinci
<a name="troubleshooting-component"></a>

Gunakan kode status dan solusi di bagian ini untuk membantu menyelesaikan masalah dengan komponen saat menggunakan inti Greengrass versi 2.8.0 atau yang lebih baru.

Banyak status dalam topik ini melaporkan informasi tambahan di log AWS IoT Greengrass Inti. Log ini disimpan di sistem file lokal perangkat inti. Ada log untuk setiap komponen individu. Untuk informasi tentang mengakses log, lihat[Akses log sistem file](monitor-logs.md#access-local-logs).

INSTALL\$1ERROR  
Anda mungkin mendapatkan ini ketika terjadi kesalahan saat menjalankan skrip instalasi. Kode kesalahan dilaporkan dalam log komponen. Periksa skrip instalasi untuk kesalahan dan terapkan komponen Anda lagi.

INSTALL\$1CONFIG\$1NOT\$1VALID  
Anda mungkin mendapatkan kesalahan ini ketika instalasi komponen tidak dapat diselesaikan karena `install` bagian resep tidak valid. Periksa bagian instalasi resep Anda untuk kesalahan dan coba penerapan lagi.

INSTALL\$1IO\$1ERROR  
Anda mungkin mendapatkan ini ketika kesalahan I/O terjadi selama instalasi komponen. Periksa log kesalahan komponen untuk detail tentang kesalahan.

INSTALL\$1MISSING\$1DEFAULT\$1RUNWITH  
Anda mungkin mendapatkan kesalahan ini ketika tidak AWS IoT Greengrass dapat menentukan pengguna atau grup yang akan digunakan saat menginstal komponen. Periksa untuk memastikan bahwa `runWith` bagian resep instalasi Anda mencakup pengguna atau grup yang valid. 

INSTALL\$1TIMEOUT  
Anda mungkin mendapatkan kesalahan ini ketika skrip instalasi tidak selesai dalam periode batas waktu yang dikonfigurasi. Baik meningkatkan `Timeout` periode yang ditentukan di `install` bagian resep atau memodifikasi skrip instalasi Anda untuk menyelesaikan dalam batas waktu yang dikonfigurasi.

STARTUP\$1ERROR  
Anda mungkin mendapatkan ini ketika terjadi kesalahan saat menjalankan skrip startup. Kode kesalahan dilaporkan dalam log komponen. Periksa skrip instalasi untuk kesalahan dan terapkan komponen Anda lagi.

STARTUP\$1CONFIG\$1NOT\$1VALID  
Anda mungkin mendapatkan kesalahan ini ketika instalasi komponen tidak dapat diselesaikan karena `startup` bagian resep tidak valid. Periksa bagian startup resep Anda untuk kesalahan dan coba penerapannya lagi.

STARTUP\$1IO\$1ERROR  
Anda mungkin mendapatkan ini ketika kesalahan I/O terjadi selama startup komponen. Periksa log kesalahan komponen untuk detail tentang kesalahan.

STARTUP\$1MISSING\$1DEFAULT\$1RUNWITH  
Anda mungkin mendapatkan kesalahan ini ketika tidak AWS IoT Greengrass dapat menentukan pengguna atau grup yang akan digunakan saat menjalankan komponen. Periksa untuk memastikan bahwa `runWith` bagian resep startup Anda menyertakan pengguna atau grup yang valid.

STARTUP\$1TIMEOUT  
Anda mungkin mendapatkan kesalahan ini ketika skrip startup tidak selesai dalam periode batas waktu yang dikonfigurasi. Tingkatkan `Timeout` periode yang ditentukan di `startup` bagian resep atau ubah skrip startup Anda untuk menyelesaikan batas waktu yang dikonfigurasi.

RUN\$1ERROR  
Anda mungkin mendapatkan ini ketika terjadi kesalahan saat menjalankan skrip komponen. Kode kesalahan dilaporkan dalam log komponen. Periksa skrip run untuk kesalahan dan terapkan komponen Anda lagi.

RUN\$1MISSING\$1DEFAULT\$1RUNWITH  
Anda mungkin mendapatkan kesalahan ini ketika tidak AWS IoT Greengrass dapat menentukan pengguna atau grup yang akan digunakan saat menjalankan komponen. Periksa untuk memastikan bahwa `runWith` bagian resep run Anda menyertakan pengguna atau grup yang valid.

RUN\$1CONFIG\$1NOT\$1VALID  
Anda mungkin mendapatkan kesalahan ini ketika komponen tidak dapat dijalankan karena `run` bagian resep tidak valid. Periksa bagian run resep Anda untuk kesalahan dan coba penerapan lagi.

RUN\$1IO\$1ERROR  
Anda mungkin mendapatkan ini ketika kesalahan I/O terjadi saat komponen sedang berjalan. Periksa log kesalahan komponen untuk detail tentang kesalahan.

RUN\$1TIMEOUT  
Anda mungkin mendapatkan kesalahan ini ketika skrip run tidak selesai dalam periode batas waktu yang dikonfigurasi. Tingkatkan `Timeout` periode yang ditentukan di `run` bagian resep atau ubah skrip run Anda untuk menyelesaikan batas waktu yang dikonfigurasi.

SHUTDOWN\$1ERROR  
Anda mungkin mendapatkan ini ketika terjadi kesalahan saat mematikan skrip komponen. Kode kesalahan dilaporkan dalam log komponen. Periksa skrip shutdown untuk kesalahan dan terapkan komponen Anda lagi.

SHUTDOWN\$1TIMEOUT  
Anda mungkin mendapatkan kesalahan ini ketika skrip shutdown tidak selesai dalam periode batas waktu yang dikonfigurasi. Tingkatkan `Timeout` periode yang ditentukan di `shutdown` bagian resep atau ubah skrip run Anda untuk menyelesaikan batas waktu yang dikonfigurasi.