Solarisへのフリーソフトのインストール方法

最終更新日:2006年04月12日

はじめに

概要

Solaris にフリーソフトをインストールする方法として以下が考えられる。 ここでは、pkg-get の環境構築と使用方法およびパッケージ管理について詳細に説明する。

各インストール方法説明

OSのCD(DVD)から入れる

多くのフリーソフトがOSのCD(DVD)にパッケージ化されて入っている
OSのCD(DVD)から入れたパッケージは、/usr/sfw/ の下に入る

ソースコンパイル

ソースを入手してコンパイルする
自分の好きな環境が作れるが、初心者にはちょっと敷居が高いかも

Freeware for Solaris からパッケージを入手

Freeware for Solaris からパッケージをダウンロードして pkgadd する
このサイトのパッケージは、/usr/local/ の下に入る

pkg-get を使う

環境を作ってしまえば後は楽なのでお勧め
pkg-get が利用できるサイトには、CSW - Community SoftWareFreeware for Solaris がある

両サイトの比較(2005年06月29日現在)

CSW Freeware for Solaris
パッケージ数
(INTEL/Solaris 10)
1,000以上
pkgの分割が細かい
約150
但し同じpkgのバージョン違い有り
ベースディレクトリ
(インストール先)
/opt/csw /usr/local
依存関係 チェックする
依存するpkgを自動でインストール
チェックしない
依存するpkgは自分で判断して個別にインストール
パッケージ名 CSW***** SMC*****

pkg-getパッケージの比較(2005年06月29日現在)

CSW Freeware for Solaris
入手先 http://www.blastwave.org/pkg_get.pkg http://www.sunfreeware.com/BOLTpget.pkg
パッケージ名 CSWpkgget BOLTpget
バージョン 3.3.1 1.9.9
インストール先 /opt/csw/bin/pkg-get /usr/bin/pkg-get
設定ファイル /opt/csw/etc/pkg-get.conf /etc/pkg-get.conf
注意事項 環境変数を LANG=C に設定して使用
LANG=ja だと正常に動かない

※ pkg-getパッケージはバージョンや初期設定が異なるだけ、設定を変更すれば両サイトに接続可能

pkg-get の環境構築

手順

  1. wget のインストールと設定
  2. pkg-get のインストールと設定

wget のインストールと設定

以下のいずれかの方法で wget の入手とインストールを行う
パッケージのインストールは、
# pkgadd -d ファイル名

必要に応じて wget の設定を /etc/wgetrc 又は $HOME/.wgetrc に記述する
以下は、proxy を通す場合の記述例
http_proxy = http://proxy.yoyodyne.com:18023/
ftp_proxy = http://proxy.yoyodyne.com:18023/
use_proxy = on

※ proxy を通す設定は pkg-get の設定でも可能なので、どちらかで設定すればOK

pkg-get のインストールと設定

pkg-get パッケージの比較表を参照して pkg-get パッケージの入手とインストールを実施
パッケージのインストールは、
# pkgadd -d ファイル名

必要に応じて設定ファイル pkg-get.conf の設定変更を行う

ダウンロード先を変更する場合は、以下からダウンロード先のURLを取得して "url=" の行を変更する
(パッケージのダウンロードが遅い場合などは、ダウンロード先を変更してみる)
サイト ダウンロード先の情報
CSW http://www.blastwave.org/mirrors.html
Freeware for Solaris http://www.sunfreeware.com/ftp.html

proxy を通す場合は、proxy の設定を行う
(wget で設定している場合は設定しなくても可)
以下は、proxy を通す場合の記述例
ftp_proxy=http://your-proxy:8023
http_proxy=http://your-proxy:8023
export http_proxy ftp_proxy

pkg-get の使用方法

パッケージ情報の取得・更新

# pkg-get -U

インストール可能なパッケージの一覧表示

# pkg-get -a

インストール可能なパッケージの説明表示

# pkg-get -D

インストール可能なパッケージの検索

# pkg-get -D キーワード

インストール済みパッケージとカタログのバージョン比較

# pkg-get -c

インストール済みパッケージの表示(ソフトウェア名のみ)

# pkg-get -l

パッケージのインストール

# pkg-get -i ソフトウェア名

インストール済みパッケージのアップグレード

# pkg-get -u
これだと、パッケージの削除時などに確認が入る場合があるので、確認を省略したい場合は "-f" オプションを付ける
# pkg-get -f -u

インストール済みパッケージの削除

# pkg-get -r ソフトウェア名

ダウンロードサイトの一時的な変更

# pkg-get -s ftp://site/dir ........

※ 使用方法の詳細は、pkg-get の man などを参照

パッケージ管理

インストール済みパッケージの一覧表示

書式
pkginfo
出力例
$ pkginfo
system      BOLTpget                         pkg-get
system      CADP160                          Adaptec Ultra160 SCSI Host Adapter Driver
application CSWaudiofile                     audiofile - Silicon Graphics Audio File Library
  .
  .
  .

インストール済みパッケージの詳細表示

書式
pkginfo -l パッケージ名
出力例
$ pkginfo -l CSWpkgget
   PKGINST:  CSWpkgget
      NAME:  pkg_get - CSW version of automated package download tool
  CATEGORY:  system
      ARCH:  all
   VERSION:  3.3.1
   BASEDIR:  /opt/csw
    VENDOR:  http://www.blastwave.org/pkg-get.html packaged for CSW by Philip Brown
      DESC:  A convenient way to automate package installs
    PSTAMP:  speedy20050411201556
  INSTDATE:  6月 29 2005 14:55
   HOTLINE:  http://www.blastwave.org/bugtrack/
     EMAIL:  phil@bolthole.com
    STATUS:  completely installed
     FILES:       11 installed pathnames
                   7 shared pathnames
                   7 directories
                   4 executables
                 113 blocks used (approx)

パッケージがインストールしたファイルリスト表示

書式
pkgchk -v パッケージ名
出力例
$ pkgchk -v CSWpkgget
NOTE: Couldn't lock the package database.
/opt/csw/bin
/opt/csw/bin/pkg-get
/opt/csw/etc
/opt/csw/etc/pkg-get.conf.csw
/opt/csw/share
/opt/csw/share/man
/opt/csw/share/man/man1m
/opt/csw/share/man/man1m/pkg-get.1m
/var
/var/pkg-get
/var/pkg-get/admin-fullauto

ファイルをインストールしたパッケージの調査

書式
pkgchk -l -p ファイルのフルパス
出力例
$ pkgchk -l -p /opt/csw/bin/pkg-get
NOTE: Couldn't lock the package database.
Pathname: /opt/csw/bin/pkg-get
Type: regular file
Expected mode: 0755
Expected owner: root
Expected group: bin
Expected file size (bytes): 49533
Expected sum(1) of contents: 33842
Expected last modification:  4月 12 12時15分34秒 2005
Referenced by the following packages:
        CSWpkgget
Current status: installed

インストール済みパッケージの整合性確認

書式
pkgchk パッケージ名
出力例
$ pkgchk SUNWwgetr
NOTE: Couldn't lock the package database.
ERROR: /etc/wgetrc
    modtime <01/08/05 午後05時36分56秒> expected <06/30/05 午後12時34分10秒> actual
    file size <4002> expected <4138> actual
    file cksum <21300> expected <31754> actual