Tanya 190 : Mengenal Struktur Repository Ubuntu

Tanya :
Saya punya DVD Repo, apa yang harus saya lakukan untuk memanfaatkannya ?
Jawab :
Jawaban berikut mungkin bukan cara standar yang biasa dilakukan untuk menggunakan DVD Repo, tapi penulis pribadi menganjurkannya dengan beberapa alasan yang akan disampaikan di bawah.
Struktur file repository Ubuntu sangat sederhana sehingga kita bisa membuatnya sendiri di komputer kita atau di storage lain, misalnya external Hard Disk.
Sebuah repository memiliki urutan direktori sebagai berikut

Direktori /dists

Berisikan daftar paket yang ada di suatu rilis
Jika anda bongkar maka direktori yang ada di dalam direktori /dists ini berisi nama-nama direktori berdasarkan rilis Ubuntu. Misalnya

  • /dists/natty
  • /dists/natty-updates
  • /dists/natty-security
  • /dists/natty-backports
  • /dists/natty-proposed

Di dalam direktori-direktori itu anda akan menemukan lagi direktori-direktori dengan struktur main, universe, multiverse, reverse. Contoh :

  • /dists/natty/main
  • /dists/natty/universe
  • /dists/natty/multiverse
  • /dists/natty/restricted

Di dalam direktori main misalnya anda akan mendapatkan lagi direktori-direktori. Dua yang utama adalah binary-amd64 dan binary-i386. Direktori binary-amd64 berisi listing paket yang tersedia untuk sistem 64 bit, sementara direktori binary-i386 berisi listing paket untuk sistem 32 bit. Dalam kedua direktori tersebut anda akan mendapatkan file Packages.gz atau Packages.bz2, kedua file ini identik sebenarnya, berisi daftar paket perangkat lunak. File inilah yang dikenali oleh perintah sudo apt-get update
Nah, sebenarnya kita cukup menyalin file tersebut ke komputer kita.Buat struktur direktori yang sama seperti diatas secara manual, bisa dimana saja di komputer anda. Lalu salin file Packages.gz dan/atau file Packages.bz2 ke direktori yang sudah kita buat

Direktori /pool

Di direktori ini file-file paket perangkat lunak tersimpan. File-file itu memiliki extension *.deb. Selain itu ada juga file kode sumber (umumnya dalam bentuk orig.tar.gz), diff (umumnya dalam bentuk diff.gz) dan description (.dsc). Silahkan rujuk ke situs debian untuk penjelasan masing-masing file tersebut.
Paket-paket file tersebut dikelompokkan berdasarkan jenisnya  (main, multiverse, universe dan restricted) dan namanya (alfabetis). Anda bisa menyalin file *.deb saja ke komputer anda dengan struktur direktori yang harus sama. (/pool/main/alfabet/direktoripaket/namapaket.deb)

Teknik Membangun Repository Lokal

DebMirror

Cara paling mudah untuk membangun mirror repository adalah dengan perintah debmirror. Silahkan baca tutorial berikut : Tanya 94 : Membangun repository lokal dengan debmirror

DVD Repo

Sekarang coba perhatikan DVD Repo anda. Anda akan mendapatkan struktur direktori yang sama dengan penjelasan diatas. Anda cukup menyalin langsung ke komputer anda dengan struktur direktori yang harus sama persis dengan yang dijelaskan diatas. Untuk lebih jelas anda bisa melihat contoh dari salah satu mirror repository Ubuntu. Misalnya ftp://ftp.jaist.ac.jp/pub/Linux/ubuntu.
DVD Pertama biasanya berisi direktori dists dan direktori pool, sementara DVD lainnya biasanya hanya berisikan direktori yang ada di dalam direktori /pool. Sekali lagi, cukup SALIN direktori-direktori itu beserta isinya ke komputer anda. (Ingat selalu struktur direktori haruslah sama persis)

Di DVD Repo hanya akan ada file-file *.deb, file orig.tar.gz dll tidak akan disertakan.

sources.list

Setelah kita menyalin sebuah mirror repo atau sebuah DVD repo, kini saatnya kita mengarahkan sources.list kita ke repo lokal ini.
Misalnya :
saya menyalin file-file tadi ke direktori /home/rezaervani/Documents/ubuntu, sehingga secara sepintas direktori yang saya punyai adalah :

  • /home/rezaervani/Documents/ubuntu
  • /home/rezaervani/Documents/ubuntu/dists
  • /home/rezaervani/Documents/ubuntu/dists/natty
  • /home/rezaervani/Documents/ubuntu/dists/natty-updates
  • dan seterusnya …
  • /home/rezaervani/Documents/ubuntu/pool
  • /home/rezaervani/Documents/ubuntu/pool/main
  • /home/rezaervani/Documents/ubuntu/pool/main/a
  • /home/rezaervani/Documents/ubuntu/pool/main/a/a52dec
  • dan seterusnya
  • /home/rezaervani/Documents/ubuntu/pool/multiverse
  • /home/rezaervani/Documents/ubuntu/pool/restricted
  • dst

Dengan demikian saya dapat menambahkan di sources.list saya sebuah baris dengan format seperti berikut :

deb file:///home/rezaervani/Documents/ubuntu natty main restricted universe multiverse
deb file:///home/rezaervani/Documents/ubuntu natty-updates main restricted universe multiverse

Atau jika di komputer anda sudah ada webserver lokal (Apache misalnya) anda bisa juga buat menjadi http dengan konsep yang sama (misalnya menyalin file-file repo ke /var/www/ubuntu)
Keuntungan
Beberapa keuntungan dengan cara ini adalah :

  1. Direktori /dists di DVD repo akan selalu tertinggal zaman dibandingkan dengan mirror aslinya. Dengan menyalin direktori /dists dan listing paket ke komputer anda, anda dapat senantiasa mengupdate repo lokal anda (misalnya dengan perintah rsync)
  2. Paket yang ada di /pool sesungguhnya sangat dinamis. Versi-versi baru dari sebuah paket bisa saja muncul dalam hitungan hari. Selain itu bisa saja paket yang tadinya ada di kategori main, kini berpindah ke kategori universe. Dengan menyalin ke komputer anda, anda bisa senantiasa berjaga-jaga dengan update repo lokal anda (misalnya dengan perintah rsync)
  3. Repository di komputer anda bisa digunakan bersama-sama, misalnya dengan menjadikan laptop anda sebagai access point.
  4. Jika suatu saat anda ingin repo anda juga dilengkapi dengan file-file kode sumber (orig.tar.gz) dan lainnya, anda juga cukup melakukan rsync dengan mirror sebenarnya.
  5. Koleksi anda bisa diperkaya sehingga bisa digunakan lintas versi
  6. Bisa dibagikan ke orang lain dengan lebih mudah
  7. Menjaga DVD Drive anda tetap awet karena tidak terlalu sering digunakan untuk membaca DVD.

Setidaknya itu keuntungan menyalin DVD Repo dan/atau mirror repo ke komputer lokal.
Bahasan tentang rsync insya Allah akan dibuat dalam kesempatan terpisah.
Demikian, semoga manfaat (rezaervani@gmail.com)

26 Comments

    • Cara yang umum digunakan memang mounting iso, tapi dengan asumsi beberapa keuntungan yang disebutkan, bisa juga coba cara diatas. Mau ?
      Kalau mau, kita bahas pelan-pelan sampai tuntas.
      1. Coba salin salah satu file iso ke komputer. Lalu klik kanan di file iso tersebut, klik extract here. Kalau sudah silahkan posting lagi disini.

    • Sip. Sekarang buat folder baru. Misal namanya “repo” (tanpa tanda petik). Lalu salin direktori dists dan pool hasil ekstraksi tadi ke folder baru itu.
      Lanjutkan dengan ekstraksi DVD ISO yang lain (2 – 8). Laporkan isinya kesini.

  1. Trus klo file ekstakannya tdi di hapus boleh gk mas. ? Soalnya harddisk saya cma 80GB dn sya pke 2 OS. file ekstakannya mau saya hapus krna mnurut sya kn directory pool dn dists nya udh saya copy ke folder baru itu mas.

    • OK, sekarang buka file /etc/apt/sources.list, tambahkan baris berikut :
      deb file:///media/DATA/Repo lucid main restricted universe multiverse
      deb file:///media/DATA/Repo lucid-updates main restricted universe multiverse
      Simpan,
      Lalu coba sudo apt-get update
      Laporkan lagi hasilnya disini

    • Tetap dengan nama sources.list
      Buka terminal :
      Ketikkan :
      sudo gedit /etc/apt/sources.list
      Lalu tambahkan baris tadi
      Lalu simpan dan tutup
      Lalu di terminal jalankan
      sudo apt-get update

Leave a Reply to Indra Cancel reply

Your email address will not be published.


*