Perintah apk Alpine Linux: pasang paket, perbarui indeks dan sistem

Perintah apk, singkatan Alpine Package Keeper, mengelola paket Alpine Linux melalui pencarian, pemasangan, penghapusan, dan peningkatan. apk update menyegarkan indeks repositori, sedangkan apk upgrade memasang pembaruan paket; keduanya merupakan tindakan berbeda.

apk add menambahkan kebutuhan paket ke keadaan sistem yang diinginkan dan memasang paket beserta dependensinya. apk del menghapus kebutuhan tersebut lalu menyesuaikan paket yang masih diperlukan. Kebutuhan tingkat atas dicatat dalam /etc/apk/world; berkas ini bukan daftar setiap dependensi yang terpasang.

Sintaks, versi, dan hak akses

apk [opsi-global] perintah [paket ...]

Baris ini adalah pola, bukan perintah siap pakai. Periksa apk --version, apk --help, apk add --help, dan manual lokal bila tersedia. Versi apk-tools dan pilihan keluarannya dapat berbeda antar-rilis Alpine.

Contoh pemasangan berikut menggunakan sudo untuk perubahan sistem. Ini mengasumsikan sudo atau perintah pengganti yang kompatibel sudah tersedia dan akun Anda berwenang. Pada Alpine yang memakai doas, gunakan doas yang telah dikonfigurasi; dalam sesi root yang sah, jalankan bagian apk tanpa sudo. Jangan memasang pengelola hak akses baru hanya untuk menyalin contoh.

Siapkan koneksi, ruang penyimpanan, dan repositori yang cocok dengan rilis Alpine. Periksa /etc/apk/repositories sebelum mengubah sumber. Mencampur repositori stable dan edge dapat menyebabkan ketidakcocokan dependensi.

Mencari paket pada repositori

apk search nginx

search mencari kandidat yang cocok dengan nginx; hasil dapat mencakup kecocokan sebagian, bukan hanya satu nama persis. nginx merupakan contoh peladen web. Baca nama serta versi dan pilih nama paket yang benar-benar dibutuhkan.

Paket yang muncul pada pencarian belum tentu terpasang. Hasil juga bergantung pada indeks dan sumber yang tersedia. Bedakan pencarian paket tersedia dari pemeriksaan pemasangan lokal yang dijelaskan di bawah.

Menambahkan paket dan meninjau perubahan

sudo apk add nginx

add memasang nginx dan dependensi yang diperlukan, sekaligus mencatat kebutuhan paket. Dependensi adalah paket atau kemampuan lain yang diperlukan program. Periksa asal paket serta perubahan yang akan dilakukan sebelum menjalankan perintah pada sistem penting.

Jangan mengandalkan munculnya pertanyaan konfirmasi: apk secara bawaan tidak interaktif. Untuk peninjauan, periksa dukungan apk --simulate add nginx; simulasi tidak memasang paket dan bergantung pada indeks yang tersedia. Opsi --interactive meminta perilaku interaktif pada versi yang mendukungnya. Baca bantuan versi sebelum menggunakannya.

Sesudah pemasangan, periksa status paket dan fungsi aplikasi secara terpisah. Paket terpasang tidak membuktikan layanan sudah aktif atau konfigurasinya sesuai kebutuhan. Jangan melewati pemeriksaan tanda tangan untuk memaksa paket masuk.

Menyegarkan indeks lalu meningkatkan paket

sudo apk update
sudo apk upgrade

Baris pertama memperbarui indeks paket dari repositori; baris kedua meningkatkan paket yang dipilih oleh penyelesai dependensi sesuai kebutuhan world dan sumber yang dikonfigurasi. Tinjau versi serta ruang yang diperlukan, dan simpan cadangan konfigurasi penting sebelum perubahan.

Dua baris tersebut merupakan dua perintah terpisah. Jika update gagal, hentikan alur dan selesaikan galat sebelum menjalankan upgrade. Menempelkan keduanya sekaligus pada shell tidak membuat baris kedua otomatis dibatalkan ketika baris pertama gagal.

Peningkatan paket dalam rilis yang sama berbeda dari migrasi ke rilis Alpine lain. Mengubah repositori dan menjalankan upgrade tanpa meninjau panduan migrasi bukan prosedur peningkatan rilis lengkap.

Memeriksa apakah paket sudah terpasang

apk info -e busybox

Opsi -e pada info memeriksa status pemasangan. Jika busybox terpasang, contoh keluarannya:

busybox

busybox adalah nama paket dalam contoh, bukan jaminan hasil untuk semua citra Alpine. Jika semua paket yang disebut terpasang, pemeriksaan berhasil dengan status 0. Periksa status segera melalui echo $? pada shell; baca pesan galat bila pemeriksaan gagal.

Hasil ini memeriksa keberadaan paket dalam catatan pemasangan, bukan versi terbaru di repositori atau keutuhan seluruh berkas. Untuk informasi lebih rinci, gunakan bantuan apk info --help dan pilihan yang didukung versi Anda.

Perintah dan opsi utama

Bentuk Fungsi dan batasnya
search / info Mencari paket tersedia atau membaca informasi paket.
add / del Menambah atau menghapus kebutuhan paket dan menerapkan perubahan terkait.
update Menyegarkan indeks repositori, bukan memasang pembaruan program.
upgrade Meningkatkan paket sesuai sumber dan batasan yang berlaku.
--no-cache Tidak menggunakan jalur cache lokal untuk operasi tersebut; bukan opsi agar pemasangan otomatis bertahan setelah reboot.

Penghapusan dan penyimpanan perubahan

apk del menghapus kebutuhan dari world. Dependensi yang tidak diperlukan lagi dapat ikut dihapus, sedangkan kebutuhan paket lain tetap diperhitungkan. Tinjau simulasi sebelum penghapusan dan simpan konfigurasi yang masih dibutuhkan. Jangan menyamakan penghapusan paket dengan pembersihan semua data aplikasi atau data pribadi.

Pada mode diskless, sistem berjalan dari RAM sehingga pemasangan yang berhasil belum menjamin perubahan bertahan setelah reboot. Ikuti panduan mode diskless Alpine: siapkan penyimpanan konfigurasi dan cache paket, lalu gunakan lbu commit dengan hak yang sesuai setelah perubahan. lbu adalah Local Backup Utility. Pastikan berkas apkovl terbentuk pada media persisten; berkas ini menyimpan konfigurasi untuk dimuat kembali saat boot.

lbu bukan cadangan umum seluruh data aplikasi. Cache paket membantu pemasangan ulang saat boot, dan pembaruan kernel diskless mempunyai prosedur tersendiri. Jangan menganggap --no-cache menggantikan penyimpanan konfigurasi atau cache yang diperlukan oleh pola boot tersebut.

Pada kontainer, bedakan memulai ulang kontainer yang sama dari membuat kontainer baru. Perubahan lapisan tulis kontainer lama tidak otomatis masuk ke citra asal. Agar paket tersedia ketika dibuat ulang, catat pemasangannya dalam berkas pembangunan citra atau pengelolaan konfigurasi, lalu bangun dan periksa citra baru.

FAQ

Apa perbedaan apk add dan apk update?

add memasang paket yang diperlukan dan mencatat kebutuhannya. update menyegarkan indeks repositori. Pembaruan paket terpasang dilakukan melalui upgrade.

Mengapa paket hilang setelah sistem atau kontainer dibuat ulang?

Periksa mode pemasangan dan cara menyimpan perubahan. Diskless memerlukan konfigurasi persisten dan ketersediaan paket saat boot; kontainer baru memerlukan citra atau konfigurasi yang memuat paket tersebut.

Dokumentasi resmi

Rujuk buku panduan penggunaan apk dan panduan Alpine Package Keeper. Untuk rincian opsi, bandingkan bantuan terpasang dengan sumber manual apk upstream, karena cabang pengembangan dapat berbeda dari versi rilis Anda.