Arch Linux Archive
テンプレート:Related articles start (日本語)
Arch Rollback Machine (略して ARM) は公式の Archlinux ミラーの毎日のスナップショットです。 ARM を使うことでパッケージの古いバージョンを探したりシステムの更新方法を変えることができます。
場所
ARM は http://seblu.net/a/arm または ftp://seblu.net/archlinux/arm から利用可能です。
アーキテクチャ
ARM は一日のスナップショットを以下のような階層でファイルシステムに保存しています。 さらに特別なスナップショットにリンクする3つのシンボリックリンクと1つのパッケージディレクトリがあります。
├── 2013 │ ├── 08 │ │ └── 31 │ ├── 09 │ │ ├── 01 │ │ ├── 02 │ │ ├── ... │ │ ├── 21 │ │ └── 22 │ └── 10 │ ├── 01 │ ├── 02 │ ├── ... │ ├── packages │ ├── a │ │ ├── awesome │ │ │ ├── awesome-3.5.0-1-i686.pkg.tar.xz │ │ │ ├── awesome-3.5.0-1-x86_64.pkg.tar.xz │ │ │ ├── awesome-3.5.1-1-i686.pkg.tar.xz │ │ │ ├── ... │ │ │ │ │ ├── ... │ │ ├── awstats │ │ └── axel │ │ │ ├── b │ ├── ... │ └── z │ ├── 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 │ └── ... │ ├── last -> 2013/09/22 ├── month -> 2013/09/01 └── week -> 2013/09/16
- 20xx の階層には日付によってまとめられた公式ミラーの日毎のスナップショットが含まれています。
- packages の階層にはそれぞれのパッケージの全てのバージョンのシンボリックリンクが含まれています。パッケージごとに一つのディレクトリにまとめれています。
- all の階層にはひとつのディレクトリにそれぞれのパッケージの全てのバージョンのシンボリックリンクが含まれています。順番はありません。
- last シンボリックリンクは毎日更新され、最後に完了したミラーのスナップショットにリンクします。
- week シンボリックリンクは毎週更新され、今週の月曜日にリンクします。
- month シンボリックリンクは毎月更新され、今月の最初の日にリンクします。
タイムトラベル
この機能によって指定した月日のパッケージとデータベースを取得することが可能です。時間旅行を行うことで:
- 古いパッケージをダウンロードできます。
- pacman の時間を特定の日で止められます。
pacman を2013年10月11日に飛ばすには、/etc/pacman.conf
を編集して以下の server ディレクティブを使って下さい:
[core] SigLevel = PackageRequired Server=http://seblu.net/a/arm/2013/09/11/$repo/os/$arch [extra] SigLevel = PackageRequired Server=http://seblu.net/a/arm/2013/09/11/$repo/os/$arch [community] SigLevel = PackageRequired Server=http://seblu.net/a/arm/2013/09/11/$repo/os/$arch
もしくは /etc/pacman.d/mirrorlist
を以下の内容で置き換えてください:
## ## Arch Linux repository mirrorlist ## Generated on 2042-01-01 ## Server=http://seblu.net/a/arm/2013/09/11/$repo/os/$arch
それからデータベースを更新してください: # pacman -Syy
時間の遅れ
この機能を使うことで Archlinux の更新を将来に先送りすることが可能です。
コンピュータを週ごと・月ごとのペースで更新するには、/etc/pacman.conf
を編集して以下の server ディレクティブを使って下さい:
[core] SigLevel = PackageRequired Server=http://seblu.net/a/arm/month/$repo/os/$arch #Server=http://seblu.net/a/arm/week/$repo/os/$arch [extra] SigLevel = PackageRequired Server=http://seblu.net/a/arm/month/$repo/os/$arch #Server=http://seblu.net/a/arm/week/$repo/os/$arch [community] SigLevel = PackageRequired Server=http://seblu.net/a/arm/month/$repo/os/$arch #Server=http://seblu.net/a/arm/week/$repo/os/$arch
もしくは /etc/pacman.d/mirrorlist
を以下の内容で置き換えてください:
## ## Arch Linux repository mirrorlist ## Generated on 2042-01-01 ## Server=http://seblu.net/a/arm/month/$repo/os/$arch #Server=http://seblu.net/a/arm/week/$repo/os/$arch
未来
以下 ARM の TODO リスト。
- 公式のインフラに移動。
- ある程度時間が経過したら自動でクリーンアップ。
- AUR を ARM に追加する。
ソース
ARM を作るためのスクリプトはシンプルです。
スクリプトはここから入手できます: https://github.com/seblu/armtools
過去
オリジナルの ARM は 2013-08-18 に幕を閉じました [1]。
新しい ARM は 2013-08-31 から seblu.net でホストされています。