Linkstation LS-HGL修理 ― 2012年06月26日 03時12分05秒
Linkstation LS-HGL起動不能 ― 2012年03月22日 01時54分46秒
久々のLinkstationネタ。 玄箱HGで対応したHDDスピンアップ時間が足りずに起動できない問題。LinkStationでも遭遇。根本原因はコンデンサの不良でしょうが、だませないかなぁなどと思って日食が終わるまでは保留。 とりあえず起動しなくなったのでログを記しておきます。HDDはWD20EARS。
Orion1 CPU = Low Checking DATA BUS Checking ADDRESS BUS > Checking hardware info ... === Strap status : 0x00800030 === === H/W boardId : 0x23 === === boardId : 0x1b === === micon_support: off === > OK. === BUFFALO LS-HGL U-Boot. === ** LOADER ** ** BUFFALO BOARD: BUFFALO_BOARD_LS_HGL LE (CFG_ENV_ADDR=fffff000) U-Boot 1.1.1 (May 27 2008 - 19:18:26) Marvell version: 1.12.1 - TINY Buffalo Version: 1.17-1.00 DRAM CS[0] base 0x00000000 size 128MB DRAM Total size 128MB [256kB@fffc0000] Flash: 256 kB Addresses 20M - 0M are saved for the U-Boot usage. Mem malloc Initialization (20M - 16M): Done Soc: 88F5182 A2 CPU: ARM926 (Rev 0) running @ 400Mhz Orion 1 streaming disabled SysClock = 250Mhz , TClock = 166Mhz USB 0: host mode PCI 0: PCI Express Root Complex Interface PCI 1: Conventional PCI, speed = 33000000 Net: egiga0 [PRIME] Using 88E1118 phy buffalo_change_power_status > Read 0x5c buffalo_IsStopAtUbootStatus > MagicKey=0x5c buffalo_change_power_status > Read 0x5c buffalo_change_power_status > Read 0x5c buffalo_change_power_status > Writing 0x5c Please Press HDD power button to continue ... buffalo_change_power_status > Read 0x5c buffalo_change_power_status > Writing 0x3a Marvell Serial ATA Adapter Integrated Sata device found [0 0]: failed to perform ATA Identify command Failed initializing storage deivce connected to SATA channel 0 HDD is not found
svnリポジトリダンプスクリプト ― 2012年02月11日 08時21分53秒
KURO-BOX/Debian Lenny環境でSubversionリポジトリを管理するようにしています。 自動でsvnadmin dumpを使ったリポジトリバックアップ運用も既に行っていたのですが、1週間に一度単純なdumpを日付のフォルダを作って保存する形でした。
でもその形だと以下の問題があります。
- 更新がなかったリポジトリも毎回バックアップしてしまう
- 途中でリポジトリが壊れた場合差分loadで復元したい
ということで以下の機能を追加
- バックアップ時点のリポジトリのレビジョンを保管
- 保管したレビジョンとその時点のレビジョンに差分がある場合のみバックアップ実行
- 差分がある場合はフルバックアップと差分バックアップの両方を実施
念のためですが「自動」の部分はcronで実施で、ここで紹介するのは単なるスクリプトです。
なお、バックアップ元のディレクトリと保存先のディレクトリはスクリプト内で指定する形。引数(第一引数)で指定するのはリポジトリの名前(相対パス)。 オプション(第二引数)で更に他のディレクトリに最新のバックアップをコピーします。
#!/bin/sh ########################################## # svn repository dump ########################################## # setting path rtop="/mnt/svn" svnbackupdir="/mnt/backup/svndump" # if [ "$1" = "" ]; then echo "Usage $0 repository-name" exit fi repo=$rtop"/"$1 if [ ! -d $repo ]; then echo "$repo not found" exit fi echo "## $repo dump start ##" logger "## $repo dump start ##" datedir=`date +%F` echo "today is" $datedir if [ -d $svnbackupdir ]; then echo "already exist" $svnbackupdir else echo "mkdir" $svnbackupdir mkdir $svnbackupdir fi backupdatedir="$svnbackupdir/$datedir" backupbase=`echo $1 | tr "/" "_"` # history save hisfile="$svnbackupdir/svn_$backupbase.history" newrev=`svnlook youngest $repo` echo "$repo revision is $newrev" backupfile="$backupdatedir/svn_$backupbase.dump" if [ -f $hisfile ]; then lastbackup=`cat $hisfile` echo "$repo last dump revision is $lastbackup" if [ "$lastbackup" = "$newrev" ]; then msg="## $repo no change ##" echo $msg logger "$msg" exit fi fi # backup dir create if [ -d $backupdatedir ]; then echo "already exist" $backupdatedir else echo "mkdir" $backupdatedir mkdir $backupdatedir fi # svndump diff if [ -f $hisfile ]; then lowrev=`expr $lastbackup + 1` difffile="$backupfile""_""$lowrev""_""$newrev" echo "difffile = $difffile" msg="svn dump $repo -r $lowrev:$newrev --incremental --> $difffile" echo $msg svnadmin dump $repo -r $lowrev:$newrev --incremental > $difffile logger "$msg" fi # svndump all msg="svn dump $repo --> $backupfile" echo $msg svnadmin dump $repo > $backupfile logger "$msg" # dump history save echo $newrev > $hisfile # copy svndump file if [ "$2" != "" ]; then cpdir="$2/$datedir" if [ -d $cpdir ]; then echo "already exist" $cpdir else echo "mkdir" $cpdir mkdir $cpdir fi echo "svn dump copy $backupfile --> $cpdir" cp -p $backupfile $cpdir cp -p $difffile $cpdir fi msg="## $repo dump end ##" echo $msg logger "$msg"
玄箱HGのカーネル再構築 ― 2011年06月05日 01時40分10秒
kuro-box/HGをdebian/lennyで使っているのですが、最近aptitudeでupgradeしてからsambaのインストール状態とphp5のインストール状態がおかしくなってしまいました。
何の根拠もないのですが、カーネルの状態を変えれば状況が変るかもしれないということと、カーネル再構築する可能性が出てきたため、カーネルソースコードの取得とビルドをお試し中です。
u-bootは使用していませんが、一応uImageも用意しています。 loader.oでのbootを選択していますので、起動後にはumountされているboot用のパーティションのファイルを書き換える必要があります。なので、カーネルイメージのコピーには注意が必要です。
なお、2.6系カーネルの最新バージョンではありませんが、2.6.25系のパッチしか用意されていないので2.6.25系の最終の2.6.25.20を使います。 config_kuroboxhgというファイルはpatchの実行により生成されるファイルですのでtarを展開した時点では存在しません。
# apt-get install gcc ncurses-dev # apt-get install uboot-mkimage $ wget http://www.genbako.com/kurobox-sources-2.6.25.patch $ wget http://www.genbako.com/kurobox-section-mismatch2625.patch $ wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.25.20.tar.gz $ tar xvfz linux-2.6.25.20.tar.gz $ cd linux-2.6.25.20 $ patch -Np1 <../kurobox-section-mismatch2625.patch $ patch -Np1 <../kurobox-sources-2.6.25.patch $ cp config_kuroboxhg .config $ export ARCH=ppc $ make oldconfig $ make vmlinux $ make uImage $ su # mount /dev/hda1 /mnt/tmp # cp -p System.map /mnt/tmp/boot # cd arch/ppc/boot/images # cp -p vmlinux.bin /mnt/tmp/boot # cp -p uImage /mnt/tmp/boot $ make modules $ su # make ARCH=ppc modules_install # reboot $ $ uname -a Linux KURO-BOX 2.6.25.20-kuroboxHG #2 Sun Jun 5 01:28:37 JST 2011 ppc GNU/Linux
玄箱HGにtomcatインストール ― 2011年05月29日 23時59分19秒
別件のAndroidでの簡易POS開発に関連して、とりあえずサーバの実験のためにKURO-BOX/HG(debian linux lenny)にtomcatをインストールしてみた。
インストールといってもまだ単にaptitude installしただけ。
インストール時のログはこちら。
最近のコメント