このドキュメントのライセンスについて

exempla.jpでは原則として,記事を含めた素材を[CC BY-NC 4.0](CC BY-NC 4.0)でライセンスしていますが,この記事では他のライセンサーの著作物が含まれているため,以下のライセンスが適用されます.


以下に示す例のようなケースで,VyOSに追加のパッケージを導入したいことがあります.

  • 監視エージェントのパッケージを導入したい
  • 仮想マシンで動かすので仮想環境サポート用のパッケージを導入したい
  • VyOSを制御するためのエージェント開発等をするためにVyOS上で開発環境を整えたい

私は今回,VyOSの用のエージェントをrubyで自前実装するため, VyOS 1.1.7 にrbenvを入れる前段階として build-essentialsgit を導入してみます.

さて,VyOSは Debianをベースとして構築された仮想ルータであるため,リリースバージョンが合っていればdebianパッケージをそのまま導入することができます.

実際に,VyOS WikiのFAQでその方法が提示されています.

FAQ: How do I install Debian packages?

リンク先の記事を見ればこのテーマはほぼ1終了なのですが,折角なので必要な部分の抜粋を意訳しつつbuild-essentialsとgitのインストールまでやってみましょう.

1. VyOSにdebianリポジトリを追加

VyOS Hydrogen(1.0.x)Helium(1.1.x)とはDebian squeeze をベースにしています. 最初にSqueezeのリポジトリを追加しましょう.(squeezeは現時点で既にEOLのため,Debian archiveを使用します)

set system package repository squeeze components 'main contrib non-free'
set system package repository squeeze distribution 'squeeze'
set system package repository squeeze url 'http://archive.debian.org/debian'

squeezeのサポートは既に終了していますが,VyOS HydrogenとHeliumはいくつかsqueezeのLong Term Support(LTS)パッケージを使用しています.

set system package repository squeeze-lts components 'main contrib non-free'
set system package repository squeeze-lts distribution 'squeeze-lts'
set system package repository squeeze-lts url 'http://archive.debian.org/debian'

もし,あなたが最新のソフトウェアを必要としており,それがsqueezeに含まれていないのであれば,以下の通りbackportsを追加します.

set system package repository squeeze-backports components main
set system package repository squeeze-backports distribution squeeze-backports
set system package repository squeeze-backports url 'http://backports.debian.org/debian-backports'

必要なリポジトリの追加が終わったら,設定を反映し保存しましょう.

commit; save

リポジトリ追加の最後に,パッケージ情報を更新しておきましょう.

ここでsqueeze-ltssqueeze-backportsを導入している場合は注意が必要です.

2016年03月23日現在,squeeze-ltsはEOLとなっており,squeeze-backportsもValid-Untilの指定日時を過ぎています2

そのため,squeeze-ltsとsqueeze-backportsを使用するには,Acquire::Check-Valid-Until オプションを使用する必要があります.

上記のオプションを設定しないと,update時に Release file expired エラーが発生します.

squeeze-ltsまたはsqueeze-backportsを入れている場合

sudo aptitude -o Acquire::Check-Valid-Until=false update

それ以外の場合

sudo aptitude update

2. VyOSにbuild-essentialsをインストール

updateが終わっていれば,後はパッケージマネージャからインストールするだけです.

sudo aptitude install build-essential

インストールが完了すればgccが使用可能になります.

$ gcc -v
Using built-in specs.
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Debian 4.4.5-8' --with-bugurl=file:///usr/share/doc/gcc-4.4/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.4 --enable-shared --enable-multiarch --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.4 --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --with-arch-32=i586 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 4.4.5 (Debian 4.4.5-8)

3. VyOSにgitをインストール

こちらも同様に,パッケージマネージャからインストールしましょう.

sudo aptitude install git

インストールが完了すればgitが使用可能になります.

$ git --version
git version 1.7.2.5

これで完了です.


  1. FAQに記載されたsqueeze-ltsリポジトリのURLではghost対応のlibc6が取り込めなかったため,この手順では変更してあります 

  2. https://wiki.debian.org/LTS/ 

Free WordPress Themes