

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

# Kelola perangkat lunak pada AL2 instans Anda
<a name="managing-software"></a>

Distribusi dasar Amazon Linux berisi paket perangkat lunak dan utilitas yang diperlukan untuk operasi server dasar.

Informasi ini berlaku untuk AL2. Untuk selengkapnya AL2023, lihat [Mengelola paket dan pembaruan sistem operasi AL2023 di](https://docs.aws.amazon.com/linux/al2023/ug/managing-repos-os-updates.html) *Panduan Pengguna Amazon Linux 2023*.

Penting untuk selalu memperbarui perangkat lunak Banyak paket dalam distribusi Linux sering diperbarui untuk memperbaiki bug, menambah fitur, dan melindungi dari eksploitasi keamanan. Untuk informasi selengkapnya, lihat [Perbarui perangkat lunak instans pada AL2 instans Anda](install-updates.md).

Secara default, AL2 instance diluncurkan dengan repositori berikut diaktifkan:
+ `amzn2-core`
+ `amzn2extra-docker`

Meskipun ada banyak paket yang tersedia di repositori ini yang diperbarui oleh AWS, mungkin ada paket yang ingin Anda instal yang terkandung dalam repositori lain. Untuk informasi selengkapnya, lihat [Tambahkan repositori pada sebuah instance AL2](add-repositories.md). Untuk bantuan menemukan dan menginstal paket di repositori yang diaktifkan, lihat [Temukan dan instal paket perangkat lunak pada sebuah AL2 instance](find-install-software.md).

Tidak semua perangkat lunak tersedia dalam paket perangkat lunak yang disimpan dalam repositori; beberapa perangkat lunak harus dikompilasi pada sebuah instans dari kode sumbernya. Untuk informasi selengkapnya, lihat [Bersiaplah untuk mengkompilasi perangkat lunak pada sebuah instance AL2](compile-software.md).

AL2 instance mengelola perangkat lunak mereka menggunakan manajer paket yum. Manajer paket yum dapat menginstal, menghapus, dan memperbarui perangkat lunak, serta mengelola semua dependensi untuk setiap paket.

**Topics**
+ [Perbarui perangkat lunak instans pada AL2 instans Anda](install-updates.md)
+ [Tambahkan repositori pada sebuah instance AL2](add-repositories.md)
+ [Temukan dan instal paket perangkat lunak pada sebuah AL2 instance](find-install-software.md)
+ [Bersiaplah untuk mengkompilasi perangkat lunak pada sebuah instance AL2](compile-software.md)

# Perbarui perangkat lunak instans pada AL2 instans Anda
<a name="install-updates"></a>

Perangkat lunak harus selalu diperbarui. Banyak paket dalam distribusi Linux sering diperbarui untuk memperbaiki bug, menambah fitur, dan melindungi dari eksploitasi keamanan. Saat pertama kali meluncurkan dan terhubung ke instans Amazon Linux, Anda mungkin melihat pesan yang meminta Anda untuk memperbarui paket perangkat lunak untuk tujuan keamanan. Bagian ini menunjukkan cara memperbarui seluruh sistem, atau hanya satu paket.

Informasi ini berlaku untuk AL2. Untuk selengkapnya AL2023, lihat [Mengelola paket dan pembaruan sistem operasi AL2023 di](https://docs.aws.amazon.com/linux/al2023/ug/managing-repos-os-updates.html) *Panduan Pengguna Amazon Linux 2023*.

Untuk informasi tentang perubahan dan pembaruan AL2, lihat [catatan AL2 rilis](https://docs.aws.amazon.com/AL2/latest/relnotes/relnotes-al2.html).

Untuk informasi tentang perubahan dan pembaruan AL2023, lihat [catatan AL2023 rilis](https://docs.aws.amazon.com/linux/al2023/release-notes/relnotes.html).

**penting**  
Jika Anda meluncurkan instans EC2 yang menggunakan Amazon Linux 2 AMI ke subnet IPv6 -only, Anda harus terhubung ke instans dan menjalankannya. `sudo amazon-linux-https disable` Ini memungkinkan AL2 instance Anda terhubung ke yum repositori di S3 melalui IPv6 menggunakan layanan patch http.

**Untuk memperbarui semua paket pada sebuah AL2 instance**

1. (Opsional) Mulai sesi **screen** di jendela shell Anda. Terkadang Anda mungkin mengalami gangguan jaringan yang dapat memutuskan koneksi SSH ke instans Anda. Jika ini terjadi selama pembaruan perangkat lunak yang lama, instans dapat dipulihkan, meskipun status membingungkan. Sebuah sesi **screen** memungkinkan Anda untuk terus menjalankan pembaruan meskipun koneksi Anda terputus, dan Anda dapat menyambung kembali ke sesi nanti tanpa masalah.

   1. Jalankan perintah **screen** untuk memulai sesi.

      ```
      [ec2-user ~]$ screen
      ```

   1. Jika sesi Anda terputus, masuk kembali ke instans Anda dan buat daftar layar yang tersedia.

      ```
      [ec2-user ~]$ screen -ls
      There is a screen on:
      	17793.pts-0.ip-12-34-56-78	(Detached)
      1 Socket in /var/run/screen/S-ec2-user.
      ```

   1. Hubungkan kembali ke layar menggunakan perintah **screen -r** dan ID proses dari perintah sebelumnya.

      ```
      [ec2-user ~]$ screen -r 17793
      ```

   1. Saat Anda selesai menggunakan **screen**, gunakan perintah **exit** untuk menutup sesi.

      ```
      [ec2-user ~]$ exit
      [screen is terminating]
      ```

1. Jalankan perintah **yum update**. Secara opsional, Anda dapat menambahkan bendera `--security` untuk menerapkan pembaruan keamanan saja.

   ```
   [ec2-user ~]$ sudo yum update
   ```

1. Tinjau paket yang terdaftar, ketik, **y**dan tekan Enter untuk menerima pembaruan. Memperbarui semua paket pada sistem memakan waktu beberapa menit. Itu**yum** output menunjukkan status pembaruan saat sedang berjalan.

1. (Opsional) [Reboot instance Anda](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-reboot.html) untuk memastikan bahwa Anda menggunakan paket dan pustaka terbaru dari pembaruan Anda; pembaruan kernel tidak dimuat sampai reboot terjadi. Pembaruan untuk semua pustaka `glibc` juga harus diikuti dengan reboot. Pembaruan pada paket yang mengontrol layanan mungkin cukup dilakukan dengan memulai ulang layanan untuk mengambil pembaruan, tetapi reboot sistem memastikan bahwa semua pembaruan paket dan pustaka sebelumnya telah selesai.

**Untuk memperbarui satu paket pada sebuah AL2 instance**

Gunakan prosedur ini untuk memperbarui satu paket (dan dependensinya) alih-alih seluruh sistem.

1. Jalankan perintah **yum update** dengan nama paket yang ingin Anda perbarui.

   ```
   [ec2-user ~]$ sudo yum update openssl
   ```

1. Tinjau informasi paket yang terdaftar, ketik, **y**dan tekan Enter untuk menerima pembaruan atau beberapa pembaruan. Terkadang akan ada lebih dari satu paket yang terdaftar jika ada dependensi paket yang harus diselesaikan. Output **yum** menunjukkan status pembaruan saat sedang berjalan.

1. (Opsional) [Reboot instance Anda](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-reboot.html) untuk memastikan bahwa Anda menggunakan paket dan pustaka terbaru dari pembaruan Anda; pembaruan kernel tidak dimuat sampai reboot terjadi. Pembaruan untuk semua pustaka `glibc` juga harus diikuti dengan reboot. Pembaruan pada paket yang mengontrol layanan mungkin cukup dilakukan dengan memulai ulang layanan untuk mengambil pembaruan, tetapi reboot sistem memastikan bahwa semua pembaruan paket dan pustaka sebelumnya telah selesai.

# Tambahkan repositori pada sebuah instance AL2
<a name="add-repositories"></a>

Informasi ini berlaku untuk AL2. Untuk selengkapnya AL2023, lihat [Peningkatan deterministik melalui repositori berversi di](https://docs.aws.amazon.com/linux/al2023/ug/deterministic-upgrades.html) Panduan Pengguna *Amazon AL2023* Linux 2023.

Secara default, AL2 instance diluncurkan dengan repositori berikut diaktifkan:
+ `amzn2-core`
+ `amzn2extra-docker`

Meskipun ada banyak paket yang tersedia di repositori ini yang diperbarui oleh Amazon Web Services, mungkin ada paket yang ingin Anda instal yang terdapat di repositori lain.

Untuk menginstal paket dari repositori yang berbeda dengan **yum**, Anda perlu menambahkan informasi repositori ke file `/etc/yum.conf` atau file `repository.repo` miliknya sendiri di direktori `/etc/yum.repos.d`. Anda dapat melakukannya secara manual, tetapi kebanyakan repositori yum menyediakan file `repository.repo` sendiri di URL repositori mereka.

**Untuk menentukan repositori yum apa yang sudah terinstal**  
Buat daftar repositori yum yang diinstal dengan perintah berikut:

```
[ec2-user ~]$ yum repolist all
```

Output yang dihasilkan mencantumkan repositori yang diinstal dan melaporkan status masing-masing. Repositori yang diaktifkan menampilkan jumlah paket yang dikandungnya.

**Untuk menambahkan repositori yum ke /etc/yum.repos.d**

1. Temukan lokasi file `.repo`. Ini akan bervariasi tergantung pada repositori yang Anda tambahkan. Dalam contoh ini, file `.repo` ada di `https://www.example.com/repository.repo`.

1. Tambahkan repositori dengan perintah **yum-config-manager**.

   ```
   [ec2-user ~]$ sudo yum-config-manager --add-repo https://www.example.com/repository.repo
   Loaded plugins: priorities, update-motd, upgrade-helper
   adding repo from: https://www.example.com/repository.repo
   grabbing file https://www.example.com/repository.repo to /etc/yum.repos.d/repository.repo
   repository.repo                                      | 4.0 kB     00:00
   repo saved to /etc/yum.repos.d/repository.repo
   ```

Setelah menginstal repositori, Anda harus mengaktifkannya seperti yang dijelaskan di prosedur selanjutnya.

**Untuk mengaktifkan repositori yum di /etc/yum.repos.d**  
Gunakan perintah **yum-config-manager** dengan bendera `--enable repository`. Perintah berikut mengaktifkan repositori Paket Ekstra untuk Enterprise Linux (EPEL) dari proyek Fedora. Secara default, repositori ini berada di `/etc/yum.repos.d` pada instans AMI Amazon Linux, tetapi tidak diaktifkan.

```
[ec2-user ~]$ sudo yum-config-manager --enable epel
```

Untuk informasi lebih lanjut, dan untuk mengunduh versi terbaru dari paket ini, lihat [https://fedoraproject. org/wiki/EPEL](https://fedoraproject.org/wiki/EPEL).

# Temukan dan instal paket perangkat lunak pada sebuah AL2 instance
<a name="find-install-software"></a>

Anda dapat menggunakan alat manajemen paket untuk menemukan dan menginstal paket perangkat lunak. Di Amazon Linux 2, alat manajemen paket perangkat lunak default adalahYUM. Di AL2023, alat manajemen paket perangkat lunak default adalahDNF. Untuk informasi selengkapnya, lihat [Alat manajemen paket](https://docs.aws.amazon.com/linux/al2023/ug/package-management.html) di *Panduan Pengguna Amazon Linux 2023*.

## Temukan paket perangkat lunak pada sebuah AL2 instance
<a name="find-software"></a>

Anda dapat menggunakan perintah **yum search** untuk mencari deskripsi paket yang tersedia di repositori yang Anda konfigurasikan. Ini sangat membantu jika Anda tidak tahu nama pasti dari paket yang ingin Anda instal. Cukup tambahkan pencarian kata kunci ke perintah; untuk pencarian beberapa kata, bungkus permintaan pencarian dengan tanda kutip.

```
[ec2-user ~]$ yum search "find"
```

Berikut ini adalah output contoh.

```
Loaded plugins: extras_suggestions, langpacks, priorities, update-motd
============================== N/S matched: find ===============================
findutils.x86_64 : The GNU versions of find utilities (find and xargs)
gedit-plugin-findinfiles.x86_64 : gedit findinfiles plugin
ocaml-findlib-devel.x86_64 : Development files for ocaml-findlib
perl-File-Find-Rule.noarch : Perl module implementing an alternative interface to File::Find
robotfindskitten.x86_64 : A game/zen simulation. You are robot. Your job is to find kitten.
mlocate.x86_64 : An utility for finding files by name
ocaml-findlib.x86_64 : Objective CAML package manager and build helper
perl-Devel-Cycle.noarch : Find memory cycles in objects
perl-Devel-EnforceEncapsulation.noarch : Find access violations to blessed objects
perl-File-Find-Rule-Perl.noarch : Common rules for searching for Perl things
perl-File-HomeDir.noarch : Find your home and other directories on any platform
perl-IPC-Cmd.noarch : Finding and running system commands made easy
perl-Perl-MinimumVersion.noarch : Find a minimum required version of perl for Perl code
texlive-xesearch.noarch : A string finder for XeTeX
valgrind.x86_64 : Tool for finding memory management bugs in programs
valgrind.i686 : Tool for finding memory management bugs in programs
```

Kueri penelusuran beberapa kata dalam tanda kutip hanya memberikan hasil yang cocok dengan kueri yang sama persis. Jika Anda tidak melihat paket yang diharapkan, sederhanakan pencarian Anda menjadi satu kata kunci dan kemudian scan hasilnya. Anda juga dapat mencoba sinonim kata kunci untuk memperluas pencarian Anda.

Untuk informasi selengkapnya tentang paket AL2, lihat berikut ini:
+ [AL2 Perpustakaan Ekstra](al2-extras.md)
+ [Package repositori](ec2.md#package-repository)

## Instal paket perangkat lunak pada sebuah AL2 instance
<a name="install-software"></a>

Di AL2, alat manajemen paket yum mencari semua repositori yang diaktifkan untuk paket perangkat lunak yang berbeda dan menangani dependensi apa pun dalam proses instalasi perangkat lunak. Untuk informasi tentang menginstal paket perangkat lunak AL2023, lihat [Mengelola paket dan pembaruan sistem operasi](https://docs.aws.amazon.com/linux/al2023/ug/managing-repos-os-updates.html) di *Panduan Pengguna Amazon Linux 2023*.

**Untuk menginstal paket dari repositori**  
Gunakan **yum install *package*** perintah, ganti *package* dengan nama perangkat lunak yang akan diinstal. Misalnya, untuk menginstal browser web berbasis teks **links**, masukkan perintah berikut.

```
[ec2-user ~]$ sudo yum install links
```

**Untuk menginstal file paket RPM yang telah diunduh**  
Anda juga bisa menggunakan **yum install** untuk menginstal file paket RPM yang telah Anda unduh dari internet. Untuk melakukan ini, cukup tambahkan nama jalur file RPM ke perintah instalasi, bukan nama paket repositori.

```
[ec2-user ~]$ sudo yum install my-package.rpm
```

**Untuk mendaftar paket yang diinstal**  
Untuk melihat daftar paket yang diinstal pada instans Anda, gunakan perintah berikut.

```
[ec2-user ~]$ yum list installed
```

# Bersiaplah untuk mengkompilasi perangkat lunak pada sebuah instance AL2
<a name="compile-software"></a>

Perangkat lunak sumber terbuka tersedia di internet yang belum dikompilasi sebelumnya dan tersedia untuk diunduh dari repositori paket. Anda mungkin akhirnya menemukan paket perangkat lunak yang harus Anda kompilasi sendiri, dari kode sumbernya. Agar sistem Anda dapat mengkompilasi perangkat lunak di AL2 dan Amazon Linux, Anda perlu menginstal beberapa alat pengembangan, seperti**make**,**gcc**, dan**autoconf**.

Karena kompilasi perangkat lunak bukanlah tugas yang dibutuhkan oleh setiap instans Amazon EC2, alat-alat ini tidak diinstal secara default, tetapi tersedia dalam grup paket yang disebut "Alat Pengembangan" yang dapat dengan mudah ditambahkan ke instans dengan perintah **yum groupinstall**.

```
[ec2-user ~]$ sudo yum groupinstall "Development Tools"
```

Paket kode sumber perangkat lunak sering tersedia untuk diunduh (dari situs web seperti [https://github.com/](https://github.com/)dan [http://sourceforge.net/](https://sourceforge.net/)) sebagai file arsip terkompresi, yang disebut tarball. Tarball ini biasanya memiliki ekstensi file `.tar.gz`. Anda dapat mendekompresi arsip ini dengan perintah **tar**.

```
[ec2-user ~]$ tar -xzf software.tar.gz
```

Setelah Anda mendekompresi dan membatalkan pengarsipan paket kode sumber, Anda harus mencari file `README` atau `INSTALL` di direktori kode sumber yang dapat memberi Anda petunjuk lebih lanjut untuk mengompilasi dan menginstal kode sumber. 

**Untuk mengambil kode sumber untuk paket Amazon Linux**  
Amazon Web Services menyediakan kode sumber untuk paket yang dipelihara. Anda dapat mengunduh kode sumber untuk paket apa pun yang diinstal dengan perintah **yumdownloader --source**.

Jalankan **yumdownloader --source *package*** perintah untuk mengunduh kode sumber untuk*package*. Misalnya, untuk mengunduh kode sumber untuk paket, `htop` masukkan perintah berikut.

```
[ec2-user ~]$ yumdownloader --source htop

Loaded plugins: priorities, update-motd, upgrade-helper
Enabling amzn-updates-source repository
Enabling amzn-main-source repository
amzn-main-source                                                                                              | 1.9 kB  00:00:00     
amzn-updates-source                                                                                           | 1.9 kB  00:00:00     
(1/2): amzn-updates-source/latest/primary_db                                                                  |  52 kB  00:00:00     
(2/2): amzn-main-source/latest/primary_db                                                                     | 734 kB  00:00:00     
htop-1.0.1-2.3.amzn1.src.rpm
```

Lokasi RPM sumber ada di direktori tempat Anda menjalankan perintah.