I just installed apt cacher ng for catching my apt upgrade packages and saw a huge time improvement even though I have a good internet connection. It act as a proxy and caches the response packages.

Do you run something similar? Or maybe even run a local repo mirror? Warning, they are really big so I don’t think it is recommended unless you really need almost everything.

  • @TCB13
    link
    English
    4
    edit-2
    1 year ago

    And… you can also convert the ISO files into an hosted repository in your network using Apache:

    apt install apache2 build-essential mkdir /var/www/html/packages

    Now, create additional directories under /var/www/html/packages/ to save packages depending upon your system’s architecture. For example, create a directory “amd64″. You can keep multiple directories and serve packages to different architecture systems at the same time.

    mkdir /var/www/html/packages/amd64

    Copying all DEB files from Debian installation media

    Mount the first CD/DVD and copy all .deb packages to /var/www/packages/amd64/ directory from your CD/DVD.

    mount /dev/cdrom /media/cdrom find /media/cdrom/pool/ -name “*.deb” -exec cp {} /var/www/html/packages/amd64 ;

    After copying all deb files, unmount the first DVD using the following command.

    umount /media/cdrom

    Again mount all remaining CD/DVD one by one and copy the .deb files as shown above.

    To verify the files, navigate to http://192.168.1.150/packages/amd64/ from your browser. You will see all packages of your Debian DVD’s. Here 192.168.1.150 is my Debian server’s IP address.

    Index of -packages-amd64 - Google Chrome_002 Create Catalog file

    Switch to your repository directory i.e /var/www/html/packages/amd64/ :

    cd /var/www/html/packages/amd64/

    and enter the following command to create a catalog file for APT use. You should run this command so that Synaptic Manager or APT will fetch the packages from our local repository. Otherwise the packages in your local repository will not be shown in Synaptic and APT.

    dpkg-scanpackages . /dev/null | gzip -9c > Packages.gz

    This command will scan all deb files and create the local repository in your Debian server. This may take a while depending upon the number of packages in your local repository folder. Be patient or grab a cup of coffee.

    Sample output:

    dpkg-scanpackages: warning: Packages in archive but missing from override file: dpkg-scanpackages: warning: accountsservice acl acpi acpi-support-base acpid adduser adwaita-icon-theme apache2-bin apg apt apt-listchanges apt-offline apt-utils aptitude aptitude-common aptitude-doc-en aspell aspell-en at at-spi2-core avahi-daemon

    […]

    xserver-xorg-video-neomagic xserver-xorg-video-nouveau xserver-xorg-video-openchrome xserver-xorg-video-r128 xserver-xorg-video-radeon xserver-xorg-video-savage xserver-xorg-video-siliconmotion xserver-xorg-video-sisusb xserver-xorg-video-tdfx xserver-xorg-video-trident xserver-xorg-video-vesa xserver-xorg-video-vmware xterm xwayland xz-utils yelp yelp-xsl zenity zenity-common zlib1g

    dpkg-scanpackages: info: Wrote 1151 entries to output Packages file.

    Please note that whenever you add a new deb file in this repository, you should run the above command to create catalog file.

    Done! We created the catalog file. Configure Server sources list

    After creating the catalog file, go to your server(local) system. Open /etc/apt/sources.list file.

    nano /etc/apt/sources.list

    Comment out all lines and add your APT repository location as shown below.

    deb file:/var/www/html/packages/amd64/ /

    Configure Clients

    After creating the catalog file, go to your client systems. Open /etc/apt/sources.list file.

    vim /etc/apt/sources.list

    Add the server repository location as shown below. Comment out all sources list except the local repository.

    deb http://192.168.1.150/packages/amd64/ /

    Note: Put a space between deb and http://192.168.1.150/packages/amd64/ and /.

    • @[email protected]OP
      link
      fedilink
      English
      11 year ago

      The dvds are fine for offline use. But I dont know how to keep them updated. Probably result in taking loads of spaces as I guess they are equal to a repo mirror

      • @TCB13
        link
        English
        1
        edit-2
        1 year ago

        So what are you using for a local repository mirror? apt-mirror or ftpsync? I usually keep ISOs for the architectures that interest me using jigdo as it can update them later on.

        ISOs are harder to maintain for sure but they’re more standalone and might survive adversities better.