![]() |
ubuntu.com - launchpad.net - ubuntu help
|
|
|||||||
|
Tutorials & Tips The place to find Ubuntu related Tips & Tricks. |
|
|
Thread Tools | Display Modes |
|
|
#1 |
|
5 Cups of Ubuntu
![]() |
If your like me, you and your friends have several machines running Ubuntu, Kubuntu, or other *buntu variants. After going through upgrades of all these machines, it can eat a lot of your and Canonical's bandwidth to download all the packages for each machine. There are other solutions such as apt-proxy, apt-cacher, etc. But what works best for me is apt-mirror, which creates a mirror of any Ubuntu, Debian, or any other deb repository. So if you have 20+ GB of hard drive space, you can setup a local repository mirror to speed up the upgrading process and save Canonical some bandwidth.
Step 1: Install apt-mirror Code:
sudo apt-get install apt-mirror Step 2: Configure apt-mirror Configuring apt-mirror is fairly simple. We just need to modify the /etc/apt/mirror.list file. Ubuntu users: Code:
gksudo gedit /etc/apt/mirror.list Code:
kdesu kate /etc/apt/mirror.list Code:
sudo nano /etc/apt/mirror.list Code:
# apt-mirror configuration file ## ## The default configuration options (uncomment and change to override) ## # set base_path /var/spool/apt-mirror # set mirror_path $base_path/mirror # set skel_path $base_path/skel #set var_path $base_path/var set defaultarch i386 set nthreads 5 # ## ## Sources ## deb http://archive.ubuntu.com/ubuntu/ gutsy main restricted deb http://archive.ubuntu.com/ubuntu/ gutsy-updates main restricted deb http://archive.ubuntu.com/ubuntu/ gutsy universe deb http://archive.ubuntu.com/ubuntu/ gutsy-updates universe deb http://archive.ubuntu.com/ubuntu/ gutsy multiverse deb http://archive.ubuntu.com/ubuntu/ gutsy-updates multiverse deb http://archive.ubuntu.com/ubuntu/ gutsy-backports main restricted universe multiverse deb http://archive.canonical.com/ubuntu gutsy partner deb http://security.ubuntu.com/ubuntu gutsy-security main restricted deb http://security.ubuntu.com/ubuntu gutsy-security universe deb http://security.ubuntu.com/ubuntu gutsy-security multiverse deb http://archive.ubuntu.com/ubuntu/ gutsy-proposed restricted main multiverse universe deb-amd64 http://archive.ubuntu.com/ubuntu/ gutsy main restricted deb-amd64 http://archive.ubuntu.com/ubuntu/ gutsy-updates main restricted deb-amd64 http://archive.ubuntu.com/ubuntu/ gutsy universe deb-amd64 http://archive.ubuntu.com/ubuntu/ gutsy-updates universe deb-amd64 http://archive.ubuntu.com/ubuntu/ gutsy multiverse deb-amd64 http://archive.ubuntu.com/ubuntu/ gutsy-updates multiverse deb-amd64 http://archive.ubuntu.com/ubuntu/ gutsy-backports main restricted universe multiverse deb-amd64 http://archive.canonical.com/ubuntu gutsy partner deb-amd64 http://security.ubuntu.com/ubuntu gutsy-security main restricted deb-amd64 http://security.ubuntu.com/ubuntu gutsy-security universe deb-amd64 http://security.ubuntu.com/ubuntu gutsy-security multiverse deb-amd64 http://archive.ubuntu.com/ubuntu/ gutsy-proposed restricted main multiverse universe clean http://archive.ubuntu.com/ubuntu clean http://archive.canonical.com/ubuntu clean http://security.ubuntu.com/ubuntu NOTE: Make SURE whatever partition stores your /var/spool directory has plenty of space. Trust me, you do NOT want to download 17GB and find out your partition doesn't have enough space. If you use a separate /home partition with storage capacity you want to use for apt-mirror, you can do what I did by creating a /home/apt-mirror and making /var/spool/apt-mirror link to it. That can be done with these two commands: Code:
ONLY DO THIS IF YOU HAVE THE SAME SITUATION AS ABOVE! TYPICAL USERS WONT NEED THIS sudo mkdir /home/apt-mirror sudo rm -Rf /var/spool/apt-mirror sudo ln -s /home/apt-mirror /var/spool/apt-mirror To have apt-mirror start downloading the repositories, run: Code:
sudo apt-mirror /etc/apt/mirror.list Step 4: Install apache For you to be able to use this local mirror normally, you will need a web server to share the directories. In this guide, I will use apache, but you may prefer to use lighthttpd or some other server. Code:
sudo apt-get install apache2 We need to now link our local repository folder to our shared apache directory. Code:
sudo ln -s /var/spool/apt-mirror/mirror/archive.ubuntu.com /var/www/archive-ubuntu sudo ln -s /var/spool/apt-mirror/mirror/archive.canonical.com /var/www/archive-canonical sudo ln -s /var/spool/apt-mirror/mirror/security.ubuntu.com /var/www/security-ubuntu In this step, we'll edit the /etc/apt/sources.list file and replace Ubuntu's repositories with our local mirror. First, make a backup of the default sources.list. Code:
sudo mv /etc/apt/sources.list /etc/apt/sources.list.backup sudo nano /etc/apt/sources.list Code:
deb http://127.0.0.1/archive-ubuntu/ubuntu gutsy main restricted universe multiverse deb http://127.0.0.1/archive-ubuntu/ubuntu gutsy-updates main restricted universe multiverse deb http://127.0.0.1/archive-ubuntu/ubuntu gutsy-backports main restricted universe multiverse deb http://127.0.0.1/security-ubuntu/ubuntu gutsy-security main restricted universe multiverse deb http://127.0.0.1/archive-canonical/ubuntu gutsy partner Next, we need to update the repositories to make sure everything is working as expected. Code:
sudo apt-get update You should also use this step on other machines you want to setup to use this mirror. You will just need to replace the 127.0.0.1 with the LAN address for machines over LAN or public IP for other machines over the net. If you have questions, comments, suggestions, feel free to reply, send me a message on IRC (bmk789 on freenode), or send me an email (bmk789@gmail.com) |
|
|
|
| Bookmarks |
| Thread Tools | |
| Display Modes | |
|
|