はじめに


背景

Vine 3.1 がリリースされたら Vine 3.1 をベースにしたハックキットをリリースしようと考えていたのだが、 Vine 3.1 のパッケージそのままでは動作しないことがわかり、 ハックキットの新版は出さないことにした。
というのも、Vine Project から新しいパッケージがリリースされるたびに その修正版を出さなければならず、事実上無理と感じたからである。

といいつつも Vine 3.1 化の要望を多くいただいたので、 あくまでご自身でアップデートいただくためにこのページを書くことにした。

LinkStation/玄箱 + Vine 3.1 の問題

決して、Vine Linux 3.1 が問題を抱えているのではないので、 誤解のないようにしていただきたい。

現象

Vine Project 謹製のパッケージをそのまま LinkStation/玄箱 のカーネル 2.4.17 で使用すると、 いろいろなプログラムが
error while loading shared libraries: libtermcap.so.2: cannot enable executable stack as shared object requires: Error 14
というエラーを出し起動しない。
ハックキットの起動に必要なプログラムまでがそのエラーになるため、 ハックキットが起動しない。

原因

実はよくわかっていない(汗)

Exec shield というセキュリティ機構 (不正なメモリへのアクセスを禁止する仕組み)が 新しいカーネル/ライブラリには組み込まれているとの事。

回避策

いろいろ試行錯誤していたのだが、 浦島さんから 「glibc にパッチをあててリビルドすれば、カーネル 2.4.17 でも動作する」と 教えていただいた。
逆に言えば、カーネル 2.4.17 で動作させるには、 glibc にパッチをあててリビルドしないといけないのである。

警告

上記 glibc へのパッチは、セキュリティ機構を無効にするパッチである。
コンピュータウィルスやバグつきのプログラムから システムを防御する仕組みを無効にするわけであるから、 その危険性を承知の上でパッチを適用、使用する必要がある。

あなたはアップデートに追従できるか?

Vine Project から新しい glibc パッケージがリリースされる度に その修正版を自分で作成しないといけない。

  • 自分で情報収集ができない方

  • glibc パッケージにパッチをあててリビルドできない方

  • glibc のりビルドにおいて問題が発生しても解決できない方

  • は、Vine 3.1 にアップデートしない事を強く推奨する。

    えらそーなこと書いているが、 私自身上記をクリアする自信がないので ハックキット 2.0 を出さない(注)ことにしたのである。


    注:
    書籍「玄箱をハックしよう」に添付の CD-ROM には上級者向けとして ハックキット2.0α版を収録しています

    ハックキットを Vine 3.1 にアップデートしよう
    LinkStation/玄箱 ハックキット
    LinkStation/玄箱 をハックしよう

    Vine 3.1 へのアップデート

    Copyright (C) 2005 Yasunari Yamashita. All Rights Reserved.
    yasunari @ yamasita.jp 山下康成@京都府向日市