1/30/2018

EdgeRouter 4ゲット

またしても久々の投稿。

EdgerRouter 4をゲット

ベンダーのショップでは売り切れだったがUS Amazonでは買えた。

IMG 6617

IMG 6618

ベンダーページ

https://www.ubnt.com/edgemax/edgerouter-4/

今まで使っていたER-Xとの違いは、CPUのコア数、周波数、メモリ、ストレージサイズが大幅アップしたためThroughputが4倍(価格も4倍)、ただし、ポート数は減少で、ADアダプタから電源コードになっ た。パッとみるとそれくらい。

コンソールポートが付いたのも大きい。USB端子は謎。OSからはこんな感じで見えている。

root@ubnt:~# ls /sys/bus/usb/devices/
1-0:1.0 2-0:1.0 3-0:1.0 4-0:1.0 usb1 usb2 usb3 usb4

ちなみに内蔵ドライブはSDカードっぽい。

 

ただし、内部的には、

● Switchインタフェースの設定がなくなる。

●VPNの設定が少し変わる

●ハードウェアオフロードができる種類が増える

●MTU9000が設定可能

という違いがある。EdgeRouterの上位機種と同じかと思われる。Switchインタフェースの設定が無いのは少し残念だが、今は安くVLANサポートしているスイッチが出ているので、餅は餅屋にしてもいいかなと。

VPNの設定は、前の環境のままを入れても動かなくて、以下を参照する。

https://help.ubnt.com/hc/en-us/articles/204950294-EdgeRouter-IPsec-L2TP-Server

Devices used in this article:
EdgeRouter-4

とわざわざ書いてあるくらいだからまぁ何かが違うのだろう。ちなみに、EdgeRouter 4のファームは、1.9.8だが、ER-Xの1.9.7 hotfix 2からの作成の様子。hotfix3とhotfix4の修正はどうなった?

ハードウェアオフロードはこんな感じ

ubnt:~$ show ubnt offload

IP offload module : loaded
IPv4
forwarding: enabled
vlan : enabled
pppoe : disabled
gre : enabled
IPv6
forwarding: disabled
vlan : disabled
pppoe : disabled

IPSec offload module: loaded

Traffic Analysis :
export : enabled
dpi : enabled
version : 1.302

ここに書かれているipsecのバグは発生していない様子。ちゃんとVPNが利用できた。

ちなみにUIはこんな感じ。何も変わらず。

EdgeRouterUI

利用感だが、VLANを30近く設定しているが、リブートもかなり早くなり(ER-Xの時は30分!、EdgeRouter 4では5分程度)、ハードウェアオフロードのせいか、Throughputのせいかわからないけど、ネットワークがめちゃくちゃ快適に。値段性能的にもYAMAHAのルータよりもお買い得は変わらない。

10/01/2017

SDカードをAPFSでフォーマットしてみる

Macbook Airに、こんなパーツを付けている。

MiniDrive Air Silver MD5-RP-AIRSR0G

正確には、以前買ったものなのでデザインがもう少しファンキーだった。

手持ちの128GBは認識しなかったので64GBのを入れている。まぁ、この手の製品は自己責任なんで致し方ない。類似の製品がいろいろあるので見当してみるといいかもしれない。また、必ず、対応しているMACのじゃないとダメっぽい。理由は、SDカードスロットの深さが違うらしく最悪、抜けないなんていうこともある。。。

だいぶクラウド化が進んでいるので、実は内臓SSDなんて256GB程度で足りるのだが、全てのデータが速いドライブに入っている必要はなく、また、以前あった、Spotifyのキャッシュに猛烈アクセスなんということもあるので、基本入れておくものは:

  • ISOイメージ
  • 仮想マシンイメージ
  • Spotifyのキャッシュ
  • その他、なんとなくのデータ(デスクトップに散らかしているもの)

などである。

閑話休題

High Seirraでは、APFSが採用されている。SSDに特化しているとか。APFSのクローンの速さったら、めちゃくちゃ速い。4GB程度のISOイメージをコピーしても同一ドライブであれば(ここがキモ)、数秒。仮想マシンイメージのコピーも10GB程度で2秒くらい。VMware Fusionでクローンするより、Finderでコピーをしたほうが圧倒的に速い。

SDカードも見方を変えれば、SSD?ということで、やってみた。

ちなみに、Disk Utilityではできない。つまり推奨されていないんでしょうね。なので、自己責任で。ただ、APFSをコマンドラインで作ってみると、APFSの構造がわかっても白い。キーワードは、GPTとコンテナ。まず、ドライブ(SDカード)をGPTにして、その後、コンテナをつくり、そのコンテナをフォーマットする。

コマンドラインは以下。ちなみに、ちゃんと自分のデバイス名を確認して実行すること。コピペしてデータが消えても責任はとれない。

 

ディスクのデバイス名の確認

hogehoges-MacBook-Air:~ tmase$ diskutil list

/dev/disk0 (internal, physical):

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:      GUID_partition_scheme                        *251.0 GB   disk0

   1:                        EFI EFI                     209.7 MB   disk0s1

   2:                 Apple_APFS Container disk1         250.8 GB   disk0s2

 

/dev/disk1 (synthesized):

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:      APFS Container Scheme -                      +250.8 GB   disk1

                                 Physical Store disk0s2

   1:                APFS Volume Macintosh HD            125.6 GB   disk1s1

   2:                APFS Volume Preboot                 19.0 MB    disk1s2

   3:                APFS Volume Recovery                520.0 MB   disk1s3

   4:                APFS Volume VM                      3.2 GB     disk1s4

 

/dev/disk2 (internal, physical):

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:     FDisk_partition_scheme                        *63.4 GB    disk2

   1:                  Apple_HFS SDXC64GB                63.4 GB    disk2s1

   

GPTパーテイョンの作成

hogehoges-MacBook-Air:~ tmase$ diskutil partitionDisk /dev/disk2 GPT JHFS+ New 0b

Started partitioning on disk2

Unmounting disk

Creating the partition map

Waiting for partitions to activate

Formatting disk2s2 as Mac OS Extended (Journaled) with name New

Initialized /dev/rdisk2s2 as a 59 GB case-insensitive HFS Plus volume with a 8192k journal

Mounting disk

Finished partitioning on disk2

/dev/disk2 (internal, physical):

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:      GUID_partition_scheme                        *63.4 GB    disk2

   1:                        EFI EFI                     209.7 MB   disk2s1

   2:                  Apple_HFS New                     63.0 GB    disk2s2

   

コンテナの作成   

hogehoges-MacBook-Air:~ tmase$ diskutil apfs createContainer /dev/disk2s2

Creating container with disk2s2

Started APFS operation on disk2s2 New

Creating a new empty APFS Container

Unmounting Volumes

Switching disk2s2 to APFS

Creating APFS Container

Created new APFS Container disk3

Disk from APFS operation: disk3

Finished APFS operation on disk2s2 New

 

作成されたコンテナの確認

hogehoges-MacBook-Air:~ tmase$ diskutil list

/dev/disk0 (internal, physical):

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:      GUID_partition_scheme                        *251.0 GB   disk0

   1:                        EFI EFI                     209.7 MB   disk0s1

   2:                 Apple_APFS Container disk1         250.8 GB   disk0s2

 

/dev/disk1 (synthesized):

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:      APFS Container Scheme -                      +250.8 GB   disk1

                                 Physical Store disk0s2

   1:                APFS Volume Macintosh HD            125.6 GB   disk1s1

   2:                APFS Volume Preboot                 19.0 MB    disk1s2

   3:                APFS Volume Recovery                520.0 MB   disk1s3

   4:                APFS Volume VM                      3.2 GB     disk1s4

 

/dev/disk2 (internal, physical):

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:      GUID_partition_scheme                        *63.4 GB    disk2

   1:                        EFI EFI                     209.7 MB   disk2s1

   2:                 Apple_APFS Container disk3         63.2 GB    disk2s2

 

/dev/disk3 (synthesized):

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:      APFS Container Scheme -                      +63.2 GB    disk3

                                 Physical Store disk2s2

 

コンテナをAPFSにする

hogehoges-MacBook-Air:~ tmase$ diskutil apfs addVolume disk3 APFS SDXC64GB

Exporting new unencrypted APFS Volume "SDXC64GB" from APFS Container Reference disk3

Started APFS operation on disk3

Preparing to add APFS Volume to APFS Container disk3

Creating APFS Volume

Created new APFS Volume disk3s1

Mounting APFS Volume

Setting volume permissions

Disk from APFS operation: disk3s1

Finished APFS operation on disk3

hogehoges-MacBook-Air:~ tmase$


というような感じ。結果は。。。まぁ、APFS内でのコピーは速いが利用シーンはちょっとねぇという感じ。また、一度ファイルが消せなくなって、フォーマットし直したことがある。なので、あくまでも趣味の世界。High SeirraでThunderbolt接続のHDDもAPFSにしてみた(これは、Disk Utilityで変換もフォーマットもできた。)が、やはり、コピーは、SSDほどではないが結構速い。実際に通常のファイルシステムでそんなにコピーしたことはないけど。

9/19/2017

この期に及んでMacbook Airを購入

この期に及んでMacbook Airを購入してしまった。。。

というのも、ちょっとした仕事で利用するためで、さらに英語キーボードでかつ、コンソールが簡単に使える環境、さらに、バッテリの持ちが気にならないという要件を満たすものが必要であった。

まぁ、Macbook Proという選択肢もあったのだが、海外へ持っていて取られても悔しくない(比較的に)という要件もあった。

やはり、Retinaディスプレイは捨てがたいと思ったが、実はあっさり諦められた。理由は、部屋では、4Kディスプレイを使っているからである。

外で、Retinaディスプレイは、正直オーバースペック。オフィスに仮に接続できるディスプレイがあったとしても、本体の方が解像度が高い。なので、外部ディスプレイに接続する必要はあまり感じられない。また、外の移動中にそんな小さい文字を見たくない。

ああっ、しょうもない買い物かなと思ったら実は案外ありだった。

製品レビュー自体は、くさるほど世間に出回っているのでしないけど、唯一すごいと思ったのは、Mini Display Port経由だと、4Kで60Hz表示ができる。手持ちのMac Miniより全然性能がいい。4KディスプレイもLGの一番安いのも3万円くらい。

英語キーボードはカスタマイズなので、本来だと、オンラインで買わなければならないが、実はApple Storeの店舗でも英語キーボードだけは在庫している。なので、吊しで買った。メモリが8GBどまりなので、Core i7まで入らず、HDDもNASを使っているので256GBで十分。

5/03/2017

すごく久々に投稿

実家を漁ってたら、玄箱が出て来た。今思えば、ラズパイのはしりだったかもしれない。 さすがに使いようがないのでHDD抜いて捨てました。。。 で、また、そろそろ書き始めるかと。

6/06/2011

玄箱/玄箱HGにdebian 6.0.1 (Squeeze)をインストール

さらに、役に立たない内容。覚え書き。よっぽど、KVMのネタをのせた方がいいのかもしれないけど、今回はパス。

loader.oを使って、debian 6.0.1を作成
hda1には、デフォルト(玄人の)linuxも格納しておく。2GB


用意するもの
ディスクの入った玄箱/玄箱HG
ディスクは、kernelコンパイルも行う場合は、1GB以上必要。パッケージを追加することを考えると4GB以上。
(もろもろで最低6GB以上が望ましい。)
残りはユーザ用


 (付属のCD-ROMは不要)
ファイル
以下のファイルをダウンロードし、ftp で玄箱に転送して下さい。カーネルとカーネルモジュール以外のファイルは、玄箱と玄箱/HG とで共通で使えます。
kuroutoshikou web page
玄箱のファームウェア kuro_102.zip
http://www.kuroutoshikou.com/products/kuro-box/kuro_102.zip
   玄箱HGのファームウェア kurog101.zip
http://www.kuroutoshikou.com/products/kuro-box/kurog101.zip

    Revulo's Laboratory
        debian-lenny-installer-kuroBOX-20090317.tgz
http://download.revulo.com/kuro-box/debian-lenny-installer-kuroBOX-20090317.tgz

        debian-lenny-kuroBOX-20090317.tgz
http://cid-a95b9af71540ba41.skydrive.live.com/self.aspx/.Public/kuro-box/debian-lenny-kuroBOX-20090317.tgz

        kuro-bootsel2-debian.tgz
http://download.revulo.com/kuro-box/kuro-bootsel2-debian.tgz

    玄箱でNetBSDを動かす
        kuro-bootsel2.20080419.tar.gz (ミラー)
http://kurobsd.ki.nu/download/testing/powerpc/selector/bootsel2/kuro-bootsel2.20080419.tar.gz

    Genbako kernel collection (もしくはそのミラーサイト)
        loader.o (ミラー)
http://www.genbako.com/loader.o/loader.o

        玄箱 用
            kernelimage-2.6.25.1-kuroBOX.tgz (ミラー)
http://www.genbako.com/kernelimage-2.6.25.1-kuroBOX.tgz

            modules-2.6.25.1-kuroBOX.tgz (ミラー)
http://www.genbako.com/modules-2.6.25.1-kuroBOX.tgz

        玄箱/HG 用
            kernelimage-2.6.25.1-kuroHG.tgz (ミラー)
http://www.genbako.com/kernelimage-2.6.25.1-kuroHG.tgz

            modules-2.6.25.1-kuroHG.tgz (ミラー)
http://www.genbako.com/modules-2.6.25.1-kuroHG.tgz


1. 玄箱をEMモードに落とす。
カーネル2.4系の場合は
    # echo -n "NGNG" > /dev/fl3
カーネル2.6系の場合は
    # echo -n "NGNG" > /dev/mtdblock2


どうしてもダメな場合は
1.裏のリセットボタンを長押ししながら電源ボタン長押しで電源を落とす
2.裏のリセットボタンを押しながら電源ボタンを押して起動する
のいずれかで、EMモードに落ちるかも


2. EMモードが起動したらrootアカウント(パスワード kuroboxの場合:kuro/kuroboxhgの場合:kuroadmin)
telnet ip addr
# mfdisk -c /dev/hda
/dev/hda1      2 GB      MontaVista用
/dev/hda2      256 MB      スワップ領域
/dev/hda3      4 GB      Debian(lenny)用


# mkswap /dev/hda2
# mke2fs -j /dev/hda1
# mke2fs -j /dev/hda3
# mount -t ext3 /dev/hda1 /mnt


3.ファームウェアの展開
玄箱HGのファームウェア kurog101.zip をpc上で展開し、さらにimage.zipを展開し、出来たファイルのうち tmpimage.tgz だけを、FTPで玄箱HGの /mnt ディレクトリに転送する。

玄箱HGで /mnt ディレクトリに移動し、tmpimage.tgz を展開する。

    # cd /mnt
    # tar zxvf tmpimage.tgz

展開が完了したら、EMモードから抜ける。

    # echo -n "OKOK" > /dev/fl3
    # reboot

Lenny化用のファイルを用意する。

    debian-lenny-installer-kuroBOX-20090317.tgz
    debian-lenny-kuroBOX-20090317.tgz
    kuro-bootsel2-debian.tgz
    kuro-bootsel2.20080419.tar.gz
    loader.o
    kernelimage-2.6.25.1-kuroHG.tgz
    modules-2.6.25.1-kuroHG.tgz

以上7個のファイルを用意し、FTPで玄箱HGの /tmp ディレクトリに転送する。

/tmp ディレクトリに移動し、1番目の debian-lenny-installer-kuroBOX-20090317.tgz を展開する。そして展開されたファイルのうち、玄箱HG用のスクリプトを実行する。

    # cd /tmp
    # tar zxvf debian-lenny-installer-kuroBOX-20090317.tgz
    # sh debian-lenny-installer-kuroHG.sh

これで、MontaVistaモードの /mnt(/dev/hda3) に Debian(lenny) がインストールされ、Debianモードではこの /dev/hda3 がルートになる。

# vi /mnt/etc/fstab

hda4のエントリを削除 (hda4を作っている場合は不要)

③ネットワークの設定

自分の環境に合わせて、interfacesファイルのIPアドレス設定部分を書き直す。
addressのところに玄箱に設定したいIPアドレス、
netoworkのところに、対応するネットワークアドレス、
broadcastのところに、対応するブロードキャストアドレス、
gatewayのところにゲートウェイアドレス(ルーターのアドレス等)を設定する。

    # vi /mnt/etc/network/interfaces

# Used by ifup(8) and ifdown(8). See the interfaces(5) manpage or
# /usr/share/doc/ifupdown/examples for more information.

iface eth0 inet static
address 192.168.10.10
network 192.168.10.0
netmask 255.255.255.0
broadcast 192.168.10.255
gateway 192.168.10.1

iface lo inet loopback
auto eth0 lo

DHCPにしたい場合は、

iface eth0 inet dhcp

     # vi /mnt/etc/hostname
     # vi /mnt/etc/hosts
     # vi /mnt/etc/resolve.conf

以上の設定が完了したら、rebootコマンドで再起動し、Debian Lennyが起動する。
起動したら、tmp-kun/tmp-kunでtelnetログインをして、su -をする。パスワードは、root
動作確認で、以下を実行

# ping `hostname`

5.Lennyでの設定

①パスワードの変更とユーザーの追加
Lennyが起動したらrootアカウント(パスワードはroot)でログインする。
最初にrootのパスワードを変更する。
    # passwd

初期状態でtmp-kun(パスワードもtmp-kun)というユーザーが登録されているが、必要であれば作業用のユーザーを追加する。

    # adduser hogehoge

②Squeeze用起動スクリプトの準備

Squeezeは起動スクリプトは、LSB(Linux Standard Base)に準拠している必要があるらしいので、ディストリビューション標準の起動スクリプト以外は、前もって変更しておく必要がある。

ここでは、kuroevtdとkuro_bootのファイルの先頭部分にLSB用の記述を挿入する。

" ### BEGIN INIT INFO"から"### END INIT INFO"までが挿入部分。

    # vi /etc/init.d/kuroevtd

#!/bin/sh
# Start/stop the KURO-BOX Event Daemon.
### BEGIN INIT INFO
# Provides:        kuroevtd
# Required-Start:  $network $remote_fs $syslog
# Required-Stop:   $network $remote_fs $syslog
# Default-Start:   2 4 5
# Default-Stop:    0 1 3 6
# Short-Description: Start/stop the KURO-BOX Event daemon
### END INIT INFO

test -f /usr/sbin/kuroevtd || exit 0
case "$1" in
start)  echo -n "Starting KURO-BOX event daemon: kuroevtd"
        start-stop-daemon --start --quiet --exec /usr/sbin/kuroevtd
        echo "."
        ;;
stop)   echo -n "Stopping KURO-BOX event daemon: kuroevtd"
        start-stop-daemon --stop --quiet --exec /usr/sbin/kuroevtd
        echo "."


    # vi /etc/init.d/kuro_boot

#! /bin/sh
### BEGIN INIT INFO
# Provides:          kuro_boot
# Required-Start:    $remote_fs $all
# Required-Stop:
# Default-Start:     2 4 5
# Default-Stop:      0 1 3 6
# Short-Description: Initialize the KUROBOX AVAR
### END INIT INFO

case "$1" in
start|force-reload|restart|reload)
  echo -n "ttyS1 port init : "
stty -F /dev/ttyS1 10:1:9f0d:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0
  echo -n "AVR init string send"
echo -n "AAAAFFFFJJJJ>>>>VVVV>>>>ZZZZVVVVKKKK" > /dev/ttyS1
  echo "."
  ;;
stop)
  ;;


6.squeezeへのアップグレード

まず、aptitudeが参照する、パッケージリストの取得先をlennyからsqueezeに変更する。

    # vi /etc/apt/sources.list

deb http://ftp.jp.debian.org/debian/ squeeze main
deb http://security.debian.org/ squeeze/updates main
#deb http://ftp.jp.debian.org/debian/ squeeze main contrib non-free
#deb-src http://ftp.jp.debian.org/debian/ squeeze main contrib non-free
#deb http://security.debian.org/ squeeze/updates main contrib non-free
#deb-src http://security.debian.org/ squeeze/updates main contrib non-free
#deb http://volatile.debian.org/debian-volatile squeeze/volatile main contrib non-free
#deb-src http://volatile.debian.org/debian-volatile squeeze/volatile main contrib non-free

後はaptitudeでパッケージリストを更新し、アップグレードを実行するだけ。基本的にYes/y/OKを選択する。

    # aptitude update
    # aptitude safe-upgrade
    # aptitude full-upgrade

# cd /usr/src

# 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.tar.bz2
# aptitude install vim lv sudo less patch gcc ncurses-dev bzip2 make sysstat ntp locales openssh-server
# dpkg-reconfigure locales
en_us.utf-8とja_jp.utf-8を指定

# vi /etc/default/sysstat
ENABLED="true"
 falseからtrueに変更

# tar xfj linux-2.6.25.tar.bz2 ; cd linux-2.6.25 ; patch -Np1 < ../kurobox-sources-2.6.25.patch ; patch -Np1 < ../kurobox-section-mismatch2625.patch
# aptitude clean



デフォルトのセキュリティを解除

telnetを無効にするには、
# vi /etc/inetd.confのtelnetの行をコメントアウト
#:STANDARD: These are standard services.
telnet          stream  tcp     nowait  telnetd /usr/sbin/tcpd  /usr/sbin/in.telnetd

# kill -HUP `cat /var/run/inetd.pid`をするか再起動。

ユーザ追加

adduser username
su -
passwd username

作成したユーザでsshでログインができ、rootユーザになれることを確認したら以下を実行。
userdel -r tmp-kun
これで基本的には終わり。

問題点
ディストリビューションは、debian 6.0.1なのだが、kernelが古すぎる。デバイスをいろいろ
サポートさせたいのでなければ、問題はなさそうだが。
iptableを使いたい場合は、カーネルのリコンパイルが必要

カーネルのリコンパイル方法
# cd /usr/src/linux-2.6.2
以下は玄箱/HGの場合です。
# cp -p config_kuroboxhg .config[ENTER]
# export ARCH=ppc[ENTER]
# make menuconfig[ENTER]

iptablesを有効にしたりする。

# make oldconfig[ENTER]
# make vmlinux# objcopy -p -O binary vmlinux /boot/vmlinux.bin
# cp -pf System.map /boot/
# make modules
# make ARCH=ppc modules_install
# rm -rf 2.6.25.1-kuroboxHG


その他やった作業
groupadd wheel
自ユーザにwheelを追加
vi /etc/groups

vi /etc/pam.d/su

#
# The PAM configuration file for the Shadow `su' service
#

# This allows root to su without passwords (normal operation)
auth       sufficient pam_rootok.so
# Uncomment this to force users to be a member of group root
# before they can use `su'. You can also add "group=foo"
# to the end of this line if you want to use a group other
# than the default "root" (but this may have side effect of
# denying "root" user, unless she's a member of "foo" or explicitly
# permitted earlier by e.g. "sufficient pam_rootok.so").
# (Replaces the `SU_WHEEL_ONLY' option from login.defs)
# auth       required   pam_wheel.so

# Uncomment this if you want wheel members to be able to
# su without a password.
auth       sufficient pam_wheel.so trust


vi /etc/profile.d/local.sh

#
# local environment
#

VISUAL=vi
EDITOR=vi
PAGER=vi
export VISUAL EDITOR PAGER


ちなみに、kuroboxとkuroboxHGは譲渡してしまったので、質問いただいても答えられないことがあります。

玄箱Proにdebian 6.0.1 (Squeeze)をインストール

技術的に仕事に役に立たないと思いつつ。覚え書き。

http://taidyff.seesaa.net/article/159144003.html
http://www.cyrius.com/debian/orion/buffalo/kuroboxpro/install.html

シリアルコンソールで接続。(telnetとかで接続できるかも。)

玄箱PROを起動して、
<>
Hit any key to stop autoboot:3
のカウントが0になる前にキーを押して中断。

Marvell>のプロンプトが出るので以下のコマンドを順に入れる。
長いけど1行ずつコピーしてTeraTermで右クリックで貼り付ければ簡単確実。

setenv bootargs_root root=/dev/mtdblock2 rw panic=5
setenv bootargs $(bootargs_base) $(bootargs_root) $(buffalo_ver)
setenv bootcmd 'nboot $(default_kernel_addr) 0 $(nand_uImage_offset) ;setenv bootargs $(bootargs_base) $(bootargs_root) $(buffalo_ver); bootm $(default_kernel_addr)'
setenv nand_boot yes
boot
これで玄箱PROのオリジナルファームで起動する。

root(デフォルトパスワードはkuroadmin)でログインする。

IPアドレスを確認する。
/etc/resolv.confを確認する。
nameserver ネームサーバーアドレス
。
/etc/nsswitch.confを確認する。
デフォルトはhostsのみを参照する設定。
hosts: files
これを
hosts: files dns
に書き換えておく。

rdate -s pool.ntp.org
hwclock -w

この時点で適当なアドレス(www.yahoo.co.jpでもなんでもいい)にpingを打てば返ってくるはず。
ここで名前解決できない、もしくはunreachableやtimeoutになるならおそらくどこかが足りないか間違っていて、インストール中にハマることになる…ので解決してから先に進むこと。


あとはこちらのサイトの通りにやればOK
fdisk /dev/sda
で、とりあえず1個パーティションを用意する。256MB
既にある場合は敢えて削除しなくてもOK
mkfs.ext2 /dev/sda1
でフォーマットし、
mount -t ext2 /dev/sda1 /mnt/disk1
cd /mnt/disk1
としてマウント~ディレクトリ移動する。

wget http://ftp.jp.debian.org/debian/dists/stable/main/installer-armel/current/images/orion5x/network-console/buffalo/kuroboxpro/config-debian
wget http://ftp.jp.debian.org/debian/dists/stable/main/installer-armel/current/images/orion5x/network-console/buffalo/kuroboxpro/initrd.buffalo
wget http://ftp.jp.debian.org/debian/dists/stable/main/installer-armel/current/images/orion5x/network-console/buffalo/kuroboxpro/uImage.buffalo

としてインストーラ一式をダウンロードする。

sh config-debian
とすると初期化が行われ、再起動するように求められる。
再起動して、5分くらいたった後、コンソールにsshでつなげというメッセージが表示される。
syslogからインストーラーまでの表示は本当に時間がかかる。


TeraTermを起動してsshで接続。
id:installer password:installとしてログインするとインストーラが走る。


パーティションの選択ではGuided - use entire diskでOK(どれでもいい)
構成はSeparate /home, /user,...にしたけどこれもなんでもいい。
追加機能もお好きに。とりあえず今回はどれもいらないので基本システムのみ入れておしまい。

# aptitude install vim lv sysstat ntp byobu ethtool
# dpkg-reconfigure locales
en_us.utf-8とja_jp.utf-8を指定
# vi /etc/default/sysstat
ENABLED="true"

失敗したら、あるいは、再インストールは、もう一度最初から行う。

ログインをしたら、ネットワークの設定を行う。
vi /etc/network/interfaces

iface eth0 inet static
address 192.168.10.10
network 192.168.10.0
netmask 255.255.255.0
broadcast 192.168.10.255
gateway 192.168.10.1

ホスト名の変更
vi /etc/hostname
vi /etc/hosts
再起動後にping `hostname`でちゃんとpingが返ってくる事を確認のこと。

fw_printenvのインストール
aptitude install uboot-envtools
cp /usr/share/doc/uboot-envtools/examples/kurobox_pro.config /etc/fw_env.config

vi /etc/micro_evtd/micro_evtd.conf
設定を適宜行う。


その他やった作業
echo "cgroup /cgroup cgroup defaults 0 0" >>/etc/fstab

groupadd wheel
自ユーザにwheelを追加
vi /etc/groups

vi /etc/pam.d/su
## The PAM configuration file for the Shadow `su' service
#

# This allows root to su without passwords (normal operation)
auth       sufficient pam_rootok.so

# Uncomment this to force users to be a member of group root
# before they can use `su'. You can also add "group=foo"
# to the end of this line if you want to use a group other
# than the default "root" (but this may have side effect of
# denying "root" user, unless she's a member of "foo" or explicitly
# permitted earlier by e.g. "sufficient pam_rootok.so").
# (Replaces the `SU_WHEEL_ONLY' option from login.defs)
# auth       required   pam_wheel.so

# Uncomment this if you want wheel members to be able to
# su without a password.
auth       sufficient pam_wheel.so trust


vi /etc/profile.d/local.sh
#
# local environment
#

VISUAL=vi
EDITOR=vi
PAGER=vi

export VISUAL EDITOR PAGER
 

ブラウザの検索窓

個人事業主となってしまった私は、現在でも正社員で雇用してくれる会社を探している。正社員といっても、日本だけではなく、海外の正社員でも構わない。その場合、日本国内では、今のままの状況には代わりはないのだが。。。
ただ、正社員という身分は、物事に対して1つをやり遂げるという任務があるので、生活が直結している個人事業主に比べると、仕事に専念できると私は思う。周りの求職中のエンジニアも仕事に専念をしたいという点でそれ以外が自動的に保証されているという正社員の仕事を求めている。

閑話休題。
会社を調べてみると、ブラウザの検索窓がキーワードを補完してくれる。そうすると、その会社の動きが何となくわかる。
会社名を入れるとその後ろに、いきなり「ブラック」と出てくるとちょっとびっくりする。そのキーワードで検索しても大した情報が出てこないときもあるのだが、多分、検索結果よりも検索されちゃうキーワードの上位を表示しているのであろう。まして、最初に出てくるから、常に検索されて、そのキーワードが上位になってしまう。iTunesで最も再生した25曲ばかり聞いていると、スマートプレイリストにしたとしても、実質、固定されたプレイリストになってしまうものである。定番というのはなかなか壊れにくい。一度付いた評判を崩すのは大変である。

新卒の時に教わったのは、人間関係を3年かけてつくっても壊わすのは3秒も要らないということ。悪い情報は、直ぐ上位にくるが、いい情報、特に悪い情報を覆す情報はなかなか上位に来ない。

就職活動をしている学生さんにいいたいことは、2chを信じるのはほどほどに、検索窓の補完は、結構参考になる。良いことも悪いことも。
でも、企業名いれただけで、補完で表示されるキーワードが本業と関係ないキーワードだと企業側も結構大変ある。

ちなみに、こんなエントリをwikipediaで見つけた。スタンフォード監獄実験。もともとは、Law & Order クリミナル・インテント』 シーズン4 エピソード13のエピソードで言われていた話で、まともな人でも環境によっては、その環境にはまってしまうということらしい。私は大丈夫だと思っていても十中八九、この実験の通りになってしまう。以前、ある団体にこの話をしたら、よくこの実験を知っていて、回答は、「この実験をやってみないとわからないだろう」と。やって得られるものは何だろうと思った。そのような形で当事者として引き込んでしまう。

自ら進んで悪い評判を出そうと思っている組織はない、必ず善かれと思っている。ただし、実際のところは、こんな感じなのかもしれない。決して当事者たちは気づく事はない。