Artigos relacionados
Arch Linux Archive (ayrıca ALA olarak da bilinir), eski adıyla Arch Linux Rollback Machine (veya ARM), resmi depoların anlık görüntülerini (snapshots), ISO imajlarını ve bootstrap tarball dosyalarını zaman damgalı olarak saklar.
Şu amaçlarla kullanabilirsiniz:
- Bir paketin önceki sürümüne dönmek (downgrade) için (son sürüm hatalıysa ve bir öncekini kullanmak istiyorsanız)
- Tüm paketlerinizi belirli bir tarihteki durumuna geri yüklemek için (sisteminiz bozulduysa ve 2 ay önceki haline dönmek istiyorsanız)
- Bir ISO imajının eski bir sürümünü bulmak için
Paketler yalnızca birkaç yıl saklanır ve daha sonra Arch Linux Geçmiş Arşivi (archive.org) bölümüne taşınır.
Konum
Arch Linux Arşivi'ne https://archive.archlinux.org/ adresinden ulaşılabilir.
Kendi yansılarınızı (mirror) kurabilmeniz için kaynak kodu da mevcuttur.
Dizinler
Arşiv, aşağıda detaylandırılan 3 ana dizine ayrılmıştır:
├── iso ├── packages └── repos
/repos
repos dizini, aşağıdaki örnekte olduğu gibi tarihe göre düzenlenmiş resmi yansıların günlük anlık görüntülerini içerir:
repos ├── 2013 │ ├── 08 │ │ └── 31 │ │ ├── community │ │ ├── community-staging │ │ ├── community-testing │ │ ├── core │ │ ├── extra │ │ ├── gnome-unstable │ │ ├── kde-unstable │ │ ├── lastsync │ │ ├── multilib │ │ ├── multilib-staging │ │ ├── multilib-testing │ │ ├── pool │ │ ├── staging │ │ └── testing │ ├── 09 │ │ ├── 01 │ │ ├── 02 │ │ ├── ... │ │ ├── 21 │ │ └── 22 │ ├── 10 │ │ ├── 01 │ │ ├── 02 │ │ ├── ... │ │ │ ├── 11 │ └── 12 ├── 2014 │ ├── 01 │ │ ├── 01 │ │ ├── 02 │ │ ├── ... │ │ │ ├── 02 │ ├── 03 │ ├── ... │ └── 09 │ ├── 01 │ ├── ... │ └── 28 ├── last ├── month └── week
Not: Son 3 özel dizin (last, week ve month); sırasıyla en son senkronize edilen depoya, en son pazartesi gününe ve içinde bulunulan ayın ilk gününe bağlantı oluşturur.
/packages
packages dizini, her paketin tüm sürümlerini ve bunlara ait imzaları içerir. Her paket için bir dizin bulunur ve bu dizinler baş harflerine göre gruplandırılır.
├── packages │ ├── a │ │ ├── awesome │ │ │ ├── awesome-3.5.0-1-i686.pkg.tar.xz │ │ │ ├── awesome-3.5.0-1-i686.pkg.tar.xz.sig │ │ │ ├── awesome-3.5.0-1-x86_64.pkg.tar.xz │ │ │ ├── awesome-3.5.0-1-x86_64.pkg.tar.xz.sig │ │ │ ├── awesome-3.5.1-1-i686.pkg.tar.xz │ │ │ ├── awesome-3.5.1-1-i686.pkg.tar.xz.sig │ │ │ ├── ... │ │ │ │ │ ├── ... │ │ ├── awstats │ │ └── axel │ │ │ ├── b │ ├── ... │ └── z
Tüm paketlere doğrudan adlarıyla erişmek için .all adlı özel sihirli alt dizini kullanabilirsiniz. Bu dizin, her paketin tüm sürümlerini içeren tek bir düz dizin görevi görür.
├── packages │ ├── .all │ │ ├── awesome-3.5.1-1-i686.pkg.tar.xz │ │ ├── ... │ │ ├── zsh-5.0.2-3-i686.pkg.tar.xz │ │ ├── zsh-5.0.2-4-i686.pkg.tar.xz │ │ └── ...
Tüm paketlerin tam listesini (yüz binden fazla paket bulunmaktadır) sıkıştırılmış bir indeks olarak indirebilirsiniz: index.0.xz.
$ curl https://archive.archlinux.org/packages/.all/index.0.xz | unxz
0ad-a14-1-i686 0ad-a14-1-x86_64 0ad-a14-2-i686 ... zziplib-0.13.62-1-x86_64 zziplib-0.13.62-2-i686 zziplib-0.13.62-2-x86_64
/iso
iso dizini, çıkış tarihine göre sıralanmış resmi ISO imajlarını ve bootstrap tarball dosyalarını içerir.
├── 2014.09.03 ├── 2014.10.01 ├── 2014.11.01 ├── 2014.12.01 ├── 2015.07.01 ├── 2015.08.01 ├── 2015.09.01 └── 2017.04.01 ├── arch ├── archlinux-2017.04.01-x86_64.iso ├── archlinux-2017.04.01-x86_64.iso.sig ├── archlinux-2017.04.01-x86_64.iso.torrent ├── archlinux-bootstrap-2017.04.01-x86_64.tar.gz ├── archlinux-bootstrap-2017.04.01-x86_64.tar.gz.sig ├── md5sums.txt └── sha1sums.txt
SSS
Bir paketin sürümü nasıl düşürülür (Downgrade)
İstediğiniz paketi /packages dizininde bulun ve pacman'in kurulum için bu paketi çekmesini sağlayın. Örneğin:
# pacman -U https://archive.archlinux.org/packages/ ... paket_adi.pkg.tar.xz
Paketi pacman aracılığıyla çağırmak, pakete ait ayrı .sig imza dosyasını otomatik olarak indirecek ve /etc/pacman.conf ayarlarınıza göre doğrulayacaktır.
Alternatif olarak, paketi manuel olarak indirip pacman -U komutuyla kurabilirsiniz.
Süreci kolaylaştıran araçlar için Sürüm Düşürme Otomasyonu sayfalarına göz atabilirsiniz.
Tüm paketler belirli bir tarihe nasıl geri yüklenir
Tüm paketleri belirli bir tarihteki (örneğin 30 Mart 2014) sürümlerine geri döndürmek için, pacman'i o tarihe yönlendirmeniz ve /etc/pacman.conf dosyanızı düzenleyerek aşağıdaki sunucu yönergelerini kullanmanız gerekir:
[core] SigLevel = PackageRequired Server=https://archive.archlinux.org/repos/2014/03/30/$repo/os/$arch [extra] SigLevel = PackageRequired Server=https://archive.archlinux.org/repos/2014/03/30/$repo/os/$arch [community] SigLevel = PackageRequired Server=https://archive.archlinux.org/repos/2014/03/30/$repo/os/$arch
Veya /etc/pacman.d/mirrorlist dosyanızın içeriğini aşağıdakilerle değiştirebilirsiniz:
## ## Arch Linux repository mirrorlist ## Generated on 2042-01-01 ## Server=https://archive.archlinux.org/repos/2014/03/30/$repo/os/$arch
Ardından, veritabanınızı güncelleyin ve sürüm düşürmeye zorlayın:
# pacman -Syyuu
PGP imzası nedeniyle bozuk/geçersiz paket hataları alırsanız, öncelikle archlinux-keyring ve ca-certificates paketlerini ayrı olarak güncellemeyi deneyin. Alternatif olarak, geçici olarak imza doğrulamayı tamamen devre dışı bırakmayı seçebilirsiniz.
Geçmiş Arşiv
Arch Linux Arşivi'nin bakımı önemli miktarda kaynak tüketir, bu nedenle eski paketler zaman zaman temizlenir.
Eski paketler silinmeden önce, archive.org üzerindeki özel "Arch Linux Historical Archive" koleksiyonuna yüklenir.
Geçmiş Arşiv, Arch paketlerinin belirli bir andaki "anlık görüntüsüne" doğrudan erişim yolu sunmaz. Ancak, archive.archlinux.org üzerinde bir yönlendirme bulunur; böylece eski paket indirmeleri otomatik olarak archive.org üzerindeki Geçmiş Arşiv'e aktarılır. Kullanıcı tarafında, archive.org üzerinden indirmenin genellikle çok daha yavaş olması dışında görünür bir etki yaşanmaz.
Geçmiş Arşiv'de paketleri bulma
Arch Linux Historical Archive koleksiyonunda tüm paketlerin bir indeksi bulunur: https://archive.org/details/archlinuxarchive
Bir pakete tanımlayıcısı (identifier) aracılığıyla doğrudan erişmek de mümkündür. Tanımlayıcılar için genel şablon şöyledir:
archlinux_pkg_<temizlenmiş_paket_adı>
Temizlenmiş paket adını elde etmek için, paket adındaki tüm @, + veya . karakterlerini alt çizgi _ ile değiştirmeniz yeterlidir.
Örneğin, lucene++ paketinin tanımlayıcısı archlinux_pkg_lucene__ şeklindedir.
Böylece bir paketin detay sayfasına tanımlayıcısını kullanarak erişebilirsiniz, örneğin: https://archive.org/details/archlinux_pkg_lucene__
archive.org Python istemcisi ile arama yapmak da mümkündür:
$ ia search subject:"archlinux package" subject:'mysql'
{"identifier": "archlinux_pkg_ejabberd-mod_mysql"}
{"identifier": "archlinux_pkg_ejabberd-mod_mysql-svn"}
{"identifier": "archlinux_pkg_gambas3-gb-db-mysql"}
{"identifier": "archlinux_pkg_gambas3-gb-mysql"}
{"identifier": "archlinux_pkg_libgda-mysql"}
Geçmiş Arşiv'den paket indirme
Mevcut tüm paket sürümlerine (ve imzalarına) paketin indirme sayfasından erişilebilir: https://archive.org/download/archlinux_pkg_lucene__
pacman kullanarak bir paketi indirmek, doğrulamak ve kurmak için:
# pacman -U https://archive.org/download/archlinux_pkg_cjdns/cjdns-16.1-3-x86_64.pkg.tar.xz
Paket doğrulaması pacman'in RemoteFileSigLevel seçeneği tarafından kontrol edilir. Unutmayın ki pacman kullanıyorsanız, bağımlılıkları kendiniz çözmeniz gerekecektir.
Ayrıca archive.org Python istemcisini de kullanabilirsiniz:
# Bir paketin belirli bir sürümünü indirir
$ ia download archlinux_pkg_cjdns cjdns-16.1-3-x86_64.pkg.tar.xz{,.sig}
# Bir paketin tüm x86_64 sürümlerini imzalarıyla birlikte indirir
$ ia download archlinux_pkg_cjdns --glob="*x86_64.pkg.tar.xz*"
Tarihçe
- Orijinal ARM (Archlinux Rollback Machine), 18 Ağustos 2013 tarihinde kapatıldı. [1]
- Yeni arşiv, 31 Ağustos 2013'ten beri seblu.net üzerinde barındırılmaktadır.
- 13 Ekim 2015'te yeni URL'ye geçildi ve eski ARM hiyerarşisi kapatıldı. Yeni bir yazılım olan agetpkg-gitAUR tanıtıldı.
- 19 Aralık 2015 tarihinde archive.archlinux.org adresine taşındı. [2]
