玄箱+ハックキット 2.0 αに glibc 2.3.3-3vl1.3


玄箱のハックキット 2.0 αの glibc をアップデートしてみる。

ハックキット 2.0 αのインストール

インストールと、最初の設定。

root になる

まずはログイン、root になる。
"su" とか "su root" とかでは、 /sbin 等にコマンドサーチパスが通らないので、 "su - root" として root になる。

Vine Linux 3.1 (Pichon Lalande)
Kernel 2.4.17_kuro-box on a ppc
login: yasunari
Password:
-bash-2.05b$ su - root
Password:
[root@hackkit root]#

apt-get によるアップデート

[root@hackkit root]# apt-get update
取得:1 http://updates.vinelinux.org 3.1/ppc release [2524B]
2524B を 1s 秒で取得しました (2284B/s)
ヒット http://updates.vinelinux.org 3.1/ppc/main pkglist
取得:1 http://updates.vinelinux.org 3.1/ppc/main release [158B]
ヒット http://updates.vinelinux.org 3.1/ppc/devel pkglist
取得:2 http://updates.vinelinux.org 3.1/ppc/devel release [157B]
取得:3 http://updates.vinelinux.org 3.1/ppc/plus pkglist [322kB]
取得:4 http://updates.vinelinux.org 3.1/ppc/plus release [158B]
取得:5 http://updates.vinelinux.org 3.1/ppc/updates pkglist [94.5kB]
取得:6 http://updates.vinelinux.org 3.1/ppc/updates release [161B]
取得:7 http://updates.vinelinux.org 3.1/ppc/main srclist [106kB]
ヒット http://updates.vinelinux.org 3.1/ppc/devel srclist
取得:8 http://updates.vinelinux.org 3.1/ppc/plus srclist [176kB]
取得:9 http://updates.vinelinux.org 3.1/ppc/updates srclist [34.4kB]
734kB を 7s 秒で取得しました (104kB/s)
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
[root@hackkit root]#
まずは、普通に apt-get upgrade を実行
[root@hackkit root]# apt-get upgrade
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
以下のパッケージがアップグレードされます:
  XOrg-libs nscd openssl openssl096 perl proftpd python telnet-server vine-keyring
以下のパッケージは保留されます:
  glibc glibc-common glibc-debug glibc-devel glibc-profile glibc-utils kernel-headers
アップグレード: 9 個, 新規インストール: 0 個, 削除: 0 個, 保留: 7 個
22.4MB のアーカイブを取得する必要があります。
展開後に 2248kB が解放されます。
続行しますか? [Y/n]y
取得:1 http://updates.vinelinux.org 3.1/ppc/updates vine-keyring 1.0-0vl19 [52.8kB]
取得:2 http://updates.vinelinux.org 3.1/ppc/updates XOrg-libs 6.7.0-0vl6.2 [2181kB]
取得:3 http://updates.vinelinux.org 3.1/ppc/updates nscd 2.3.3-3vl1.3 [81.0kB]
取得:4 http://updates.vinelinux.org 3.1/ppc/updates openssl 0.9.7d-0vl3.2 [1263kB]
取得:5 http://updates.vinelinux.org 3.1/ppc/updates openssl096 0.9.6m-0vl1.1 [667kB]
取得:6 http://updates.vinelinux.org 3.1/ppc/updates proftpd 1:1.2.10-0vl1.1 [691kB]
取得:7 http://updates.vinelinux.org 3.1/ppc/updates perl 2:5.8.2-0vl4.1 [12.2MB]
取得:8 http://updates.vinelinux.org 3.1/ppc/updates python 2.3.4-0vl7 [5285kB]
取得:9 http://updates.vinelinux.org 3.1/ppc/updates telnet-server 0.17.x-30vl1.1 [31.3kB]
22.4MB を 54s 秒で取得しました (411kB/s)
変更を適用しています...
Preparing...                ########################################### [100%]
   1:vine-keyring           ########################################### [ 11%]
importing Vine Linux keyring to rpm keyring... done.
   2:XOrg-libs              ########################################### [ 22%]
   3:nscd                   ########################################### [ 33%]
   4:openssl                ########################################### [ 44%]
   5:openssl096             ########################################### [ 55%]
   6:proftpd                ########################################### [ 66%]
   7:perl                   ########################################### [ 77%]
   8:python                 ########################################### [ 88%]
   9:telnet-server          ########################################### [100%]
完了
[root@hackkit root]#

glibc のアップデート

起動しなくなること覚悟で glibc を apt-get install する
[root@hackkit root]# apt-get install glibc glibc-common glibc-debug glibc-devel glibc-profile glibc-utils
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
以下のパッケージがアップグレードされます:
  glibc glibc-common glibc-debug glibc-devel glibc-profile glibc-utils
アップグレード: 6 個, 新規インストール: 0 個, 削除: 0 個, 保留: 1 個
82.4MB のアーカイブを取得する必要があります。
展開後に 30.7MB が解放されます。
取得:1 http://updates.vinelinux.org 3.1/ppc/updates glibc-utils 2.3.3-3vl1.3 [89.9kB]
取得:2 http://updates.vinelinux.org 3.1/ppc/updates glibc-devel 2.3.3-3vl1.3 [3003kB]
取得:3 http://updates.vinelinux.org 3.1/ppc/updates glibc-debug 2.3.3-3vl1.3 [29.0MB]
取得:4 http://updates.vinelinux.org 3.1/ppc/updates glibc-common 2.3.3-3vl1.3 [17.3MB]
取得:5 http://updates.vinelinux.org 3.1/ppc/updates glibc 2.3.3-3vl1.3 [3987kB]
取得:6 http://updates.vinelinux.org 3.1/ppc/updates glibc-profile 2.3.3-3vl1.3 [29.0MB]
82.4MB を 3m17s 秒で取得しました (418kB/s)
変更を適用しています...
Preparing...                ########################################### [100%]
   1:glibc-utils            ########################################### [ 16%]
   2:glibc-devel            ########################################### [ 33%]
   3:glibc-debug            ########################################### [ 50%]
   4:glibc-common           ########################################### [ 66%]
   5:glibc                  ########################################### [ 83%]
   6:glibc-profile          ########################################### [100%]
完了
[root@hackkit root]#
アップデートはとりあえず成功

やっぱり動かない

ls 一発で結果が出た。
[root@hackkit root]# ls
/bin/ls: error while loading shared libraries: libtermcap.so.2: cannot enable executable stack as shared object requires: E
rror 14
[root@hackkit root]#

Linux 2.4.20 では

玄箱を Linux 2.4.20 で起動してみた。
Vine Linux 3.1 (Pichon Lalande)
Kernel 2.4.20_kuro-box on a ppc
login: yasunari
Password:
Last login: Thu Nov  3 15:25:18 from mebiusl.yamasita.jp
-bash-2.05b$ rpm -qa|grep glibc
glibc-devel-2.3.3-3vl1.3
glibc-common-2.3.3-3vl1.3
glibc-profile-2.3.3-3vl1.3
glibc-utils-2.3.3-3vl1.3
glibc-debug-2.3.3-3vl1.3
glibc-2.3.3-3vl1.3
-bash-2.05b$ uname -a
Linux hackkit 2.4.20_kuro-box #1 Mon Oct 11 17:18:28 JST 2004 ppc unknown
-bash-2.05b$
こちらは、ちゃんと動作した。

結局 glibc の作り直しか、、、




Device=0 Status=ERROR
ハックの記録
LinkStation/玄箱 をハックしよう

glibc 2.3.3-3vl1.3 のリビルド

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