

Pemberitahuan akhir dukungan: Pada 7 Oktober 2026, AWS akan menghentikan dukungan untuk. AWS IoT Greengrass Version 1 Setelah 7 Oktober 2026, Anda tidak akan lagi dapat mengakses sumber daya. AWS IoT Greengrass V1 Untuk informasi lebih lanjut, silakan kunjungi [Migrasi dari AWS IoT Greengrass Version 1](https://docs.aws.amazon.com/greengrass/v2/developerguide/migrate-from-v1.html).

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
<a name="gg-troubleshooting"></a>

Bagian ini menyediakan informasi pemecahan masalah dan solusi yang mungkin untuk membantu menyelesaikan masalah. AWS IoT Greengrass

<a name="gg-limits-genref"></a>Untuk informasi tentang AWS IoT Greengrass kuota (batas), lihat [Service](https://docs.aws.amazon.com/general/latest/gr/greengrass.html#limits_greengrass) Quotas di. *Referensi Umum Amazon Web Services*

## AWS IoT Greengrass Masalah inti
<a name="gg-troubleshooting-coreissues"></a>

Jika perangkat lunak AWS IoT Greengrass Core tidak dimulai, coba langkah-langkah pemecahan masalah umum berikut:
+ Pastikan bahwa Anda menginstal binari yang sesuai untuk arsitektur Anda. Untuk informasi selengkapnya, lihat [AWS IoT Greengrass Perangkat lunak Core](what-is-gg.md#gg-core-download-tab).
+ Pastikan perangkat core Anda memiliki penyimpanan lokal yang tersedia. Untuk informasi selengkapnya, lihat [Pemecahan masalah penyimpanan](#troubleshooting-storage).
+ Periksa `runtime.log` dan `crash.log` untuk pesan error. Untuk informasi selengkapnya, lihat [Pemecahan masalah dengan catatan](#troubleshooting-logs).

Cari gejala dan kesalahan berikut untuk menemukan informasi guna membantu memecahkan masalah dengan inti. AWS IoT Greengrass 

**Topics**
+ [Kesalahan: File konfigurasi tidak ada CaPath, CertPath atau KeyPath. <pid>Proses daemon Greengrass dengan [pid =] mati.](#troubleshoot-config-file-version)
+ [Error: Gagal mengurai/<greengrass-root> /config/config.json.](#troubleshoot-config-file-invalid)
+ [Kesalahan: Terjadi kesalahan saat membuat konfigurasi TLS: ErrUnknown URIScheme](#troubleshooting-unknown-uri-scheme)
+ [Error: Waktu aktif gagal untuk mulai: tidak dapat mulai pekerja: pengujian kontainer habis waktu.](#troubleshoot-post-start-health-check)
+ [<address>Kesalahan: Gagal memanggil PutLogEvents di Cloudwatch lokal, LogGroup:/GreengrassSystem/connection\_manager, kesalahan:: permintaan kirim gagal disebabkan oleh: Posting http RequestError://<path>/cloudwatch/logs/: dial tcp: getsockopt: koneksi ditolak, respons: {}.](#troubleshoot-cloudwatch-logs)
+ [<region><account-id><function-name><version><file-name>Kesalahan: Tidak dapat membuat server karena: gagal memuat grup: chmod/<greengrass-root>/:aws:lambda: ::function::/ggc/deployment/lambda/arn: tidak ada file atau direktori seperti itu.](#troubleshoot-lambda-executable-handler)
+ [Perangkat lunak AWS IoT Greengrass Core tidak dimulai setelah Anda berubah dari berjalan tanpa kontainerisasi menjadi berjalan di wadah Greengrass.](#troubleshoot-no-container)
+ [error: Ukuran spool harus setidaknya 262144 byte.](#troubleshoot-spool-size)
+ [Kesalahan: [KESALAHAN]-kesalahan olahpesan cloud: Terjadi kesalahan ketika mencoba menerbitkan pesan. {"errorString": "timed out operasi"}](#troubleshoot-mqtt-operation-timed-out)
+ [<version>Kesalahan: container\_linux.go: 344: memulai proses kontainer menyebabkan “process\_linux.go:424: container init caused\\" rootfs\_linux.go:64: mounting\\\\\\”///\_ipc.sock: izin ditolak\\\\\\ "\\"”. greengrass/ggc/socket/greengrass\_ipc.sock\\\\\\" to rootfs \\\\\\"/greengrass/ggc/packages rootfs/merged\\\\\\" at \\\\\\"/greengrass\_ipc.sock\\\\\\" caused \\\\\\"stat /greengrass/ggc/socket/greengrass](#troubleshoot-umask-permission)
+ [error: Greengrass daemon berjalan dengan PID: <process-id>. Beberapa komponen sistem gagal untuk mulai. Periksa 'runtime.catatan' untuk error.](#troubleshoot-system-components)
+ [Bayangan perangkat tidak sinkron dengan cloud.](#troubleshoot-shadow-sync)
+ [ERROR: tidak dapat menerima koneksi TCP. menerima tcp [::]:8000 accept4: terlalu banyak file terbuka.](#troubleshoot-file-descriptor-limit)
+ [Error: error eksekusi waktu aktif: tidak dapat memulai kontainer lambda. container\_linux.go: 259: memulai proses kontainer disebabkan "process\_linux.go:345: container init disebabkan\\"rootfs\_linux.go:50: mempersiapkan rootfs disebabkan \\\\\\ "izin ditolak\\\\\\"\\"".](#troubleshoot-execute-permissions)
+ [Peringatan: [PERINGATAN] - [5] GK Remote: Kesalahan mengambil data kunci publik: ErrPrincipalNotConfigured: kunci pribadi untuk tidak MqttCertificate disetel.](#troubleshoot-mqttcertificate-warning)
+ [<account-id><role-name><region>Kesalahan: Izin ditolak saat mencoba menggunakan peran arn:aws:iam: ::role/ untuk mengakses url s3 https://-greengrass-updates.s3. <region><architecture><distribution-version>.amazonaws.com/core/ /greengrass-core- .tar.gz.](#troubleshoot-ota-region-access)
+ [AWS IoT Greengrass Inti dikonfigurasi untuk menggunakan [proxy jaringan](gg-core.md#alpn-network-proxy) dan fungsi Lambda Anda tidak dapat membuat koneksi keluar.](#troubleshoot-lambda-proxy-network-connections)
+ [Core adalah dalam loop connect-disconnect yang tak terbatas. File runtime.log berisi serangkaian kontinyu entri menghubungkan dan memutuskan.](#config-client-id)
+ [Error: tidak dapat memulai kontainer lambda. container\_linux.go:259: memulai proses kontainer disebabkan "process\_linux.go:345: container init disebabkan \\"rootfs\_linux.go: 62: mounting\\\\\\ "proc\\\\\\" to rootfs\\\\\\"](#troubleshoot-mount-proc-lambda-container)
+ [[ERROR]-error ekseskusi waktu aktif: tidak dapat memulai kontainer lambda. {"errorString": "gagal menginisialisasi pemasangan kontainer: gagal untuk menutupi root greengrass di overlay dir atas: gagal membuat perangkat mask pada direktori <ggc-path>: file ada"}](#troubleshoot-usr-access-root)
+ [[ERROR] -Penerapan gagal. {"deploymentID”: <deployment-id>"“, “errorString”: “proses pengujian kontainer dengan <pid>pid gagal: status proses kontainer: status keluar 1"}](#troubleshoot-usr-access-root-canary)
+ [Kesalahan: [ERROR] -kesalahan eksekusi runtime: tidak dapat memulai wadah lambda. <ggc-version><ggc-version>{"errorString”: “gagal menginisialisasi mount container: gagal membuat overlay fs untuk container: mounting overlay di /greengrass/ggc/packages/<ggc-version>/rootfs/merged failed: failed to mount with args source=\\"no\_source\\ "dest=\\"/greengrass/ggc/packages/<ggc-version>/rootfs/merged\\" fstype=\\"overlay\\" flags=\\"0\\" data=\\"lowerdir=/greengrass/ggc/packages/<ggc-version>/dns:/,upperdir=/greengrass/ggc/packages/<ggc-version>/rootfs/upper,workdir=/greengrass/ggc/packages/<ggc-version>/rootfs/work\\": terlalu banyak level tautan simbolis "}](#troubleshoot-symbolic-links)
+ [Error: [DEBUG]-Gagal untuk mendapatkan rute. Membuang pesan.](#troubleshoot-failed-to-get-routes)
+ [Error: [Errno 24] Terlalu banyak membuka <lambda-function>, [Errno 24] Terlalu banyak membuka file](#troubleshoot-too-many-open-files)
+ [Kesalahan: server ds gagal mulai mendengarkan soket: dengarkan <ggc-path>ggc/socket/greengrassunix/\_ipc.sock: bind: argumen tidak valid](#troubleshoot-install-path-too-long)
+ [[INFO] (Mesin Fotokopi) aws.greengrass. StreamManager: stdout. Disebabkan oleh: com.fasterxml.jackson.databind. JsonMappingException: Instan melebihi minimum atau maksimum instan](#troubleshoot-stream-manager-instant-exceeds-maximun-minimum)
+ [GPG error: https://dnw9lb6lzp2d8.cloudfront.net stable InRelease: The following signatures were invalid: EXPKEYSIG 68D644ABD2327D47 AWS Greengrass Master Key](#troubleshoot-apt-repository-invalid-signature)

 

### Kesalahan: File konfigurasi tidak ada CaPath, CertPath atau KeyPath. <pid>Proses daemon Greengrass dengan [pid =] mati.
<a name="troubleshoot-config-file-version"></a>

**Solusi:** Anda mungkin melihat kesalahan ini `crash.log` saat perangkat lunak AWS IoT Greengrass Core tidak dimulai. Hal ini dapat terjadi jika Anda menjalankan v1.6 atau sebelumnya. Lakukan salah satu tindakan berikut:
+ Upgade ke v1.7 atau lebih baru. Kami menyarankan Anda untuk selalu menjalankan versi terbaru dari perangkat lunak AWS IoT Greengrass Core. Untuk informasi unduhan, lihat [AWS IoT Greengrass Perangkat lunak Core](what-is-gg.md#gg-core-download-tab).
+ Gunakan `config.json` format yang benar untuk versi perangkat lunak AWS IoT Greengrass Core Anda. Untuk informasi selengkapnya, lihat [AWS IoT Greengrass file konfigurasi inti](gg-core.md#config-json).
**catatan**  
<a name="find-ggc-version-intro"></a>Untuk menemukan versi perangkat lunak AWS IoT Greengrass Core yang diinstal pada perangkat inti, jalankan perintah berikut di terminal perangkat Anda.  

  ```
  cd /{{greengrass-root}}/ggc/core/
  sudo ./greengrassd --version
  ```

 

### Error: Gagal mengurai/<greengrass-root> /config/config.json.
<a name="troubleshoot-config-file-invalid"></a>

**Solusi:** Anda mungkin melihat kesalahan ini ketika perangkat lunak Core AWS IoT Greengrass tidak mulai. Pastikan [File konfigurasi Greengrass](gg-core.md#config-json) menggunakan format JSON yang valid.

Buka `config.json` (terletak di `/{{greengrass-root}}/config`) dan memvalidasi format JSON. Sebagai contoh, pastikan bahwa koma digunakan dengan benar.

 

### Kesalahan: Terjadi kesalahan saat membuat konfigurasi TLS: ErrUnknown URIScheme
<a name="troubleshooting-unknown-uri-scheme"></a>

**Solusi:** Anda mungkin melihat kesalahan ini ketika perangkat lunak Core AWS IoT Greengrass tidak mulai. Pastikan properti di [Kripto](gg-core.md#config-json-crypto) bagian dari file konfigurasi Greengrass valid. Pesan error harus menyediakan informasi lebih lanjut.

Buka `config.json` (terletak di `/{{greengrass-root}}/config`) dan periksa `crypto` bagian. Sebagai contoh, sertifikat dan jalur kunci harus menggunakan format URI yang benar dan arahkan ke lokasi yang benar.

 

### Error: Waktu aktif gagal untuk mulai: tidak dapat mulai pekerja: pengujian kontainer habis waktu.
<a name="troubleshoot-post-start-health-check"></a>

**Solusi:** Anda mungkin melihat kesalahan ini ketika perangkat lunak Core AWS IoT Greengrass tidak mulai. Atur `postStartHealthCheckTimeout` properti di [file konfigurasi Greengrass](gg-core.md#config-json). Properti opsional ini mengonfigurasi jumlah waktu (dalam milidetik) yang Greengrass daemon menunggu pemeriksaan kondisi pasca-mulai untuk menyelesaikan. Nilai default adalah 30 detik (30000 ms).

Buka `config.json` (terletak di `/{{greengrass-root}}/config`). Di `runtime` objek, tambahkan `postStartHealthCheckTimeout` properti dan atur nilai ke nomor yang lebih besar dari 30000. Tambahkan koma di mana diperlukan untuk membuat dokumen JSON valid. Contoh:

```
  ...
  "runtime" : {
    "cgroup" : {
      "useSystemd" : "yes"
    },
    "postStartHealthCheckTimeout" : 40000
  },
  ...
```

 

### <address>Kesalahan: Gagal memanggil PutLogEvents di Cloudwatch lokal, LogGroup:/GreengrassSystem/connection\_manager, kesalahan:: permintaan kirim gagal disebabkan oleh: Posting http RequestError://<path>/cloudwatch/logs/: dial tcp: getsockopt: koneksi ditolak, respons: {}.
<a name="troubleshoot-cloudwatch-logs"></a>

**Solusi:** Anda mungkin melihat kesalahan ini ketika perangkat lunak Core AWS IoT Greengrass tidak mulai. Ini dapat terjadi jika Anda menjalankan AWS IoT Greengrass Raspberry Pi dan pengaturan memori yang diperlukan belum selesai. Untuk informasi selengkapnya, lihat [langkah ini](setup-filter.rpi.md#stretch-step).

 

### <region><account-id><function-name><version><file-name>Kesalahan: Tidak dapat membuat server karena: gagal memuat grup: chmod/<greengrass-root>/:aws:lambda: ::function::/ggc/deployment/lambda/arn: tidak ada file atau direktori seperti itu.
<a name="troubleshoot-lambda-executable-handler"></a>

**Solusi:** Anda mungkin melihat kesalahan ini ketika perangkat lunak Core AWS IoT Greengrass tidak mulai. Jika Anda menerapkan [Lambda](lambda-functions.md#lambda-executables) yang dapat dieksekusi ke inti, periksa properti fungsi dalam file (terletak `group.json` di`Handler`//). {{greengrass-root}} ggc/deployment/group Jika handler bukan nama yang tepat dari compiled executable Anda, ganti konten `group.json` file dengan obyek JSON kosong (`{}`), dan jalankan perintah berikut untuk mulai AWS IoT Greengrass:

```
cd /greengrass/ggc/core/
sudo ./greengrassd start
```

Kemudian, gunakan [AWS Lambda API](https://docs.aws.amazon.com/cli/latest/reference/lambda/) untuk memperbarui fungsi parameter `handler` konfigurasi, menerbitkan versi fungsi baru, dan update alias. Untuk informasi lebih lanjut, lihat [AWS Lambda fungsi versioning dan aliases](https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html).

Dengan asumsi bahwa Anda menambahkan fungsi ke grup Greengrass Anda dengan alias (disarankan), Anda sekarang dapat men-deploy ulang grup Anda. (Jika tidak, Anda harus menunjuk ke versi fungsi baru atau alias dalam definisi grup dan langganan sebelum Anda men-deploy grup.)

 

### Perangkat lunak AWS IoT Greengrass Core tidak dimulai setelah Anda berubah dari berjalan tanpa kontainerisasi menjadi berjalan di wadah Greengrass.
<a name="troubleshoot-no-container"></a>

**Solusi:** Periksa bahwa Anda tidak kehilangan kontainer dependensi apa pun.

 

### error: Ukuran spool harus setidaknya 262144 byte.
<a name="troubleshoot-spool-size"></a>

**Solusi:** Anda mungkin melihat kesalahan ini ketika perangkat lunak Core AWS IoT Greengrass tidak mulai. Buka `group.json` file (terletak di `/{{greengrass-root}}/ggc/deployment/group`), ganti konten file dengan objek JSON kosong (`{}`), dan jalankan perintah berikut untuk meluncurkan AWS IoT Greengrass:

```
cd /greengrass/ggc/core/
sudo ./greengrassd start
```

Kemudian ikuti langkah-langkah di [Untuk cache pesan di penyimpanan lokal](gg-core.md#configure-local-storage-cache) prosedur. Untuk `GGCloudSpooler` fungsi, pastikan untuk menentukan `GG_CONFIG_MAX_SIZE_BYTES` nilai yang lebih dari atau sama dengan 262144.

 

### Kesalahan: [KESALAHAN]-kesalahan olahpesan cloud: Terjadi kesalahan ketika mencoba menerbitkan pesan. {"errorString": "timed out operasi"}
<a name="troubleshoot-mqtt-operation-timed-out"></a>

**Solusi:** Anda mungkin melihat kesalahan ini di `GGCloudSpooler.log` ketika Greengrass core tidak dapat mengirim pesan MQTT ke AWS IoT Core. Hal ini dapat terjadi jika lingkungan core memiliki bandwidth terbatas dan latency tinggi. Jika Anda menjalankan AWS IoT Greengrass v1.10.2 atau yang lebih baru, coba tingkatkan `mqttOperationTimeout` nilainya di file [config.json](gg-core.md#config-json). Jika properti tidak hadir, tambahkan nilai ke `coreThing` Objek. Contoh:

```
{
  "coreThing": {
    "mqttOperationTimeout": 10,
    "caPath": "root-ca.pem",
    "certPath": "{{hash}}.cert.pem",
    "keyPath": "{{hash}}.private.key",
    ...
  },
  ...
}
```

Nilai default adalah `5` dan nilai minimum adalah `5`.

 

### <version>Kesalahan: container\_linux.go: 344: memulai proses kontainer menyebabkan “process\_linux.go:424: container init caused\\" rootfs\_linux.go:64: mounting\\\\\\”///\_ipc.sock: izin ditolak\\\\\\ "\\"”. greengrass/ggc/socket/greengrass\_ipc.sock\\\\\\" to rootfs \\\\\\"/greengrass/ggc/packages rootfs/merged\\\\\\" at \\\\\\"/greengrass\_ipc.sock\\\\\\" caused \\\\\\"stat /greengrass/ggc/socket/greengrass
<a name="troubleshoot-umask-permission"></a>

**Solusi:** Anda mungkin melihat kesalahan ini `runtime.log` saat perangkat lunak AWS IoT Greengrass Core tidak dimulai. Hal ini terjadi jika `umask` lebih tinggi dari `0022`. Untuk mengatasi masalah ini, Anda harus mengatur `umask` ke `0022` atau lebih rendah. Nilai `0022` memberikan semua orang izin baca ke file baru secara default.

 

### error: Greengrass daemon berjalan dengan PID: <process-id>. Beberapa komponen sistem gagal untuk mulai. Periksa 'runtime.catatan' untuk error.
<a name="troubleshoot-system-components"></a>

**Solusi:** Anda mungkin melihat kesalahan ini ketika perangkat lunak Core AWS IoT Greengrass tidak mulai. Periksa `runtime.log` dan `crash.log` untuk informasi error spesifik. Untuk informasi selengkapnya, lihat [Pemecahan masalah dengan catatan](#troubleshooting-logs).

 

### Bayangan perangkat tidak sinkron dengan cloud.
<a name="troubleshoot-shadow-sync"></a>

**Solusi:** Pastikan bahwa AWS IoT Greengrass memiliki izin `iot:UpdateThingShadow` dan `iot:GetThingShadow` tindakan dalam peran layanan [Greengrass](service-role.md). Jika peran layanan menggunakan `AWSGreengrassResourceAccessRolePolicy` kebijakan terkelola, izin ini disertakan secara default.

Lihat [Memecahkan masalah timeout sinkronisasi bayangan](#troubleshooting-shadow-sync).

 

### ERROR: tidak dapat menerima koneksi TCP. menerima tcp [::]:8000 accept4: terlalu banyak file terbuka.
<a name="troubleshoot-file-descriptor-limit"></a>

**Solusi:** Anda mungkin melihat kesalahan ini di `greengrassd` output skrip. Hal ini dapat terjadi jika batas deskriptor file untuk perangkat lunak AWS IoT Greengrass Core telah mencapai ambang batas dan harus ditingkatkan.

Gunakan perintah berikut dan kemudian restart perangkat lunak AWS IoT Greengrass Core.

```
ulimit -n 2048
```

**catatan**  
Dalam contoh ini, batas meningkat menjadi 2048. Pilih nilai yang sesuai untuk kasus penggunaan Anda.

 

### Error: error eksekusi waktu aktif: tidak dapat memulai kontainer lambda. container\_linux.go: 259: memulai proses kontainer disebabkan "process\_linux.go:345: container init disebabkan\\"rootfs\_linux.go:50: mempersiapkan rootfs disebabkan \\\\\\ "izin ditolak\\\\\\"\\"".
<a name="troubleshoot-execute-permissions"></a>

**Solusi:** Instal AWS IoT Greengrass langsung di bawah direktori root, atau pastikan direktori tempat perangkat lunak AWS IoT Greengrass Core diinstal dan direktori induknya memiliki `execute` izin untuk semua orang.

 

### Peringatan: [PERINGATAN] - [5] GK Remote: Kesalahan mengambil data kunci publik: ErrPrincipalNotConfigured: kunci pribadi untuk tidak MqttCertificate disetel.
<a name="troubleshoot-mqttcertificate-warning"></a>

**Solusi:** AWS IoT Greengrass menggunakan handler umum untuk memvalidasi properti semua prinsip keamanan. Peringatan ini di `runtime.log` diharapkan kecuali Anda menentukan kunci pribadi khusus untuk server MQTT lokal. Untuk informasi selengkapnya, lihat [AWS IoT Greengrass prinsip keamanan inti](gg-sec.md#gg-principals).

 

### <account-id><role-name><region>Kesalahan: Izin ditolak saat mencoba menggunakan peran arn:aws:iam: ::role/ untuk mengakses url s3 https://-greengrass-updates.s3. <region><architecture><distribution-version>.amazonaws.com/core/ /greengrass-core- .tar.gz.
<a name="troubleshoot-ota-region-access"></a>

**Solusi:** Anda mungkin melihat kesalahan ini ketika pembaruan over-the-air (OTA) gagal. Dalam kebijakan peran signer, tambahkan target Wilayah AWS sebagai `Resource`. Peran penandatangan ini digunakan untuk presign URL S3 untuk pembaruan perangkat lunak. AWS IoT Greengrass Untuk informasi selengkapnya, lihat. [Peran signer URL S3](core-ota-update.md#s3-url-signer-role).

 

### AWS IoT Greengrass Inti dikonfigurasi untuk menggunakan [proxy jaringan](gg-core.md#alpn-network-proxy) dan fungsi Lambda Anda tidak dapat membuat koneksi keluar.
<a name="troubleshoot-lambda-proxy-network-connections"></a>

**Solusi:** Tergantung pada waktu aktif dan executable yang digunakan oleh fungsi Lambda untuk membuat koneksi, Anda mungkin juga menerima error timeout koneksi. Pastikan fungsi Lambda Anda menggunakan konfigurasi proxy yang sesuai untuk terhubung melalui proxy jaringan. AWS IoT Greengrass meneruskan konfigurasi proxy ke fungsi Lambda yang ditentukan pengguna melalui variabel`http_proxy`,`https_proxy`, dan lingkungan. `no_proxy` Mereka dapat diakses seperti yang ditunjukkan dalam potongan Python berikut.

```
import os
print(os.environ['http_proxy'])
```

Gunakan kasus yang sama seperti variabel didefinisikan dalam lingkungan Anda, misalnya, semua huruf kecil `http_proxy` atau semua huruf besar `HTTP_PROXY`. Untuk variabel-variabel ini, AWS IoT Greengrass mendukung keduanya.

**catatan**  
Perpustakaan yang paling umum digunakan untuk membuat koneksi (seperti boto3 atau cURL dan paket `requests` python) menggunakan variabel lingkungan ini secara default.

 

### Core adalah dalam loop connect-disconnect yang tak terbatas. File runtime.log berisi serangkaian kontinyu entri menghubungkan dan memutuskan.
<a name="config-client-id"></a>

**Solusi:** Hal ini dapat terjadi ketika perangkat lain hard-coded untuk menggunakan nama hal core sebagai ID klien untuk koneksi MQTT ke AWS IoT. Koneksi simultan dalam hal yang sama Wilayah AWS dan Akun AWS harus menggunakan klien IDs unik. Secara default, core menggunakan nama hal core yang sama sebagai ID klien untuk koneksi ini.

Untuk mengatasi masalah ini, Anda dapat mengubah ID klien yang digunakan oleh perangkat lain untuk sambungan (disarankan) atau menimpa nilai default untuk core.

**Untuk menimpa ID klien default untuk perangkat core**

1. Jalankan perintah berikut untuk menghentikan Greengrass daemon:

   ```
   cd /{{greengrass-root}}/ggc/core/
   sudo ./greengrassd stop
   ```

1. Buka `{{greengrass-root}}/config/config.json` untuk diedit sebagai pengguna su.

1. Di `coreThing` objek, tambahkan `coreClientId` properti, dan atur nilai untuk ID klien khusus Anda. Nilainya harus antara 1 sampai 128 karakter. Itu harus unik dalam arus Wilayah AWS untuk Akun AWS.

   ```
   "coreClientId": "MyCustomClientId"
   ```

1. Mulai daemon.

   ```
   cd /{{greengrass-root}}/ggc/core/
   sudo ./greengrassd start
   ```

 

### Error: tidak dapat memulai kontainer lambda. container\_linux.go:259: memulai proses kontainer disebabkan "process\_linux.go:345: container init disebabkan \\"rootfs\_linux.go: 62: mounting\\\\\\ "proc\\\\\\" to rootfs\\\\\\"
<a name="troubleshoot-mount-proc-lambda-container"></a>

**Solusi:** Pada beberapa platform, Anda mungkin melihat kesalahan ini `runtime.log` saat AWS IoT Greengrass mencoba memasang sistem `/proc` file untuk membuat wadah Lambda. Atau, Anda mungkin melihat kesalahan serupa, seperti `operation not permitted` atau `EPERM`. Error ini dapat terjadi bahkan jika pengujian berjalan pada platform oleh dependensi checker skrip lulus.

Cobalah salah satu solusi berikut:
+ Aktifkan `CONFIG_DEVPTS_MULTIPLE_INSTANCES` opsi di kernel Linux.
+ Set `/proc` opsi mount pada host untuk `rw,relatim` saja.
+ Upgrade kernel Linux menjadi 4.9 atau yang lebih baru.

**catatan**  
Masalah ini tidak terkait dengan pemasangan `/proc` untuk akses sumber daya lokal.

 

### [ERROR]-error ekseskusi waktu aktif: tidak dapat memulai kontainer lambda. {"errorString": "gagal menginisialisasi pemasangan kontainer: gagal untuk menutupi root greengrass di overlay dir atas: gagal membuat perangkat mask pada direktori <ggc-path>: file ada"}
<a name="troubleshoot-usr-access-root"></a>

**Solusi:** Anda mungkin melihat kesalahan ini di runtime.catatan saat deployment gagal. Kesalahan ini terjadi jika fungsi Lambda dalam AWS IoT Greengrass grup tidak dapat mengakses `/usr` direktori dalam sistem file inti.

Untuk mengatasi masalah ini, tambahkan sumber daya volume lokal ke grup dan kemudian men-deploy grup. Sumber daya ini harus:
+ Tentukan `/usr` sebagai **Jalur sumber** dan **Jalur tujuan**.
+ Secara otomatis menambahkan izin grup OS dari grup Linux yang memiliki sumber daya.
+ Berafiliasi dengan fungsi Lambda dan mengizinkan akses hanya baca.

 

### [ERROR] -Penerapan gagal. {"deploymentID”: <deployment-id>"“, “errorString”: “proses pengujian kontainer dengan <pid>pid gagal: status proses kontainer: status keluar 1"}
<a name="troubleshoot-usr-access-root-canary"></a>

**Solusi:** Anda mungkin melihat kesalahan ini di runtime.catatan saat deployment gagal. Kesalahan ini terjadi jika fungsi Lambda dalam AWS IoT Greengrass grup tidak dapat mengakses `/usr` direktori dalam sistem file inti.

Anda dapat mengkonfirmasi bahwa ini adalah kasus dengan memeriksa `GGCanary.log` untuk error tambahan. Jika fungsi Lambda tidak dapat mengakses `/usr` direktori, `GGCanary.log` akan berisi error berikut:

```
[ERROR]-standard_init_linux.go:207: exec user process caused "no such file or directory"
```

Untuk mengatasi masalah ini, tambahkan sumber daya volume lokal ke grup dan kemudian men-deploy grup. Sumber daya ini harus:
+ Tentukan `/usr` sebagai **Jalur sumber** dan **Jalur tujuan**.
+ Secara otomatis menambahkan izin grup OS dari grup Linux yang memiliki sumber daya.
+ Berafiliasi dengan fungsi Lambda dan mengizinkan akses hanya baca.

 

### Kesalahan: [ERROR] -kesalahan eksekusi runtime: tidak dapat memulai wadah lambda. <ggc-version><ggc-version>{"errorString”: “gagal menginisialisasi mount container: gagal membuat overlay fs untuk container: mounting overlay di /greengrass/ggc/packages/<ggc-version>/rootfs/merged failed: failed to mount with args source=\\"no\_source\\ "dest=\\"/greengrass/ggc/packages/<ggc-version>/rootfs/merged\\" fstype=\\"overlay\\" flags=\\"0\\" data=\\"lowerdir=/greengrass/ggc/packages/<ggc-version>/dns:/,upperdir=/greengrass/ggc/packages/<ggc-version>/rootfs/upper,workdir=/greengrass/ggc/packages/<ggc-version>/rootfs/work\\": terlalu banyak level tautan simbolis "}
<a name="troubleshoot-symbolic-links"></a>

**Solusi:** Anda mungkin melihat kesalahan ini di `runtime.log` file saat perangkat lunak AWS IoT Greengrass Core tidak dimulai. Masalah ini mungkin lebih umum pada sistem operasi Debian.

Untuk mengatasi masalah ini, lakukan solusi berikut:

1. Tingkatkan perangkat lunak AWS IoT Greengrass Core ke v1.9.3 atau yang lebih baru. Ini akan secara otomatis mengatasi masalah ini.

1. Jika Anda masih mendapatkan kesalahan ini setelah Anda memutakhirkan perangkat lunak AWS IoT Greengrass Core, setel `system.useOverlayWithTmpfs` properti ke `true` dalam file [config.json](gg-core.md#config-json).   
**Example Contoh**  

   ```
   {
     "system": {
       "useOverlayWithTmpfs": true
     },
     "coreThing": {
       "caPath": "root-ca.pem",
       "certPath": "cloud.pem.crt",
       "keyPath": "cloud.pem.key",
       ...
     },
     ...
   }
   ```

**catatan**  
Versi perangkat lunak AWS IoT Greengrass Core Anda ditampilkan dalam pesan kesalahan. Untuk menemukan versi kernel Linux Anda, jalankan `uname -r`.

 

### Error: [DEBUG]-Gagal untuk mendapatkan rute. Membuang pesan.
<a name="troubleshoot-failed-to-get-routes"></a>

**Solusi:** Periksa langganan di grup Anda dan pastikan bahwa langganan tercantum dalam `[DEBUG]` pesan yang ada. 

 

### Error: [Errno 24] Terlalu banyak membuka <lambda-function>, [Errno 24] Terlalu banyak membuka file
<a name="troubleshoot-too-many-open-files"></a>

**Solusi:** Anda mungkin melihat kesalahan ini di berkas log fungsi Lambda Anda jika fungsi instantiates `StreamManagerClient` dalam fungsi handler. Kami merekomendasikan bahwa Anda membuat klien di luar handler. Untuk informasi selengkapnya, lihat [Gunakan StreamManagerClient untuk bekerja dengan aliran](work-with-streams.md). 

 

### Kesalahan: server ds gagal mulai mendengarkan soket: dengarkan <ggc-path>ggc/socket/greengrassunix/\_ipc.sock: bind: argumen tidak valid
<a name="troubleshoot-install-path-too-long"></a>

**Solusi:** Anda mungkin melihat kesalahan ini ketika perangkat lunak AWS IoT Greengrass Core tidak dimulai. Kesalahan ini terjadi ketika perangkat lunak AWS IoT Greengrass Core diinstal ke folder dengan jalur file yang panjang. Instal ulang perangkat lunak AWS IoT Greengrass Core ke folder dengan jalur file yang memiliki kurang dari 79 byte, jika Anda tidak menggunakan [direktori tulis](gg-core.md#write-directory), atau 83 byte, jika Anda menggunakan direktori tulis.

### [INFO] (Mesin Fotokopi) aws.greengrass. StreamManager: stdout. Disebabkan oleh: com.fasterxml.jackson.databind. JsonMappingException: Instan melebihi minimum atau maksimum instan
<a name="troubleshoot-stream-manager-instant-exceeds-maximun-minimum"></a>

Saat Anda memutakhirkan perangkat lunak AWS IoT Greengrass inti ke v1.11.3, Anda mungkin melihat kesalahan berikut di log pengelola aliran jika pengelola aliran 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 menggunakan versi perangkat lunak AWS IoT Greengrass inti yang lebih lama dari v1.11.3, dan Anda ingin meningkatkan ke versi yang lebih baru, gunakan pembaruan OTA untuk meningkatkan ke v1.11.4. 

### GPG error: https://dnw9lb6lzp2d8.cloudfront.net stable InRelease: The following signatures were invalid: EXPKEYSIG 68D644ABD2327D47 AWS Greengrass Master Key
<a name="troubleshoot-apt-repository-invalid-signature"></a>

Ketika Anda menjalankan perangkat `apt update` di mana Anda [menginstal perangkat lunak AWS IoT Greengrass inti dari repositori APT](install-ggc.md#ggc-package-manager), Anda mungkin melihat kesalahan berikut.

```
Err:4 https://dnw9lb6lzp2d8.cloudfront.net stable InRelease
  The following signatures were invalid: EXPKEYSIG 68D644ABD2327D47 AWS Greengrass Master Key
Reading package lists... Done                             
W: GPG error: https://dnw9lb6lzp2d8.cloudfront.net stable InRelease: The following signatures were invalid: EXPKEYSIG 68D644ABD2327D47 AWS Greengrass Master Key
```

Kesalahan ini terjadi karena AWS IoT Greengrass tidak lagi menawarkan opsi untuk menginstal atau memperbarui perangkat lunak AWS IoT Greengrass inti dari repositori APT. Agar berhasil dijalankan`apt update`, hapus AWS IoT Greengrass repositori dari daftar sumber perangkat.

```
sudo rm /etc/apt/sources.list.d/greengrass.list 
sudo apt update
```

## Masalah deployment
<a name="gg-troubleshooting-deploymentissues"></a>

Gunakan informasi berikut untuk membantu memecahkan masalah deployment.

**Topics**
+ [Deployment Anda saat ini tidak bekerja dan Anda ingin kembali ke deployment kerja sebelumnya.](#troubleshoot-revert-deployment)
+ [Anda melihat 403 error terlarang pada deployment di catatan.](#troubleshoot-forbidden-deployment)
+ [Terjadi ConcurrentDeployment kesalahan saat Anda menjalankan perintah create-deployment untuk pertama kalinya.](#troubleshoot-concurrent-deployment)
+ [Error: Greengrass tidak berwenang untuk menganggap peran layanan yang terkait dengan akun ini, atau error: Gagal: peran layanan TES tidak terkait dengan akun ini.](#troubleshoot-assume-service-role)
+ [Error: tidak dapat menjalankan langkah pengunduhan dalam deployment. error saat mengunduh: error saat mengunduh file definisi Grup:... x509: sertifikat telah kedaluwarsa atau belum valid](#troubleshoot-x509-certificate-expired)
+ [Deployment tidak selesai.](#troubleshoot-stuck-deployment)
+ [Kesalahan: Tidak dapat menemukan executable java atau java8, atau kesalahan: Penerapan <deployment-id>tipe NewDeployment untuk grup <group-id>gagal kesalahan: pekerja dengan <worker-id>gagal menginisialisasi dengan alasan Versi Java yang diinstal harus lebih besar dari atau sama dengan 8](#java-8-runtime-requirement)
+ [Deployment tidak selesai, dan runtime.catatan berisi beberapa entri "tunggu 1 detik untuk kontainer untuk berhenti".](#troubleshoot-wait-container-stop)
+ [Deployment tidak selesai, dan `runtime.log` berisi "[KESALAHAN]-Greengrass deployment error: gagal melaporkan status deployment kembali ke cloud {"deploymentId": "<deployment-id>", "errorString": "Failed to initiate PUT, endpoint: https://<deployment-status>, error: Put https://<deployment-status>: proxyconnect tcp: x509: certificate signed by unknown authority"}"](#troubleshoot-failed-to-report-deployment-status)
+ [<path>Kesalahan: <deployment-id>Penerapan tipe NewDeployment untuk grup <group-id>gagal kesalahan: Kesalahan saat memproses. konfigurasi grup tidak valid: 112 atau [119 0] tidak memiliki izin rw pada file:.](#troubleshoot-access-permissions-deployment)
+ [Kesalahan: < list-of-function-arns > dikonfigurasi untuk berjalan sebagai root tetapi Greengrass tidak dikonfigurasi untuk menjalankan fungsi Lambda dengan izin root.](#troubleshoot-root-permissions-lambda)
+ [Kesalahan: <deployment-id>Penerapan tipe NewDeployment untuk grup <group-id>gagal kesalahan: Kesalahan penerapan Greengrass: tidak dapat menjalankan langkah unduhan dalam penerapan. kesalahan saat memproses: tidak dapat memuat file grup yang diunduh: tidak dapat menemukan UID berdasarkan nama pengguna, UserName: ggc\_user: user: unknown user ggc\_user.](#troubleshoot-could-not-find-uid)
+ [Error: [ERROR]-error eksekusi waktu aktif: tidak dapat meluncurkan kontainer lambda. {"ErrorString": "gagal menginisialisasi pemasangan kontainer: gagal untuk menutupi root greengrass di overlay dir atas: gagal membuat perangkat mask pada direktori <ggc-path>: file ada"}](#troubleshoot-failed-to-initialize-container-mounts)
+ [Kesalahan: Penerapan <deployment-id>tipe NewDeployment untuk grup <group-id>gagal kesalahan: proses mulai gagal: container\_linux.go: 259: memulai proses kontainer menyebabkan “process\_linux.go: 250: menjalankan exec setns process for init caused\\" wait: no child processes\\ "”.](#troubleshoot-wait-child-processes)
+ [<host-prefix>Kesalahan: [PERINGATAN] -MQTT [klien] panggil tcp: lookup -ats.iot. <region>.amazonaws.com: tidak ada host seperti itu... [ERROR]-Greengrass deployment error: gagal melaporkan status deployment kembali ke cloud ... net/http: permintaan dibatalkan saat menunggu koneksi (Client.Timeout terlampaui saat menunggu header)](#troubleshoot-dnssec-validation-failed)

 

### Deployment Anda saat ini tidak bekerja dan Anda ingin kembali ke deployment kerja sebelumnya.
<a name="troubleshoot-revert-deployment"></a>

**Solusi:** Gunakan AWS IoT konsol atau AWS IoT Greengrass API untuk menerapkan ulang penerapan kerja sebelumnya. Ini men-deploy versi grup yang sesuai ke perangkat core Anda.

**Untuk men-deploy ulang deployment (konsol)**

1. Pada halaman konfigurasi grup, pilih tab **Deployment.** Halaman ini menampilkan riwayat penerapan untuk grup, termasuk tanggal dan waktu, versi grup, dan status setiap upaya deployment.

1. Temukan baris yang berisi deployment Anda ingin men-deploy ulang. **Pilih penyebaran yang ingin Anda gunakan kembali dan pilih Redeploy.**  
![Halaman deployment menampilkan tindakan Re-Deploy untuk deployment.](http://docs.aws.amazon.com/id_id/greengrass/v1/developerguide/images/console-group-redeployment.png)

**Untuk men-deploy ulang deployment (CLI)**

1. Gunakan [ListDeployments](https://docs.aws.amazon.com/greengrass/v1/apireference/listdeployments-get.html)untuk menemukan ID penerapan yang ingin Anda gunakan kembali. Contoh:

   ```
   aws greengrass list-deployments --group-id 74d0b623-c2f2-4cad-9acc-ef92f61fcaf7
   ```

   Perintah mengembalikan daftar deployment untuk grup.

   ```
   {
       "Deployments": [
           {
               "DeploymentId": "8d179428-f617-4a77-8a0c-3d61fb8446a6",
               "DeploymentType": "NewDeployment",
               "GroupArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/74d0b623-c2f2-4cad-9acc-ef92f61fcaf7/versions/8dd1d899-4ac9-4f5d-afe4-22de086efc62",
               "CreatedAt": "2019-07-01T20:56:49.641Z"
           },
           {
               "DeploymentId": "f8e4c455-8ac4-453a-8252-512dc3e9c596",
               "DeploymentType": "NewDeployment",
               "GroupArn": "arn:aws:greengrass:us-west-2::123456789012:/greengrass/groups/74d0b623-c2f2-4cad-9acc-ef92f61fcaf7/versions/4ad66e5d-3808-446b-940a-b1a788898382",
               "CreatedAt": "2019-07-01T20:41:47.048Z"
           },
           {
               "DeploymentId": "e4aca044-bbd8-41b4-b697-930ca7c40f3e",
               "DeploymentType": "NewDeployment",
               "GroupArn": "arn:aws:greengrass:us-west-2::123456789012:/greengrass/groups/74d0b623-c2f2-4cad-9acc-ef92f61fcaf7/versions/1f3870b6-850e-4c97-8018-c872e17b235b",
               "CreatedAt": "2019-06-18T15:16:02.965Z"
           }
       ]
   }
   ```
**catatan**  
 AWS CLI Perintah ini menggunakan nilai contoh untuk grup dan ID penyebaran. Ketika Anda menjalankan perintah, pastikan untuk mengganti nilai contoh.

1. Gunakan [CreateDeployment](https://docs.aws.amazon.com/greengrass/v1/apireference/createdeployment-post.html)untuk menerapkan kembali penyebaran target. Atur jenis deployment ke `Redeployment`. Contoh:

   ```
   aws greengrass create-deployment --deployment-type Redeployment \ 
     --group-id 74d0b623-c2f2-4cad-9acc-ef92f61fcaf7 \
     --deployment-id f8e4c455-8ac4-453a-8252-512dc3e9c596
   ```

   Perintah mengembalikan ARN dan ID dari deployment baru.

   ```
   {
       "DeploymentId": "f9ed02b7-c28e-4df6-83b1-e9553ddd0fc2",
       "DeploymentArn": "arn:aws:greengrass:us-west-2::123456789012:/greengrass/groups/74d0b623-c2f2-4cad-9acc-ef92f61fcaf7/deployments/f9ed02b7-c28e-4df6-83b1-e9553ddd0fc2"
   }
   ```

1. Gunakan [GetDeploymentStatus](https://docs.aws.amazon.com/greengrass/v1/apireference/getdeploymentstatus-get.html)untuk mendapatkan status penyebaran.

 

### Anda melihat 403 error terlarang pada deployment di catatan.
<a name="troubleshoot-forbidden-deployment"></a>

**Solusi:** Pastikan kebijakan AWS IoT Greengrass inti di cloud termasuk `"greengrass:*"` sebagai tindakan yang diizinkan.

 

### Terjadi ConcurrentDeployment kesalahan saat Anda menjalankan perintah create-deployment untuk pertama kalinya.
<a name="troubleshoot-concurrent-deployment"></a>

**Solusi:** Sebuah deployment mungkin sedang berjalan. Anda dapat menjalankan [get-deployment-status](https://docs.aws.amazon.com/greengrass/v1/apireference/getdeploymentstatus-get.html)untuk melihat apakah penerapan telah dibuat. Jika tidak, coba membuat deployment lagi.

 

### Error: Greengrass tidak berwenang untuk menganggap peran layanan yang terkait dengan akun ini, atau error: Gagal: peran layanan TES tidak terkait dengan akun ini.
<a name="troubleshoot-assume-service-role"></a>

**Solusi:** Anda mungkin melihat kesalahan ini ketika deployment gagal. Periksa apakah peran layanan Greengrass dikaitkan dengan Akun AWS Anda saat ini Wilayah AWS. Untuk informasi selengkapnya, lihat [Mengelola peran layanan Greengrass (CLI)](service-role.md#manage-service-role-cli) atau [Mengelola peran layanan Greengrass (konsol)](service-role.md#manage-service-role-console).

 

### Error: tidak dapat menjalankan langkah pengunduhan dalam deployment. error saat mengunduh: error saat mengunduh file definisi Grup:... x509: sertifikat telah kedaluwarsa atau belum valid
<a name="troubleshoot-x509-certificate-expired"></a>

**Solusi:** Anda mungkin melihat kesalahan ini di `runtime.log` ketika deployment gagal. Jika Anda menerima `Deployment failed` error yang berisi pesan `x509: certificate has expired or is not yet valid`, periksa jam perangkat. Sertifikat TLS dan X.509 memberikan dasar yang aman untuk membangun sistem IoT, tetapi mereka memerlukan waktu yang akurat pada server dan klien. Perangkat IoT harus memiliki waktu yang tepat (dalam 15 menit) sebelum mereka mencoba untuk terhubung ke AWS IoT Greengrass atau layanan TLS lain yang menggunakan sertifikat server. Untuk informasi selengkapnya, lihat [Menggunakan Waktu Perangkat untuk Memvalidasi Sertifikat AWS IoT Server](https://aws.amazon.com/blogs/iot/using-device-time-to-validate-aws-iot-server-certificates/) *di Internet of Things di Blog AWS Resmi*.

 

### Deployment tidak selesai.
<a name="troubleshoot-stuck-deployment"></a>

**Solusi:** Lakukan hal berikut:
+ Pastikan AWS IoT Greengrass daemon berjalan di perangkat inti Anda. Di terminal perangkat core Anda, jalankan perintah berikut untuk memeriksa apakah daemon sedang berjalan dan memulainya, jika diperlukan.

  1. Untuk memeriksa apakah daemon sedang berjalan:

     ```
     ps aux | grep -E 'greengrass.*daemon'
     ```

     Jika outputnya berisi entri `root` untuk `/greengrass/ggc/packages/1.11.6/bin/daemon`, maka daemon sedang berjalan.

     Versi di jalur tergantung pada versi perangkat lunak AWS IoT Greengrass Core yang diinstal pada perangkat inti Anda.

  1. Untuk mulai daemon:

     ```
     cd /greengrass/ggc/core/
     sudo ./greengrassd start
     ```
+ Pastikan bahwa perangkat core terhubung dan titik akhir koneksi core terkonfigurasi dengan benar.

 

### Kesalahan: Tidak dapat menemukan executable java atau java8, atau kesalahan: Penerapan <deployment-id>tipe NewDeployment untuk grup <group-id>gagal kesalahan: pekerja dengan <worker-id>gagal menginisialisasi dengan alasan Versi Java yang diinstal harus lebih besar dari atau sama dengan 8
<a name="java-8-runtime-requirement"></a>

**Solusi:** Jika pengelola aliran diaktifkan untuk AWS IoT Greengrass core, Anda harus menginstal waktu aktif Java 8 pada perangkat core sebelum Anda men-deploy grup. Untuk informasi selengkapnya, lihat [persyaratan](stream-manager.md#stream-manager-requirements) untuk pengelola aliran. Pengelola aliran diaktifkan secara default ketika Anda menggunakan **Pembuatan Grup default** alur kerja di konsol AWS IoT tersebut untuk membuat grup.

Atau, nonaktifkan pengelola aliran dan kemudian men-deploy grup. Untuk informasi selengkapnya, lihat [Konfigurasikan pengaturan pengelola pengaliran (konsol)](configure-stream-manager.md#configure-stream-manager-console).

 

### Deployment tidak selesai, dan runtime.catatan berisi beberapa entri "tunggu 1 detik untuk kontainer untuk berhenti".
<a name="troubleshoot-wait-container-stop"></a>

**Solusi:** Jalankan perintah berikut di terminal perangkat inti Anda untuk memulai ulang AWS IoT Greengrass daemon.

```
cd /greengrass/ggc/core/
sudo ./greengrassd stop
sudo ./greengrassd start
```

 

### Deployment tidak selesai, dan `runtime.log` berisi "[KESALAHAN]-Greengrass deployment error: gagal melaporkan status deployment kembali ke cloud {"deploymentId": "<deployment-id>", "errorString": "Failed to initiate PUT, endpoint: https://<deployment-status>, error: Put https://<deployment-status>: proxyconnect tcp: x509: certificate signed by unknown authority"}"
<a name="troubleshoot-failed-to-report-deployment-status"></a>

**Solusi:** Anda mungkin melihat kesalahan ini di `runtime.log` ketika Greengrass core dikonfigurasi untuk menggunakan koneksi proksi HTTPS dan rantai sertifikat server proksi tidak dipercaya pada sistem. Untuk mencoba mengatasi masalah ini, tambahkan rantai sertifikat ke root sertifikat CA. Greengrass core menambahkan sertifikat dari file ini ke kolam sertifikat yang digunakan untuk otentikasi koneksi TLS di HTTPS dan MQTT dengan AWS IoT Greengrass.

Contoh berikut menunjukkan sertifikat CA server proksi ditambahkan ke file root sertifikat CA:

```
# My proxy CA
-----BEGIN CERTIFICATE-----
MIIEFTCCAv2gAwIQWgIVAMHSAzWG/5YVRYtRQOxXUTEpHuEmApzGCSqGSIb3DQEK
\nCwUAhuL9MQswCQwJVUzEPMAVUzEYMBYGA1UECgwP1hem9uLmNvbSBJbmMuMRww
... {{content of proxy CA certificate}} ...
+vHIRlt0e5JAm5\noTIZGoFbK82A0/nO7f/t5PSIDAim9V3Gc3pSXxCCAQoFYnui
GaPUlGk1gCE84a0X\n7Rp/lND/PuMZ/s8YjlkY2NmYmNjMCAXDTE5MTEyN2cM216
gJMIADggEPADf2/m45hzEXAMPLE=
-----END CERTIFICATE-----

# Amazon Root CA 1
-----BEGIN CERTIFICATE-----
MIIDQTCCAimgF6AwIBAgITBmyfz/5mjAo54vB4ikPmljZKyjANJmApzyMZFo6qBg
ADA5MQswCQYDVQQGEwJVUzEPMA0tMVT8QtPHRh8jrdkGA1UEChMGDV3QQDExBBKW
... {{content of root CA certificate}} ...
o/ufQJQWUCyziar1hem9uMRkwFwYVPSHCb2XV4cdFyQzR1KldZwgJcIQ6XUDgHaa
5MsI+yMRQ+hDaXJiobldXgjUka642M4UwtBV8oK2xJNDd2ZhwLnoQdeXeGADKkpy
rqXRfKoQnoZsG4q5WTP46EXAMPLE
-----END CERTIFICATE-----
```

Secara default, file root sertifikat CA terletak di `/{{greengrass-root}}/certs/root.ca.pem`. Untuk menemukan lokasi di perangkat core, periksa properti `crypto.caPath` di [config.json](gg-core.md#config-json).

**catatan**  
{{greengrass-root}}mewakili jalur di mana perangkat lunak AWS IoT Greengrass Core diinstal pada perangkat Anda. Biasanya, adalah direktori `/greengrass` ini.

 

### <path>Kesalahan: <deployment-id>Penerapan tipe NewDeployment untuk grup <group-id>gagal kesalahan: Kesalahan saat memproses. konfigurasi grup tidak valid: 112 atau [119 0] tidak memiliki izin rw pada file:.
<a name="troubleshoot-access-permissions-deployment"></a>

**Solusi:** Pastikan bahwa grup pemilik {{<path>}} direktori telah membaca dan menulis izin ke direktori.

 

### Kesalahan: < list-of-function-arns > dikonfigurasi untuk berjalan sebagai root tetapi Greengrass tidak dikonfigurasi untuk menjalankan fungsi Lambda dengan izin root.
<a name="troubleshoot-root-permissions-lambda"></a>

**Solusi:** Anda mungkin melihat kesalahan ini di `runtime.log` ketika deployment gagal. Pastikan Anda telah mengonfigurasi AWS IoT Greengrass untuk memungkinkan fungsi Lambda berjalan dengan izin root. Baik mengubah nilai `allowFunctionsToRunAsRoot` masuk `greengrass_root/config/config.json` ke `yes` atau mngubah fungsi Lambda agar berjalan sebagai pengguna/group lain. Untuk informasi selengkapnya, lihat [Menjalankan fungsi Lambda sebagai root](lambda-group-config.md#lambda-running-as-root).

 

### Kesalahan: <deployment-id>Penerapan tipe NewDeployment untuk grup <group-id>gagal kesalahan: Kesalahan penerapan Greengrass: tidak dapat menjalankan langkah unduhan dalam penerapan. kesalahan saat memproses: tidak dapat memuat file grup yang diunduh: tidak dapat menemukan UID berdasarkan nama pengguna, UserName: ggc\_user: user: unknown user ggc\_user.
<a name="troubleshoot-could-not-find-uid"></a>

**Solusi:** Jika [identitas akses default](lambda-group-config.md#lambda-access-identity-groupsettings) AWS IoT Greengrass grup menggunakan akun sistem standar, `ggc_user` pengguna dan `ggc_group` grup harus ada di perangkat. Untuk petunjuk yang menunjukkan cara menambahkan pengguna dan grup, lihat langkah [ini](setup-filter.rpi.md#add-ggc-user-ggc-group). Pastikan untuk memasukkan nama persis seperti yang ditunjukkan.

 

### Error: [ERROR]-error eksekusi waktu aktif: tidak dapat meluncurkan kontainer lambda. {"ErrorString": "gagal menginisialisasi pemasangan kontainer: gagal untuk menutupi root greengrass di overlay dir atas: gagal membuat perangkat mask pada direktori <ggc-path>: file ada"}
<a name="troubleshoot-failed-to-initialize-container-mounts"></a>

**Solusi:** Anda mungkin melihat kesalahan ini di `runtime.log` ketika deployment gagal. error ini terjadi jika fungsi Lambda dalam grup Greengrass tidak dapat mengakses direktori `/usr` dalam sistem file core. Untuk mengatasi masalah ini, tambahkan [sumber daya volume lokal](access-local-resources.md) ke grup dan kemudian men-deploy grup. Sumber daya harus:
+ Tentukan `/usr` sebagai **Jalur sumber** dan **Jalur tujuan**.
+ Secara otomatis menambahkan izin grup OS dari grup Linux yang memiliki sumber daya.
+ Berafiliasi dengan fungsi Lambda dan mengizinkan akses hanya baca.

 

### Kesalahan: Penerapan <deployment-id>tipe NewDeployment untuk grup <group-id>gagal kesalahan: proses mulai gagal: container\_linux.go: 259: memulai proses kontainer menyebabkan “process\_linux.go: 250: menjalankan exec setns process for init caused\\" wait: no child processes\\ "”.
<a name="troubleshoot-wait-child-processes"></a>

**Solusi:** Anda mungkin melihat kesalahan ini ketika deployment gagal. Coba lagi deployment.

 

### <host-prefix>Kesalahan: [PERINGATAN] -MQTT [klien] panggil tcp: lookup -ats.iot. <region>.amazonaws.com: tidak ada host seperti itu... [ERROR]-Greengrass deployment error: gagal melaporkan status deployment kembali ke cloud ... net/http: permintaan dibatalkan saat menunggu koneksi (Client.Timeout terlampaui saat menunggu header)
<a name="troubleshoot-dnssec-validation-failed"></a>

**Solusi:** Anda mungkin melihat kesalahan ini jika Anda menggunakan `systemd-resolved`, yang memungkinkan `DNSSEC` pengaturan secara default. Akibatnya, banyak domain publik tidak dikenali. Upaya untuk mencapai AWS IoT Greengrass titik akhir gagal menemukan host, sehingga penerapan Anda tetap dalam status. `In Progress`

Anda dapat menggunakan perintah berikut dan output untuk menguji masalah ini. Ganti {{region}} placeholder di endpoint dengan Anda. Wilayah AWS

```
$ ping greengrass-ats.iot.{{region}}.amazonaws.com
ping: greengrass-ats.iot.{{region}}.amazonaws.com: Name or service not known
```

```
$ systemd-resolve greengrass-ats.iot.{{region}}.amazonaws.com
greengrass-ats.iot.{{region}}.amazonaws.com: resolve call failed: DNSSEC validation failed: failed-auxiliary
```

Satu penyelesaian yang mungkin adalah menonaktifkan `DNSSEC`. Ketika `DNSSEC` adalah `false`, pencarian DNS tidak `DNSSEC` divalidasi. Untuk informasi selengkapnya, lihat masalah [masalah diketahui](https://github.com/systemd/systemd/issues/9867) untuk `systemd`.

1. Tambahkan `DNSSEC=false` ke `/etc/systemd/resolved.conf`.

1. Mulai ulang `systemd-resolved`.

Untuk informasi tentang `resolved.conf` dan `DNSSEC`, jalankan `man resolved.conf` di terminal Anda.

 

## Buat grup dan buat masalah fungsi
<a name="gg-troubleshooting-groupcreateissues"></a>

Gunakan informasi berikut untuk membantu memecahkan masalah dengan membuat AWS IoT Greengrass grup atau fungsi Greengrass Lambda.

**Topics**
+ [Kesalahan: Konfigurasi IsolationMode '' Anda untuk grup tidak valid.](#troubleshoot-invalid-isolation-mode-group)
+ [Kesalahan: Konfigurasi 'IsolationMode' Anda untuk fungsi dengan arn <function-arn>tidak valid.](#troubleshoot-isolation-mode-lambda)
+ [Kesalahan: MemorySize konfigurasi untuk fungsi dengan arn <function-arn>tidak diperbolehkan di IsolationMode =NoContainer.](#troubleshoot-lambda-memorysize-not-supported)
+ [Kesalahan: Akses konfigurasi Sysfs untuk fungsi dengan arn <function-arn>tidak diperbolehkan di =. IsolationMode NoContainer](#troubleshoot-sysfs-access-not-supported)
+ [Kesalahan: MemorySize konfigurasi untuk fungsi dengan arn <function-arn>diperlukan di IsolationMode =GreengrassContainer.](#troubleshoot-lambda-memorysize-required)
+ [Kesalahan: Fungsi <function-arn>mengacu pada sumber daya tipe <resource-type>yang tidak diperbolehkan di IsolationMode =NoContainer.](#troubleshoot-resource-access-not-supported)
+ [Error: Konfigurasi eksekusi untuk fungsi dengan arn <function-arn> tidak diizinkan.](#troubleshoot-execution-parameters-not-supported)

 

### Kesalahan: Konfigurasi IsolationMode '' Anda untuk grup tidak valid.
<a name="troubleshoot-invalid-isolation-mode-group"></a>

**Solusi:** error ini terjadi ketika `IsolationMode` nilai dalam `DefaultConfig` dari `function-definition-version` tidak didukung. Nilai yang didukung adalah `GreengrassContainer` dan `NoContainer`.

 

### Kesalahan: Konfigurasi 'IsolationMode' Anda untuk fungsi dengan arn <function-arn>tidak valid.
<a name="troubleshoot-isolation-mode-lambda"></a>

**Solusi:** error ini terjadi ketika `IsolationMode` nilai <function-arn> dalam `function-definition-version` tidak didukung. Nilai yang didukung adalah `GreengrassContainer` dan `NoContainer`.

 

### Kesalahan: MemorySize konfigurasi untuk fungsi dengan arn <function-arn>tidak diperbolehkan di IsolationMode =NoContainer.
<a name="troubleshoot-lambda-memorysize-not-supported"></a>

**Solusi:** error ini terjadi saat Anda menentukan `MemorySize` nilai dan Anda memilih untuk menjalankan tanpa kontainerisasi. Fungsi Lambda yang dijalankan tanpa kontainerisasi tidak dapat memiliki batas memori. Anda dapat menghapus batas atau Anda dapat mengubah fungsi Lambda untuk menjalankan di AWS IoT Greengrass kontainer.

 

### Kesalahan: Akses konfigurasi Sysfs untuk fungsi dengan arn <function-arn>tidak diperbolehkan di =. IsolationMode NoContainer
<a name="troubleshoot-sysfs-access-not-supported"></a>

**Solusi:** Error ini terjadi saat Anda menentukan `true` untuk `AccessSysfs` dan Anda memilih untuk menjalankan tanpa kontainerisasi. Fungsi Lambda berjalan tanpa containerization harus memiliki kode mereka diperbarui untuk mengakses sistem file secara langsung dan tidak dapat menggunakan `AccessSysfs`. Anda dapat menentukan nilai `false` for `AccessSysfs` atau Anda dapat mengubah fungsi Lambda untuk dijalankan dalam wadah. AWS IoT Greengrass 

 

### Kesalahan: MemorySize konfigurasi untuk fungsi dengan arn <function-arn>diperlukan di IsolationMode =GreengrassContainer.
<a name="troubleshoot-lambda-memorysize-required"></a>

**Solusi:** Kesalahan ini terjadi karena Anda tidak menentukan `MemorySize` batas untuk fungsi Lambda yang Anda jalankan dalam wadah. AWS IoT Greengrass Tentukan nilai `MemorySize` untuk mengatasi error.

 

### Kesalahan: Fungsi <function-arn>mengacu pada sumber daya tipe <resource-type>yang tidak diperbolehkan di IsolationMode =NoContainer.
<a name="troubleshoot-resource-access-not-supported"></a>

**Solusi:** Anda tidak dapat mengakses `Local.Device`, `Local.Volume`, `ML_Model.SageMaker.Job`, `ML_Model.S3_Object`, atau `S3_Object.Generic_Archive` jenis sumber daya ketika Anda menjalankan fungsi Lambda tanpa kontainerisasi. Jika Anda membutuhkan jenis sumber daya tersebut, Anda harus menjalankannya dalam AWS IoT Greengrass wadah. Anda juga dapat mengakses perangkat lokal secara langsung ketika berjalan tanpa kontainerisasi dengan mengubah kode di fungsi Lambda Anda.

 

### Error: Konfigurasi eksekusi untuk fungsi dengan arn <function-arn> tidak diizinkan.
<a name="troubleshoot-execution-parameters-not-supported"></a>

**Solusi:** Error ini terjadi saat Anda membuat fungsi sistem Lambda dengan `GGIPDetector` atau `GGCloudSpooler` dan Anda tentukan `IsolationMode` atau `RunAs` konfigurasi. Anda harus menghilangkan `Execution` parameter untuk sistem fungsi Lambda ini.

 

## Masalah Penemuan
<a name="gg-troubleshooting-discovery-issues"></a>

Gunakan informasi berikut untuk membantu memecahkan masalah dengan layanan AWS IoT Greengrass Discovery.

**Topics**
+ [Error: Perangkat adalah anggota dari terlalu banyak grup, perangkat mungkin tidak berada di lebih dari 10 grup](#troubleshoot-device-in-too-many-groups)

 

### Error: Perangkat adalah anggota dari terlalu banyak grup, perangkat mungkin tidak berada di lebih dari 10 grup
<a name="troubleshoot-device-in-too-many-groups"></a>

**Solusi:** Ini adalah batasan yang diketahui. [Perangkat klien](what-is-gg.md#greengrass-devices) dapat menjadi anggota hingga 10 grup.

 

## Masalah sumber daya machine learning
<a name="ml-resources-troubleshooting"></a>

Gunakan informasi berikut untuk membantu memecahkan masalah dengan sumber daya machine learning.

**Topics**
+ [MLModelPemilik Tidak Valid - GroupOwnerSetting disediakan dalam sumber daya model ML, tetapi GroupOwner atau GroupPermission tidak ada](#nocontainer-lambda-invalid-ml-model-owner)
+ [NoContainer fungsi tidak dapat mengonfigurasi izin saat melampirkan sumber daya Machine Learning. <function-arn>mengacu pada sumber daya Machine Learnin <resource-id>dengan izin <ro/rw> dalam kebijakan akses sumber daya.](#nocontainer-lambda-invalid-resource-access-policy)
+ [Fungsi <function-arn>mengacu pada sumber daya Machine Learning <resource-id>dengan izin yang hilang di keduanya ResourceAccessPolicy dan sumber daya OwnerSetting.](#nocontainer-lambda-missing-access-permission)
+ [Fungsi <function-arn>mengacu pada sumber daya Machine Learning <resource-id>dengan izin\\ "rw\\”, sedangkan pengaturan pemilik sumber daya GroupPermission hanya mengizinkan\\ "ro\\”.](#container-lambda-invalid-rw-permissions)
+ [NoContainer Fungsi <function-arn>mengacu pada sumber daya jalur tujuan bersarang.](#nocontainer-lambda-nested-destination-path)
+ [Lambda <function-arn> mendapatkan akses ke sumber daya <resource-id> dengan berbagi id pemilik grup yang sama](#lambda-runas-and-resource-owner)

 

### MLModelPemilik Tidak Valid - GroupOwnerSetting disediakan dalam sumber daya model ML, tetapi GroupOwner atau GroupPermission tidak ada
<a name="nocontainer-lambda-invalid-ml-model-owner"></a>

**Solusi:** Anda menerima kesalahan ini jika sumber pembelajaran mesin berisi [ResourceDownloadOwnerSetting](https://docs.aws.amazon.com/greengrass/v1/apireference/definitions-resourcedownloadownersetting.html)objek tetapi diperlukan `GroupOwner` atau `GroupPermission` properti tidak ditentukan. Untuk mengatasi masalah ini, tentukan properti yang hilang.

 

### NoContainer fungsi tidak dapat mengonfigurasi izin saat melampirkan sumber daya Machine Learning. <function-arn>mengacu pada sumber daya Machine Learnin <resource-id>dengan izin <ro/rw> dalam kebijakan akses sumber daya.
<a name="nocontainer-lambda-invalid-resource-access-policy"></a>

**Solusi:** Anda menerima error ini jika fungsi Lambda non-containerized menentukan tingkat fungsi izin untuk sumber daya machine learning. Fungsi non-wadah harus mewarisi izin dari izin pemilik sumber daya yang ditetapkan pada sumber daya machine learning. Untuk mengatasi masalah ini, pilih untuk [mewarisi izin pemilik sumber daya](access-ml-resources.md#non-container-config-console) (konsol) atau [menghapus izin dari fungsi Lambda sumber daya kebijakan akses](access-ml-resources.md#non-container-config-api) (API).

 

### Fungsi <function-arn>mengacu pada sumber daya Machine Learning <resource-id>dengan izin yang hilang di keduanya ResourceAccessPolicy dan sumber daya OwnerSetting.
<a name="nocontainer-lambda-missing-access-permission"></a>

**Solusi:** Anda menerima kesa ini jika izin untuk sumber daya machine learning tidak dikonfigurasi untuk fungsi Lambda terlampir atau sumber daya. Untuk mengatasi masalah ini, konfigurasikan izin di [ResourceAccessPolicy](https://docs.aws.amazon.com/greengrass/v1/apireference/definitions-resourceaccesspolicy.html)properti untuk fungsi Lambda atau properti untuk [OwnerSetting](https://docs.aws.amazon.com/greengrass/v1/apireference/definitions-ownersetting.html)sumber daya.

 

### Fungsi <function-arn>mengacu pada sumber daya Machine Learning <resource-id>dengan izin\\ "rw\\”, sedangkan pengaturan pemilik sumber daya GroupPermission hanya mengizinkan\\ "ro\\”.
<a name="container-lambda-invalid-rw-permissions"></a>

**Solusi:** Anda menerima error ini jika izin akses yang ditetapkan untuk fungsi Lambda terlampir melebihi izin pemilik sumber daya yang ditetapkan untuk sumber daya machine learning. Untuk mengatasi masalah ini, tetapkan izin yang lebih ketat untuk fungsi Lambda atau kurang membatasi izin untuk pemilik sumber daya.

 

### NoContainer Fungsi <function-arn>mengacu pada sumber daya jalur tujuan bersarang.
<a name="nocontainer-lambda-nested-destination-path"></a>

**Solusi:** Anda menerima error ini jika beberapa sumber daya machine learning yang terlampir pada fungsi Lambda non-containerized menggunakan lintasan tujuan yang sama atau lintasan tujuan bersarang. Untuk mengatasi masalah ini, tentukan jalur tujuan terpisah untuk sumber daya.

 

### Lambda <function-arn> mendapatkan akses ke sumber daya <resource-id> dengan berbagi id pemilik grup yang sama
<a name="lambda-runas-and-resource-owner"></a>

**Solusi:** Anda menerima keslaahan ini di `runtime.log` jika kelompok OS yang sama ditentukan sebagai fungsi Lambda [Jalankan sebagai](lambda-group-config.md#lambda-access-identity) identitas dan [pemilik sumber daya](access-ml-resources.md#ml-resource-owner) untuk sumber daya machine learning, tetapi sumber daya tidak terlampir pada fungsi Lambda. Konfigurasi ini memberikan fungsi Lambda izin implisit yang dapat digunakan untuk mengakses sumber daya tanpa otorisasi. AWS IoT Greengrass 

Untuk mengatasi masalah ini, gunakan grup OS yang berbeda untuk salah satu properti atau melampirkan sumber daya machine learning untuk fungsi Lambda.

## AWS IoT Greengrass inti dalam masalah Docker
<a name="gg-troubleshooting-dockerissues"></a>

Gunakan informasi berikut untuk membantu memecahkan masalah dengan menjalankan AWS IoT Greengrass inti dalam wadah Docker.

**Topics**
+ [Kesalahan: Opsi tidak diketahui: -no-include-email.](#docker-troubleshooting-cli-version)
+ [Peringatan: IPv4 dinonaktifkan. Jaringan tidak akan bekerja.](#docker-troubleshooting-ipv4-disabled)
+ [Error: Firewall memblokir file berbagi antara windows dan kontainer.](#docker-troubleshooting-firewall)
+ [Kesalahan: Terjadi kesalahan (AccessDeniedException) saat memanggil GetAuthorizationToken operasi: User: arn:aws:iam: ::user/ <account-id><user-name>tidak diizinkan untuk melakukan: ecr: on resource: \* GetAuthorizationToken](#docker-troubleshooting-ecr-perms)
+ [Error: Tidak dapat membuat kontainer untuk greengrass layanan: konflik. Nama kontainer “/aws-iot-greengrass" sudah digunakan.](#troubleshoot-docker-name-conflict)
+ [Error: [FATAL]-Gagal untuk mereset thread mount namespace karena error tak terduga: "operasi tidak diizinkan". Untuk menjaga konsistensi, GGC akan macet dan harus dimulai ulang secara manual.](#troubleshoot-docker-container-lambda)

 

### Kesalahan: Opsi tidak diketahui: -no-include-email.
<a name="docker-troubleshooting-cli-version"></a>

**Solusi:** Kesalahan ini dapat terjadi ketika Anda menjalankan perintah `aws ecr get-login` ini. Pastikan Anda telah menginstal AWS CLI versi terbaru (misalnya, jalankan:`pip install awscli --upgrade --user`). Jika Anda menggunakan Windows dan Anda menginstal CLI menggunakan MSI installer, Anda harus mengulangi proses instalasi. Untuk informasi lebih lanjut, lihat [Menginstal AWS Command Line Interface di Microsoft Windows](https://docs.aws.amazon.com/cli/latest/userguide/awscli-install-windows.html) dalam *AWS Command Line Interface Panduan Pengguna*.

 

### Peringatan: IPv4 dinonaktifkan. Jaringan tidak akan bekerja.
<a name="docker-troubleshooting-ipv4-disabled"></a>

**Solusi:** Anda mungkin menerima peringatan ini atau pesan serupa saat berjalan AWS IoT Greengrass di komputer Linux. [Aktifkan penerusan IPv4 jaringan seperti yang dijelaskan dalam langkah ini.](run-gg-in-docker-container.md#docker-linux-enable-ipv4) AWS IoT Greengrass penyebaran cloud dan komunikasi MQTT tidak berfungsi saat IPv4 penerusan tidak diaktifkan. Untuk informasi lebih lanjut, lihat [Mengonfigurasi parameter kernel namespace (sysctls) pada ketika waktu aktif](https://docs.docker.com/engine/reference/commandline/run/#configure-namespaced-kernel-parameters-sysctls-at-runtime) dalam dokumentasi Docker.

 

### Error: Firewall memblokir file berbagi antara windows dan kontainer.
<a name="docker-troubleshooting-firewall"></a>

**Solusi:** Anda mungkin menerima error ini atau pesan `Firewall Detected` ketika menjalankan Docker di komputer Windows. Hal ini juga dapat terjadi jika Anda masuk pada jaringan pribadi virtual (VPN) dan pengaturan jaringan Anda mencegah drive berbagi untuk dipasang. Dalam situasi itu, matikan VPN dan jalankan kembali kontainer Docker.

 

### Kesalahan: Terjadi kesalahan (AccessDeniedException) saat memanggil GetAuthorizationToken operasi: User: arn:aws:iam: ::user/ <account-id><user-name>tidak diizinkan untuk melakukan: ecr: on resource: \* GetAuthorizationToken
<a name="docker-troubleshooting-ecr-perms"></a>

Anda mungkin menerima kesalahan ini saat menjalankan `aws ecr get-login-password` jika Anda tidak memiliki izin yang memadai untuk mengakses repositori Amazon ECR. Untuk informasi selengkapnya, lihat [Contoh Kebijakan Repositori Amazon ECR](https://docs.aws.amazon.com/AmazonECR/latest/userguide/repository-policy-examples.html) dan [Mengakses Satu Repositori Amazon ECR](https://docs.aws.amazon.com/AmazonECR/latest/userguide/security_iam_id-based-policy-examples.html) di *Panduan Pengguna Amazon ECR*.

 

### Error: Tidak dapat membuat kontainer untuk greengrass layanan: konflik. Nama kontainer “/aws-iot-greengrass" sudah digunakan.
<a name="troubleshoot-docker-name-conflict"></a>

**Solusi:** Hal ini dapat terjadi ketika nama kontainer yang digunakan oleh kontainer yang lebih tua. Untuk mengatasi masalah ini, jalankan perintah berikut untuk menghapus kontainer Docker lama:

```
docker rm -f $(docker ps -a -q -f "name=aws-iot-greengrass")
```

 

### Error: [FATAL]-Gagal untuk mereset thread mount namespace karena error tak terduga: "operasi tidak diizinkan". Untuk menjaga konsistensi, GGC akan macet dan harus dimulai ulang secara manual.
<a name="troubleshoot-docker-container-lambda"></a>

**Solusi:** Kesalahan ini `runtime.log` dapat terjadi ketika Anda mencoba menerapkan fungsi `GreengrassContainer` Lambda ke inti AWS IoT Greengrass yang berjalan di wadah Docker. Saat ini, hanya `NoContainer` fungsi Lambda dapat dikerahkan ke kontainer Greengrass Docker.

Untuk mengatasi masalah ini, [pastikan bahwa semua fungsi Lambda berada di mode `NoContainer` ini](lambda-group-config.md#change-containerization-lambda) dan mulai deployment baru. Kemudian, saat memulai penampung, jangan mengikat `deployment` direktori yang ada ke wadah AWS IoT Greengrass inti Docker. Sebaliknya, buat kosong `deployment` di tempatnya dan bind-mount yang di kontainer Docker. Hal ini mengzinkan kontainer Docker baru untuk menerima deployment terbaru dengan fungsi Lambda berjalan di `NoContainer` mode. 

Untuk informasi selengkapnya, lihat [Berjalan AWS IoT Greengrass di wadah Docker](run-gg-in-docker-container.md).

## Pemecahan masalah dengan catatan
<a name="troubleshooting-logs"></a>

Anda dapat mengonfigurasi pengaturan logging untuk grup Greengrass, seperti apakah akan mengirim log CloudWatch ke Log, menyimpan log pada sistem file lokal, atau keduanya. Untuk mendapatkan informasi detail saat memecahkan masalah, untuk sementara Anda dapat mengubah tingkat pencatatan `DEBUG`. Perubahan pada pengaturan catatan mulai berlaku saat Anda men-deploy grup. Untuk informasi selengkapnya, lihat [Konfigurasikan logging untuk AWS IoT Greengrass](greengrass-logs-overview.md#config-logs).

Pada sistem file lokal, AWS IoT Greengrass menyimpan log di lokasi berikut. Membaca catatan pada sistem file memerlukan izin root.

`{{greengrass-root}}/ggc/var/log/crash.log`  
Menampilkan pesan yang dihasilkan saat AWS IoT Greengrass inti mogok.

`{{greengrass-root}}/ggc/var/log/system/runtime.log`  
Menampilkan pesan tentang komponen mana yang gagal.

`{{greengrass-root}}/ggc/var/log/system/`  
Berisi semua log dari komponen AWS IoT Greengrass sistem, seperti manajer sertifikat dan manajer koneksi. Dengan menggunakan pesan di `ggc/var/log/system/` dan`ggc/var/log/system/runtime.log`, Anda harus dapat mengetahui kesalahan mana yang terjadi pada komponen AWS IoT Greengrass sistem.

`{{greengrass-root}}/ggc/var/log/system/localwatch/`  
Berisi log untuk AWS IoT Greengrass komponen yang menangani pengunggahan log Greengrass ke Log. CloudWatch Jika Anda tidak dapat melihat log Greengrass, maka Anda dapat menggunakan log CloudWatch ini untuk pemecahan masalah.

`{{greengrass-root}}/ggc/var/log/user/`  
Berisi semua catatan dari fungsi Lambda yang ditetapkan pengguna. Periksa folder ini untuk menemukan pesan error dari fungsi Lambda lokal Anda.

**catatan**  
Secara default, {{greengrass-root}} adalah `/greengrass` direktori. Jika [menulis direktori](gg-core.md#write-directory) dikonfigurasi, maka log berada di bawah direktori itu.

Jika log dikonfigurasi untuk disimpan di cloud, gunakan CloudWatch Log untuk melihat pesan log. `crash.log`hanya ditemukan di log sistem file pada perangkat AWS IoT Greengrass inti. 

Jika AWS IoT dikonfigurasi untuk menulis log CloudWatch, periksa log tersebut jika kesalahan koneksi terjadi ketika komponen sistem mencoba untuk terhubung AWS IoT.

Untuk informasi selengkapnya tentang AWS IoT Greengrass pencatatan, lihat[Pemantauan dengan AWS IoT Greengrass log](greengrass-logs-overview.md).

**catatan**  
Log untuk perangkat lunak AWS IoT Greengrass Core v1.0 disimpan di bawah `{{greengrass-root}}/var/log` direktori.

## Pemecahan masalah penyimpanan
<a name="troubleshooting-storage"></a>

Ketika penyimpanan file lokal penuh, beberapa komponen mungkin mulai gagal: 
+ Pemutakhiran bayangan lokal tidak terjadi.
+ Sertifikat server MQTT AWS IoT Greengrass inti baru tidak dapat diunduh secara lokal.
+ Deployment gagal.

Anda harus selalu mengetahui jumlah ruang kosong yang tersedia secara lokal. Anda dapat menghitung ruang kosong berdasarkan ukuran fungsi Lambda yang di-deploy konfigurasi pencatatan (lihat [Pemecahan masalah dengan catatan](#troubleshooting-logs)), dan jumlah bayangan yang disimpan secara lokal. 

## Pemecahan masalah pesan
<a name="troubleshooting-messages"></a>

Semua pesan yang dikirim secara lokal AWS IoT Greengrass dikirim dengan QoS 0. Secara default, AWS IoT Greengrass menyimpan pesan dalam antrian dalam memori. Oleh karena itu, pesan yang belum diproses akan hilang ketika Greengrass core restart; sebagai contoh, setelah deployment grup atau perangkat reboot. Namun, Anda dapat mengonfigurasi AWS IoT Greengrass (v1.6 atau yang lebih baru) untuk menyimpan pesan cache ke sistem file sehingga tetap ada di seluruh restart inti. Anda juga dapat mengonfigurasi ukuran antrian. Jika Anda mengonfigurasi ukuran antrian, pastikan bahwa itu lebih besar dari atau sama dengan 262144 byte (256 KB). Jika tidak, AWS IoT Greengrass mungkin tidak dimulai dengan benar. Untuk informasi selengkapnya, lihat [Antrean pesan MQTT untuk target cloud](gg-core.md#mqtt-message-queue).

**catatan**  
Saat menggunakan antrian dalam memori default, kami sarankan Anda men-deploy grup atau restart perangkat ketika gangguan layanan terendah.

Anda juga dapat mengonfigurasi core untuk membuat sesi persisten dengan AWS IoT. Hal ini memungkinkan inti untuk menerima pesan yang dikirim dari AWS Cloud saat inti sedang offline. Untuk informasi selengkapnya, lihat [Sesi persisten MQTT dengan AWS IoT Core](gg-core.md#mqtt-persistent-sessions).

## Memecahkan masalah timeout sinkronisasi bayangan
<a name="troubleshooting-shadow-sync"></a>

Penundaan signifikan dalam komunikasi antara perangkat core Greengrass dan cloud mungkin menyebabkan sinkronisasi bayangan gagal karena batas waktu. Dalam hal ini, Anda akan melihat entri log yang serupa dengan berikut ini:

```
[2017-07-20T10:01:58.006Z][ERROR]-cloud_shadow_client.go:57,Cloud shadow client error: unable to get cloud shadow what_the_thing_is_named for synchronization. Get https://1234567890abcd.iot.us-west-2.amazonaws.com:8443/things/what_the_thing_is_named/shadow: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
[2017-07-20T10:01:58.006Z][WARN]-sync_manager.go:263,Failed to get cloud copy: Get https://1234567890abcd.iot.us-west-2.amazonaws.com:8443/things/what_the_thing_is_named/shadow: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
[2017-07-20T10:01:58.006Z][ERROR]-sync_manager.go:375,Failed to execute sync operation {what_the_thing_is_named VersionDiscontinued []}"
```

Perbaikan yang mungkin adalah untuk mengonfigurasi jumlah waktu yang perangkat core menunggu respons host. Buka file [config.json](gg-core.md#config-json) di `{{greengrass-root}}/config` dan tambahkan `system.shadowSyncTimeout` bidang dengan nilai timeout dalam detik. Contoh:

```
{
  "system": {
    "shadowSyncTimeout": 10
  },
  "coreThing": {
    "caPath": "root-ca.pem",
    "certPath": "cloud.pem.crt",
    "keyPath": "cloud.pem.key",
    ...
  },
  ...
}
```

Jika tidak `shadowSyncTimeout` nilai yang ditentukan dalam `config.json`, default adalah 5 detik.

**catatan**  
Untuk perangkat lunak AWS IoT Greengrass Core v1.6 dan sebelumnya, `shadowSyncTimeout` defaultnya adalah 1 detik.

## Periksa Re: AWS Posting
<a name="troubleshooting-repost"></a>

Jika Anda tidak dapat menyelesaikan masalah menggunakan informasi pemecahan masalah dalam topik ini, Anda dapat mencari [Pemecahan masalah AWS IoT Greengrass](#gg-troubleshooting) atau memeriksa [AWS IoT Greengrass tag di AWS re:Post](https://repost.aws/tags/TA4ckIed1sR4enZBey29rKTg/aws-io-t-greengrass) untuk masalah terkait atau memposting pertanyaan baru. Anggota AWS IoT Greengrass tim secara aktif memantau AWS re:post.