小ネタ 2013-011
非Intel x86なマシンで自宅サーバー
非Intel x86なマシン各種
1. Cobalt Qube2
2005年にCobalt Qube2を入手して以来 長らくこのwebサイトを自宅サーバーのCobaltQube2で動かしていたのだが、色々と問題があるので新しいサーバー機を検討することにした。
Cobalt Qube2の外観
問題としては、(1)ディスク容量の問題、(2)CPU能力の問題、(3)OSのバージョンが古いままバージョンアップされないという問題などがある。
OS/システムが長いこと更新されていないのだが、幸いwebサイトに対する攻撃の被害もなく今まで耐え切ったみたいだ。
ただ、システムが古いせいでwordpressなどをインストールして動かすことができなかった。
CobaltQube2のファンから異音がしてきたので、とりあえず分解してファンを交換した。ついでにHDD増設やOSの更新ができないかどうか調べてみた。
背面パネルに取り付けられているファンを交換した。
そのついでにHDDも容量が少し大きいものに取り替えてOSを入れ直すことにした。
マザーボードを取り外した。
さらにそのついでにCPU(MIPS RM5231)に気休め程度の小さなヒートシンクを貼った。
メモリーが32MB×2枚で64MBしか載っていない。
増設して128MB + 32MBで、合計160MBに増やしてみた。(SIM slot0側に容量が大きいメモリを挿した)
72pinタイプのEDO SIMMの3.3V品なので、入手はかなり困難だった。
Sunの純正のOS(Linux)はもうとっくに更新が途絶えている。
CPUはMIPS系で、幸いDebianはまだサポートが続いていてmipsel版をインストールすることが可能なようだ。
CobaltQube2へのOSのインストールはNFSでのネットワークブートでインストーラーを起動してインストールする。
他のPCでLinuxを動かして、NFSサーバー兼、BOOTPサーバーに設定して、ネットワークブート用サーバーにする。
DHCPサーバーソフトは、BOOTPサーバー機能を含んでいるのでDHCPサーバーの設定を弄って使う。
そのため、LAN内に他のDHCPサーバーがあると注意が必要のようだ。
Cobalt用のDebianをインストールすると、起動用にbootloaderのCoLoというのがインストールされ、CoLo経由でDebianが起動されるそうだ。
というところまで調べてやってみたのだけど、うまく行かなかった。
そのうち再挑戦したい。
2. SGI O2
SGIのO2というマシンも、Cobalt Qube2と同じくMIPSのマシンである。
SGI O2(MIPS R5000)の外観
このマシンもMIPS版DebianくらいしかOSの選択肢は無い。
CobaltQubeと違ってCD-ROMドライブを内蔵しており、PCのようにモニタ(sync on green対応のやつ)を繋げたり、PS/2マウス+キーボードを繋げたりしてPC的に動作可能だ。
ところが、純正OS(UNIX)のIRIXしかCD-ROMドライブを使って起動させることができないため、CDインストールが不可能である。
debianのインストールにはtftpで他のTFTPサーバーのマシンからブートイメージを読み込んでネットワークインストーラーを起動しなくてはならない。
(tftpを使うというのが上に書いたCobalt Qube2とちょっと違う。)
起動したインストーラーはネットからdebianのOS本体をダウンロードする。
そのためDHCPが使えて、WAN側に接続が可能な環境でインストーラーを動かさなければならない。
というところまで調べてやってみたのだけど、うまく行かなかった。
サーバー機として使うには消費電力が大きすぎるので、どのみち実用にする気は無かったから、あきらめて放棄することにする。
3. 玄箱HG
玄箱というのは、玄人志向(Buffaloのブランド)から出ていたNASキットである。
当時からdebian化して各種サーバーとして使うというのが流行っていた。
玄箱シリーズのうち、玄箱初代と玄箱HGがCPUにPowerPCを使っており、後継機の玄箱ProはARMを使っている。
玄箱HGの外観
Debianのlennyとかの古いバージョンであれば、インストール手順とかキットが揃っているのでインストールは可能である。
それ以降のDebianのsqeezeとかの新しいバージョンを入れようとしても、公式のインストーラーは無いし、ブートローダーの書き換えも必要で手順は難しい。
ブートローダーは内蔵FLASHメモリに入っていて、書き換えに失敗すると復旧するのが難しいので、慎重にしないといけない。
また、PowerPC版のUbuntuのインストールというのも可能らしいが、これもブートローダーから書き換えが必要となるらしい。
まずは、ブートローダーを書き換えて、U-BOOTというブートローダーを書き込んでみた。
netcatコマンドや、シリアルコンソールの出力で、U-BOOTが起動しているのを確認できた。
PowerPC版のUbuntu 12.04のインストールを試してみた。
インストーラーが無いので、HDDを取り外して、別のマシンに繋いでHDDのパーティション分けとファイルシステムのコピーを手動で実行し、HDDを戻して起動する。
しかし、Ubuntuのkernelの起動中にリセットが掛かって、再度ブートし、またリセットという永久ループになってしまい、動かすことができなかった。
サーバー機としては小型で省電力でいい感じなので、メインのサーバー用でなくサブ用として動かすため、再挑戦したい。
4. Mac mini
Mac miniは、Appleから出ている小型のMacである。
初代Mac miniは、CPUにPowerPCを搭載している。
Mac mini (PowerPC版)の外観
PowerPC版のMacOSは、アップデートされなくなってしまったので、そのままサーバーにして使い続けるのは厳しそうだ。
替わりのちゃんと更新されているOSをインストールしたい。
UbuntuのPowerPC版がインストールできるというのが分かったので、入れてみた。
CDイメージをCD-Rに焼いて、Cキーを押しながら電源を入れるとCDからインストーラーが起動する。
あとは普通のUbuntu installerなので簡単にインストールを完了させることができ、Ubuntuを起動させることができた。
Ubuntu 12.04LTS (PowerPC版)を入れて、webサーバー化して動かしている。
予備機として最近になってもう1台中古で入手した。
こちらはUbuntu 13.04とか試してみようと思ったが、まだ安定度が低いらしい。LTS版が出るのを待つことにする。
5. Mac G4Cube
いまさらG4Cubeの中古を入手した。(2013-06-21)
G4CubeにPowerPC版のUbuntu 12.04をインストールしてみた。
CDからブートするのにCキーを押しながらでは起動しなかったので、OpenFirmwareからboot cd:,\\:tbxiというコマンドでCD起動させた。
通常のインストール用ディスクイメージからGUIが起動せずLow graphics modeになってインストールができない。
alternate CDを使ってCUIでインストールした。
OSのインストールはできたが、GUIが起動しない問題は解決していない。
モニタは小型のアナログVGA信号のディスプレイを繋いだ。
ADCというコネクタでApple Cinema Displayに接続するとデジタルで映すことができるのだが、ACDは持っていない。
ADCからDVIへの変換ケーブルを使うとDVI信号で普通のデジタル対応のディスプレイに映すことができるのだが、変換ケーブルが入手できない。
G4Cubeは上記の問題があって扱いづらい。
改造して中身を新しいMac miniの基板にとりかえてしまったり、小型PC用マザーボードに換装してしまうという例が結構見つかる。
Nintendo GameCubeに改造するという例もあるかと思ったのだけど、それは見つからなかった。
(ちなみにGameCubeのCPUもPowerPCである。GameCubeでLinuxを動かすという例もあったりする。)
Intel x86というメジャーなCPUのサーバーだと、脆弱性が頻繁に出てきて攻撃を受けやすい気がする。
CobaltQube 3(改造品)もサーバーに使うのは避けている。
非Intel x86のマイナーなCPUのサーバーだと、バッファオーバーフローなどでバイナリを踏ませる攻撃を受けにくい気がする。
MIPSのCobalt Qube2は実際に長いあいだ大丈夫だった。
できればMIPSのWebサーバーを使って新しいOSで色々と動かしたいのだが、うまくDebianをセットアップ出来なかった。
PowerPCも今となってはマイナーだが、Ubuntuはまだ当分サポートされそうなので、しばらく使ってみることにする。
非Intel x86というとARM系のCPUもあるのだが、だいぶメジャーになってきているので、敢えてサーバーに使うのは避けている。
玄箱Proとか。