ARM için ports.ubuntu.com'a alternatif depolar var mı?


Yanıtlar:


24

Evet var. Çok fazla olmasa da.

Launchpad ayna listesindeki tüm aynaları ayrıştıracak ve /dists/$DIST/$REPO/binary-$ARCH/nerede yol içerdiklerini kontrol edecek aşağıdaki komut dosyasını yazdım

  • $DISTaşağıdadır Ubuntu dağıtımı, örneğin precise, saucy, trusty, ...
  • $REPOEğer yani, aradığınız deposudur main, restricted, universeveya multiverse.
  • $ARCHaradığınız mimari, ör armhf.

Örnek uğruna, Ubuntu 13.10 (Saucy) sürümünüz olduğunu varsayalım. Ardından , mimari /dists/saucy/main/binary-armhf/için maindepo sunan aynaları keşfetmek için aynaları yol aramak isteyebilirsiniz armhf. Bir ayna bu yolu içeriyorsa, Saucy Salamander için depo mimarisi için ikili paketler olması gerektiği anlamına gelir ve komut dosyası , aynanın URL'si ile birlikte çıkacaktır .armhfmainFOUND:

Lütfen dikkat: bu yolun bir ayna üzerinde bulunması aslında bir garanti değildir, sadece gerekli paketleri içerdiğinin bir göstergesidir; ancak bir ayna bu yolu içeriyorsa, ancak paketleri içermiyorsa, en azından bu aynada balık gibi bir şey olduğunu söyleyebiliriz.

Ayrıca komut dosyasının gerektirdiğini unutmayın curl. Eğer yoksa ( sudo apt-get install curl) yükleyin .

Böylece, bu komut dosyasını kullanarak, Launchpad ayna listesinden hangi aynaların ihtiyacınız olanı hızlı bir şekilde öğrenebilirsiniz. Komut dosyasının, listedeki her bir sunucuya başvurduğundan dolayı bir süre çalışabileceğini unutmayın. Bu sunucular dünya çapında dağıtılır ve bazıları yavaş veya erişilemez curlolabilir (bu , bağlantı girişimi zaman aşımına uğrayacak şekilde durabilir). Yalnızca belirli aynaları (örneğin, yalnızca ülkenizde) taramak için kolayca geliştirilebilir, ancak iyi bir başlangıç ​​noktasıdır.

#!/bin/bash

# URL of the Launchpad mirror list
MIRROR_LIST=https://launchpad.net/ubuntu/+archivemirrors

# Set to the architecture you're looking for (e.g., amd64, i386, arm64, armhf, armel, powerpc, ...).
# See https://wiki.ubuntu.com/UbuntuDevelopment/PackageArchive#Architectures
ARCH=$1
# Set to the Ubuntu distribution you need (e.g., precise, saucy, trusty, ...)
# See https://wiki.ubuntu.com/DevelopmentCodeNames
DIST=$2
# Set to the repository you're looking for (main, restricted, universe, multiverse)
# See https://help.ubuntu.com/community/Repositories/Ubuntu
REPO=$3

# First, we retrieve the Launchpad mirror list, and massage it to obtain a newline-separated list of HTTP mirrors
for url in $(curl -s $MIRROR_LIST | grep -Po 'http://.*(?=">http</a>)'); do
  # If you like some output while the script is running (feel free to comment out the following line)
  echo "Processing $url..."
  # retrieve the header for the URL $url/dists/$DIST/$REPO/binary-$ARCH/; check if status code is of the form 2.. or 3..
  curl -s --head $url/dists/$DIST/$REPO/binary-$ARCH/ | head -n 1 | grep -q "HTTP/1.[01] [23].."
  # if successful, output the URL
  [ $? -eq "0" ] && echo "FOUND: $url"
done

Komut dosyasını olarak kaydettik, find_mirrorsyürütülebilir ( chmod 755 find_mirrors) yaptım ve aşağıdaki gibi yürüttüm:

$ ./find_mirrors armhf saucy main | grep FOUND
FOUND: http://ftp.tu-chemnitz.de/pub/linux/ubuntu-ports/

Benim için 10-15 dakika sürdü. armhfLaunchpad ayna listesinde Saucy mimarisi için sadece bir ayna bulduğum için şaşırdım , yani TU Chemnitz'deki ayna (bu Almanya merkezli; sizin için hala geçerli olan ports.ubuntu.com'dan daha hızlı olabilir) Büyük Britanya.) o sorunun cevabı daha gibidir görünüyor Yani "Evet, var bir sizin için alternatif ayna ..." ;-)

İyi haber şu ki, bu aynayı manuel olarak kontrol ettim ve gerçekten tüm canlı Ubuntu sürümleri için tüm paketlerle birlikte ports.ubuntu.com'un tam bir aynası . Yani, deneyin!

Ayrıca Saucy'den başka bir sürümde daha fazla şansınız olabileceğini unutmayın.

Alternatif (önerilmez)

Bunu eksiksizlik amacıyla söylüyorum, ama bunu tavsiye etmiyorum. Launchpad ayna listesine bakmak yerine, elbette sadece google aynalar için de yapabilirsiniz.

Bunu yapmanın bir yolu, dize için google */dists/saucy/main/binary-armhf/*(daha önce olduğu gibi ihtiyaçlarınıza uygun dağıtım, depo ve mimari) olacaktır. Bu, birçok alternatif ayna bulacaktır, ancak çoğu Launchpad'de resmi olarak kayıtlı değildir. Dolayısıyla Ubuntu ayna ekibi tarafından kalite kontrolü yapılmaz; yavaş olabilir, düzenli olarak güncellenmeyebilir veya yalnızca tam bir Ubuntu sistemi için gereken paketlerin bir alt kümesini veya hatta bazı değiştirilmiş paketleri içerebilir. Bunu düşündüğünüzde, birisi aynalarını herkese açık hale getirmek istiyorsa, muhtemelen Launchpad'e kaydederdi ve sonra yukarıdaki komut dosyası onu bulurdu. Yani aynalar için google kendi sorumluluğunuzdadır. Bana sorarsan, yapma.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.