GNU/Linux >> Tutoriales Linux >  >> Arch Linux

Recupere la última lista de espejos usando Reflector en Arch Linux

Mantener actualizada la lista de espejos en su Arch Linux brinda algunos beneficios importantes. Si usa la lista de espejos actualizada, puede evitar fácilmente la velocidad de descarga lenta y los mensajes de error de tiempo de espera agotado al instalar y actualizar paquetes. Este tutorial explica qué es Reflector y cómo recuperar la última lista de espejos en Arch Linux usando Reflector.

¿Qué es Reflector?

Reflector es un sencillo módulo y secuencia de comandos de Python 3 que comprueba y recupera la lista de espejos más actualizada ordenada por velocidad de Mirror Status y las guarda en /etc/pacman.d/mirrorlist archivo en su sistema Arch Linux.

Generalmente el /etc/pacman.d/mirrorlist El archivo contendrá un servidor espejo por país. Sin embargo, debe haber más de un servidor por país, pero el archivo de la lista de espejos normalmente tendrá solo uno.

Entonces, ¿cómo agrega o recupera la lista de espejos más reciente y actualizada de su elección en Arch Linux? Aquí es donde Reflector viene en ayuda.

Reflector recuperará y filtrará una lista de los espejos de Arch Linux más recientes y más rápidos en función de la velocidad, el país y la antigüedad (última sincronización del servidor).

Reflector es una secuencia de comandos de Python gratuita y de código abierto, que funciona bien en Arch Linux y sus derivados, como EndeavourOS y Manjaro Linux.

1. Instale Reflector en Arch Linux, EndeavourOS, Manjaro

Para instalar Reflector en Arch Linux y sus variantes como EndeavourOS y Manjaro, ejecuta el siguiente comando desde tu Terminal:

$ sudo pacman -S reflector rsync curl

El comando anterior instalará Reflector junto con sus paquetes de dependencias rsync y curl.

2. Recuperar la última lista de espejos usando Reflector en Arch Linux

2.1. Hacer una copia de seguridad de la lista de réplicas actual

Antes de ejecutar Reflector, debe hacer una copia de seguridad de su archivo de lista de espejos predeterminado. Porque Reflector lo sobrescribirá y reemplazará la lista de réplicas existente por una nueva.

Para hacer una copia de seguridad de la lista de réplicas actual, ejecute:

$ sudo cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak

2.2. Recupere los N espejos más recientes y clasifíquelos por tasa de descarga

Recuperemos los 20 espejos más recientes y clasifiquemos la lista de espejos por su tasa de descarga, y guárdelos en /etc/pacman.d/mirrorlist archivo usando el comando:

$ sudo reflector --latest 20 --protocol https --sort rate --save /etc/pacman.d/mirrorlist

Tenga en cuenta que esto reemplazará los espejos existentes con espejos nuevos.

Analicemos el comando anterior y veamos qué hace cada opción.

  • --latest 20 - recuperar los servidores sincronizados más recientemente
  • --protocol https - recuperar https espejos habilitados
  • --sort rate - ordenar la lista de espejos según la tasa de descarga
  • --save /etc/pacman.d/mirrorlist -

Puede verificarlo enumerando el contenido de /etc/pacman.d/mirrorlist archivo.

$ cat /etc/pacman.d/mirrorlist

Salida de muestra:

 #####################################################################
 ########### Arch Linux mirrorlist generated by Reflector  ###########
 #####################################################################
 With:       reflector --latest 20 --protocol https --sort rate --save /etc/pacman.d/mirrorlist
 When:       2021-06-10 09:51:51 UTC
 From:       https://www.archlinux.org/mirrors/status/json/
 Retrieved:  2021-06-10 09:49:34 UTC
 Last Check: 2021-06-10 09:15:02 UTC
 Server = https://mirror.osbeck.com/archlinux/$repo/os/$arch
 Server = https://asia.mirror.pkgbuild.com/$repo/os/$arch
 Server = https://archlinux.thaller.ws/$repo/os/$arch
 Server = https://arch.mirror.constant.com/$repo/os/$arch
 Server = https://mirror.f4st.host/archlinux/$repo/os/$arch
 Server = https://phinau.de/arch/$repo/os/$arch
 Server = https://mirrors.neusoft.edu.cn/archlinux/$repo/os/$arch
 Server = https://mirror.pseudoform.org/$repo/os/$arch
 Server = https://arch.mirror.square-r00t.net/$repo/os/$arch
 Server = https://mirror.pkgbuild.com/$repo/os/$arch
 Server = https://archlinux.uk.mirror.allworldit.com/archlinux/$repo/os/$arch
 Server = https://archlinux.za.mirror.allworldit.com/archlinux/$repo/os/$arch
 Server = https://mirror.telepoint.bg/archlinux/$repo/os/$arch
 Server = https://mirror.lty.me/archlinux/$repo/os/$arch
 Server = https://mirror.chaoticum.net/arch/$repo/os/$arch
 Server = https://mirror.efect.ro/archlinux/$repo/os/$arch
 Server = https://archmirror.it/repos/$repo/os/$arch
 Server = https://archlinux.mailtunnel.eu/$repo/os/$arch
 Server = https://archlinux.qontinuum.space:4443/$repo/os/$arch
 Server = https://ftp.halifax.rwth-aachen.de/archlinux/$repo/os/$arch

Ahora, puede instalar, actualizar y actualizar paquetes desde los espejos más actualizados hasta la fecha.

$ sudo pacman -Syu
$ sudo pacman -S <package_name>

2.3. Recupere los N espejos más recientes y clasifíquelos por edad

Para recuperar los espejos superiores y ordenarlos por su antigüedad, es decir, la última sincronización del servidor, ejecute:

$ sudo reflector --latest 20 --protocol https --sort age --save /etc/pacman.d/mirrorlist

2.4. Recuperar la lista de réplicas específicas de cada país

También puede restringir los espejos a países seleccionados. Por ejemplo, si vive en la India, es posible que desee actualizar la lista de espejos con los servidores solo de la India.

Para enumerar todos los espejos de Arch Linux disponibles en todo el mundo, ejecute:

$ reflector --list-countries

Salida de muestra:

Country                Code Count
---------------------- ---- -----
Australia                AU    19
Austria                  AT     6
Bangladesh               BD     1
Belarus                  BY     4
Belgium                  BE     3
Bosnia and Herzegovina   BA     2
Brazil                   BR    11
Bulgaria                 BG    11
Canada                   CA    20
Chile                    CL     8
[...]

Como puede ver en el resultado anterior, reflector enumera los espejos disponibles en el mundo junto con el código de país y la cantidad de espejos en cada país.

Al momento de escribir esta guía, la mayor cantidad de réplicas de Arch Linux se encuentran en EE. UU. (134 espejos), Alemania (114) y Países Bajos (51).

Para recuperar un espejo de un país específico, puede usar el nombre del país o el código del país, o una combinación de ambos.

El siguiente comando recuperará los 5 espejos principales de India , ordénelos por la tasa de descarga y guárdelos en el archivo de la lista de espejos.

$ sudo reflector --verbose --country 'India' -l 5 --sort rate --save /etc/pacman.d/mirrorlist

El siguiente es un breve resumen de lo que harán estas banderas en el comando anterior.

  • --verbose - imprime más información de lo normal.
  • --country India - mi ubicación de espejo preferida.
  • --l 5 - recupera los cinco mejores espejos de la India.
  • --sort rate - ordena por tasa de descarga.
  • --save - guarde la lista de espejos descargada en /etc/pacman-d/mirrorlist .

Verifiquemos la lista de réplicas actualizada usando el comando:

$ cat /etc/pacman.d/mirrorlist

Salida de muestra:

################################################################################
################# Arch Linux mirrorlist generated by Reflector #########################
################################################################################

# With:       reflector --verbose --country India -l 5 --sort rate --save /etc/pacman.d/mirrorlist
# When:       2021-06-10 10:27:06 UTC
# From:       https://www.archlinux.org/mirrors/status/json/
# Retrieved:  2021-06-10 10:26:49 UTC
# Last Check: 2021-06-10 09:15:02 UTC

Server = http://mirrors.piconets.webwerks.in/archlinux-mirror/$repo/os/$arch
Server = https://mirrors.piconets.webwerks.in/archlinux-mirror/$repo/os/$arch
Server = http://mirror.cse.iitk.ac.in/archlinux/$repo/os/$arch

Desafortunadamente, solo hay tres réplicas de Arch Linux disponibles en India.

2.5. Recuperar la lista de réplicas de varios países

También puede especificar varios países separados por comas como se muestra a continuación.

$ sudo reflector --country 'United States,India' -l 10 --age 12 --protocol https --sort rate --save /etc/pacman.d/mirrorlist 

Este comando seleccionará los mejores 10 espejos HTTPS sincronizado en las últimas 12 horas y ubicado en Estados Unidos o India , ordenarlos por velocidad de descarga y sobrescribir el archivo /etc/pacman.d/mirrorlist archivo.

2.6. Recuperar la lista de espejos ordenados por países

Para obtener toda la lista ordenada por países, ejecute el siguiente comando:

$ sudo curl -o /etc/pacman.d/mirrorlist https://archlinux.org/mirrorlist/all/

Después de recuperar los espejos ordenados por país, edite su /etc/pacman.d/mirrorlist archivo:

$ sudo nano /etc/pacman.d/mirrorlist

Descomente la URL reflejada de su elección para habilitarla.

Por ejemplo, habilité los espejos de India. Por lo tanto, eliminé el símbolo (#) delante de cada URL.

[...]
India
Server = http://mirror.cse.iitk.ac.in/archlinux/$repo/os/$arch
Server = http://mirrors.piconets.webwerks.in/archlinux-mirror/$repo/os/$arch
Server = https://mirrors.piconets.webwerks.in/archlinux-mirror/$repo/os/$arch
[...]

Guarde y cierre el archivo. Actualice las listas de repositorios usando el comando:

$ sudo pacman -Syu

2.7. Seleccione los espejos más rápidos

Reflector puede recuperar un espejo más rápido para su Arch Linux.

El siguiente comando recupera los 5 10 espejos HTTPS más rápidos ubicado en Estados Unidos , los ordena por velocidad de descarga y sobrescribe el archivo /etc/pacman.d/mirrorlist archivo.

$ sudo reflector -f 5 --country 'United States' --protocol https --sort rate --save /etc/pacman.d/mirrorlist 

2.8. Especificar protocolo

Puede seleccionar los espejos actualizados que admiten un tipo específico de protocolo, por ejemplo, https , http , ftp etc.

Por ejemplo, este comando seleccionará 5 espejos más actualizados de Estados Unidos que soportan HTTP y anular /etc/pacman.d/mirrorlist archivo:

$ sudo reflector --latest 5 --protocol http --country 'United States' --save /etc/pacman.d/mirrorlist

Las otras opciones admitidas son --isos que solo devolverá espejos que alojan ISO, --ipv4 que solo devolverá réplicas compatibles con IPv4 y --ipv6 solo devuelve espejos compatibles con IPv6.

3. Actualice la lista de réplicas de Arch Linux automáticamente al arrancar

Reflector incluye systemd unidades de servicio y temporizador que se pueden usar para actualizar automáticamente la lista de espejos de Pacman.

3.1. Habilite e inicie el servicio reflector systemd

A partir de la versión 2020.8, Reflector se envía con reflector.service . Para actualizar su lista de espejos de Arch Linux automáticamente en cada reinicio, simplemente habilite e inicie este servicio usando los comandos:

$ sudo systemctl enable reflector.service
$ sudo systemctl start reflector.service

El reflector.service ejecutará reflector con los parámetros especificados en /etc/xdg/reflector/reflector.conf expediente.

La configuración predeterminada es suficiente para la mayor parte del tiempo. Aquí está el contenido de reflector.conf archivo:

$ cat /etc/xdg/reflector/reflector.conf

Salida de muestra:

#
# Empty lines and lines beginning with "#" are ignored.  All other lines should
# contain valid reflector command-line arguments. The lines are parsed with
# Python's shlex modules so standard shell syntax should work. All arguments are
# collected into a single argument list.
#
# See "reflector --help" for details.

# Recommended Options

# Set the output path where the mirrorlist will be saved (--save).
--save /etc/pacman.d/mirrorlist

# Select the transfer protocol (--protocol).
--protocol https

# Select the country (--country).
# Consult the list of available countries with "reflector --list-countries" and
# select the countries nearest to you or the ones that you trust. For example:
# --country France,Germany

# Use only the  most recently synchronized mirrors (--latest).
--latest 5

# Sort the mirrors by synchronization time (--sort).
--sort age

También puede editar este archivo y cambiar los parámetros según sus requisitos. Este archivo acepta todos los argumentos de la línea de comandos del reflector.

Puede agrupar los argumentos en una sola línea o dividirlos en muchas líneas, con líneas en blanco opcionales y líneas de comentarios que comienzan con # .

3.2. Habilitar e iniciar el temporizador reflector systemd

Reflector envía otra unidad systemd llamada reflector.timer , que inicia el reflector.service semanal.

Para habilitarlo e iniciarlo automáticamente al iniciar el sistema, ejecute los siguientes comandos uno por uno:

$ sudo systemctl enable reflector.timer
$ sudo systemctl start reflector.timer

De forma predeterminada, iniciará reflector.service una vez a la semana. Si no desea esperar la hora programada, puede iniciar reflector.service para actualizar inmediatamente la lista de espejos de pacman:

$ sudo systemctl start reflector.service

Conclusión

En esta guía, aprendimos qué es Reflector, cómo recuperar la lista actualizada de espejos de Pacman para su sistema Arch Linux usando el script Reflector y, finalmente, cómo actualizar la lista de espejos de Arch Linux automáticamente.


Arch Linux
  1. Cómo configurar un servidor SFTP en Arch Linux

  2. Conéctese a un servidor usando SSH en Linux o Mac OS X

  3. Cómo enumerar los puertos abiertos en el servidor Linux/Unix

  4. Haz una solicitud https usando sockets en Linux

  5. ¿Arch Linux es adecuado para el entorno del servidor?

Instalar Arch Linux usando el instalador gráfico Revenge

Cómo enumerar los sistemas de archivos en Linux usando Lfs

Cómo instalar la última versión de Arch Linux

Cómo instalar Nginx en un servidor en la nube Arch Linux

Cómo instalar Apache en Arch Linux

Uso de Ajenti en la gestión de servidores Linux