
Ada berbagai alasan mengapa Anda ingin membangun repositori lokal Anda sendiri. Ini adalah cara yang bagus untuk membuat repositori mirror lokal untuk menyimpan paket yang sering digunakan dalam cache yang digunakan oleh banyak komputer untuk menghemat penggunaan bandwidth, atau Anda mungkin memiliki beberapa paket yang dimodifikasi yang ingin Anda sediakan secara internal untuk tim pengembang.
Dalam tutorial ini, kami akan menunjukkan cara mudah membuat repositori paket Debian lokal , kompatibel dengan versi Debian dan Ubuntu.
Langkah1:Memasang Paket yang Diperlukan
Pada sistem berbasis Debian, semua repositori dikelola oleh utilitas APT (apt, apt-get, apt-cache, dll). Paket dpkg-dev diperlukan untuk pembuatan repositori lokal yang kompatibel dengan APT.
Pertama Perbarui paket sistem menggunakan perintah berikut:
$ sudo apt update && sudo apt upgrade
Selanjutnya instal dpkg-dev paket dengan mengetik berikut ini:
$ sudo apt-get install dpkg-dev
Ketika instalasi paket selesai, lanjutkan dengan membuat direktori untuk file paket Anda.
Langkah 2:Buat Direktori untuk Repositori Lokal
Buat direktori untuk menyimpan paket biner. Untuk contoh ini, kami akan menggunakan /opt/local/debs, tetapi Anda dapat menggunakan direktori apa pun yang Anda suka.
$ sudo mkdir -p /opt/local/debs
Selanjutnya, ubah direktori:
$ cd /opt/local/debs
Langkah 3:Menambahkan Paket ke Direktori Repo Lokal
Untuk tujuan tutorial ini, kami akan mengunduh paket chrome-browser ke repositori lokal kami, karena tidak ditemukan di repositori default Ubuntu:
$ sudo wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
Anda dapat menyalin atau mengunduh paket sebanyak yang Anda suka dalam langkah ini.
Langkah 4:Buat Meta Paket Repositori yang Diperlukan untuk APT
Untuk ini, kita harus menjalankan beberapa perintah dpkg-scanpackages. Saya akan beralih ke akun pengguna root karena saya menggunakan direktori /opt/local untuk melewati menggunakan sudo.
$ sudo su
Pertama, kita akan membuat file Release dengan menjalankan perintah berikut:
# dpkg-scanpackages . /dev/null > Release
Anda akan mendapatkan output yang serupa tergantung pada berapa banyak paket yang telah Anda tambahkan ke repositori lokal:
dpkg-scanpackages: warning: Packages in archive but missing from override file:
dpkg-scanpackages: warning: google-chrome-stable
dpkg-scanpackages: info: Wrote 1 entries to output Packages file.
Selanjutnya, pindai semua file deb di direktori dan buat file Packages.gz yang sesuai
# dpkg-scanpackages . /dev/null | gzip -9c > Packages.gz
Keluaran:
dpkg-scanpackages: warning: Packages in archive but missing from override file:
dpkg-scanpackages: warning: google-chrome-stable
dpkg-scanpackages: info: Wrote 1 entries to output Packages file.
Perhatikan bahwa Anda harus menjalankan perintah ini setiap kali Anda menambahkan paket deb baru ke direktori repositori lokal Anda. Anda juga dapat membuat skrip bash sederhana dan menjalankannya setiap kali Anda menambahkan paket baru.
Untuk Daftar struktur direktori repo lokal, jalankan perintah ls:
$ ls -l
Keluaran:
-rw-r--r-- 1 root root 83325072 May 8 02:29 google-chrome-stable_current_amd64.deb
-rw-r--r-- 1 root root 761 May 17 20:44 Packages.gz
-rw-r--r-- 1 root root 1321 May 17 20:39 Release
Langkah 5:Menambahkan Repositori Lokal Kami ke Sources.list
Langkah terakhir adalah mengedit file sources.list. Edit file menggunakan editor pilihan Anda:
$ sudo nano /etc/apt/sources.list
Tambahkan baris berikut ke /etc/apt/sources.list Anda:
deb [trusted=yes] file:/opt/local/debs ./
Sekarang kita akan menguji repositori lokal kita dalam tindakan.
Langkah 6:Verifikasi
Kami dapat memverifikasi dengan menginstal atau menghapus paket dari Repositori Lokal.
Pertama kita harus memperbarui paket:
$ sudo apt-get update
Sekarang kita menginstal paket kita seperti biasa menggunakan apt-get:
$ sudo apt-get install google-chrome-stable
Sekarang paket lokal Anda dapat diinstal, diperbarui, dan dihapus menggunakan Synaptic, aptitude dan perintah apt:apt-get, apt-cache, dll. Saat Anda menjalankan apt-get install, semua dependensi akan diselesaikan dan diinstal untuk Anda, selama karena mereka dapat dipenuhi.
Kami dapat dengan mudah menghapus paket terinstal kami dengan cara yang sama seperti paket yang diinstal pada sistem kami:
$ sudo apt-get remove google-chrome-stable
Kesimpulan
Dalam tutorial ini, kita telah belajar cara membuat repositori Debian lokal kita sendiri dan menambah/menghapus paket secara lokal. Langkah-langkah ini berlaku untuk sebagian besar distribusi berbasis Debian.