Change to a Different Download Server
Overview
The official Manjaro repositories (also known as mirrors) are hosted on Software Servers. Physically located throughout the world, these servers are responsible for receiving requests for software packages via the terminal and/or pacman-gui, and consequently delivering them to your system. There are therefore three primary factors that will determine how fast your downloads are:
- Your internet connection
- The speed of the server itself, and
- The proximity of the server to you, that is, how close or how far away it is.
Other than upgrading your internet package or switching providers, it is therefore, potentially possible to improve the speed of downloads from the Manjaro repositories by selecting a different server to use. Servers are currently located in the following countries:
- Brazil
- France
- Germany
- Greece
- United Kingdom
- United States
Those who installed Manjaro 0.8.2 using the Installation Guide for Beginners will have had the United Kingdom server set by default, irrespective of their actual country of residence. Therefore, users living in the United States may consequently achieve better results by switching to the U.S. server. Two methods to switch servers are available. The first is to manually determine the server to use, as is provided in this guide. The second is to use the Rankmirrors command to automatically determine and set the fastest possible server on your behalf, provided in the Use Rankmirrors to Set the Fastest Download Server guide.
Step 1: Changing Servers
This is undertaken by amending the mirrorlist file, which is read by Manjaro's package manager, pacman, for the internet addresses of the Manjaro servers to download updates and software applications from.
Open the Mirrorlist
You will need to first open your terminal in order to edit the mirrorlist file. The syntax of the command to edit the mirrorlist is:
sudo [text editor] /etc/pacman.d/mirrorlist
For example, if you wish to edit the file within the terminal using nano (a standard terminal-based text editor) then enter:
sudo nano /etc/pacman.d/mirrorlist
However, if you have installed the full version of Manjaro (but not the NET-Edition) you may find it easier to use the pre-installed gedit text editor instead. This will open the mirrorlist file up as a document, making it easier to read and edit. To use gedit, the command is:
sudo gedit /etc/pacman.d/mirrorlist
Edit the Mirrorlist (Manjaro 0.8.2 and 0.8.3)
Lines beginning with a hash '#' will be ignored by pacman. In the example below, only the UK server is active, that is, has had the hash mark removed. It is the only server that has been enabled for use:
## ## Manjaro Linux repository mirrorlist ## Generated on 2012-11-08 ## ## Brasil # Server = http://manjaro.fis.unb.br/$repo/$arch ## France # Server = http://manjarolinux.polymorf.fr/$repo/$arch ## Germany # Server = http://mirrors.mycraft.eu/manjaro/$repo/$arch # Server = http://ftp.halifax.rwth-aachen.de/manjaro/$repo/$arch # Server = http://mirror.vinzv.de/manjaro/repo/$repo/$arch ## Greece # Server = http://ftp.cc.uoc.gr/mirrors/linux/manjaro/$repo/$arch ## United Kingdom Server = http://repo.manjaro.org.uk/$repo/$arch ## United States # Server = http://mirror.dacentec.com/manjaro/$repo/$arch
The United Kingdom Server can therefore be disabled by simply placing a hash at the beginning of the Server= line. Another Server can be enabled in turn by removing its hash at the beginning of the appropriate line. In the instance below, the United Kingdom server has been disabled, and the United States Sever has been enabled:
## ## Manjaro Linux repository mirrorlist ## Generated on 2012-11-08 ## ## Brasil # Server = http://manjaro.fis.unb.br/$repo/$arch ## France # Server = http://manjarolinux.polymorf.fr/$repo/$arch ## Germany # Server = http://mirrors.mycraft.eu/manjaro/$repo/$arch # Server = http://ftp.halifax.rwth-aachen.de/manjaro/$repo/$arch # Server = http://mirror.vinzv.de/manjaro/repo/$repo/$arch ## Greece # Server = http://ftp.cc.uoc.gr/mirrors/linux/manjaro/$repo/$arch ## United Kingdom # Server = http://repo.manjaro.org.uk/$repo/$arch ## United States Server = http://mirror.dacentec.com/manjaro/$repo/$arch
Once you have disabled and/or enabled the desired server(s), save the changes and close the mirrorlist as follows:
- nano: Press CTRL and 'x' to exit, 'y' to save, and <enter> to finish, or
- gedit: Select the 'save' option and then close the window.
Now, all that is required is to Synchronise the newly enabled server(s):
sudo pacman -Syy
Edit the Mirrorlist (Manjaro 0.8.0 and 0.8.1)
Once opened, the mirrorlist file of Manjaro 0.8 & 0.8.1, presented here should look similar to the text below, that has been coloured for illustrative purposes):
# Server list generated by rankmirrors on 2012-10-07 ## ## Manjaro Linux repository mirrorlist ## Generated on 2012-09-11 ## ## France # http://manjarolinux.polymorf.fr/$repo/$arch ... 0.494 ## Germany # http://mirrors.mycraft.eu/manjaro/$repo/$arch ... 0.367 # http://ftp.halifax.rwth-aachen.de/manjaro/$repo/$arch ... 0.300 ## Greece # http://ftp.cc.uoc.gr/mirrors/linux/manjaro/$repo/$arch ... 0.769 ## United Kingdom # http://repo.manjaro.org.uk/$repo/$arch ... 0.518 ## United States # http://mirror.dacentec.com/manjaro/$repo/$arch ... 0.887 Server = http://ftp.halifax.rwth-aachen.de/manjaro/$repo/$arch Server = http://mirrors.mycraft.eu/manjaro/$repo/$arch Server = http://manjarolinux.polymorf.fr/$repo/$arch Server = http://repo.manjaro.org.uk/$repo/$arch
Lines beginning with a hash '#' will be ignored by pacman. As such, the top part of the file is a table that lists the names of countries followed by their server internet addresses purely for your own information. Its purpose is to tell you --not pacman-- which servers are available in what countries. The text coloured in red at the end of each internet address is there to tell you the tested download speed of the server. It is actually the bottom part of the file that is intended to be used by pacman to connect to the Manjaro servers. Notice that each of these lines does not have a hash, and begins with the command Server =. They are also accessed in the order that they are listed.
Any of the servers listed at the bottom of the file may be disabled by placing a hash at the beginning of the appropriate line. The order they are used may also be changed by changing the order that they are listed.
Should you wish to use any of the servers listed in the table above instead, then you must do the following or the synchronization will fail:
- start the server address line with the Server = command, and
- remove the text that tells you the download speed of the server (e.g. '... 0.769')
In the following example, the servers at the bottom of the file have been disabled, and the United Kingdom Server has been enabled in the above table instead:
# Server list generated by rankmirrors on 2012-10-07 ## ## Manjaro Linux repository mirrorlist ## Generated on 2012-09-11 ## ## France # http://manjarolinux.polymorf.fr/$repo/$arch ... 0.494 ## Germany # http://mirrors.mycraft.eu/manjaro/$repo/$arch ... 0.367 # http://ftp.halifax.rwth-aachen.de/manjaro/$repo/$arch ... 0.300 ## Greece # http://ftp.cc.uoc.gr/mirrors/linux/manjaro/$repo/$arch ... 0.769 ## United Kingdom Server = http://repo.manjaro.org.uk/$repo/$arch ## United States # http://mirror.dacentec.com/manjaro/$repo/$arch ... 0.887 # Server = http://ftp.halifax.rwth-aachen.de/manjaro/$repo/$arch # Server = http://mirrors.mycraft.eu/manjaro/$repo/$arch # Server = http://manjarolinux.polymorf.fr/$repo/$arch # Server = http://repo.manjaro.org.uk/$repo/$arch
Once you have disabled and/or enabled the desired server(s), save the changes and close the mirrorlist by:
- nano: Press CTRL and 'x' to exit, 'y' to save, and <enter> to finish, or
- gedit: Select the 'save' option and then close the window.
All that is required now is to Synchronise with the newly enabled server(s) with:
sudo pacman -Syy
Step 2: Synchronising with the Newly Enabled Server(s)
Your Manjaro system has a database of all the software packages that are available from the official repositories. These are used by pacman to locate and download them for installation. Synchronising your database after changing servers will therefore ensure that it is up to date, and avoid any potential problems when subsequently downloading software packages.
To synchronise your database with the Manjaro repositories, enter the following command in the terminal:
sudo pacman -Syy
Once the Mirrorlist has been amended and the database synchronised, the change will be immediate. There will be no need to reboot your system for the change to take effect.