2017年01月12日

Linuxディストリビューションのバージョン確認あれこれ

これまたすぐにすぐに忘れちゃうので…。

ubuntuの場合はこんな感じ。
$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14.04
DISTRIB_CODENAME=trusty
DISTRIB_DESCRIPTION="Ubuntu 14.04.5 LTS"

CentOSならこう。(手元に環境がないのでコマンドだけ)
cat /etc/redhat-release

Amazon Linuxならこう。(これまた手元に環境がないのでコマンドだけ)
cat /etc/system-release

やっぱりCentOSくらいさくっといじれる環境準備しておきたいところだよな…。

以下のサイトを参考にさせていただきました。
(と言うかまんま丸写し状態ですね…ありがとうございます!)

Ubuntuのバージョン確認とアーキテクチャ確認コマンド | mawatari.jp
http://mawatari.jp/archives/check-ubuntu-version

CentOSのバージョン確認コマンドとアーキテクチャ確認コマンド | mawatari.jp
http://mawatari.jp/archives/check-centos-version

Amazon Linuxのバージョン確認コマンドとアーキテクチャ確認コマンド | mawatari.jp
http://mawatari.jp/archives/check-amazon-linux-version
posted by 月水和尚 (とも) at 19:39 | Comment(0) | TrackBack(0) | Linux(ディストリビューション固有)

ubuntuで/bootに溜まってしまったvmlinuzの削除

あぶすとらくと

・ubuntuを長いこと運用していると/bootに大量のvmlinuzが溜まってイケてない
 (カーネルアップデートをしていない場合は除く)
・apt-get autoremove でも消えてくれないので対応が必要

続きを読む
posted by 月水和尚 (とも) at 19:26 | Comment(0) | TrackBack(0) | Linux(ディストリビューション固有)

2010年06月08日

CentOSでCP932を使う (SJISとちょっと違うよ!)

先日「CentOSでSJISを使う」という記事を書いたところ、コメント欄で「Windowsで使っている文字コードはCP932(MS漢字コード)なので、厳密にはSJISとは違うよ」とご指摘を頂きました。(ありがとうございます!)

というわけで、先日の手順の改訂版。
題して「CentOSでCP932を使う」。

以下のコマンドで、SJISロケールをCP932として追加します。
localedef -f WINDOWS-31J -i ja_JP ja_JP.SJIS

Shift_JISとして登録する場合と違い、登録時の警告は出ません。

viの設定も少し変わります。
具体的にはencodingという設定値が増え、.exrcに登録するのは以下の2行になります。
encoding=cp932
set fileencodings=utf8,cp932,latin

moriyamaさん、ご指摘ありがとうございました!

<参考サイト>

【shift_jisとwindows31Jの関係】 文字コードについて質問です。 WindowsでSHIFT_JISで保存したら自動的にWINDOWS31Jで保存されるのでしょう か? それはつまりWINDOWS31J.. - 人力検索はてな
http://q.hatena.ne.jp/1167447698

Shift_JIS(cp932)の「ダメ文字」 (fudist)
http://sites.google.com/site/fudist/Home/grep/damemoji
posted by 月水和尚 (とも) at 15:56 | Comment(0) | TrackBack(0) | Linux(ディストリビューション固有)

2010年06月04日

CentOSでSJISを使う

WindowsCentOSでちょっとした連携をする仕組みを作っていたのですが、困ったのが文字コードの違い。WindowsがSJISを使っているのに対してCentOSのデフォルトではUTF8を使っています。

本気で対応するのであればCentOS側のプログラムでSJIS-UTF8の変換をすべきなのですが、今回は期間限定お試しのため、安易にCentOS側のロケールをSJISにすることにした…のですが、CentOSってデフォルトではSJISロケール入ってないんですね。(今さら知りました…)

と言うことで、SJISロケールの追加方法。
localedef -f SHIFT_JIS -i ja_JP ja_JP.SJIS

これだけでOK。
コマンド実行時に、日本語ロケールだと
キャラクタマップ `SHIFT_JIS' は ASCII 互換ではありません, ロケールは ISO C に従っていません

また英語ロケールだと
character map `SHIFT_JIS’ is not ASCII compatible, locale not ISO C compliant

という警告が出ますが、気にしなくて大丈夫のようです。

私はファイルの編集にviを使うので、viでもSJISを扱えるように.exrcに以下の1行を追加します。
set fileencodings=utf8,cp932,latin

以下のサイトを参考にさせていただきました。(ありがとうございます!)

SJIS ロケールの追加 - kamata-net.com
http://blog.kamata-net.com/archives/000076.html

CentOSのlocaleにSJISを追加 - 脳ログ - livedoor Wiki(ウィキ)
http://wiki.livedoor.jp/yoko00068/d/CentOS%A4%CElocale%A4%CBSJIS%A4%F2%C4%C9%B2%C3

ずんWiki - vim
http://www.kawaz.jp/pukiwiki/?vim
posted by 月水和尚 (とも) at 10:48 | Comment(10) | TrackBack(0) | Linux(ディストリビューション固有)

2010年01月18日

CentOS 5.4でiSCSIターゲット

CentOSでiSCSIを使おうと思い scsi-target-utils を入れてみたんですが、何故かターゲットデバイスを指定しようとするとtgtadmコマンドがハングしてしまいます。ちょっと調べてみた感じだと、どうも 5.2 まではうまく動いていたようですが、5.3 以降では事例が見つからない。動かなくなった??

仕方ないのでソースからコンパイルしてみることにしました。

使用したのは iSCSI Enterprise Tagetscsi-target-utilsLinux target framework が元になっているみたいなのですが、導入事例が見つかったのが前者だったのでそちらを試しています。

まずは下準備。コンパイルに gcc kernel-devel openssl-devel が必要なので導入しておきます。
yum install gcc kernel-devel openssl-devel

次にソースコードを取得します。こちらのダウンロードページから最新版をダウンロードしてください。2010/01/18現在の最新版は1.4.19なので以下のコマンドでダウンロードおよび展開をします。
cd /tmp
wget http://downloads.sourceforge.net/project/iscsitarget/iscsitarget/1.4.19/iscsitarget-1.4.19.tar.gz?use_mirror=jaist
tar zxvf iscsitarget-1.4.19.tar.gz
cd iscsitarget-1.4.19

続いてビルド。これはもうお作法どおり。
make && make install

サービスを起動します。
service iscsi-target start

続いてiSCSIターゲットの作成。
ietadm --op new --tid=100 --params Name=iqn.2010-01.com.hoge.iscsi:test

ターゲットID(tid)は0以外であれば何でもいいようなのですが、ここでは参考にさせていただいたサイトを真似て100にしています。名前は命名規則があって、

 タイプ識別子「iqn.」、ドメイン取得日、ドメイン名、ドメイン取得者が付けた文字列

としなければないそうです。ただ今回はローカルな環境に設定している(=名前の衝突は発生しない)ので、適当な名前で設定しました。

続いて公開するディスクの設定。
ietadm --op new --tid=100 --lun=0 --params Path=/dev/hdb

ここではディスクを丸ごと1つ(/dev/hdb)公開指定しましたが、LVMの論理ボリュームやパーティション、ファイルシステム(ddで空のファイルを作っておく)を指定しても大丈夫みたいです。ただ論理ボリュームやパーティションを公開した場合、ホスト側で中身を参照する方法が不明…どうやるんだろう?(ディスク丸ごとであれば普通にmount出来るのですが)

−追記:2010/01/19−
解決したので別記事作成しました → こちら
−追記ここまで−

これでiSCSIターゲットの設定は完了です。あとはiSCSIが使用するポート(3260/TCP,UDP)を外部と通信可能にしておきましょう。CentOSの導入時にFirewallを使うように設定している場合、以下のエントリを適当な場所(ESTABLISHEDの前あたり?)に追加します。
-A RH-Firewall-1-INPUT -p udp -m udp --dport 3260 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 3260 -j ACCEPT

設定を有効化しましょう。
service iptables restart

続いてクライアント側(ターミネータ側)の設定。今回はWindowsXPから使うことを想定します。

WindowsXPはデフォルトではiSCSIのドライバを持っていません。以下のサイトからダウンロードしてインストールする必要があります。

Microsoft iSCSI Software Initiator
http://www.microsoft.com/downloads/details.aspx?familyid=12cb3c1a-15d6-4585-b385-befd1319f825&displaylang=en

スタートメニューからMicrosoft iSCSI Initiatorを実行すると、iSCSI Initiatorのプロパティというウィンドウが表示されます。Discoveryタブを選択し、Target PortalsAddボタンを押し、先ほどiSCSIターゲットを導入したサーバのIPアドレスを入力します。

次にTargetsタブを選択すると、Targetsに先ほどサーバ側で設定した名前が表示されていると思います。項目を選択してLog On...をクリックするとポップアップが表示されるので、必要なオプションにチェックを入れて(とりあえずテストであればチェック不要です)OKをクリックすればディスクが認識されます。

あとはローカルディスクと同様に、ディスクの管理ツールからパーティションの設定やフォーマットを行えば利用可能になります。

ちなみに先ほど ietadm で設定した内容は、再起動後には無効になってしまいます。サービス起動と同時に有効にするためには、/etc/iet/ietd.conf に以下の設定を追加します。
Target iqn.2010-01.com.hoge.iscsi:test01
  Lun 0 Path=/dev/hdb,Type=fileio
  MaxConnections 1

あとサービス自体もサーバ再起動時には行われないので、ちゃんと自動起動するように設定しておきましょう。
chkconfig iscsi-target on

以下のサイトを参考にさせていただきました。(ありがとうございます!)

CentOS/5.2/11.iSCSIターゲット - moji-moji wiki
http://mojimoji.jp/wiki/index.php?CentOS%2F5.2%2F11.iSCSI%E3%82%BF%E3%83%BC%E3%82%B2%E3%83%83%E3%83%88

Mazn.net » iSCSIを使ってみる@CenOS5.2 (ターゲット) + Windows XP (イニシエータ)
http://www.mazn.net/blog/2009/03/20/199.html

EZ-NET: CentOS 5.3 で iSCSI ターゲットを構築する
http://network.station.ez-net.jp/server/linux/storage/iscsi.asp

湘南エイト会−iSCSI技術仕様
http://liffey2.ld.infoseek.co.jp/computer/storage/index7.html

−追記:2010/02/02−
前提ソフトウェアにgccとkernel-develを追加しました。
posted by 月水和尚 (とも) at 18:13 | Comment(0) | TrackBack(0) | Linux(ディストリビューション固有)

2009年09月24日

ubuntuでChromium

utunbuChromiumを使う方法。

ちなみにubuntuのバージョンは9.04
ただ一部読み替えればその他のバージョンでも問題なくいけると思います。

まずは/etc/apt/source.listにPPAのChromiumリポジトリを追加します。
deb http://ppa.launchpad.net/chromium-daily/ppa/ubuntu jaunty main
deb-src http://ppa.launchpad.net/chromium-daily/ppa/ubuntu jaunty main

続いてChromiumリポジトリのGPGキーを取得して追加します。
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 4E5E17B5

ものすごくちなみの話なんですが、GPGキーの取得にはTCPの11371ポートを利用します。(hkpというプロトコルを使っているそうです) 外向きのファイアウォールを厳しめにしている方は注意してください。(私はここでハマりました)

リポジトリの内容を更新し、Chromiumをインストールします。
sudo apt-get update
sudo apt-get install chromium-browser

基本的にはここまででOKですが、このままだとFlashコンテンツが再生できません。以下のコマンドを実行してFlashプラグインをChromium用にコピーします。
cp -p /usr/lib/adobe-flashplugin/libflashplayer.so /usr/lib/chromium-browser/plugins/

これでインストール終了。

実行はアプリケーションメニューからも出来ますが、そのままだとせっかくコピーしたFlashプラグインが有効になりません。以下のとおりオプションを付けて実行します。
chromium-browser --enable-plugins

ざっと使ってみた感想ですが、驚くほど普通に使えます。βっぽい挙動の不安定さは感じられず。Firefox(3.5.2)と比較してさくさく感はかなり上という感じ。

このままメインブラウザにしちゃおうかな…と思ったのですが、思わぬ問題に直面。テキストボックスへの日本語入力の際に、未確定文字の文節の区切り位置が確認できないことが判明。(Adobe AIRで作られたアプリと同じような感じですね) メールやらtwitterクライアントやらをみんなブラウザ頼りにしている私にはちょっと致命的な不具合。と言うわけで、残念ながらメインのブラウザにはなり得ませんでした。惜しかったなぁ。

以下のサイトを参考にさせていただきました。(ありがとうございます!)

Ubuntu日本語フォーラム / chromeできます?
https://forums.ubuntulinux.jp/viewtopic.php?id=5130

reconstructed RobotechBlog » Blog Archive » Ubuntu 9.04にChromiumをインストールしてみた
http://www.robotech.jp/2009/08/27/ubuntu-9-04%E3%81%ABchromium%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%97%E3%81%A6%E3%81%BF%E3%81%9F/

ぴえ〜るの活動日記 : 200706 - ぴえ〜るの活動日記
http://pierre.vg/x/modules/wordpress/index.php?m=200706
posted by 月水和尚 (とも) at 17:20 | Comment(0) | TrackBack(0) | Linux(ディストリビューション固有)

2009年07月13日

ubuntu 9.04 で Firefox 3.5

Firefox の最新版であるバージョン3.5がWindowsで問題なく動いてくれているので、ubuntu機のFirefoxもバージョンアップしたいなぁ…と思っていたんですが、どうやら正式サポートされるのは9.10からのようで。

ただし、今でもUbuntu Mozilla Security TeamのPPAを使うとインストール出来るようです。以下そのための手順のメモ。

まずはリポジトリにUbuntu Mozilla Security Teamのパッケージを追加。具体的には /etc/apt/source.list に以下の2行を追加します。
deb http://ppa.launchpad.net/ubuntu-mozilla-security/ppa/ubuntu jaunty main
deb-src http://ppa.launchpad.net/ubuntu-mozilla-security/ppa/ubuntu jaunty main

続いて該当リポジトリの公開鍵をインポート。
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 7EBC211F

パッケージの一覧を最新の状態に更新します。
sudo apt-get update

これで準備OK。Firefox 3.5をインストールします。
sudo apt-get install firefox-3.5 firefox-3.5-gnome-support latex-xft-fonts

でもって起動。まだ3.03.5が共存しているので、起動はターミナルから直接コマンド打ちます。
firefox-3.5

初回起動時には3.0の時に使っていたプロファイルがコピーされるのでちょっと時間がかかります。でもそれ故3.03.5がきれいに共存できるのでありがたい限りですが。

素の状態ではメニュー等が英語なので、以下のサイトから日本語ロケール(って表現で正しいのかな?)である ja.xpi を導入しておきましょう。

Index of ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/3.5/linux-i686/xpi/
ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/3.5/linux-i686/xpi/

これで完了。ざっと使った感じ特に問題はなさそうなので、私は3.5をメインにしちゃってます。私と同様にもう3.5メインでいいやーという方は、シンボリックリンクだけの問題なのでさくっと付け替えちゃいましょう。
cd /usr/bin
sudo rm firefox
sudo ln -s firefox-3.5 firefox

以下のサイトを参考にさせていただきました。
(ありがとうございました!!)

hiromasa.another :o) » Blog Archive » Ubuntu 9.04 の Firefox 3.5 と 3.5 対応の WP!Pikon
http://another.maple4ever.net/archives/923/

Ubuntu Weekly Topics:2009年7月3日号 9.10のDebian Import Freeze・OpenOffice.orgの日本語環境改善拡張機能・Firefox 3.5・UWN#148・Full Circle Magazine #26|gihyo.jp … 技術評論社
http://gihyo.jp/admin/clip/01/ubuntu-topics/200907/03

Ubuntu日本語フォーラム / Mozilla Firefox 3.5 のインストールについて
https://forums.ubuntulinux.jp/viewtopic.php?pid=34412
posted by 月水和尚 (とも) at 11:59 | Comment(0) | TrackBack(0) | Linux(ディストリビューション固有)

2009年07月08日

CentOSでOpenVPN

CentOSOpenVPNを動かすための手順。
公式リポジトリには入ってないんで、全部ソースからビルドします。

まずはビルドに必要なパッケージをインストールします。
yum install gcc gcc-c++ openssl-devel pam-devel

私はブリッジ接続派の人なので、bridge-utilsも入れておきます。
yum install bridge-utils

続いてOpenVPNで使用する圧縮ライブラリであるLZOをビルドします。
cd /tmp
wget http://www.oberhumer.com/opensource/lzo/download/lzo-2.03.tar.gz
tar zxvf lzo-2.03.tar.gz
cd lzo-2.03
./configure
make
make install

これで準備完了。OpenVPN本体をビルドします。
cd /tmp
wget http://openvpn.net/release/openvpn-2.0.9.tar.gz
tar zxvf openvpn-2.0.9.tar.gz
cd openvpn-2.0.9
./configure --with-lzo-headers=/usr/local/include --with-lzo-lib=/usr/local/lib
make
make install

PAM認証を使いたい方はPAMプラグインもビルドしておきます。
cd /tmp/openvpn-2.0.9/plugin/auth-pam
make
cp -p openvpn-auth-pam.so /usr/local/lib

ブリッジ接続派の私はブリッジの起動停止スクリプトもコピーしておきます。
cp -p /tmp/openvpn-2.0.9/sample-scripts/bridge-* /usr/local/sbin

ここでコピーしたスクリプトの起動用の方(bridge-start)は、コピーしたそのままでは使えません。自分の環境に合わせて内容を変更してください。変えるべき項目はたぶん eth_ipeth_broadcast だけで問題ないと思います。(NICがたくさんあったりブリッジ接続をしない場合はちょっと違いますが)

OpenVPNの起動スクリプト(initスクリプト?)も /tmp/openvpn-2.0.9/sample-scripts/openvpn.init として提供されているんですが、中身がちょっと複雑すぎ。私は簡素化したこんなスクリプトを使っています。
#!/bin/bash
#
# openvpn This shell script takes care of starting and stopping
# openvpn on RedHat or other chkconfig-based system.
#
# chkconfig: 345 24 76
# description: OpenVPN daemon
# processname: openvpn

INIT_PROG=openvpn
VPNCONF=/usr/local/etc/openvpn/openvpn.conf

#
# Source Redhat function library.
#
. /etc/rc.d/init.d/functions

# Track on path to oenvpn if not already in PATH
VPN_PATH=":/usr/local/sbin"

PATH=$PATH$VPN_PATH
export PATH

RETVAL=0

# See how we were called.
start() {
# Start network bridge
echo "Starting network bridge ..."
bridge-start
# Start daemons.
echo -n "Starting $INIT_PROG: "
/sbin/modprobe tun > /dev/null 2>&1
$INIT_PROG --daemon --config $VPNCONF
RETVAL=$?
echo

[ $RETVAL -eq 0 ] && touch "/var/lock/subsys/${INIT_PROG}"
return $RETVAL
}

stop() {
# Stop daemons.
echo -n "Stopping $INIT_PROG: "
killproc $INIT_PROG
RETVAL=$?
echo
# Stop network bridge
echo "Stopping network bridge ..."
bridge-stop

[ $RETVAL -eq 0 ] && rm -f "/var/lock/subsys/${INIT_PROG}"
return $RETVAL
}

case "$1" in
start)
start
;;
stop)
stop
;;
status)
status $INIT_PROG
RETVAL=$?
;;
restart)
stop
start
RETVAL=$?
;;
*)
echo $"Usage: $0 {start|stop|status|restart}"
exit 1
esac

exit $?
最後にOS側での設定。IP packet forwardingを使うので、/etc/sysct.conf の以下の記述を修正します。
net.ipv4.ip_forward = 0
 ↓ 修正
net.ipv4.ip_forward = 1

これで再起動すればIP packet forwardingが利用可能になりますが、変更を再起動なしに即時反映させたい場合は以下のコマンドを実行します。
echo 1 > /proc/sys/net/ipv4/ip_forward

以上でインストール自体は完了ですが、もし公開鍵暗号を使ったユーザ認証をしたいのであれば、公開鍵暗号基盤の管理ツールである easy-rsa を回収しておきましょう。(あとで別のサーバで展開して使用します)
cd /tmp/openvpn-2.0.9
tar cvf ~/easy-rsa.tar easy-rsa

ここまで行けばあとは設定するだけ…なんですが、これがまた結構大変です。ドキュメントを読めば必要なことはみんな書いてあるんですが、何しろ英語なので…。(←英語の読解力がものすごく弱い)

そんな私の救世主となってくれたのがこちらのサイト。

OpenVPNの日本語情報
http://freescitech.net/2/index.html

こちらのWEBMASTER様が日本語訳をしてくれていなかったら、私にはたぶんOpenVPNの構築は無理だったのではないかと思います。本当にありがたいことです。

あと、最近になって日本語公式っぽいサイト(実際には違うと思いますが)が出来ていました。

OpenVPN.JP
http://www.openvpn.jp/

こちらでは日本語のドキュメントと共に、日本語版のOpenVPN GUIが公開されているようです。英語版でも特に難しいところはありませんが、出来れば日本語で、という方はお試し下さい。(私は使ったことがありませんが)

−追記:2009/07/14−
IP packet forwardingの設定が漏れていたので追記しました。

−追記:2009/07/16−
initスクリプトの不具合を修正しました。
easy-rsaの回収手順を修正しました。

−追記:2009/09/03−
initスクリプトをchkconfig対応のために修正しました。

<参考サイト>
猫ぐらし: 自分でインストールしたサービスを chkconfig --add するためには
http://makisuke.seesaa.net/article/6066867.html
posted by 月水和尚 (とも) at 18:08 | Comment(0) | TrackBack(0) | Linux(ディストリビューション固有)

2009年03月09日

VMware Infrastructure Clientをubuntuで動かす

最近VMware ESXiがすごくお気に入りです。

それまではずっと仮想化=Xenの人だったのですが、各ディストリビューションでのXenのサポートがあまり進んでない(むしろ最近後退すらしているような気が…)のと、ESXiがあまりにもさくさく使えるのと相まって、すっかり浮気気味です。(もちろんXenの方が便利なシーンもたくさんあるのですが)

ただESXiのネックは、専用の管理クライアントが必要なこと。Xenのように実機のコンソールからログインしてCUIレベルでさくさく管理というわけにはいきません。(コンソールからログインも出来るらしいのですが、unsupportedな手順になってしまうので)

さらに困った事には、管理クライアントであるVMware Infrastructure ClientはWindowsでしか動きません。ESXi上のサーバにLinuxしか使わない環境でもWindowsが必須なんてあんまりだ…。

というわけで、VMware Infrastructure ClientをLinuxで動かしてみました。こちらで検証した環境はubuntu 8.04ですが、特にubuntuに特化した事はしてないと思うので他のディストリビューションでも似たような手順で実現可能だと思われます。

基本的な手順はこちらの内容を参考にさせていただきました。

vmware infrastructure client on ubuntu … an update
http://www.virtualinsanity.com/index.php/2009/02/02/vmware-infrastructure-client-on-ubuntu-an-update/

まずはWineをインストールするのですが、公式リポジトリにある1.0ではうまく動いてくれないため、WineHQにある最新の開発版(2009/03/09時点で1.1.16)をインストールするために、以下の2つのコマンドを実行します。
wget -q http://wine.budgetdedicated.com/apt/387EE263.gpg -O- | sudo apt-key add -
sudo wget http://wine.budgetdedicated.com/apt/sources.list.d/hardy.list -O /etc/apt/sources.list.d/winehq.list

これで最新の開発版が使えるようになりました。
いつものようにWineをインストールします。
sudo apt-get install wine

続いてWineの導入補助スクリプト(という表現でいいのかな?)であるwinetricksを導入します。導入と言っても、スクリプトをダウンロードしてくるだけなので以下のコマンド1つだけでOKです。
wget http://www.kegel.com/wine/winetricks

保存する場所はたぶんどこでも大丈夫です。
そうしたらwinetricksが利用するcabextractも導入します。
sudo apt-get install cabextract

winetricksを使って必要なWindowsコンポーネントを導入します。
sh winetricks dotnet20 ie6 winxp

途中で(Windowsユーザには)見慣れたダイアログボックスが出てくると思うので、普通にインストールを進めちゃってください。

以上でクライアントを導入する環境は整いました。ESXiが稼働しているサーバから、クライアントアプリをダウンロードしてインストールします。(普通にexeファイルをダブルクリックすればWineが良きに計らってくれます)

これで準備万端…と言いたいところなのですが、どうもWineの通信関連に問題があるらしく、クライアント−サーバ間の通信にSSL(HTTPS)を使うとクライアント側が落ちてしまうとの事。HTTPで通信しようとしてもデフォルトではHTTPSにリダイレクトされてしまいます。そこでHTTPでのアクセスを可能にするためにサーバ側の設定を変更します。これは正規の手順ではないので、本番稼働中のサーバなど、ダウンが許されないサーバでは絶対に行わないでください

まずはESXiにコマンドレベルでログインします。そのために、ESXiが稼働している実機のコンソールにてAlt+F1を押します。するとコマンドっぽい画面(表現下手でスミマセン…)に変わるので、キーボードからunsupportedと打ち込んでEnterを押します。打ち込んだ文字は画面には表示されませんが、気にしないでください。するとパスワード入力のプロンプトが表示されるので、サーバ導入時に設定したパスワードを入力してEnterを押します。無事に完了すると、見慣れたLinuxのコマンドプロンプトが現れます。

ここで修正すべきファイルは /etc/vmware/hostd/proxy.xml で、ファイルに記述されている httpsWithRedirecthttpAndHttps に変更します。viなどで普通に変更されてもいいですが、たぶん以下のコマンドを実行すれば意図したとおりに変更されると思います。
cd /etc/vmware/hostd
cp proxy.xml proxy.xml.org
sed 's/httpsWithRedirect/httpAndHttps/' proxy.xml.org > proxy.xml

修正が完了したらESXiを再起動しましょう。
reboot

再起動が完了したら、いよいよクライアントから接続します。
IP Address / Nameの部分は通常IPアドレスだけ記述すればOKなのですが、それだとHTTPSで通信を始めてしまうため、明示的に http://xxx.xxx.xxx.xxx とプロトコル名込みで記述してください。ここまで全ての手順が正しく完了していれば、VMware Infrastructure Clientが無事に起動してくれると思います。

まだざっとしか使っていませんが、現時点で分かっている不具合は以下のとおりです。

・Consoleが使えない
・右クリックが軒並み全滅
・Getting Startedの表示がおかしい

Getting Startedは設定で消せちゃうようなタブなので特に影響はなく、右クリックに関してもメニュー等別の方法で目的の処理までたどり着けるようなのですが、Consoleが使えないのはちょっと致命的。Linuxクライアントから新しいVMを作るのはちょっと無理のようです。トラブルシューティングなども最後はコンソールからの操作が頼りなので何とか解決してくれるといいんですが、今のところどうしようもないみたいです。ひょっとしたらWineのバージョンが上がったら解決するかも…と淡い期待。(それよりも本家VMwareからLinuxクライアントが出てほしいところですが)

とは言え、とりあえずVMの操作やリソース状態の確認、データストアの操作などは問題なくできるので、それなりに利用価値はありそうです。通常の運用端末はLinuxにしておき、いざという時は別途WindowsPCを持ち込んで対処するとか。(少なくともWindowsのライセンス数の削減には貢献できそう)

ワッサーで助言を下さった@kimitakeさん、@umqさん、@naru01さん、ありがとうございました!
posted by 月水和尚 (とも) at 15:20 | Comment(0) | TrackBack(0) | Linux(ディストリビューション固有)

2008年07月15日

CentOSでyumのリポジトリをiijに変更(一撃で!)

一撃と言いつつ、コマンド3つ使いますが。(汗)
cd /etc/yum.repos.d
mv CentOS-Base.repo CentOS-Base.repo.org
grep -v mirrorlist CentOS-Base.repo.org | sed -e 's@mirror.centos.org@ftp.iij.ad.jp/pub/linux@' -e 's/#baseurl/baseurl/' > CentOS-Base.repo

毎度書き換えるの面倒だったので、これで一手間省けました。
posted by 月水和尚 (とも) at 18:07 | Comment(0) | TrackBack(0) | Linux(ディストリビューション固有)

2008年03月24日

XenでPortageツリーの共用

Xen環境にて全てのドメインでPortageツリーを共用する方法。
(Xen環境じゃなくても似たような手順で出来ますが)

まずはDom0。
必要なのはnet-fs/nfs-utilsなのでemergeします。
emerge -av net-fs/nfs-utils

nfsがシステム起動時に立ち上がるようにしておきます。
rc-update add nfs default

Portageツリーを共用するために、/etc/exportsに以下のようなエントリを追加します。
/usr/portage 192.168.0.0/255.255.255.0(rw,no_root_squash,subtree_check)

アドレスは自分の環境にあったものに適宜変更してください。
そしたらnfsを起動します。(次回以降は必要ありません)
/etc/init.d/nfs start

続いてDomU。
こちらもnet-fs/nfs-utilsが必要なのでemergeします。
emerge -av net-fs/nfs-utils

DomUはファイルを提供してもらう側なので、システム起動時に立ち上げるのはnfsmountになります。
rc-update add nfsmount default

そしたら思い切って、今のPortageツリーを削除します。
rm -rf /usr/portage/*

Dom0のPortageツリーをnfsマウントするように、/etc/fstabに以下のエントリを追加します。
192.168.0.5:/usr/portage /usr/portage nfs noatime 0 0

アドレスの部分はDom0のアドレスを指定してください。
そしたらnfsmountを起動します。(これも次回以降は必要ありません)
/etc/init.d/nfsmount start

これでDom0とDomUでPortageツリーが共用されるようになりました。emerge --syncが1回で済みますし、DomUでPortageツリーのディスク領域が不要になるのでとても経済的です。eixを使っている場合、update-eixは全てのドメインで実行する必要があるので注意しましょう。

Portageツリーを共用する場合、Dom0のmake.confFEATURESに"buildpkg"を追加しておくとなお便利です。全てのドメインで必要なパッケージについては、Dom0で普通にemergeしたあとで、DomUにて
emerge --usepkg PkgName

とすることで、Dom0で作成したモジュールをそのまま利用することが出来ます。Dom0とDomUでそれほど共通のパッケージを使わないのであれば、FEATURESは変更せず、Dom0でのemerge時に、
emerge --buildpkg PkgName

でもOKです。
posted by 月水和尚 (とも) at 18:15 | Comment(2) | TrackBack(0) | Linux(ディストリビューション固有)

便利なコマンドequery

ファイルからebuildを見つけたり、
# equery belongs nslookup
[ Searching for file(s) nslookup in *... ]
net-dns/bind-tools-9.4.1_p1 (/usr/bin/nslookup)

あるパッケージに依存するパッケージを見つけたり、
# equery depends xen-tools
[ Searching for packages depending on xen-tools... ]
app-emulation/xen-3.1.2 (~app-emulation/xen-tools-3.1.2)

ebuildに属するファイルを出力したり、
# equery files openssh
[ Searching for packages matching openssh... ]
* Contents of net-misc/openssh-4.7_p1-r1:
/etc
/etc/conf.d
/etc/conf.d/sshd
  :
(途中省略)
  :

/var
/var/empty
/var/empty/.keep_net-misc_openssh-0

特定USEフラグを使っているパッケージを探したり、
# equery hasuse perl
[ Searching for USE flag perl in all categories among: ]
* installed packages
[I--] [ ] app-editors/vim-7.1.123 (0)
[I--] [ ] sys-apps/util-linux-2.12r-r8 (0)
[I--] [M ] net-nds/openldap-2.3.39-r1 (0)

あるパッケージで使用可能なUSEフラグとその使用状況を確認したり
# equery uses vim
[ Searching for packages matching vim... ]
[ Colour Code : set unset ]
[ Legend : Left column (U) - USE flags from make.conf ]
[ : Right column (I) - USE flags packages was installed with ]
[ Found these USE variables for app-editors/vim-7.1.123 ]
U I
+ + acl : Adds support for Access Control Lists
+ + bash-completion : Enable bash-completion support
- - cscope : Enables cscope interface -- in vim for example
+ + gpm : Adds support for sys-libs/gpm (Console-based mouse driver)
- - minimal : Install a very minimal build (disables, for example, plugins, fonts, most drivers, non-critical features)
+ + nls : Adds Native Language Support (using gettext - GNU locale utilities)
+ + perl : Adds support/bindings for the Perl language
+ + python : Adds support/bindings for the Python language
+ + ruby : Adds support/bindings for the Ruby language
- - vim-pager : Install vimpager and vimmanpager links
- - vim-with-x : Link console vim against X11 libraries to enable title and clipboard features in xterm

と、痒いところに手が届くとっても便利なツールです。
導入してないパッケージに対しても使えれば最強なんですけどね〜。

詳しくは御本家のドキュメントをどうぞ。

Gentoo Linux Documentation -- Gentoolkit
http://www.gentoo.org/doc/ja/gentoolkit.xml?style=printable

ちなみに、equeryapp-portage/gentoolkitに含まれてます。
# equery belongs equery
[ Searching for file(s) equery in *... ]
app-portage/gentoolkit-0.2.3-r1 (/usr/bin/equery)
app-portage/gentoolkit-0.2.3-r1 (/usr/share/doc/gentoolkit-0.2.3/equery)
posted by 月水和尚 (とも) at 17:45 | Comment(0) | TrackBack(0) | Linux(ディストリビューション固有)

2008年03月16日

Gentoo Linuxのインストール(自己流)

いつも手順を忘れちゃうのでメモ。
自分用なのでけっこう端折ってる部分も多いです。

無駄に長いので本文はこちら
posted by 月水和尚 (とも) at 23:50 | Comment(0) | TrackBack(0) | Linux(ディストリビューション固有)

2008年02月20日

EN15000でlm_sensors

VIA EPIA EN-15000lm_sensorsを使う方法。

まずはカーネル側の設定。
必要なドライバは以下のとおり。
Device Drivers --->
  I2C support --->
    <M> I2C support
    <M>  I2C device interface
          I2C Hardware Bus support --->
            <M> VIA 82C596/82C686/82xx
  Hardware Monitoring support --->
    <M> Hardware Monitoring support
    <M>   Winbond W83627HF, W83627THF, W83637HF, W83687THF, W83697HF

私はモジュールにしましたが、カーネルに組み込んでも大丈夫なのかどうかはちょっとよく分かりません。(大丈夫のような気はしますが…)
モジュール追加だけであれば、いつもどおり、
make modules
make modules_install

でOK。
続いてプログラムの準備。これはいとも簡単。
emerge -av lm_sensors

そしたら設定ファイル(/etc/sensors.conf)を書きます。EN-15000が使っているchipはw83697hf(もしかしたらw83627hfかも)なのですが、サンプルファイルに書いてある値をそのまま使うと何だかとんでもない値が出てしまいます。BIOSでの測定値などを考慮して、以下のとおり設定しました。
chip "w83697hf-*"

# label
label in0 "VCore"
label in2 "+3.3V"
label in3 "+5V"
label in4 "+12V"
label in7 "V5SB"
label in8 "VBat"

# ignore in5/in6
ignore in5
ignore in6

# temp/fan label
label fan1 "SYSFAN"
label fan2 "CPUFAN"
label temp1 "SYS"
label temp2 "CPU"

# compute
compute in0 (0.98)*@ , @/(0.98)
compute in3 ((6.8/10)+1)*@ , @/((6.8/10)+1)
compute in4 ((28/10)+1)*@ , @/((28/10)+1)
compute in7 ((5.5/10)+1)*@ , @/((5.5/10)+1)

# max/min
set in0_min 0.956 * 0.95
set in0_max 0.956 * 1.05
set in2_min 3.3 * 0.95
set in2_max 3.3 * 1.05
set in3_min 5.0 * 0.95
set in3_max 5.0 * 1.05
set in4_min 12 * 0.90
set in4_max 12 * 1.10
set in7_min 5 * 0.95
set in7_max 5 * 1.05
set in8_min 3.0 * 0.80
set in8_max 3.0 * 1.20
set fan1_min 2789
set fan2_min 3409

# sensor types
set sensor1 2
set sensor2 1

# temperature limits
set temp1_over 50
set temp1_hyst 37
set temp2_over 45
set temp2_hyst 30

# set beep disable
set beep_enable 0
そしたらセンサーの検出(?)をします。(これは最初1回だけでOK)
sensors-detect

色んな事を聞かれますが、とりあえず全部yesと答えておきましょう。
(すいません、よく分かってないんです)

これで準備完了。
センサーモジュールをロードして設定を読み込みます。
modprobe w83627hf
/usr/bin/sensors -s

では、実行してみましょう。
# sensors
w83697hf-isa-0290
Adapter: ISA adapter
VCore: +0.97 V (min = +0.91 V, max = +1.00 V)
+3.3V: +3.28 V (min = +3.14 V, max = +3.47 V)
+5V: +4.97 V (min = +4.76 V, max = +5.24 V)
+12V: +12.04 V (min = +10.82 V, max = +13.19 V)
V5SB: +5.01 V (min = +4.76 V, max = +5.26 V)
VBat: +3.20 V (min = +2.40 V, max = +3.60 V)
SYSFAN: 2986 RPM (min = 2789 RPM, div = 4)
CPUFAN: 0 RPM (min = 3409 RPM, div = 4) ALARM
SYS: +33 C (high = +50 C, hyst = +37 C) sensor = transistor
CPU: +20.5 C (high = +45 C, hyst = +30 C) sensor = diode
alarms:
beep_enable:
Sound alarm disabled
こんな感じに出てくればOKです。

ちなみにCPUFAN0RPMなのはCPUファンの電源ケーブルを抜いてしまっているからです。普通にケーブル繋げばちゃんと回転数は拾えますのでご安心を。冬であればファンレス状態でemerge worldとかしてもCPU温度は37℃くらいまでしか行かないので、思い切ってファンレス運用中です(ケースファンは動かしてます)。真夏は無理としても、どこまでファンレスで行けるかちょっと楽しみです。
posted by 月水和尚 (とも) at 17:33 | Comment(2) | TrackBack(0) | Linux(ディストリビューション固有)

Gentooで無線LANカードを動かす

Windows用の無線LANドライバをLinuxで使えるようにするために、NDISwrapperというソフトウェアがありました。

Gentooの場合はインストールはいつもどおり。
emerge -av net-wireless/ndiswrapper

そしたらWindows版のドライバを準備します。必要なのは".inf"ファイルと".sys"ファイル。私が使おうとしているWLI-CB-G54の場合はnetcbg54.infbcmwl5.sysでした。
上記のファイルを配置したディレクトリで以下のコマンドを実行します。
ndiswrapper -i netcbg54.inf

これでドライバがインストールされます。
そうしたらndiswrapperをロードします。
modprobe ndiswrapper

これでカードを刺せば普通に無線LANカードとして使えるようになります。

モジュールのロードを自動で行いたい場合には以下のコマンドを実行します。
ndiswrapper -m

参考にさせていただいたサイトは以下のとおりです。

PukiWiki - 無線LAN.WLI-CB-G54.NdisWrapper
http://wiki.gentoo.gr.jp/index.php?%5B%5B%CC%B5%C0%FELAN.WLI-CB-G54.NdisWrapper%5D%5D

@IT:LinuxでWindows用無線LANドライバを利用するには
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/767ndiswrapper.html
posted by 月水和尚 (とも) at 13:49 | Comment(0) | TrackBack(0) | Linux(ディストリビューション固有)

2008年02月07日

Gentooで2915ABG

これ、単にカーネルコンパイル時に、

Device Drivers --->
 Network device support --->
  Wireless LAN --->
   Intel PRO/Wireless 2200BG and 2915ABG Network Connection

をONにしてやるだけでOKかと思ったら違うんですね。
これだけだと起動時に、
ipw2200-bss.fw request_firmware failed : Reason -2
Unable to load firmware : -2

と言うエラーが出て止まってしまいます。
無線を使うには、どうやらファームウェアなる物が必要なようです。
emerge -av ipw2200-firmware

これでOK!

ちなみにドライバはカーネルには組み込まず、モジュールとしてビルドしないとうまく行かないみたいです。

参考にさせていただいたサイトはこちら。(ありがとうございます!)

(hiki blog): GentooLinux@Let'sNoteR3 無線LAN
http://mhiki.blogspot.com/2007/10/gentoolinuxletsnoter3lan.html
posted by 月水和尚 (とも) at 15:27 | Comment(2) | TrackBack(0) | Linux(ディストリビューション固有)

sshdを外と内で使い分ける

こんな要件必要な人いるのかな…と思いつつ。

sshdを使うにあたって、

・インターネットからのアクセスはがっちりガードを固めたい
・ローカルネットワークからのアクセスはてきとー


と言う個人的希望を満たすために、sshdを2つ起動してみました。

同じプロセス名で2つ起動しちゃうといろいろ問題があるので、sshdの別名としてシンボリックリンクを作ります。
cd /usr/sbin
ln -s sshd sshd-out

次に2つめの起動ファイルを作ります。オリジナルの起動ファイルである /etc/rc.d/init.d/sshd/etc/rc.d/init.d/sshd-out という名前でコピーして、これを外部用としましょう。(つまりオリジナルは内部用)

外部用のファイル sshd-out を以下のように変更します。(面倒なのでdiffの結果で)
22c22
< prog="sshd"
---
> prog="sshd-out"
26c26
< SSHD=/usr/sbin/sshd
---
> SSHD=/usr/sbin/sshd-out
30c30
< PID_FILE=/var/run/sshd.pid
---
> PID_FILE=/var/run/sshd-out.pid
107c107
< initlog -c "$SSHD $OPTIONS" && success || failure
---
> initlog -c "$SSHD -f /etc/ssh/sshd_config.out" && success || failure
109c109
< [ "$RETVAL" = 0 ] && touch /var/lock/subsys/sshd
---
> [ "$RETVAL" = 0 ] && touch /var/lock/subsys/$prog
122c122
< [ "$RETVAL" = 0 ] && rm -f /var/lock/subsys/sshd
---
> [ "$RETVAL" = 0 ] && rm -f /var/lock/subsys/$prog
153c153
< if [ -f /var/lock/subsys/sshd ] ; then
---
> if [ -f /var/lock/subsys/$prog ] ; then
そしたら設定ファイルを作ります。オリジナルの /etc/sshd/sshd_config/etc/sshd/sshd_config.out という名前でコピーします。sshd_config.out で必須の変更は、コメントアウトされているPidFile
PidFile /var/run/sshd-out.pid

に変更すること。あとは必要な要件に合わせて、

/etc/sshd/sshd_config
 内部用なのでラフな設定でOK

/etc/sshd/sshd_config.out
 外部用なのでポート番号変更+公開鍵認証+ログインユーザ限定

とかしておくといいんじゃないかと思います。

最後にルータなりiptablesなりで、内部用のsshdに外部からアクセスできないようにすることをお忘れ無く!
posted by 月水和尚 (とも) at 14:43 | Comment(0) | TrackBack(0) | Linux(ディストリビューション固有)

2008年01月17日

クロスコンパイルに挑戦(して挫折)

D01NXをザウルスで動かすシリーズの外伝です。
そして『自分でもやっていることがあっているのか分からない』記事です…。
# これを所謂『チラ裏』と言うのでしょうか?
訂正、ツッコミよろしくお願いします。m(_ _)m

で、本題。

ザウルスでもD01NXを動かすことが出来る事を実証できたのはいいんですが、速度についてはまだまだ。PCで有効だったusbserial+option(+URB拡張)の組み合わせを試してみたいのですが、そのためにはカーネルモジュールをコンパイルする環境が必要です。

いつまでも他力本願寺はイクナイ!
と、一念発起してクロスコンパイル環境を作ってみました。

ベースとなるのはGentoo Linux
ちょっと最近雲行き怪しいのが悩みの種…。

クロスコンパイルには、風の便りにCodeSourceryのツールチェーンが使えるよ、と言う話を聞いたのですが、私はGentoo野郎らしくcrossdevを使ってみようと思います。

まずはcrossdevemergeします。
emerge -av crossdev

そしたらportageoverlayディレクトリを作成します。
世の中の例にならって場所は /usr/local/portage にしましょう。
mkdir -p /usr/local/portage

ツールチェーンを作成します。ターゲットはarmv5teです。
armv5telってのをpdaXrom界隈では見かけるんですけど、違うんですね。
(実際armv5に"l"というオプションはない → 参考1参考2)
PORTDIR_OVERLAY="/usr/local/portage" crossdev -t armv5te

エラーが出なければ完成です。
では早速optionusbserialを作成してみましょう。
cd /usr/src
cp -pr linux-2.6.23-gentoo-r3 linux-2.6.23-arm
cd linux-2.6.23-arm
make ARCH=arm CROSS_COMPILE=armv5te-linux- menuconfig

いつもとは違うメニューが出てきました!
とりあえずusbserialoptionだけをモジュールにしてmake modules
しようと思ったら、

何と奴らはモジュールに出来ない…。orz

と言うわけで、ただいまここで挫折中。
へるぷみー。


# Gentooカテゴリのデビュー記事がこれかぁ…先が思いやられる


−追記:2008/01/18−
モジュールになってくれないのは、単に、
Enable loadable module support
をONにし忘れていただけでした…とほほ。

−追記その2:2008/01/18−
でも、モジュールのビルドが出来ないことは変わらず。
カーネルソースがx86前提になっているような気がしてならない…。
posted by 月水和尚 (とも) at 17:31 | Comment(9) | TrackBack(0) | Linux(ディストリビューション固有)

2007年03月19日

PXEブート環境の構築

1スピンドルなPCへのOS導入最後の砦!(大げさな…)
PXEブート環境の構築をします。
ここではCentOSを使っていますが、他のディストリビューションでも似たような手順で行けると思います。

必要なパッケージはtftpdhcpdなので、以下のコマンドで導入します。
apt-get install tftp-server dhcp

CentOSなのにyumではなくapt使いな私です。

xinetd経由でtftpを起動するので、以下のファイルを修正します。

/etc/xinetd.d/tftp
service tftp
{
(省略)
    disable = no  ←「yes」を「no」に変更
(省略)
}

修正が完了したらxinetdを再起動します。
service xinetd restart

続いてDHCPサーバの設定を行います。
まずは設定ファイルのサンプルを持ってきます。
cp -p /usr/share/doc/dhcp*/dhcpd.conf.sample /etc/dhcpd.conf

そして環境に合わせて変更します。

/etc/dhcpd.conf
subnet 192.168.30.0 netmask 255.255.255.0 {  ← 全体を導入時の環境に合わせる
(省略)
    filename    "/linux-install/pxelinux.0";  ← 追加
(省略)
}

filenameに記述するのはフルパスではなく、/tftpboot以下のパスなので注意してください。
修正が完了したらDHCPサーバを再起動します。
service dhcpd restart

そしたらtftpで使用するディレクトリにLinuxのbootイメージを配置します。(ここでの手順ではCentOSを導入するためのbootイメージを配置しています)
mkdir /tftpboot
cd /tftpboot
mkdir linux-install
cd linux-install
wget ftp://ftp.riken.jp/Linux/centos/4/os/i386/images/pxeboot/vmlinuz
wget ftp://ftp.riken.jp/Linux/centos/4/os/i386/images/pxeboot/initrd.img
cp /usr/lib/syslinux/pxelinux.0 /tftpboot/linux-install/

最後にPXETFTPDHCPが使用するポートを使用可能にするために、iptablesに以下の記述を追加します。

/etc/sysconfig/iptables
-A RH-Firewall-1-INPUT -p udp --dport 67 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp --dport 69 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp --dport 4011 -j ACCEPT

修正が完了したらiptablesを再起動します。
service iptabes restart

これで出来上がり!
あとはインストールしたいPCをネットワークにつなぎ、ネットワークカードからブートするだけです。

以下のサイトを参考にさせていただきました。(ありがとうございます!)

PXEを使ったネットワークブート
http://mitty.jp/pc/networkboot/
posted by 月水和尚 (とも) at 17:32 | Comment(10) | TrackBack(0) | Linux(ディストリビューション固有)

2006年06月09日

CentOSでもw3m - その2

前回記事以降に分かった事のまとめです。と言うか導入方法全面的に変わっているので以降はこちらを参照してください。GCに関しては特に新たな発見はないので前回記事の通りでお願いします。

で、何が分かったかというと、
w3mmixiへの書き込みをすると改行が無視されてしまう問題がある
  → 最新CVSでは修正されている
GCライブラリを移動しなくてもコンパイルできる方法を発見

とこんな感じです。

と言うわけで、改めて導入方法をまとめてみます。
まずはCVSへのログイン。
cvs -d:pserver:anonymous@w3m.cvs.sourceforge.net:/cvsroot/w3m login

パスワードを聞かれるので、何も打たずにEnterキーを押します。
(要するにパスワードは空)

そしたらCVSからファイルを取得してコンパイル…となるのですが、ここからは一気に行けるのでまとめて記述します。
cd /tmp
cvs -z3 -d:pserver:anonymous@w3m.cvs.sourceforge.net:/cvsroot/w3m co -P w3m
cd w3m
export LD_LIBRARY_PATH=/usr/local/lib
./configure
make
make install

これでおしまい。

−追記:2006/12/22−
…が、このままだとLD_LIBRARY_PATHがセットされてない環境では動きません。
そこでシステムのライブラリパスに/usr/local/ibを追加します。
echo /usr/local/lib >> /etc/ld.so.conf.d/user.conf
ldconfig

−追記ここまで−

CVSでのファイル取得方法については公式ページが詳しいです。

SourceForge.net: CVS
http://sourceforge.net/cvs/?group_id=39518

またライブラリパスの指定については以下の情報を参考にさせていただきました。

ITトピックス
http://www.iwahrt.com/iwahrt/ListProblemSolution.do?categoryNo=14&problemNo=78
posted by 月水和尚 (とも) at 18:08 | Comment(0) | TrackBack(0) | Linux(ディストリビューション固有)