Panduan Ringkas Apt-Get


Bismillahirrahmanirrahim.

Tulisan ini tersedia dalam PDF

synapticTulisan ini adalah panduan penggunaan apt-get secara ringkas agar Anda dapat langsung menggunakan Ubuntu ketika pertama mengenalnya. Tulisan ini hanya berisi daftar perintah APT, penjelasannya, gambar-gambarnya, kemudian daftar error beserta solusinya. Dengan tulisan ini, Anda diharapkan mengerti secara gamblang sistem instalasi aplikasi di Ubuntu dengan apt-get. Semoga tulisan ini bermanfaat untuk Anda.

1. Sekilas Kebutuhan apt-get

start-here

Apa saja yang pasti ada dalam instalasi aplikasi di Ubuntu?

  1. Repositori (server yang berisi paket-paket program).
  2. Paket program (formatnya .deb, seperti .exe di Windows).
  3. Internet, atau media yang menyampaikan apt-get kepada repositori.

2. Sekilas Istilah-Istilah Penting

bookmarks1

Apa saja istilah yang harus Anda ketahui supaya mengerti penjelasan ini?

  1. Paket = program = aplikasi. Biasanya, ada sedikit perbedaan nama untuk aplikasi dan paket. Misalnya, nama aplikasinya LibreOffice, tetapi nama paketnya libreoffice. Di sini, yang selalu digunakan adalah nama paket.
  2. Dependensi. Paket-paket yang dibutuhkan oleh paket yang akan kita instal. Inilah inti pekerjaan APT dan dengan sendirinya inti penjelasan tulisan ini.
  3. DEB. Format nama paket di Ubuntu adalah .deb layaknya .exe di Windows.
  4. Indeks. Daftar isi repositori.

3. Skema Metode Instalasi Aplikasi di Ubuntu

Metode instalasi aplikasi di Ubuntu berbeda dengan Windows. Lihat gambar skema ini.

skema-apt2

Skema di atas menjelaskan alur instalasi program di Ubuntu ketika pengguna baru saja selesai memasang Ubuntu di komputernya. Berikut keterangannya.

1. & 2. apt-get mengambil indeks repositori (online).
3. Pengguna meminta instal satu paket kepada apt-get (offline).
4. apt-get mencari paket di dalam indeks (offline).
4. apt-get membuat daftar URL unduhan paket-paket dari indeks (offline)
5. apt-get berangkat mengunduh seluruh URL itu (online).
6. apt-get menginstal semua hasil unduhan itu (offline).

Saya bagi skema di atas berdasarkan tahapan-tahapan, koneksi, langkah kerja, dan legenda. Ada 6 tahapan kerja inti pada instalasi aplikasi di Ubuntu. Silakan cermati skemanya. Kemudian, ada kondisi offline dan ada kondisi online ketika instalasi. Kemudian, saya meletakkan pembagian langkah kerja menjadi 2 bagian besar yakni mendapatkan dependensi dan menginstal dependensi. Inilah pembagian terpenting dalam skema, inti dari sistem instalasi di Ubuntu yang aslinya memang hanya 2 langkah. Ini diletakkan supaya Anda paham betul bagaimana alur kerja apt dan nantinya pemahaman 2 bagian besar ini akan berguna untuk menginstal aplikasi di Ubuntu secara offline.

Perhatikan bahwa indeks repositori sangat penting. Tanpanya, apt-get tidak bisa melakukan instalasi aplikasi (nomor 4, 5, 6). Indeks ini berisi daftar URL lengkap dari seluruh isi server yang berupa paket-paket .deb. Indeks ini sejatinya adalah berkas-berkas teks biasa yang berada di folder /var/lib/apt/lists/. Jadi, APT bisa menginstalkan aplikasi untuk kita itu, dengan membaca indeks ini. Tentulah untuk membaca, indeks harus ada terlebih dulu. Maka tahap 1 dan 2 inilah cara memperoleh indeksnya. Tahap 1 (sudo apt-get update) hanya perlu dilakukan 1 kali untuk berapa kali pun dilakukan tahap setelahnya. Bisa dikatakan, Anda hanya perlu melakukan tahap 1 sekali untuk seumur hidup. Ini berlaku jika Anda hanya menggunakan 1 repositori saja (tidak mencampurnya dengan repositori lain) dan tidak menggantinya.

4. Dasar Umum Metode Instalasi di Linux

system-run

Setelah Anda mencermati skema di atas, Anda masih perlu memahami metode dasar instalasi aplikasi di Linux secara garis besar. Metode yang ringkas ini ada di seluruh distro Linux dan menjadi dasar juga bagi APT. Perhatikan ini.

  1. Mengambil dependensi.
  2. Menginstal dependensi.

Itulah yang terjadi pada seluruh kegiatan instalasi aplikasi di Linux apa pun. Hanya saja, tiap distro memiliki manajer sendiri-sendiri. Kebetulan, di Ubuntu manajernya bernama APT dan akan dibahas pada tulisan ini. APT sendiri bekerja berdasarkan 2 metode ini. Dan dengan mengatahui ini, Anda akan memahami nantinya cara menginstal aplikasi Ubuntu tanpa internet.

5. Dasar Metode Instalasi APT

system-run

Setelah skema dan dasar umum di atas, Anda masih perlu memahami dasar metode APT menginstal suatu aplikasi. Dengan ini diharapkan Anda paham 2 pekerjaan inti APT sehingga mampu menyelesaikan masalah instalasi sendiri.

Untuk Metode Umum 1 – Mendapatkan Dependensi

  1. APT mengambil paket yang kita minta sekaligus dependensinya dari server. Ini dilakukan dengan sudo apt-get install.
  2. Untuk itu, sebelumnya APT memerlukan daftar isi server yang dituju. Ini diatur oleh indeks yakni berkas-berkas di dalam folder /var/lib/apt/lists/.
  3. Untuk itu, sebelumnya APT harus dikonfigurasikan dulu ke server mana (Indonesia atau luar negeri) dia menuju. Ini diatur dengan berkas teks /etc/apt/sources.list.
  4. Untuk memperoleh nomor 2, kita melakukan sudo apt-get update.
  5. Untuk mengatur nomor 3, kita harus menyunting isi teks sources.list entah secara manual atau otomatis dengan bantuan aplikasi lain.
  6. APT mampu mencari dependensi secara tepat 100% di dalam server karena memiliki indeks lalu mengunduh semua dependensi ke dalam folder unduhan yakni /var/cache/apt/archives/.

Untuk Metode Umum 2 – Menginstal Dependensi

  1. APT menyuruh DPKG untuk menginstal dependensi-dependensi yang diperlukan di dalam folder unduhan yakni /var/cache/apt/archives/.
  2. DPKG menyimpan informasi apa pun yang diinstal maupun diuninstal ke dalam berkas teks /var/lib/dpkg/status.

Perlu diperhatikan dengan sangat, berkas status ini. Berkas status ini penting. Berkas inilah yang menyebabkan APT dapat menentukan dependensi-dependensi apa saja untuk Ubuntu kita. Berkas ini akan berguna untuk memecahkan permasalahan instalasi tanpa internet.

6. Daftar Perintah APT

application-vnd.ms-excel

Berikut ini tabel berisi perintah-perintah APT yang pasti akan Anda gunakan. Gantilah <namapaket> dengan nama aplikasi yang ingin diinstal menurut nama paketnya.

Perintah Keterangan Contoh Hasil
sudo apt-get update Ini adalah perintah untuk memperoleh indeks dari server repositori. sudo apt-get update Indeks pada folder indeks Anda akan disesuaikan dengan server yang dipilih di sources.list. Misalnya jika sources.list memilih server UI, maka indeks akan berisi daftar URL dari server UI juga. Perintah ini tidak akan meng-update atau meng-upgrade sistem, juga tidak menambah suatu paket baru.
sudo apt-get install <namapaket> Ini adalah perintah untuk mengunduh dan menginstal suatu aplikasi. sudo apt-get install gimp Aplikasi GIMP diunduh dari server yang ditentukan oleh sources.list lalu diinstal di Ubuntu. Anda bisa membukanya dari menu Ubuntu.
sudo apt-get remove <namapaket> Ini adalah perintah untuk menghapus suatu paket. sudo apt-get remove gimp Aplikasi GIMP dihapus dari sistem Ubuntu tetapi hanya paket gimp itu saja, dependensi gimp –yang ikut ketika gimp diinstal– tidak ikut dihapus.
sudo apt-get autoremove <namapaket> Ini adalah perintah untuk menghapus suatu paket beserta dependensinya. sudo apt-get autoremove gimp Aplikasi GIMP dihapus dari sistem Ubuntu beserta dependensi-dependensinya (dependensi yang ikut kala gimp diinstal).
sudo apt-get purge <namapaket> Menghapus suatu paket beserta berkas-berkas yang dibuatnya di dalam sistem. sudo apt-get purge gimp Aplikasi GIMP dihapus beserta berkas-berkas konfigurasinya (misalnya Recent FilesPreferencesBrushes, dsb.)
sudo apt-get upgrade Meng-upgrade seluruh aplikasi di dalam Ubuntu. sudo apt-get upgrade Seluruh aplikasi di dalam Ubuntu menjadi versi terbaru. Namun versi Ubuntu tidak ikut naik tingkat, 12.04 tetap 12.04.
sudo apt-get -f install Melakukan fix broken packages jika terjadi kesalahan instalasi di sistem. sudo apt-get -f install Hasilnya sama dengan menjalankan menu Fix Broken Packages dari Synaptic Package Manager. Jika ada kerusakan dependensi di Ubuntu, maka akan dicarikan solusi dan APT akan meminta internet untuk menyelesaikannya. Setelahnya, insya Allah semua masalah broken packages akan selesai.

7. Daftar Error APT dan Solusinya

application-vnd.ms-excel

Berikut ini daftar error dari APT maupun DPKG yang dapat saya temukan dengan Google beserta solusinya. Perlu diingat, saya tidak menjamin solusi yang ada 100% berhasil pada masalah Anda. Di sini, posisi saya hanya mengusahakan solusi. Selebihnya, silakan Anda mencari sendiri. Jika Anda mengetahui solusi-solusi lain, silakan hubungi saya.

Error Arti Error Solusi
E: Unable to locate package libraoffice
  1. Anda salah mengetik nama paket.
  2. Anda mengetik nama paket yang tidak ada dalam indeks.
  1. Periksa nama paketnya.
  2. Lakukan sudo apt-get update. Jika tidak ketemu juga, googling dengan pesan error itu sebagai kata kunci.
E: Could not get lock /var/lib/dpkg/lock – open (11: Resource temporarily unavailable)
E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?
Anda menjalankan dua aplikasi APT bersamaan. Biasanya satu di Terminal dan satu lagi Ubuntu Software Center. Tutup salah satunya.
dpkg: error: parsing file ‘/var/lib/dpkg/status’ near line 12345 package ‘indicator-displex’:
blank line in value of field ‘Description
Ada kesalahan pada berkas status. http://askubuntu.com/questions/126322/how-do-i-fix-dpkg-errors-after-a-failed-upgrade
(Reading database … dpkg: unrecoverable fatal error, aborting:
unable to open files list file for package `libtheora0′: Input/output error
E: Sub-process /usr/bin/dpkg returned an error code (2)
Ada masalah pada berkas status, pada bagian libtheora0. http://ubuntuforums.org/showthread.php?t=1232143
Errors were encountered while processing:
/var/cache/apt/archives/libjack-jackd2-0_1.9.8~dfsg.2-1precise1_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
Ada kesalahan pada salah satu paket dependensi, dalam hal ini libjack-jackd2-0_1.9.8~dfsg.2-1precise1_i386.deb http://askubuntu.com/questions/171205/file-is-different-from-the-same-file-on-the-system
dpkg: unrecoverable fatal error, aborting: reading files list for package ‘inkscape’: Input/output error E: Sub-process /usr/bin/dpkg returned an error code (2) Ada kesalahan pada berkas status. http://stackoverflow.com/questions/18602257/sub-process-usr-bin-dpkg-returned-an-error-code-2
dpkg: unrecoverable fatal error, aborting:
files list file for package ‘libopenal1:i386’ is missing final newline
E: Sub-process /usr/bin/dpkg returned an error code (2)
Ada berkas .list yang rusak dan harus dihapus. http://forums.linuxmint.com/viewtopic.php?t=109725&f=34
W: GPG error: ftp://ftp.debian.org/ testing Release:
The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY 010908312D230C5FW: There is no public key available for the following key IDs:
010908312D230C5F
Bukan error penting, hanya GPG key yang belum terpasang. Diabaikan pun tidak masalah. http://en.kioskea.net/faq/809-debian-apt-get-no-pubkey-gpg-error

8. Instalasi Aplikasi Secara Offline

ktip

Karena kebanyakan pengguna Linux di Indonesia kesulitan masalah internet, maka perlu sekali dituliskan metode instalasi aplikasi secara offline. Metode ini mirip cara kita kala menginstal aplikasi Windows biasanya yakni ke warnet untuk mengunduh installer lalu pulang menginstalnya. Seperti yang saya tekankan di atas, ada 2 hal pokok dalam instalasi aplikasi di Ubuntu. Berikut ini saya tekankan lagi.

  1. Mendapatkan dependensi.
  2. Menginstal dependensi.

Dua hal ini berlaku untuk instalasi aplikasi secara online juga secara offline. Maka sekarang tersisa pertanyaan: bagaimanakah cara mendapatkan dependensinya? Jawabannya adalah dengan memanfaatkan kemampuan APT itu sendiri untuk mencari dependensi secara 100% tepat dengan memakai berkas status dan berkas indeks. Bagaimana caranya? Caranya dengan perintah khusus. Berikut ini saya jabarkan langkah-langkahnya.

8.1. Mendapatkan Dependensi

sudo apt-get --print-uris --yes install abiword | grep ^\' | cut -d\' -f2 > abiword.txt

Maksud perintah di atas adalah memperoleh URL-URL dependensi dari program Abiword lalu dituliskan ke dalam teks abiword.txt. Berikut ini contoh isi abiword.txt dari Ubuntu saya.

pengantar-avr-linux-ii70

Lihatlah. Ini cara yang sama ketika APT melakukan langkah 4 dan 5 dalam skema kita di atas. Karena APT memiliki URL-URL dependensilah dia bisa mengunduhnya lalu menginstal. Sekarang sama dengan Anda. Dapatkan URL-URL dependensinya lalu pergilah ke warnet untuk mengunduh seluruh URL dalam abiword.txt itu. Gunakanlah download manager macam Uget yang bisa mengunduh seluruh URL dalam 1 berkas TXT secara otomatis ke dalam flash disk. Simpan ke dalam 1 folder dan berilah nama sesuai paketnya, misalnya. Bawa pulang.

pengantar-avr-linux-ii71

8.2. Menginstal Dependensi

  1. Pindahkan folder tadi ke Home Anda.
  2. Gunakan Terminal, pindah ke folder tadi.
  3. sudo dpkg -i *.deb
  4. Tunggu sampai instalasi selesai.

Empat langkah ini sama saja dengan APT pada langkah 6 pada skema kita di atas. Langkah 8.1 sampai 8.2 ini bisa dilakukan dalam kurun waktu kurang dari 30 menit saja.

9. Penutup

system-shutdown

Tulisan ini bagaimanapun hanyalah panduan ringkas. Tulisan ini tidak membahas apt-get di belakang proxy server, atau pengaturan alias, atau perintah-perintah APT lanjutan. Diharapkan dengan adanya tulisan ini, para pembaca yang berpengalaman dapat menulis tulisan yang belum ada itu. Tulisan ini terinspirasi dari referensi nomor 2 di bawah. Semoga tulisan ini menjadi panduan terbaik untuk pemula dalam hal instalasi program.

10. Referensi

  1. http://www.webupd8.org/2009/11/get-list-of-packages-and-dependencies.html
  2. http://wiki.ubuntu-id.org/AptGetHowTo

30 thoughts on “Panduan Ringkas Apt-Get

  1. tegariman

    Mas pengen berbagi pengalaman tentang error di apt-get. Waktu itu mendapat error “Unable to lock the administration directory” Tetapi tidak ada proses apt yang bertumpuk (synhttp://askubuntu.com/questions/15433/unable-to-lock-the-administration-directory-var-lib-dpkg-is-another-processaptic dkk)

    solusinya dengan menghapus file lock-nya http://askubuntu.com/questions/15433/unable-to-lock-the-administration-directory-var-lib-dpkg-is-another-process

    begitu aja sharingnya, makasih udah bikin rangkuman lengkap :)

    Balas
  2. Ping balik: Kumpulan PPA Ubuntu yang Berguna | Ade Malsasa Akbar

  3. Ping balik: Panduan Ringkas Apt-Get | OI rickynda

  4. Ping balik: Pengantar Pemrograman OpenGL GLUT C++ di Linux | Ade Malsasa Akbar

  5. Ping balik: Pentingnya Sebuah Tutorial Bagi Seorang Pemula | Ade Malsasa Akbar

  6. Caisar Aditya

    barangkali bisa menambah informasi, bahwa memasukan perintah “apt-get install aplikasi-terinstall” akan juga akan mengupgrade aplikasi tersebut ke versi terbaru misal kita tidak ingin memperbaharui seluruh aplikasi (“apt-get upgrade” akan menupgrade semua aplikasi yang perlu diupgrade)

    Balas
  7. Ping balik: Catatan Ngoprek Harian Edisi 2 | Ade Malsasa Akbar

  8. Ping balik: Panduan Dasar Terminal Ubuntu untuk Pemula | Ade Malsasa Akbar

  9. Ping balik: Kalau Linux Mau Maju… | Ade Malsasa Akbar

  10. Ping balik: KNotes Ingat Aku Per 17 Maret 2015 | RESTAVA

  11. Ping balik: Mulai Belajar Linux | RESTAVA

  12. Ping balik: Pentingnya Sebuah Tutorial Bagi Seorang Pemula |

Dilarang menggunakan emotikon