

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.

# Instal perangkat lunak AWS IoT Greengrass Inti
<a name="install-ggc"></a>

<a name="ggc-software-descripton"></a> Perangkat lunak AWS IoT Greengrass Core memperluas AWS fungsionalitas ke perangkat AWS IoT Greengrass inti, sehingga memungkinkan perangkat lokal untuk bertindak secara lokal pada data yang mereka hasilkan.

AWS IoT Greengrass menyediakan beberapa opsi untuk menginstal perangkat lunak AWS IoT Greengrass Core:
+ [mengunduh dan mengekstraksi file tar.gz](#download-and-extract-tarball).
+ [Jalankan skrip Pengaturan Perangkat Greengrass](#run-device-setup-script).
+ [Instal dari repositori APT](#ggc-package-manager).

AWS IoT Greengrass juga menyediakan lingkungan kontainer yang menjalankan perangkat lunak AWS IoT Greengrass Core.
+ [Jalankan AWS IoT Greengrass dalam wadah Docker](#gg-docker-support).
+ [Jalankan AWS IoT Greengrass dalam sekejap](#gg-snap-support).

 

## Unduh dan ekstrak paket perangkat lunak AWS IoT Greengrass Core
<a name="download-and-extract-tarball"></a>

Pilih perangkat lunak AWS IoT Greengrass Core untuk platform Anda untuk diunduh sebagai file tar.gz dan ekstrak di perangkat Anda. Anda dapat mengunduh versi terbaru dari perangkat lunak. Untuk informasi selengkapnya, lihat [AWS IoT Greengrass Perangkat lunak inti](what-is-gg.md#gg-core-download-tab).

 

## Jalankan skrip pengaturan perangkat Greengrass
<a name="run-device-setup-script"></a>

Jalankan pengaturan perangkat Greengrass untuk mengonfigurasi perangkat Anda, menginstal versi perangkat lunak Core AWS IoT Greengrass terbaru, dan menerapkan fungsi Hello World Lambda dalam hitungan menit. Untuk informasi selengkapnya, lihat [Quick start: penyiapan perangkat Greengrass](quick-start.md).

 

## Instal perangkat lunak AWS IoT Greengrass Core dari repositori APT
<a name="ggc-package-manager"></a>

**penting**  
Mulai 11 Februari 2022, Anda tidak dapat lagi menginstal atau memperbarui perangkat lunak AWS IoT Greengrass Core dari repositori APT. Pada perangkat tempat Anda menambahkan AWS IoT Greengrass repositori, Anda harus [menghapus repositori dari](#ggc-package-manager-remove-sources) daftar sumber. Perangkat yang menjalankan perangkat lunak dari repositori APT akan terus beroperasi secara normal. Kami menyarankan Anda memperbarui perangkat lunak AWS IoT Greengrass Core menggunakan [file tar](#download-and-extract-tarball).

Repositori APT yang disediakan oleh AWS IoT Greengrass mencakup paket-paket berikut:
+ `aws-iot-greengrass-core`. Menginstal perangkat lunak AWS IoT Greengrass Core.
+ `aws-iot-greengrass-keyring`. Menginstal kunci GnuPG (GPG) yang digunakan untuk menandatangani repositori paket. AWS IoT Greengrass 

  Dengan mengunduh perangkat lunak ini, Anda menyetujui [ Perjanjian Lisensi Perangkat Lunak Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

**Topics**
+ [Gunakan skrip systemd untuk mengelola siklus hidup Greengrass daemon](#ggc-package-manager-systemd)
+ [Copot pemasangan perangkat lunak AWS IoT Greengrass inti menggunakan repositori APT](#ggc-package-manager-uninstall)
+ [Hapus sumber repositori perangkat lunak AWS IoT Greengrass inti](#ggc-package-manager-remove-sources)

### Gunakan skrip systemd untuk mengelola siklus hidup Greengrass daemon
<a name="ggc-package-manager-systemd"></a>

`aws-iot-greengrass-core`Paket ini juga menginstal `systemd` skrip yang dapat Anda gunakan untuk mengelola siklus hidup perangkat lunak AWS IoT Greengrass Core (daemon).
+ Untuk memulai Greengrass daemon saat boot:

  ```
  systemctl enable greengrass.service
  ```
+ Untuk memulai Greengrass daemon:

  ```
  systemctl start greengrass.service
  ```
+ Untuk menghentikan Greengrass daemon:

  ```
  systemctl stop greengrass.service
  ```
+ Untuk memeriksa status Greengrass daemon:

  ```
  systemctl status greengrass.service
  ```

### Copot pemasangan perangkat lunak AWS IoT Greengrass inti menggunakan repositori APT
<a name="ggc-package-manager-uninstall"></a>

Ketika Anda menghapus perangkat lunak AWS IoT Greengrass inti, Anda dapat memilih apakah akan menyimpan atau menghapus informasi konfigurasi perangkat lunak AWS IoT Greengrass inti, seperti sertifikat perangkat, informasi grup, dan file log.

**Untuk menghapus perangkat lunak AWS IoT Greengrass inti dan melestarikan informasi konfigurasi**
+ Jalankan perintah berikut untuk menghapus paket perangkat lunak AWS IoT Greengrass inti dan menyimpan informasi konfigurasi dalam `/greengrass` folder.

  ```
  sudo apt remove aws-iot-greengrass-core aws-iot-greengrass-keyring
  ```

**Untuk menghapus perangkat lunak AWS IoT Greengrass inti dan menghapus informasi konfigurasi**

1. Jalankan perintah berikut untuk menghapus paket perangkat lunak AWS IoT Greengrass inti dan menghapus informasi konfigurasi dari file`/greengrass folder`.

   ```
   sudo apt purge aws-iot-greengrass-core aws-iot-greengrass-keyring
   ```

1. Hapus repositori perangkat lunak AWS IoT Greengrass inti dari daftar sumber Anda. Untuk informasi selengkapnya, lihat [Hapus sumber repositori perangkat lunak AWS IoT Greengrass inti](#ggc-package-manager-remove-sources).

### Hapus sumber repositori perangkat lunak AWS IoT Greengrass inti
<a name="ggc-package-manager-remove-sources"></a>

Anda dapat menghapus sumber repositori perangkat lunak AWS IoT Greengrass inti ketika Anda tidak perlu lagi menginstal atau memperbarui perangkat lunak AWS IoT Greengrass inti dari repositori APT. Setelah 11 Februari 2022, Anda harus menghapus repositori dari daftar sumber Anda untuk menghindari kesalahan saat menjalankan. `apt update`

**Untuk menghapus repositori APT dari daftar sumber**
+ Jalankan perintah berikut untuk menghapus repositori perangkat lunak AWS IoT Greengrass inti dari daftar sumber.

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

## Jalankan AWS IoT Greengrass dalam wadah Docker
<a name="gg-docker-support"></a>

AWS IoT Greengrass menyediakan gambar Dockerfile dan Docker yang memudahkan Anda menjalankan perangkat lunak AWS IoT Greengrass Core dalam wadah Docker. Untuk informasi selengkapnya, lihat [AWS IoT Greengrass Perangkat lunak Docker](what-is-gg.md#gg-docker-download).

**catatan**  
Anda juga dapat menjalankan aplikasi Docker pada perangkat core Greengrass. Untuk melakukannya, gunakan [Greengrass Docker aplikasi deployment konektor](docker-app-connector.md).

 

## Jalankan AWS IoT Greengrass dalam sekejap
<a name="gg-snap-support"></a>

<a name="gg-snap-description"></a>AWS IoT Greengrass snap 1.11.x memungkinkan Anda menjalankan versi terbatas AWS IoT Greengrass melalui paket perangkat lunak yang nyaman, bersama dengan semua dependensi yang diperlukan, dalam lingkungan kontainer.

<a name="gg-snap-support-ends"></a>[Pada 31 Desember 2023, AWS IoT Greengrass akan mengakhiri pemeliharaan untuk perangkat lunak AWS IoT Greengrass inti versi 1.11.x Snap yang diterbitkan di snapcraft.io.](https://snapcraft.io/aws-iot-greengrass) Perangkat yang saat ini menjalankan Snap akan terus berfungsi hingga pemberitahuan lebih lanjut. Namun, Snap AWS IoT Greengrass inti tidak akan lagi menerima patch keamanan atau perbaikan bug setelah pemeliharaan berakhir.

### Konsep snap
<a name="gg-snap-concepts"></a>

Berikut ini adalah konsep snap penting untuk membantu Anda memahami bagaimana menggunakan AWS IoT Greengrass snap:

**[Kanal](https://snapcraft.io/docs/channels)**  
Komponen snap yang mendefinisikan versi snap yang diinstal dan dilacak untuk update. Snap di-update secara otomatis ke versi terbaru saluran saat ini.

**[Antarmuka](https://snapcraft.io/docs/interface-management)**  
Komponen snap yang memberikan akses ke sumber daya, seperti jaringan dan file pengguna.  
Untuk menjalankan AWS IoT Greengrass snap, antarmuka berikut harus terhubung. Perhatikan bahwa `greengrass-support-no-container` harus terhubung terlebih dahulu dan tidak pernah terputus.  

```
      - greengrass-support-no-container
      - hardware-observe
      - home-for-hooks
      - hugepages-control
      - log-observe
      - mount-observe
      - network
      - network-bind
      - network-control
      - process-control
      - system-observe
```
Antarmuka lain bersifat opsional. Jika fungsi Lambda Anda memerlukan akses ke sumber daya tertentu, Anda mungkin perlu terhubung ke antarmuka yang sesuai.

**[Segarkan](https://snapcraft.io/docs/managing-updates)**  
Snap di-update secara otomatis. Daemon `snapd` adalah pengelola paket snap yang memeriksa pembaruan empat kali sehari secara default. Setiap update memeriksa disebut refresh. Ketika refresh terjadi, daemon berhenti, snap akan di-update, dan kemudian daemon restart.

Untuk informasi lebih lanjut, lihat situs web [Snapcraft](https://snapcraft.io/) ini.

### Apa yang baru dengan AWS IoT Greengrass snap v1.11.x
<a name="gg-snap-whats-new"></a>

Berikut ini menjelaskan apa yang baru dan berubah dengan versi 1.11.x AWS IoT Greengrass snap.
+ Versi ini hanya mendukung `snap_daemon` pengguna, diekspos sebagai user ID (UID) dan group (GID) `584788`.
+ Versi ini hanya mendukung fungsi Lambda noncontainerized.
**penting**  
Karena fungsi Lambda noncontainerized harus berbagi pengguna yang sama (`snap_daemon`), fungsi Lambda tidak memiliki isolasi satu sama lain. Untuk informasi selengkapnya, lihat [Mengontrol pelaksanaan fungsi Greengrass Lambda dengan menggunakan konfigurasi khusus grup](https://docs.aws.amazon.com/greengrass/v1/developerguide/lambda-group-config.html).
+ Versi ini mendukung C, C \$1\$1, Java 8, Node.js 12.x, Python 2.7, Python 3.7, dan Python 3.8 waktu aktif.
**catatan**  
Untuk menghindari waktu aktif Python berlebihan, Python 3.7 fungsi Lambda benar-benar menjalankan Python 3.8 waktu aktif.

### Memulai dengan AWS IoT Greengrass snap
<a name="gg-snap-get-started"></a>

Prosedur berikut membantu Anda menginstal dan mengkonfigurasi AWS IoT Greengrass snap pada perangkat Anda.

#### Persyaratan
<a name="gg-snap-requirements"></a>

Untuk menjalankan AWS IoT Greengrass snap, Anda harus melakukan hal berikut:
+ Jalankan AWS IoT Greengrass snap pada distribusi Linux yang didukung, seperti Ubuntu, Linux Mint, Debian, dan Fedora.
+ Instal `snapd` daemon pada perangkat Anda. Daemon `snapd` termasuk `snap` alat mengelola lingkungan snap pada perangkat Anda. 

Untuk daftar distribusi Linux yang didukung dan petunjuk penginstalan, lihat [Menginstal snapd](https://snapcraft.io/docs/installing-snapd) dalam *Dokumentasi Snap*.

#### Instal dan konfigurasikan AWS IoT Greengrass snap
<a name="gg-snap-install-config"></a>

Tutorial berikut menunjukkan cara menginstal dan mengkonfigurasi AWS IoT Greengrass snap pada perangkat Anda.

**catatan**  
Meskipun tutorial ini menggunakan instance Amazon EC2 (x86 t2.micro Ubuntu 20.04), Anda dapat menjalankan AWS IoT Greengrass snap dengan perangkat keras fisik, seperti Raspberry Pi.
Daemon `snapd` sudah terinstal di Ubuntu.

1. Instal `core18` snap dengan menjalankan perintah berikut di terminal perangkat Anda:

   ```
   sudo snap install core18
   ```

   Snap `core18` adalah [snap dasar](https://snapcraft.io/docs/base-snaps) yang menyediakan lingkungan waktu aktif dengan perpustakaan umum yang digunakan. Snap ini dibangun dari [LTS Ubuntu 18.04](http://releases.ubuntu.com/18.04/).

1. Upgrade `snapd` dengan menjalankan perintah berikut:

   ```
   sudo snap install --channel=edge snapd; sudo snap refresh --channel=edge snapd
   ```

1. Jalankan `snap list` perintah untuk memeriksa apakah Anda telah menginstal AWS IoT Greengrass snap.

   Contoh respons berikut menunjukkan bahwa `snapd` dipasang, tetapi `aws-iot-greengrass` bukan.

   ```
   Name              Version               Rev    Tracking         Publisher   Notes
   amazon-ssm-agent  3.0.161.0             2996   latest/stable/…  aws✓        classic
   core              16-2.48               10444  latest/stable    canonical✓  core
   core18            20200929              1932   latest/stable    canonical✓  base
   lxd               4.0.4                 18150  4.0/stable/…     canonical✓  -
   snapd             2.48+git548.g929ccfb  10526  latest/edge      canonical✓  snapd
   ```

1. Pilih salah satu opsi berikut untuk menginstal AWS IoT Greengrass snap 1.11.x.
   + Untuk menginstal AWS IoT Greengrass snap, jalankan perintah berikut:

     ```
     sudo snap install aws-iot-greengrass
     ```

     Contoh respons:

     ```
     aws-iot-greengrass 1.11.5 from Amazon Web Services (aws) installed
     ```
   + Untuk bermigrasi dari versi sebelumnya ke v1.11.x atau update ke versi patch terbaru yang tersedia, jalankan perintah berikut:

     ```
     sudo snap refresh --channel=1.11.x aws-iot-greengrass
     ```

   Seperti snap lainnya, AWS IoT Greengrass snap menggunakan saluran untuk mengelola versi minor. Snap di-update secara otomatis ke versi terbaru saluran saat ini yang tersedia. Misalnya, jika Anda menentukan`--channel=1.11.x`, AWS IoT Greengrass snap Anda diperbarui ke v1.11.5. 

   Anda dapat menjalankan `snap info aws-iot-greengrass` perintah untuk mendapatkan daftar saluran yang tersedia untuk AWS IoT Greengrass.

   Contoh respons:

   ```
   name:      aws-iot-greengrass
   summary:   AWS supported software that extends cloud capabilities to local devices.
   publisher: Amazon Web Services (aws✓)
   store-url: https://snapcraft.io/aws-iot-greengrass
   contact:   https://repost.aws/tags/TA4ckIed1sR4enZBey29rKTg/aws-io-t-greengrass
   license:   Proprietary
   description: |
     AWS IoT Greengrass seamlessly extends AWS onto edge devices so they can act locally on the data
     they generate, while still using the cloud for management, analytics, and durable storage.
     AWS IoT Greenrgrass snap v1.11.0 enables you to run a limited version of AWS IoT Greengrass with
     all necessary dependencies in a containerized environment.
     The AWS IoT Greengrass snap doesn't support connectors and machine learning (ML) inference.
     By downloading this software you agree to the Greengrass Core Software License Agreement
     (https://s3-us-west-2.amazonaws.com/greengrass-release-license/greengrass-license-v1.pdf).
     For more information, see Run AWS IoT Greengrass in a snap
     (https://docs.aws.amazon.com/greengrass/latest/developerguide/install-ggc.html#gg-snap-support) in
     the AWS IoT Greengrass Developer.
     If you need help, try the AWS IoT Greengrass tag on AWS re:Post
     (https://repost.aws/tags/TA4ckIed1sR4enZBey29rKTg/aws-io-t-greengrass) or connect with an AWS IQ expert
     (https://iq.aws.amazon.com/services/aws/greengrass).
   snap-id: SRDuhPJGj4XPxFNNZQKOTvURAp0wxKnd
   channels:
     latest/stable:    1.11.3 2021-06-15 (59) 111MB -
     latest/candidate: 1.11.3 2021-06-14 (59) 111MB -
     latest/beta:      1.11.3 2021-06-14 (59) 111MB -
     latest/edge:      1.11.3 2021-06-14 (59) 111MB -
     1.11.x/stable:    1.11.3 2021-06-15 (59) 111MB -
     1.11.x/candidate: 1.11.3 2021-06-15 (59) 111MB -
     1.11.x/beta:      1.11.3 2021-06-15 (59) 111MB -
     1.11.x/edge:      1.11.3 2021-06-15 (59) 111MB -
   ```

1. Untuk mengakses sumber daya spesifik yang dibutuhkan fungsi Lambda Anda, Anda dapat terhubung ke antarmuka tambahan.

   Jalankan perintah berikut untuk mendapatkan daftar antarmuka yang didukung AWS IoT Greengrass snap:

   ```
   snap connections aws-iot-greengrass
   ```

   Contoh respons:

   ```
   Interface                Plug                                                Slot                 Notes
   camera                   aws-iot-greengrass:camera                           -                    -
   dvb                      aws-iot-greengrass:dvb                              -                    -
   gpio                     aws-iot-greengrass:gpio                             -                    -
   gpio-memory-control      aws-iot-greengrass:gpio-memory-control              -                    -
   greengrass-support       aws-iot-greengrass:greengrass-support-no-container  :greengrass-support  -
   hardware-observe         aws-iot-greengrass:hardware-observe                 :hardware-observe    manual
   hardware-random-control  aws-iot-greengrass:hardware-random-control          -                    -
   home                     aws-iot-greengrass:home-for-greengrassd             -                    -
   home                     aws-iot-greengrass:home-for-hooks                   :home                manual
   hugepages-control        aws-iot-greengrass:hugepages-control                :hugepages-control   manual
   i2c                      aws-iot-greengrass:i2c                              -                    -
   iio                      aws-iot-greengrass:iio                              -                    -
   joystick                 aws-iot-greengrass:joystick                         -                    -
   log-observe              aws-iot-greengrass:log-observe                      :log-observe         manual
   mount-observe            aws-iot-greengrass:mount-observe                    :mount-observe       manual
   network                  aws-iot-greengrass:network                          :network             -
   network-bind             aws-iot-greengrass:network-bind                     :network-bind        -
   network-control          aws-iot-greengrass:network-control                  :network-control     -
   opengl                   aws-iot-greengrass:opengl                           :opengl              -
   optical-drive            aws-iot-greengrass:optical-drive                    :optical-drive       -
   process-control          aws-iot-greengrass:process-control                  :process-control     -
   raw-usb                  aws-iot-greengrass:raw-usb                          -                    -
   removable-media          aws-iot-greengrass:removable-media                  -                    -
   serial-port              aws-iot-greengrass:serial-port                      -                    -
   spi                      aws-iot-greengrass:spi                              -                    -
   system-observe           aws-iot-greengrass:system-observe                   :system-observe      -
   ```

   Jika Anda melihat tanda hubung (-) di kolom Slot, antarmuka yang sesuai tidak terhubung.

1. Ikuti [Menginstal perangkat lunak AWS IoT Greengrass Core](module2.md) untuk membuat AWS IoT sesuatu, grup Greengrass, sumber daya keamanan yang memungkinkan komunikasi aman AWS IoT dengan, dan AWS IoT Greengrass file konfigurasi perangkat lunak Core. File konfigurasi,`config.json`, berisi konfigurasi khusus untuk inti Greengrass Anda, seperti lokasi file sertifikat dan titik akhir data perangkat. AWS IoT 
**catatan**  
Jika Anda mengunduh file ke perangkat lain, ikuti [langkah](start-greengrass.md#transfer-files-to-device) ini untuk mentransfer file ke perangkat AWS IoT Greengrass inti.

1. Untuk AWS IoT Greengrass snap, pastikan Anda memperbarui file [config.json](gg-core.md#config-json), seperti yang ditunjukkan pada berikut ini:
   + Ganti setiap instance *certificateId* dengan ID sertifikat atas nama sertifikat dan file kunci.
   + Jika Anda mengunduh sertifikat CA root Amazon yang berbeda dari Amazon Root CA 1, ganti setiap instance *AmazonRootCA1.pem* dengan nama file CA root Amazon.

   ```
   {
     ...
     "crypto" : {
       "principals" : {
         "SecretsManager" : {
           "privateKeyPath" : "file:///snap/aws-iot-greengrass/current/greengrass/certs/certificateId-private.pem.keyy"
         },
         "IoTCertificate" : {
           "privateKeyPath" : "file:///snap/aws-iot-greengrass/current/greengrass/certs/certificateId-private.pem.key",
           "certificatePath" : "file:///snap/aws-iot-greengrass/current/greengrass/certs/certificateId-certificate.pem.crt"
         }
       },
       "caPath" : "file:///snap/aws-iot-greengrass/current/greengrass/certs/AmazonRootCA1.pem"
     },
     "writeDirectory": "/var/snap/aws-iot-greengrass/current/ggc-write-directory",
     "pidFileDirectory": "/var/snap/aws-iot-greengrass/current/pidFileDirectory"
   }
   ```

1. Jalankan perintah berikut untuk menambahkan file AWS IoT Greengrass sertifikat dan konfigurasi Anda:

   ```
   sudo snap set aws-iot-greengrass gg-certs=/home/ubuntu/my-certs
   ```

### Deploying fungsi Lambda
<a name="gg-snap-lambda"></a>

Bagian ini menunjukkan bagaimana untuk men-deploy fungsi Lambda yang dikelola pelanggan pada AWS IoT Greengrass snap.

**penting**  
AWS IoT Greengrass snap v1.11 hanya mendukung fungsi Lambda noncontainerized.

1. Jalankan perintah berikut untuk memulai AWS IoT Greengrass daemon:

   ```
   sudo snap start aws-iot-greengrass
   ```

   Contoh respons:

   ```
   Started.
   ```
**catatan**  
Jika Anda mendapatkan kesalahan, Anda dapat menggunakan perintah `snap run` untuk pesan kesalahan terperinci. Untuk informasi pemecahan masalah selengkapnya, lihat [error: tidak dapat melakukan tugas-tugas berikut: - Jalankan perintah layanan “start” untuk layanan ["greengrassd"] dari snap "aws-iot-greengrass" ([start snap. aws-iot-greengrass.greengrassd.service] gagal dengan status keluar 1: Job for snap. aws-iot-greengrass.greengrassd.service gagal karena proses kontrol keluar dengan kode kesalahan. Lihat “snap status systemctl. aws-iot-greengrass.greengrassd.service” dan “journalctl -xe” untuk detailnya.)](#gg-snap-troubleshoot-snaprun).

1. Jalankan perintah berikut untuk mengonfirmasi bahwa daemon sedang berjalan: 

   ```
   snap services aws-iot-greengrass.greengrassd
   ```

   Contoh respons:

   ```
   Service                         Startup   Current  Notes
   aws-iot-greengrass.greengrassd  disabled  active   -
   ```

1. Ikuti [Modul 3 (bagian 1): Lambda berfungsi pada AWS IoT Greengrass](https://docs.aws.amazon.com/greengrass/v1/developerguide/module3-I.html) untuk membuat dan men-deploy fungsi Hello World Lambda. Namun, sebelum Anda men-deploy fungsi Lambda, selesaikan langkah berikutnya.

1. Pastikan bahwa fungsi Lambda Anda menjalankan sebagai pengguna `snap_daemon` dan dalam mode tanpa kontainer. Untuk memperbarui pengaturan grup Greengrass Anda, lakukan hal berikut di konsol: AWS IoT Greengrass 

   1. Masuk ke AWS IoT Greengrass konsol.

   1. <a name="console-gg-groups"></a>**Di panel navigasi AWS IoT konsol, di bawah **Kelola**, perluas perangkat **Greengrass**, lalu pilih Grup (V1).**

   1. Di bawah **Grup Greengrass**, pilih grup target.

   1. Pada halaman konfigurasi grup, di panel navigasi, pilih tab Fungsi **Lambda**.

   1. Di bawah **lingkungan runtime fungsi Lambda default**, pilih **Edit**, dan lakukan hal berikut:

      1. Untuk **pengguna dan grup sistem default**, pilih ** ID/group ID pengguna lain**, lalu masukkan **584788** untuk **ID pengguna Sistem (nomor)** dan **ID grup sistem (nomor)**.

      1. Untuk **kontainerisasi fungsi Lambda Default**, pilih **Tanpa kontainer**.

      1. Pilih **Simpan**.

### Menghentikan AWS IoT Greengrass daemon
<a name="gg-snap-stop"></a>

Anda dapat menggunakan `snap stop` perintah untuk menghentikan layanan.

Untuk menghentikan AWS IoT Greengrass daemon, jalankan perintah berikut:

```
sudo snap stop aws-iot-greengrass
```

Perintah tersebut seharusnya mengembalikan `Stopped.`.

Untuk memeriksa apakah Anda berhasil menghentikan snap, jalankan perintah berikut:

```
snap services aws-iot-greengrass.greengrassd
```

Contoh respons:

```
Service                         Startup   Current   Notes
aws-iot-greengrass.greengrassd  disabled  inactive  -
```

### Menghapus instalasi snap AWS IoT Greengrass
<a name="gg-snap-uninstall"></a>

Untuk menghapus instalasi AWS IoT Greengrass snap, jalankan perintah berikut:

```
sudo snap remove aws-iot-greengrass
```

Contoh respons:

```
aws-iot-greengrass removed
```

### Memecahkan masalah snap AWS IoT Greengrass
<a name="gg-snap-troubleshoot"></a>

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

#### Mendapat kesalahan izin ditolak.
<a name="gg-snap-troubleshoot-permission-denied"></a>

**Solusi**: Kesalahan izin ditolak sering kali karena antarmuka yang hilang. Untuk daftar antarmuka yang hilang dan informasi pemecahan masalah terperinci, Anda dapat menggunakan `snappy-debug` alat.

Jalankan perintah berikut untuk menginstal alat.

```
sudo snap install snappy-debug
```

Contoh respons:

```
snappy-debug 0.36-snapd2.45.1 from Canonical✓ installed
```

Jalankan `sudo snappy-debug` perintah dalam sesi terminal terpisah. Operasi berlanjut hingga terjadi kesalahan izin ditolak.

Sebagai contoh, jika fungsi Lambda Anda mencoba untuk membaca file di `$HOME` direktori, Anda mungkin mendapatkan respons berikut:

```
INFO: Following '/var/log/syslog'. If have dropped messages, use:
INFO: $ sudo journalctl --output=short --follow --all | sudo snappy-debug
kernel.printk_ratelimit = 0
= AppArmor =
Time: Dec  6 04:48:26
Log: apparmor="DENIED" operation="mknod" profile="snap.aws-iot-greengrass.greengrassd" name="/home/ubuntu/my-file.txt" pid=12345 comm="touch" requested_mask="c" denied_mask="c" fsuid=0 ouid=0
File: /home/ubuntu/my-file.txt (write)
Suggestion:
* add 'home' to 'plugs'
```

Contoh ini menunjukkan bahwa membuat `/home/ubuntu/my-file.txt` file menyebabkan kesalahan izin. Hal ini juga menunjukkan bahwa Anda menambahkan `home` ke `plugs`. Namun, saran ini tidak berlaku. Plug `home-for-greengrassd` dan `home-for-hooks` hanya diberikan akses hanya-baca.

Untuk informasi selengkapnya, lihat: [snap snappy-debug](https://snapcraft.io/docs/debug-snaps#heading--snappy-debug) di *dokumentasi Snap*.

#### error: tidak dapat melakukan tugas-tugas berikut: - Jalankan perintah layanan “start” untuk layanan ["greengrassd"] dari snap "aws-iot-greengrass" ([start snap. aws-iot-greengrass.greengrassd.service] gagal dengan status keluar 1: Job for snap. aws-iot-greengrass.greengrassd.service gagal karena proses kontrol keluar dengan kode kesalahan. Lihat “snap status systemctl. aws-iot-greengrass.greengrassd.service” dan “journalctl -xe” untuk detailnya.)
<a name="gg-snap-troubleshoot-snaprun"></a>

**Solusi**: Anda mungkin melihat kesalahan ini ketika `snap start aws-iot-greengrass` perintah gagal memulai perangkat lunak AWS IoT Greengrass Core.

Untuk informasi pemecahan masalah selengkapnya, jalankan perintah berikut:

```
sudo snap run aws-iot-greengrass.greengrassd
```

Contoh respons:

```
Couldn't find /snap/aws-iot-greengrass/44/greengrass/config/config.json.
```

Contoh ini menunjukkan bahwa AWS IoT Greengrass tidak dapat menemukan `config.json` file. Anda mungkin memeriksa file konfigurasi dan sertifikat.

#### /var/snap/aws-iot-greengrass/current/ggc-write-directory/packages/1.11.5/rootfs/mergedbukan jalur absolut atau symlink.
<a name="gg-snap-troubleshoot-lambda"></a>

**Solusi**: AWS IoT Greengrass Snap hanya mendukung fungsi Lambda noncontainerized. Pastikan bahwa Anda menjalankan fungsi Lambda Anda dalam mode tanpa kontainer. Untuk informasi selengkapnya, lihat [Pertimbangan ketika memilih fungsi Lambda kontainerisasi](https://docs.aws.amazon.com/greengrass/v1/developerguide/lambda-group-config.html#no-container-mode) di *AWS IoT Greengrass Version 1 Panduan Developer*.

#### Daemon snapd gagal untuk me-restart setelah Anda menjalankan perintahsudo snap refresh snapd.
<a name="gg-snap-troubleshoot-snapd"></a>

**Solusi**: Ikuti langkah 6 hingga 8 [Instal dan konfigurasikan AWS IoT Greengrass snap](#gg-snap-install-config) untuk menambahkan AWS IoT Greengrass sertifikat dan file konfigurasi ke AWS IoT Greengrass snap.

## Arsipkan instalasi perangkat lunak AWS IoT Greengrass inti
<a name="archive-ggc-version"></a>

Saat Anda meningkatkan ke versi baru perangkat lunak AWS IoT Greengrass Core, Anda dapat mengarsipkan versi yang saat ini diinstal. Ini menjaga lingkungan instalasi Anda saat ini sehingga Anda dapat menguji versi perangkat lunak baru pada perangkat keras yang sama. Hal ini juga memudahkan untuk memutar kembali ke versi arsip Anda untuk alasan apa pun.

**Untuk mengarsip instalasi saat ini dan menginstal versi baru**

1. Mengunduh [AWS IoT Greengrass perangkat lunak Core](what-is-gg.md#gg-core-download-tab) paket instalasi yang ingin Anda tingkatkan.

1. Salin paket ke perangkat core tujuan. Untuk petunjuk yang menunjukkan bagaimana transfer file, lihat langkah [ini](start-greengrass.md#transfer-files-to-device).
**catatan**  
Anda menyalin sertifikat Anda saat ini, kunci, dan file konfigurasi untuk instalasi baru nanti.

   Jalankan perintah dalam langkah-langkah berikut di terminal perangkat core Anda.

1. Pastikan bahwa Greengrass daemon dihentikan pada perangkat core.

   1. Untuk memeriksa apakah daemon sedang berjalan:

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

      Jika outputnya berisi entri `root` untuk `/greengrass/ggc/packages/ggc-version/bin/daemon`, maka daemon sedang berjalan.
**catatan**  
Prosedur ini ditulis dengan asumsi bahwa perangkat lunak AWS IoT Greengrass Core diinstal di `/greengrass` direktori.

   1. Untuk menghentikan daemon:

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

1. Pindahkan direktori root Greengrass saat ini ke direktori yang berbeda.

   ```
   sudo mv /greengrass /greengrass_backup
   ```

1. Untar perangkat lunak baru pada perangkat core. Ganti *os-architecture* dan *version* placeholder dalam perintah.

   ```
   sudo tar –zxvf greengrass-os-architecture-version.tar.gz –C /
   ```

1. Salin sertifikat, kunci, dan file konfigurasi yang diarsipkan ke instalasi baru.

   ```
   sudo cp /greengrass_backup/certs/* /greengrass/certs
   sudo cp /greengrass_backup/config/* /greengrass/config
   ```

1. Mulai ulang daemon:

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

Sekarang, Anda dapat membuat deployment kelompok untuk mengetes instalasi baru. Jika ada yang gagal, Anda dapat memulihkan instalasi yang diarsipkan.

**Untuk memulihkan instalasi yang diarsipkan**

1. Hentikan daemon.

1. Hapus direktori `/greengrass` baru.

1. Pindahkan `/greengrass_backup` direktori kembali ke `/greengrass`.

1. Mulai daemon.