Cara membuat server repositori ubuntu

Cara membuat server repositori ubuntu

Panduan ini akan menunjukkan cara mengonfigurasi server repositori lokal berdasarkan Ubuntu Bionic, tetapi dapat disesuaikan dengan versi Ubuntu sebelumnya atau bahkan dengan distribusi apa pun menggunakan bakat sebagai sistem manajemen paket utama, seperti Debian atau Mint. Anda mungkin biasanya ingin menyiapkan repositori lokal untuk menyimpan bandwidth internet.

Dalam tutorial ini Anda akan belajar:

  • Cara menginstal perangkat lunak yang diperlukan di server
  • Cara memilih repositori mana yang akan dicerminkan di server
  • Cara mencerminkan pemilihan repositori secara lokal di server
  • Cara mengkonfigurasi klien linux untuk menggunakan server repositori lokal

Seperti yang dinyatakan di atas, kami tidak mempertimbangkan cermin publik atau negara untuk tutorial ini, tetapi jika Anda ingin mengimplementasikannya, pertimbangkan itu:

  • Bandwidth jaringan Anda menjadi sangat penting
  • Anda perlu mendaftarkan repositori ke daftar cermin ubuntu
  • Anda harus menyinkronkan cermin setidaknya empat kali sehari
  • Karena Anda harus mencerminkan semua versi sebelumnya, Anda mungkin membutuhkan 2 TB atau lebih ruang disk

Memperbarui Daftar Paket dari Repo Lokal.

Persyaratan dan konvensi perangkat lunak yang digunakan

Persyaratan Perangkat Lunak dan Konvensi Baris Perintah Linux
Kategori Persyaratan, konvensi atau versi perangkat lunak yang digunakan
Sistem Ubuntu 18.04.2 (Bionic Beaver) LTS
Perangkat lunak Apache http 2.x, apt-mirror
Lainnya Akses istimewa ke sistem Linux Anda sebagai root atau melalui sudo Perintah, minimum 200 GB ruang disk untuk repositori
Konvensi # - mensyaratkan perintah linux yang diberikan untuk dieksekusi dengan hak istimewa root baik secara langsung sebagai pengguna root atau dengan menggunakan sudo memerintah
$ - mensyaratkan perintah Linux yang diberikan untuk dieksekusi sebagai pengguna biasa

Cara membuat server repositori ubuntu langkah demi langkah

  1. Menginstal perangkat lunak yang diperlukan di server.

    Sebagai langkah pertama kita perlu menginstal server http Apache yang berada di bawah paket bernama Apache2, dengan perintah:

    $ sudo apt install apache2


    Menginstal Apache HTTP

    Kemudian pastikan layanan berjalan saat startup:

    $ sudo systemctl mengaktifkan apache2 

    Jika semuanya baik -baik saja, kami akan pindah ke direktori DocumentRoot Default (yang/var/www/html).
    Di sana kita dapat membuat sub-direktori /var/www/html/ubuntu dan menetapkannya ke pemilik yang sesuai, dalam hal ini www-data (Pengguna di mana Apache HTTP berjalan).

    $ sudo mkdir -p/var/www/html/ubuntu $ sudo chown www-data: www-data/var/www/html/ubuntu 

    Sangat disarankan agar dokumen atau setidaknya subfolder Ubuntu berada pada sistem file yang termasuk dalam volume logis; Dengan cara ini kami dapat memperbesar secara online, tanpa downtime.
    Pada saat pengujian saya 171.5 GIB adalah ruang minimum absolut yang dibutuhkan jika juga mencerminkan paket SRC; Jadi untuk merencanakan masa depan, disarankan untuk memiliki setidaknya 300 gib ruang disk.

    Ini terutama perkiraan jika memilih satu versi Ubuntu; Jika diperlukan untuk mencerminkan paket untuk versi yang berbeda, persyaratan ruang akan meningkat pesat.

  2. Alat utama yang memungkinkan kami membuat repositori lokal adalah apt-mirror, Untuk menginstalnya, jalankan:
    $ sudo apt install apt-mirror 

    Jika paket tidak ditemukan, pastikan untuk menyegarkan daftar paket terlebih dahulu dengan:

    $ sudo pembaruan apt 
  3. Memilih repositori mana yang akan dicerminkan di server.

    Setelah apt-mirror diinstal, kami dapat membuat salinan cadangan dari file konfigurasinya /etc/apt/mirror.daftar, Setelah itu Anda memastikan garis yang berisi opsi Atur base_path menunjuk ke jalur yang benar untuk repositori kami (secara default adalah/var/spool/apt-mirror).

    $ sudo cp/etc/apt/mirror.Daftar/etc/apt/mirror.daftar.org 

    Jadi Anda sekarang dapat menggunakan editor favorit Anda (VI atau NANO misalnya) untuk mengubah opsi base_path di cermin.daftar file ke /var/www/html/ubuntu; Anda juga perlu menentukan Anda mencerminkan distro bionik (ubah sesuai jika Anda memiliki versi ubuntu yang berbeda) Repo, selalu di cermin.Daftar file konfigurasi.

    cermin.Daftar file konfigurasi

    Jika Anda tidak memiliki banyak ruang pada disk, Anda dapat memilih untuk tidak mencerminkan paket SRC; Jadi Anda akan mengomentari baris relatif:

    cermin.Daftar file konfigurasi

    Selanjutnya Anda menyalin skrip penting menjadi /var/www/html/ubuntu/var/

    $ sudo mkdir -p/var/www/html/ubuntu/var $ sudo cp/var/spool/apt -mirror/var/postmirror.sh/var/www/html/ubuntu/var/ 
  4. Mencerminkan repositori yang dipilih secara lokal di server.

    Sekarang saatnya membuat cermin lokal, perlu diingat bahwa cermin awal (dari arsip.Ubuntu.com Hanya untuk tutorial ini) dapat memakan banyak waktu dan memperlambat koneksi Anda jadi saya sarankan Anda memulai pekerjaan ini di malam hari.
    Untuk mulai mencerminkan paket repo jarak jauh ke server lokal cukup jalankan perintah:

    $ sudo apt-mirror 

    Jika perlu, Anda dapat mengganggu proses ini (dengan kombo Ctrl+C klasik) dan restart nanti; itu akan dilanjutkan dari tempat yang tersisa.

    Akhirnya kita akan sampai pada titik saat bersih.SH dan PostMirror.Skrip SH dieksekusi, ini adalah tanda proses mirroring telah selesai.

    Akhir proses mirroring.
  5. Mengkonfigurasi Proses Sinkronisasi Otomatis dengan Menggunakan Cron Scheduler.

    Setelah sinkronisasi pertama kami selesai, kami perlu membuat pekerjaan cron untuk memastikan bahwa kami memiliki repositori lokal terkini secara otomatis; Misalnya kami ingin tugas ini berjalan setiap malam pukul 2:00 pagi dan karenanya:

    $ sudo crontab -e 

    Kemudian kami mengedit crontab untuk menambahkan baris berikut:

    00 02 * * */usr/bin/apt-mirror 

    Dan simpan dan keluar (menggunakan vi, nano atau editor apa pun yang ditetapkan).

Mengkonfigurasi klien Linux untuk menggunakan server repositori lokal

  1. Mengkonfigurasi Daftar Repositori Lokal.

    Di klien mana pun yang akan menggunakan repositori lokal kami, kami perlu mengedit file konfigurasi /etc/apt/sumber.daftar Menentukan repo lokal kami dan menonaktifkan yang jauh.

    Dalam kasus kami, repositori berikut telah diunduh:

    Server Repositori Lokal

    CATATAN

    Disarankan untuk mengomentari barisan apa pun di /etc/apt/sumber.daftar file mengacu pada repositori yang tidak dicerminkan di server kami, misalnya, dalam hal ini, setiap baris yang dimulai dengan Deb-Src dan berisi Bionic-Backports telah dikomentari.

    Jika Anda tidak melakukan itu, Anda mungkin mendapatkan kesalahan
    File rilis belum ditemukan Saat menjalankan perintah apt update pada klien.

    Pertama -tama kami mengganti arsip string apa pun.Ubuntu.com dengan IP cermin lokal kami, dalam hal ini 10.0.0.42. Tentu saja alamat IP lokal Anda bisa berbeda.

    $ sudo sed -saya.Bak0 "S/Archive \.Ubuntu \.com/10 \.0 \.0 \.\ 42/g "/etc/apt/sumber.daftar 

    Perintah ini akan membuat file cadangan /etc/apt/sumber.daftar.Bak0 dan ganti apapun arsip.Ubuntu.com string dengan 10.0.0.42.

    Penyesuaian lebih lanjut sedang berjalan lagi dengan cara ini:

    $ sudo sed -saya.Bak1 "s/ubuntu/ubuntu \/mirror \/arsip \.Ubuntu \.com \/ubuntu/g "\/etc/apt/sumber.daftar 

    Ini diperlukan karena apt-mirror menambahkan jalan cermin/arsip.Ubuntu.com/ubuntu ke jalur dasar kami. Di sini akan dibuat file cadangan lebih lanjut

    /etc/apt/sumber.daftar.Bak1. 

    Untuk tujuan tutorial ini kami hanya mencerminkan paket atau repositori dari arsip.Ubuntu.com; Tentu saja Anda dapat menambahkan repositori tidak resmi lainnya di cermin.Daftar file di server, tetapi kemudian Anda harus menjalankan kembali apt-mirror di sana dan mengedit pada klien mana pun sumbernya.daftar file yang sesuai.

  2. Perbarui Indeks Repositori Lokal.
    Sekarang Anda perlu memastikan port 80 tidak diblokir oleh firewall klien dan kemudian Anda dapat menjalankan:
    $ sudo pembaruan apt 

    Dan Anda siap untuk pergi.

    Memperbarui Daftar Paket dari Repo Lokal.

Kesimpulan

Menyiapkan repositori lokal di Ubuntu tidak sulit seperti yang terlihat dan bisa berguna asalkan Anda memiliki jaringan lokal dan sumber daya disk yang memadai.

Tutorial Linux Terkait:

  • Cermin Ubuntu
  • Hal -hal yang harus diinstal pada ubuntu 20.04
  • Hal -hal yang harus dilakukan setelah menginstal ubuntu 20.04 FOSSA FOSSA Linux
  • Cara Mencari Alat Peretasan Ekstra di Kali
  • Ubuntu 20.04 Panduan
  • Mint 20: Lebih baik dari Ubuntu dan Microsoft Windows?
  • Hal -hal yang harus diinstal pada Ubuntu 22.04
  • Hal -hal yang harus dilakukan setelah menginstal ubuntu 22.04 Jammy Jellyfish…
  • Ubuntu 22.04 Panduan
  • Ubuntu 20.04 trik dan hal -hal yang mungkin tidak Anda ketahui