Arch Linux Archive
関連記事
Arch Linux Archive (略して ALA), 旧称 Arch Linux Rollback Machine (略して ARM) は公式リポジトリのスナップショットや昔の ISO イメージ、ブートストラップ tarball などを保存しています。
ALA を使うことで以下のことができます:
- パッケージを昔のバージョンにダウングレード (最新版が壊れていて、1つ前のバージョンに戻したい場合)
- ある特定の時間まで全てのパッケージをリストア (全てのパッケージが壊れていて、2ヶ月前まで戻したい場合)
- 1つ前のバージョンの ISO イメージを取得
目次
場所
Arch Linux Archive は現在 https://archive.archlinux.org/ から利用可能です。
以下の URL は非推奨となっており後に廃止される予定です:
ソースコード を入手して自分で Arch Linux Archive をセットアップすることもできます。
ディレクトリ
Archive は以下のように3つのメインディレクトリに分かれています。
├── iso ├── packages └── repos
/repos
repos ディレクトリには公式ミラーの毎日のスナップショットが含まれており、以下のように日付でまとめられています。
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
/packages
packages ディレクトリには全てのバージョンのパッケージと署名が含まれています。1つのパッケージに1つのディレクトリとなっており、パッケージのディレクトリは最初の一文字によってまとめられています。
├── 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
.all サブディレクトリを使うことでパッケージの名前で直接アクセスすることができます。要するに、全てのパッケージの全てのバージョンが一つのディレクトリに収まっています。
├── 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 │ │ └── ...
完全なパッケージリストは次の URL からダウンロードできます (圧縮済みです): 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 ディレクトリには公式 ISO イメージとブートストラップ tarball が収められており、リリース日によって分けられています。
├── 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
FAQ
パッケージをダウングレードする方法
/packages の中からダウングレードしたいパッケージを探して以下のようにインストールしてください:
# pacman -U https://archive.archlinux.org/packages/ ... packagename.pkg.tar.xz
pacman はパッケージに付属している .sig ファイルを自動的にダウンロードして /etc/pacman.conf
の設定にしたがって検証を実行します。
もしくは、パッケージを手動でダウンロードして pacman -U
でインストールする方法もあります。
ダウングレードを簡単にするツールについてはパッケージのダウングレード#公式パッケージを見てください。
特定の日時まで全てのパッケージをリストアする方法
特定の日時にあったパッケージにリストアするには、例えば2014年3月30日の場合、/etc/pacman.conf
を編集して以下のようにサーバーを記述することで pacman にその時のパッケージをダウンロードさせます:
[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
もしくは以下の内容で /etc/pacman.d/mirrorlist
を置き換えます:
## ## Arch Linux repository mirrorlist ## Generated on 2042-01-01 ## Server=https://archive.archlinux.org/repos/2014/03/30/$repo/os/$arch
そしてデータベースをアップデートして強制的にダウングレード:
# pacman -Syyuu
歴史
- オリジナルの ARM (Archlinux Rollback Machine) は2013年8月18日に幕を閉じました [1]。
- 新しい ARM は2013年8月31日から seblu.net でホストされています。
- 2015年10月13日に、新しい URL が作られ昔の ARM ディレクトリは無くなりました。新しいソフトウェア、agetpkg-gitAUR が作られました。
- 2015年12月19日に archive.archlinux.org に移動しました [2]。