Mirrors (Türkçe)

From ArchWiki
Çeviri Durumu: Bu makale, Mirrors makalesinin çevirisidir. Son çeviri tarihi (yıl-ay-gün şeklinde): 2024-09-08. Eğer makalenin İngilizce sürümünde değişiklik yapılmış ise çevirinin senkronize edilmesine yardımcı olabilirsiniz. Çevirmenliğe dair bilgi edinmek için Telegram grubumuzu ziyaret edebilirsiniz. Çevrilmiş tüm makelelere buradan erişebilirsiniz.

Bu makale yansımalarınızı seçmede, yapılandırmada ve güncel yansımalarınızı listelemede rehber olması amacı ile oluşturulmuştur.

Resmî yansımalar

Resmî Arch Linux yansıma listesine pacman-mirrorlist paketi ile ulaşabilirsiniz. Daha da güncel bir yansıma listesi edinmek için Pacman Yansıma Listesi Oluşturucu'yu kullanabilirsiniz.

Yansımaların durumunu Yansıma Durumu sayfasından kontrol edebilirsiniz. Sadece güncel olan, yani senkronizasyonu bozulmuş olmayan yansımaları kullanmanız tavsiye edilir.

Eğer kişisel yansımanızın resmî listeye eklenmesini istiyorsanız, DeveloperWiki:NewMirrors makalesine bakın. Bu süre zarfında yansımanızı Unofficial mirrors makalesine ekleyebilirsiniz.

IPv6 yansımalar

Güncel IPv6 yansımaların listesi için de Pacman Yansıma Listesi Oluşturucu kullanılabilir.

Belirli bir yansımayı aktif hâle getirme

Yansımaları aktif hale getirmek için /etc/pacman.d/mirrorlist dosyasını düzenlemeniz gerekmektedir. Dosyanın içerisinde kendi bölgenizi veya kullanmak istediğiniz diğer yansımaları bulun ve yorum blokundan çıkarın.

Örneğin:

## Worldwide
#Server = https://geo.mirror.pkgbuild.com/$repo/os/$arch
#Server = http://mirror.rackspace.com/archlinux/$repo/os/$arch
Server = https://mirror.rackspace.com/archlinux/$repo/os/$arch

Yansıma seçmede yardımcı olacak bazı araçlar için #Yansımaları sıralama bölümüne bakın.

İpucu: Kullanmak istediğiniz 5 yansımanın yorumunu kaldırın ve bunları yansıma listesi (mirrorlist) dosyasının en üstüne yerleştirin. Böylece bu yansımaları bulmak ve listedeki ilk yansımada sorun çıkarsa yerlerini değiştirmek daha kolay olur. Ayrıca yansıma listesi güncellemeleriyle eklenen yansımalarla birleştirmenizi de kolaylaştırır.

Yansımaları /etc/pacman.conf içerisinde belirtmek de mümkündür. Örneğin core deposu için varsayılan ayarlar şu şekildedir:

[core]
Include = /etc/pacman.d/mirrorlist

kernel.org yansımasını varsayılan olarak ayarlamak için, Include satırından önce şunu ekleyin:

[core]
Server = https://mirrors.kernel.org/archlinux/$repo/os/$arch
Include = /etc/pacman.d/mirrorlist

Bu değişiklikler ile pacman öncelikle belirttiğiniz yansımaya bağlanmaya çalışacaktır. Eğer mümkünse aynı değişikliği core-testing, extra ve extra-testing için de yapmanız gerekmektedir.

Uyarı: Eğer yansımalar pacman.conf içerisinde tanımlanmış ise tüm depolar için aynı yansımanın kullanılması gerekmektedir. Aksi takdirde birbiri ile uyumlu olmayan paketler yüklenebilir (örneğin core içerisindeki linux paketi ve extra içerisindeki eski çekirdek modülü) ve sistemde yarım güncellemelere yol açabilir.

pacman'i paket listesini yenilemeye zorlama

Yansımalar senkronize olmayabilir ve eski yansımanın paket listesi, listelerin tarihleri öyle olduğunu gösterse bile, yeni yansımanın paket listesine karşılık gelmeyebilir.

/etc/pacman.d/mirrorlist dosyasını oluşturduktan/düzenledikten sonra, aşağıdaki komutu çalıştırın:

# pacman -Syyu

İki tane --refresh/-y bayrağı kullanmak pacman'i, güncel gözüküyorlarsa bile, tüm paket listelerini yenilemeye zorlar.

Not: pacman -Syyu komutunu kullanmak çoğu durumda bir bant genişliği israfıdır, ancak bazen bozuk bir yansımadan çalışan bir yansımaya geçerken yaşanabilecek sorunları çözebilir. Ayrıca Is -Syy safe? başlığına da bakınız.
Uyarı: Çoğu senaryoda; pacman veritabanını yenilemeye zorlarsanız, çok yeni olan paketleri yeni yansının sunduğu sürümlere karşılık gelecek şekilde düşürmeye zorlamak isteyebilirsiniz. Bu, paketlerin tutarsız bir şekilde yükseltilmesi ve kısmi güncellemeler gibi sorunları önler.
# pacman -Syyuu

Bu, başarılı bir şekilde senkronize edilen yansımaları kullanırken veya paket listelerinin güncel olduğundan emin olmak için yansımaların lastsync dosyasının zaman damgasını kontrol etmişseniz gerekli değildir.

Yansımaları sıralama

Pacman herhangi bir paket indirirken yansımaları /etc/pacman.d/mirrorlist dosyasında sıralandığı hâlleriyle kullanır. Sunucuların listedeki sırasına göre öncelikleri ayarlanır.

En hızlı sunucular bazen senkronize olmayabileceğinden, yansımaları yalnızca hıza göre sıralamak uygun değildir. Bunun yerine, hızlarına göre sıralanmış bir yansıma listesi oluşturun, ardından yansımaların durumlarına göre senkronize olmayanları listeden çıkarın.

Yansımalar listesini güncel tutmak için bu işlemin düzenli olarak tekrarlanması önerilir.

Hıza göre sıralama

Elde bulunan bir yansıma listesini sıralama

pacman-contrib paketi, en hızlı yerel yansımayı kullanmanın avantajından yararlanmak için yansımaları bağlantı ve açılış hızlarına göre sıralamak için kullanılabilecek /usr/bin/rankmirrors adlı bir Bash betiği sağlar.

Hâlihazırda /etc/pacman.d/mirrorlist konumunda bulunan yansıma listesi dosyasını yedekleyin:

# cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.backup

mirrorlist.backup dosyasını rankmirrors ile sıralamak için aşağıdaki yönergeler takip edilebilir:

  • mirrorlist.backup dosyasını bir metin düzenleyicisi ile açın ve test etmek istediğiniz sunucuları yorum blokundan çıkarın.
  • Dosyanın içerisindeki sunucular ülkeye göre gruplanmış ise şu komut ile belli bir ülke için olan sunucular seçilebilir:
    $ awk '/^## Ülke ismi (İngilizce haliyle)$/{f=1; next}f==0{next}/^$/{exit}{print substr($0, 1);}' /etc/pacman.d/mirrorlist.backup
  • Tüm yansımaları yorum satırından çıkarmak için şu sed komutunu girin:
    # sed -i 's/^#Server/Server/' /etc/pacman.d/mirrorlist.backup
  • Son olarak, -n 6 miktar belirtme bayrağı ile sadece en hızlı 6 yansımanın çıktısını almak için şu komutu kullanın:
    # rankmirrors -n 6 /etc/pacman.d/mirrorlist.backup > /etc/pacman.d/mirrorlist

Canlı bir yansıma listesini çekip sıralama

Bazı ülkelerde bulunan güncel yansımaların kısa bir listesiyle başlamak ve bunu rankmirrors'a sağlamak için Pacman Yansıma Listesi Oluşturucu'dan liste edinilebilir. Aşağıdaki komut; https protokolünü destekleyen, Fransa veya Birleşik Krallık'taki güncel yansımaları çeker, listedeki sunucuları yorum blokundan çıkarır, ardından bunları sıralar ve en hızlı 5 yansımanın çıktısını verir.

$ curl -s "https://archlinux.org/mirrorlist/?country=FR&country=GB&protocol=https&use_mirror_status=on" | sed -e 's/^#Server/Server/' -e '/^#/d' | rankmirrors -n 5 -
İpucu: Bu yöntem yazı tabanlı bir tarayıcıda https://archlinux.org/mirrorlist sayfası açılarak interaktif bir şekilde de gerçekleştirilebilir, örneğin elinks(1).

Mevcut araçlar:

Rate Mirrors — Yansımaları edinir, eski/senkronize olmayan yansımaları atlar, ardından ülkeler arasında atlamak ve hızlı yansımalar bulmak için denizaltı kabloları ve internet değişimleri hakkındaki bilgileri kullanır. Ve her güncellemeden önce çalıştırılabilecek kadar hızlıdır. Ayrıca stdin üzerinden sağlanan özel yansıma listelerini de destekler.
https://github.com/westandskif/rate-mirrors || rate-mirrorsAUR

Sunucu taraflı sıralama

Resmî Pacman Yansıma Listesi Oluşturucu, sıralanmış bir yansıma listesi elde etmek için kolay bir yol sağlar. Tüm sıralama işlemleri tek bir sunucuda yapıldığı ve birden fazla faktör göz önünde bulundurulduğu için, yansımalara ve kullanıcı tarafına binen yük, her kullanıcının kendi sıralamasını yapmasına kıyasla, oldukça azdır.

Bir diğer popüler alternatif ise aşağıdaki araçtır:

  • Reflector — En son yansıma listesini MirrorStatus sayfasından alır, bunları hıza göre filtreler, sıralar ve /etc/pacman.d/mirrorlist üzerine yazar. Bulundurduğu systemd servisi ve zamanlayıcısı ile otomasyon sağlar.
https://xyne.dev/projects/reflector/ || reflector
  • mirro-rs — TUI'ye sahip bir Arch Linux yansıma listesi yöneticisi.
https://github.com/rtkay123/mirro-rs || mirro-rs
  • rate-mirrors — Günlük kullanıma uygun, kullanıcı taraflı, harita farkındalığına sahip yansıma sıralama aracı.
https://github.com/westandskif/rate-mirrors || rate-mirrorsAUR
  • shiny-mirrors — Rust ile yazılmış bir Reflector alternatifi.
https://gitlab.com/Arisa_Snowbell/shiny-mirrors || shiny-mirrorsAUR

Sorun giderme

Kayıp mirrorlist

Eğer aşağıdaki hata ile karşılaşırsanız:

error: config file /etc/pacman.d/mirrorlist could not be read: No such file or directory

Yansıma listesini websiteden direkt olarak edinin:

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

#Belirli bir yansımayı aktif hâle getirme bölümünde de belirtildiği gibi tercih ettiğiniz yansımaları yorum blokundan çıkarın ve şu komutu çalıştırın:

# pacman -Syu pacman-mirrorlist

Beklenildiği gibi davranmayan yansımalar

Eğer belli bir yansıma, yansıma durum bilgisi sayfasındakinin aksine beklenildiği gibi çalışmıyorsa, yansımayı değiştirin ve bir hata bildirisi oluşturmayı gözden geçirin. Yansımalar için bu hata bildirileri Arch Linux GitLab projesindeki arch-mirrors deposunda oluşturulmalıdır. Aynı zamanda mirrors@archlinux.org adresine mail de gönderebilirsiniz.

Ayrıca bakınız