2008年10月19日日曜日

Xtermの文字を大きくする

defaultだと小さくて疲れる。

  • font を emerge


    • emerge media-fonts/efont-unicode

  • /etc/X11/xorg.conf に FontPath を追加する。


    • FontPath "/usr/share/fonts/efont-unicode/"


  • $HOME/.Xresources に以下を追加



    • Xterm*cjkWidth: true
      XTerm*utf8: 1
      XTerm*wideChars: true
      XTerm*locale: true
      xterm*fontDoublesize: true
      XTerm*background: black
      XTerm*foreground: white
      XTerm*highlightColor: blue
      XTerm*font: -efont-fixed-medium-r-normal--16-160-75-75-c-80-iso10646-1

      ! Needs for Alt_L=Meta on emacs
      XTerm*metaSendsEscape: true
      XTerm*eightBitInput: false

      ! Scrollbar color
      XTerm*Scrollbar*thickness: 10
      XTerm*Scrollbar*foreground: black
      XTerm*Scrollbar*background: white


  • 256 color


    • export TERM=xterm-256color

    2008年10月14日火曜日

    L4Linux メモ

    起動後
    l4lx | ======> L4Linux 2.6 starting... <========
    l4lx | Linux version 2.6.26-l4 (shin@gentoo) (gcc version 4.1.2 (Gentoo 4.1.
    l4lx : 2 p1.1)) #1 Sun Oct 12 10:41:33 JST 2008
    l4lx | Binary name: vmlinuz
    l4lx | Linux kernel command line (6 args): mem=64M load_ramdisk=1 ramdisk_si
    l4lx : ze=16384 root=/dev/ram l4env_rd=drops.rd video=l4fb:800x600@16,refres
    l4lx : hsleep:100
    l4lx | Image: 00400000 - 007c9000 [3876 KiB].
    l4lx | Areas: Text: 00400000 - 006d3000 [2892kB] (a bit longer)
    l4lx | Data: 006d3000 - 006f46d8 [133kB]
    l4lx | Initdata: 006f8000 - 00737000 [252kB]
    l4lx | BSS: 00738000 - 007c8b50 [578kB]
    l4lx | l4lx_thread_create: Created thread 10.03 (tamer0)
    l4lx | Tamer0 is 10.03
    l4lx | Using tamed mode.
    ROOT: Sending all ports (for cli/sti) to task #0d
    l4lx | Got 65536 out of 65536 I/O ports
    で固まる

    A. Fiascoの menuconfig で
    Kernel options - Assembler IPC shortcut を OFF にすれば OK.

    2008年10月6日月曜日

    Gentoo & qemu その2

    gentoo gcc-3.4.6 で cvs版の qemu をコンパイルしようとするも...

    release_0_9_0/target-i386/ops_sse.h:213: error: this is
    the insn:
    (insn:HI 36 35 37 3 release_0_9_0/target-i386/ops_sse.h
    :207 (parallel [
    (set (reg:DI 63 [
    .q ])
    (lshiftrt:DI (reg:DI 63 [
    .q ])
    (subreg:QI (reg/v:SI 60 [ shift ]) 0)))
    (clobber (scratch:SI))
    (clobber (reg:CC 17 flags))
    ]) 309 {lshrdi3_1} (insn_list 33 (insn_list 35 (nil)))
    (expr_list:REG_DEAD (reg/v:SI 60 [ shift ])
    (expr_list:REG_UNUSED (reg:CC 17 flags)
    (expr_list:REG_UNUSED (scratch:SI)
    (nil)))))
    release_0_9_0/target-i386/ops_sse.h:213: 前のエラーにより混乱していますので、脱出します
    make[1]: *** [op.o] エラー 1


    gentoo の gcc-3.4.6 はダメ?らしい。

    http://docs.openmoko.org/trac/ticket/1093

    しかたなく...

    /etc/portage/package.keywords に sys-devel/gcc:3.3 ~x86 を追加して、
    emerge -av sys-devel/gcc:3.3

    で、gcc-3.3.6 をインストール。

    qemu は ./configure --host-cc=/usr/bin/gcc-3.3.6 --cc=/usr/bin/gcc-3.3.6
    で compile できました♪

    2008年9月15日月曜日

    Gentoo & qemu

    http://gentoo-wiki.com/HOWTO:_Qemu

    gcc 4.X だとコンパイルできないので、3.X を持ってくる。
    emerge -av sys-devel/gcc:3.4

    - x86_64環境で /etc/make.conf に CFLAGS="-O2 -march=core2 -pipe" を書いてる場合は
    sudo sh -c "CFLAGS=\"-O2 -pipe\" CXXFLAGS=\"-O2 -pipe\" emerge sys-devel/gcc:3.4"

    gcc-3.4 でコンパイル
    sudo sh -c "CC=gcc-3.4 emerge qemu-softmmu"

    ネットワークに tun を使うならコレも
    emerge sys-apps/usermode-utilities

    ネットワークに bridge を使うならコレも
    emerge net-misc/bridge-utils

    kqemuを使うなら
    cat /etc/modules.autoload.d/kernel-2.6
    kqemu major=0

    group qemu に追加
    gpasswd -a HOGE qemu

    ネットワーク込みの起動スクリブトはこんなのでいいらしい。

    #!/bin/bash
    set -x
    User=$USER
    TAP=$(sudo tunctl -b -u $User)
    sudo /sbin/ifconfig $TAP 0.0.0.0 promisc up
    sudo /sbin/brctl addif br0 $TAP
    qemu -hda hda.img -net nic -net tap,ifname=$TAP,script=no
    sudo tunctl -d $TAP

    もちろん、ネットワークはbridgeで設定してないとダメ。
    /etc/init.d/net.eth0 stop
    brctl addbr br0
    brctl addif br0 eth0
    ifconfig eth0 up
    ifconfig br0 up
    dhcpcd br0

    kgdb on linux-2.6.26

    kernel 2.6.26には kgdbがマージされている。
    以下のオプションを有効にしたkernelを作成。

    Kernel hacking
    KGDB: kernel debugging with remote gdb
    KGDB: use kgdb over the serial console

    grub menu.lstのkernelオプションに以下を追加。
    kgdboc=ttyS1,9600 kgdbwait

    qemu のserialで kgdbに接続するなら
    オプションに -serial stdin -serial pty を
    付けて起動し、ホスト側で gdb を起動

    cd linux-2.6.26
    gdb
    (gdb) file vmlinux
    (gdb) set remotebaud 9600
    (gdb) break init_post
    (gdb) target remote /dev/pts/0

    で、kgdbに接続できる。

    けど、gdbを Ctrl-c で止めると再接続できないよ ^^;

    結局、qemu使った方がラク

    qemu -s -kernel linux-2.6.26/arch/x86/boot/bzImage -h -initrd initrd-2.6.26.img da hda.img -append "root=/dev/VolGroup00/LogVol00"

    (gdb) target remote localhost:1234

    ... gdbの接続待ってくれないのがイマイチですが...

    moduleをデバッグする場合は...
    linux起動後、ターゲットモジュールを insmod して、
    cat /proc/modules で アドレスを確認。
    ...
    ne2k_pci 8680 0 - Live 0xc8815000
    ...

    gdb で symbol をロードすれば良い。
    (gdb) add-symbol-file drivers/net/ne2k-pci.ko 0xc8815000
    (gdb) break ne2k_pci_open

    で、ifconfig eth0 X.X.X.X/24 とかすると break する。

    2008年9月14日日曜日

    CentOS

    NICを交換するとMACアドレスが違うと言われて、インタフェースが上らなくなる。

    /usr/sbin/kudzu

    で、旧NICを削除して、新NICを認識させる必要がある。

    kudzuのデータベースは /etc/sysconfig/hwconf にある。
    何故か /etc/sysconfig/network-scripts/ifcfg-eth0 にも
    MACアドレスが入ってたりする。。。

    Serial Consoleを使うなら
    /boot/grub/menu.lstに以下を追加。
    serial --unit=0 --speed=9600 --word=8 --parity=no --stop=1
    terminal serial

    また、Kernelのオプションに以下を追加。
    console=tty0 console=ttyS0,9600n8

    /etc/inittab に以下を追加。
    s0:12345:respawn:/sbin/agetty -L 9600 ttyS0 vt100

    /etc/securetty に ttyS0 を追加。

    qemuのオプションに -serial stdio を追加して起動

    2008年9月1日月曜日

    dnsmasq

    openblocksのdhcp serverをdnsmaqに

    aptitude install dnsmasq

    cat /etc/dnsmasq.conf
    interface=eth0
    no-dhcp-interface=eth1
    dhcp-range=192.168.0.200,192.168.0.240,12h

    sudo aptitude purge dhcp3-server

    2008年8月27日水曜日

    Plan9 でわかんないこと。

    http://plan9.bell-labs.com/wiki/plan9/configuring_a_standalone_cpu_server/index.html
    echo $sysname
    gnot
    "gnot"って、どこで設定されるんだ。

    2008年8月15日金曜日

    gentooでのトラブル?

    1. grip


      • フツーにemergeしたらなんかダメだった。
        $ grip
        (grip:10797): Gtk-CRITICAL **: gtk_container_add: assertion `GTK_IS_WIDGET (widget)' failed
        (grip:10797): Gtk-CRITICAL **: gtk_widget_show: assertion `GTK_IS_WIDGET (widget)' failed
        (grip:10797): Gtk-CRITICAL **: gtk_container_add: assertion `GTK_IS_WIDGET (widget)' failed
        (grip:10797): Gtk-CRITICAL **: gtk_widget_show: assertion `GTK_IS_WIDGET (widget)' failed
        (grip:10797): Gtk-CRITICAL **: gtk_widget_get_style: assertion `GTK_IS_WIDGET (widget)' failed
        セグメンテーション違反です

        LANG=C grip
        なら大丈夫なんだけど... /etc/portage/package.use で -nls ではダメなんですね。

    2. NFS Client


      • rpc.statd を立ち上げとかないとlockできないとかでダメ.
        /etc/init.d/rpc.statd start
        or
        rc-update add rpc.statd default

    3. FirefoxのCtrl+j


      • skkとぶつかって、使いものにならないので
        http://mozilla.dorando.at/
        からkeyconfig.xpiをインストールして、Ctrl+jのショートカットを削除。
        ついでに、~/.scim/configの
        /Hotkeys/FrontEnd/Trigger = Control+space を Shift+space に変更。
        ...だいぶマシになったかな。

    2008年8月8日金曜日

    KURO-BOX/PRO with Debian GNU/Linux

    まず、i386なマシンで debootstrap を行いベースを作成する。
    # mkdir kuroroot
    # debootstrap --foreign --arch arm etch kuroroot http://cdn.debian.or.jp/debian/
    ...
    # cd kuroroot
    # tar zcf ../kuroroot.tgz *

    次に上で作成した kuroroot.tgz をKURO-BOX/PROに転送する。
    ちなみに、KURO-BOX/PRO のHDDは以下の構成

    Command (m for help): p

    Disk /dev/sda: 500.1 GB, 500107862016 bytes
    255 heads, 63 sectors/track, 60801 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes

    Device Boot Start End Blocks Id System
    /dev/sda1 1 1217 9775521 83 Linux
    /dev/sda2 1218 1340 987997+ 82 Linux swap
    /dev/sda3 1341 1706 2939895 83 Linux
    /dev/sda4 1707 60801 474680587+ 5 Extended
    /dev/sda5 1707 2923 9775521 83 Linux
    /dev/sda6 2924 5356 19543041 83 Linux
    /dev/sda7 5357 17515 97667136 83 Linux
    /dev/sda8 17516 60801 347694763+ 83 Linux

    ~ # mkswap /dev/sda2
    ~ # mount /dev/sda1 /mnt/disk1/
    ~ # mkdir /mnt/disk1/tmp
    ~ # mkdir /mnt/disk1/var
    ~ # mkdir /mnt/disk1/usr
    ~ # mkdir /mnt/disk1/home
    ~ # mkdir /mnt/disk1/srv
    ~ # mount /dev/sda3 /mnt/disk1/tmp
    ~ # mount /dev/sda5 /mnt/disk1/var
    ~ # mount /dev/sda6 /mnt/disk1/usr
    ~ # mount /dev/sda7 /mnt/disk1/home
    ~ # mount /dev/sda8 /mnt/disk1/srv

    # cd /mnt/disk1/
    i386なマシンで作成した、ベースを展開。
    # tar zxvf kuroroot.tgz

    # mount -t proc proc /mnt/disk1/proc
    # chroot /mnt/disk1

    debootstrapの続きを実行
    # /debootstrap/debootstrap --second-stage --no-resolve-deps
    I: Validating Packages
    ...
    I: Base system installed successfully.
    sh-3.1#

    残りの設定を行う
    sh-3.1# passwd
    sh-3.1# adduser HOGE
    sh-3.1# aptitude install ssh
    sh-3.1# echo "kurobox-pro" > /etc/hostname
    sh-3.1# echo "127.0.0.1 localhost" > /etc/hosts
    sh-3.1# cat /etc/fstab

    # /etc/fstab: static file system information.
    proc /proc proc defaults 0 0
    /dev/sda1 / ext3 defaults,errors=remount-ro 0 1
    /dev/sda2 none swap sw 0 0
    /dev/sda3 /tmp ext3 defaults 0 2
    /dev/sda5 /var ext3 defaults 0 2
    /dev/sda6 /usr ext3 defaults 0 2
    /dev/sda7 /home ext3 defaults 0 2
    /dev/sda8 /srv ext3 defaults 0 2

    sh-3.1# diff /etc/default/rcS.orig /etc/default/rcS
    13c13
    < UTC=yes
    > UTC=no


    sh-3.1# tzconfig
    sh-3.1# diff /etc/inittab.orig /etc/inittab
    63c63
    < #T0:23:respawn:/sbin/getty -L ttyS0 9600 vt100
    ---
    > T0:12345:respawn:/sbin/getty -L ttyS0 115200 vt100

    sh-3.1# diff /etc/default/halt.orig /etc/default/halt
    2c2
    < HALT=poweroff
    ---
    > HALT=halt


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

    # The loopback network interface
    auto lo eth0
    iface lo inet loopback

    # The primary network interface
    allow-hotplug eth0
    iface eth0 inet dhcp

    sh-3.1# cd /dev/
    sh-3.1# ./MAKEDEV sda
    sh-3.1# ./MAKEDEV ttyS0
    sh-3.1# ./MAKEDEV ttyS1
    sh-3.1# ./MAKEDEV rtc

    ここまできたら chroot から抜けて。。。
    /mnt/disk1/ に uImage.buffalo をコピー
    (u-bootがhda1直下にあることを期待するのでココに置く)

    モジュールもコピー
    cp -air /lib/modules/2.6.12.6-arm1 /mnt/disk1/lib/modules/

    KURO-BOX/PROのコマンドをコピー
    /mnt/disk1 # mkdir -p usr/local/kurobox/bin
    /mnt/disk1 # mkdir -p usr/local/kurobox/lib
    /mnt/disk1 # cp -p /usr/local/sbin/nvram /mnt/disk1/usr/local/kurobox/bin
    /mnt/disk1 # cp -p /usr/local/sbin/miconapl /mnt/disk1/usr/local/kurobox/bin/
    /mnt/disk1 # cp -p /lib/libc-2.3.6.so /mnt/disk1/usr/local/kurobox/lib/
    /mnt/disk1 # cp -p /lib/ld-2.3.6.so /mnt/disk1/usr/local/kurobox/lib/
    /mnt/disk1 # cp -p /lib/libgcc_s.so.1 /mnt/disk1/usr/local/kurobox/lib/
    /mnt/disk1 # cp -p /usr/local/lib/libbuffalo_bin.so /mnt/disk1/usr/local/kurobox

    nvram の設定
    /mnt/disk1/boot # nvram -c printenv
    1: [baudrate=115200]
    2: [loads_echo=0]
    3: [ipaddr=192.168.11.150]
    4: [serverip=192.168.11.1]
    5: [rootpath=/nfs/arm]
    6: [cpuName=926]
    7: [CASset=min]
    8: [MALLOC_len=4]
    9: [bootargs_end=:::DB88FXX81:eth0:none]
    10: [ethact=egiga0]
    11: [ethaddr=00:16:01:A4:DD:D1]
    12: [stdin=serial]
    13: [stdout=serial]
    14: [stderr=serial]
    15: [enaMonExt=no]
    16: [enaFlashBuf=yes]
    17: [enaCpuStream=no]
    18: [ethprime=egiga0]
    19: [buffalo_ver=BOOTVER=1.091]
    20: [build_time=18:10:02]
    21: [initrd=initrd.buffalo]
    22: [kernel=uImage.buffalo]
    23: [bootargs_base=console=ttyS0,115200]
    24: [bootargs_root=root=/dev/mtdblock2 rw panic=5]
    25: [bootargs=$(bootargs_base) $(bootargs_root) $(buffalo_ver)]
    26: [nand_uImage_offset=20000]
    27: [default_kernel_addr=0x00100000]
    28: [default_initrd_addr=0x02000000]
    29: [bootcmd=nboot $(default_kernel_addr) 0 $(nand_uImage_offset) ;setenv bootargs $(bootargs_base) $(bootargs_root) $(buffalo_ver); bootm $(default_kernel_addr)]
    30: [def_tftp=tftp $(default_kernel_addr) $(kernel); tftp $(default_initrd_addr) $(initrd); setenv bootargs $(bootargs_base) $(bootargs_root) rw initrd=0x02000040,20M panic=5 $(buffalo_ver); bootm $(default_kernel_addr) $(default_initrd_addr)]
    31: [nand_boot=yes]
    32: [bootdelay=3]
    33: [disaMvPnp=no]
    34: [overEthAddr=no]
    35: [usb0Mode=host]
    36: [usb1Mode=host]

    /usr/local/sbin/SetupDevEnv.sh をさんこうに ...
    nvram -c set bootargs_root 'root=/dev/sda1 rw panic=5'
    nvram -c set bootargs 'console=ttyS0,115200 root=/dev/sda1 rw panic=5 BOOTVER=1.09'
    nvram -c set bootcmd 'ide reset; ext2load ide 0:1 $(default_kernel_addr) /$(kernel); bootm $(default_kernel_addr)'

    Flashに戻すなら
    Marvell>> setenv bootargs_root root=/dev/mtdblock2 rw panic=5
    Marvell>> setenv bootargs $(bootargs_base) $(bootargs_root) $(buffalo_ver)
    Marvell>> setenv bootcmd 'nboot $(default_kernel_addr) 0 $(nand_uImage_offset) ;setenv bootargs $(bootargs_base) $(bootargs_root) $(buffalo_ver); bootm $(default_kernel_addr)'
    Marvell>> saveenv

    んー、初回起動時の fsck どうにかならないかなぁ...

    2008年8月5日火曜日

    KURO-BOX/PRO

    デフォルトのフラッシュ起動だと名前解決ができないので
    /etc/nsswitch.conf に dns を追加する。

    echo "hosts: dns files" > /etc/nsswitch.conf

    wget http://ftp.jp.debian.org/debian/pool/main/d/debootstrap/debootstrap-udeb_0.3.3.2etch1_arm.udeb
    ar x debootstrap-udeb_0.3.3.2etch1_arm.udeb
    tar zxvf data.tar.gz

    export PATH=/mnt/disk1/tmp/usr/bin:/mnt/disk1/tmp/usr/sbin:$PATH
    export LD_LIBRARY_PATH=/mnt/disk1/tmp/usr/lib
    ln -s /mnt/disk1/tmp/usr/lib/debootstrap /usr/lib/

    debootstrap --arch arm etch /mnt/disk1/debroot http://ftp.jp.debian.org/debian/
    ...
    W: Failure trying to run: chroot /mnt/disk1/debroot mount -t proc proc /proc

    んー。
    ライブラリが無かったりで、この方法じゃダメらしい。

    wget http://ftp.jp.debian.org/debian/pool/main/d/debootstrap/debootstrap_0.3.3.2_all.deb
    wget http://ftp.jp.debian.org/debian/pool/main/p/perl/perl-base_5.10.0-11.1_arm.deb
    ln -s /mnt/disk1/tmp/usr/bin/perl /usr/bin/

    debootstrap --arch arm etch /mnt/disk1/debroot http://ftp.jp.debian.org/debian/
    おんなじだw

    コイツかなぁ...
    # ls -la /bin/sh
    lrwxrwxrwx 1 root root 7 Apr 10 2007 /bin/sh -> busybox

    やけくそ。
    rm /bin/sh
    ln -s /bin/bash /bin/sh

    debootstrap --arch arm etch /mnt/disk1/debroot http://ftp.jp.debian.org/debian/
    だめぽ。

    mkdir kurobox
    cd kurobox/
    tar zxf ../hddrootfs.tar.gz
    cp /usr/bin/wget usr/bin/
    cp /etc/resolv.conf etc/

    mount -t proc proc /mnt/disk1/kurobox/proc
    chroot /mnt/disk1/kurobox/

    cd tmp
    wget http://ftp.jp.debian.org/debian/pool/main/d/debootstrap/debootstrap-udeb_0.3.3.2etch1_arm.udeb
    ar x debootstrap-udeb_0.3.3.2etch1_arm.udeb
    tar zxvf data.tar.gz

    ln -s /tmp/usr/lib/debootstrap /usr/lib/
    export PATH=/tmp/usr/sbin:$PATH

    mkdir debroot

    /tmp # mkdir dpkg
    /tmp # cd dpkg/
    /tmp/dpkg #
    /tmp/dpkg # wget http://ftp.jp.debian.org/debian/pool/main/d/dpkg/dpkg_1.14.20_arm.deb
    Connecting to ftp.jp.debian.org[61.115.118.67]:80
    dpkg_1.14.20_arm.deb 100% |************************************************************************| 2176 KB 00:00 ETA
    /tmp/dpkg # ar x dpkg_1.14.20_arm.deb
    /tmp/dpkg # cd ../debroot/
    /tmp/debroot # tar zxvf ../dpkg/data.tar.gz

    # ls -la debroot/lib/
    drwxr-xr-x 2 root 0 4096 Jul 26 14:44 .
    drwxr-xr-x 9 root 0 4096 Jul 26 14:37 ..
    -rwxr-xr-x 1 root 0 99468 Jul 26 14:37 ld-2.3.6.so
    lrwxrwxrwx 1 root 0 11 Jul 26 14:42 ld-linux.so.3 -> ld-2.3.6.so
    -rwxr-xr-x 1 root 0 1159488 Jul 26 14:40 libc-2.3.6.so
    lrwxrwxrwx 1 root 0 13 Jul 26 14:42 libc.so.6 -> libc-2.3.6.so
    -rwxr-xr-x 1 root 0 10480 Jul 26 14:41 libdl-2.3.6.so
    lrwxrwxrwx 1 root 0 14 Jul 26 14:43 libdl.so.2 -> libdl-2.3.6.so
    -rw-r--r-- 1 root 0 38036 Jul 26 14:44 libgcc_s.so.1
    -rwxr-xr-x 1 root 0 262988 Jul 26 14:40 libncurses.so.5.2
    #
    cp /bin/mount bin/
    mkdir proc

    mkdir debroot/sbin
    cp /sbin/ldconfig debroot/sbin/


    debootstrap --arch arm etch /tmp/debroot http://ftp.jp.debian.org/debian/



    2008年7月30日水曜日

    rc Plan9 shell

    enable auto scroll
    echo -n scroll > /dev/wctl

    2008年7月27日日曜日

    links install to Plan9

    1. 9fs sources
    2. tar zxvf /n/sources/contrib/andrey/links.tgz
    3. cd links-varfont
    4. mk
    5. mk install

    2008年7月23日水曜日

    Plan9 & drawterm

  • Plan9の設定

  • - IPアドレス設定(dbcp)
    ip/ipconfig
    ndb/cs
    ndb/nds -r

    - IPアドレスの確認
    cat /net/ndb

    - ユーザの追加
    http://plan9.bell-labs.com/wiki/plan9/adding_a_new_user/index.html

    - cpuサーバの設定
    http://plan9.bell-labs.com/wiki/plan9/Drawterm_to_your_terminal/index.html

    - 2回目からは以下でok! って...
    term% auth/keyfs -p $home/lib/keys # you can add this command to your profile
    Password: keyfilepassword
    1 keys read
    term% echo 'key user=glenda dom=drawterm.test proto=p9sk1 !password=loginpassword' > /mnt/factotum/ctl
    term% aux/listen1 -t 'tcp!*!ticket' /bin/auth/authsrv &
    term% service=cpu aux/listen1 'tcp!*!ncpu' /bin/cpu -R &
  • GNU/Linuxの設定

  • - drawterm
    http://plan9.bell-labs.com/wiki/plan9/drawterm/index.html
    http://swtch.com/drawterm/
    ダウンロードして
    CONF=unix make
    ./drawterm -a X.X.X.X -c X.X.X.X

    ログイン後、cd /mnt/term 以下から ホストの GNU/Linux にアクセスできる。
    すげー。

    2008年7月20日日曜日

    Qemu with Gentoo

    1. Install
    emerge -av sys-devel/gcc:3.4
    gcc-config -l
    ...
    gcc-config i686-pc-linux-gnu-3.4.6
    source /etc/profile

    emerge app-emulation/qemu

    gcc-config i686-pc-linux-gnu-4.1.2
    source /etc/profile

    2008年7月14日月曜日

    Gentoo on MacBook

    ...やっぱ、めんどいな、Debian GNU/Linuxに比べたら...

    fdisk, cfdiskが EFIに対応していないので、
    パーティションは Debianのインストーラ を使ったw.

    以下、はまりどころだけ...

    livecd ~ # swapon /dev/sda4
    livecd ~ # mount /dev/sda3 /mnt/gentoo
    livecd ~ # mount /dev/sda5 /mnt/gentoo/tmp/
    livecd ~ # mount /dev/sda6 /mnt/gentoo/var/
    livecd ~ # mount /dev/sda7 /mnt/gentoo/usr/
    livecd ~ # mount /dev/sda8 /mnt/gentoo/home/
    livecd ~ # mount -t proc proc /mnt/gentoo/proc
    livecd ~ # cp -L /etc/resolv.conf /mnt/gentoo/etc/
    livecd ~ # chroot /mnt/gentoo /bin/bash

    lilo をインストールする時には、上記に加え、以下をやらないと失敗する。
    livecd ~ # mount --bind /dev/ /mnt/gentoo/dev/

    2008年7月13日日曜日

    MacBook HDD 交換

    SeagateのHDDが無かったので、
    仕方なく Hitachi製 2.5インチ 320G 5400rpm Serial ATA で...
    HDDのネジが、星形の特殊なヤツだったので、
    東急ハンズで ヘックスローブ を購入。サイズは T8 でOK.

    320Gって、320 x 1000 x 1000 x 1000 なのね。
    実際のところは 1024 で計算されて、298G.

    OS Xは使うつもりないけど、50G を割当。

    残りは Gentoo にするかな.

    デュアルブートにするので、とりあえず、refit をインストール。
    http://refit.sourceforge.net/

    2008年6月2日月曜日

    Gentoo Mounting /dev for udev ... oops

    Gentooインストールしたら、起動時に

    * Mounting /dev for udev ... [oops]

    * The "mount" command failed with error

    とりあえず、回避する為にはgrubでkernelパラメータに
    gentoo=noudev
    を付ければ良い。

    ちゃんと対処するなら、
    emerge udev
    して、kernelのコンフィグレーションで以下をチェックしておけば良いらしい。
    /proc file system support
    Virtual memory file system support (former shm fs)


    http://www.gentoo.org/doc/en/udev-guide.xml

    2008年5月12日月曜日

    Iceweasel + firemacs

    インストールし直して Debian GNU/Linux で
    iceweasel 2.0.0.14-2 と firemacs 3.1
    の組合せがマトモに動かないことに今頃気付いたよ...orz
    しょうがないので、firemacs-3.1-fx.xpi 落してきて解凍。

    unzip firemacs-3.1-fx.xpi
    cd chrome
    jar -xvf firemacs.jar

    で、grep -r firefox * してみたら、content/init.js に "Firefox/2" の
    文字列が...これかなってことで、iceweaselの url で表示してみると ...

    javascript:(function() {document.write(navigator.userAgent.search('Firefox/2'))})()

    あー、-1 が返ってらぁ。

    javascript:(function() {document.write(navigator.userAgent.search('Iceweasel/2'))})()

    にしなきゃいけないらしい。
    なので chrome/content/init.js の以下修正。


    7,8c7,8
    < var firefoxVersion = navigator.userAgent.search('Firefox/2') > 0 ? 2 :
    < navigator.userAgent.search('Firefox/3') > 0 ? 3 :
    ---
    > var firefoxVersion = navigator.userAgent.search('Iceweasel/2') > 0 ? 2 :
    > navigator.userAgent.search('Iceweasel/3') > 0 ? 3 :




    それから、アーカイブを作り直して、

    jar -cvf firemacs.jar content skin
    zip firemacs-3.1-fx.xpi chrome/firemacs.jar chrome.manifest install.rdf


    で、出来上がった firemacs-3.1-fx.xpi をiceweaselで開いてインストール
    イイ感じ。

    2008年4月27日日曜日

    Iceweasel (firefox)の設定

    Debian GNU/Linux インストールし直したから、イチから...

    • about:config
    • browser.link.open.newwindow = 2 ->3
      browser.tabs.loadDivertedInBackground = false -> true

    • add-ons

    • Compact Menu
      Firemacs
      Downloads in Tab
      NoScript

    2008年2月6日水曜日

    横浜で仕事の打ち合わせ。
    入社1年目にお世話になったコワーい上司やら、
    何年振りかに合う入社同期の知った顔が
    同じプロジェクトにいる事が判明...懐しすぎ
    とりあえず、3月までは Studyって、イイんですかそれで♪

    2008年2月5日火曜日

    Debian etch での iptables の設定

    とりあず、NATだけなので、
    iptables -F
    iptables -t nat -F
    iptables -t nat -A POSTROUTING -o eth1 -s 192.168.0.0/24 -j MASQUERADE

    で、正常に動作することを確認したら...

    iptables-save > /etc/iptables.conf

    で、設定を保存して、/etc/network/interfaces に pre-up を追加。
    iface eth1 inet dhcp
    iface eth0 inet static
    address 192.168.0.254
    netmask 255.255.255.0
    pre-up iptables-restore < /etc/iptables.conf

    2008年2月2日土曜日

    ssh接続でのログインが遅い

    認証時にアドレスの名前解決に行ってるらしい。

    /etc/ssh/sshd_config に UseDNS no を追加して、解決。

    玄箱のDebian化

    玄人志向 の KURO-BOX/HG をDebian化


    基本的には OpenBlocksのDebian化と一緒。

    Debian etch on OpenBlocks266 (1)


    以下、違うとこだけ.

    0. KURO-BOXのEM化
    ウラのリセットとか押してもどうにもならない場合は...
    フォーマット済みのHDDを載せるしか無いっぽい。
    EMモードのログインは root/kuroadmin で、

    HDDのパーティションは
    mfdisk -c /dev/hda
    mke2fs -j /dev/hdaX でフォーマットして、
    mkswap /dev/hdaX と swapon /dev/hdaX を忘れずに


    1. /etc/inittab

    tty1〜6 までコメントは一緒だけど、Serial無いので ttyS1, ttyS2 もコメントのままで良し。


    2. /etc/fstab

    Serial無いので、fsckとか走ると困るので、6番目のフィールド(pass)は 0 にしておく。

    #
    proc /proc proc defaults 0 0
    /dev/hda1 / ext3 defaults,errors=remount-ro 0 0
    /dev/hda2 none swap sw 0 0
    /dev/hda5 /tmp ext3 defaults 0 0
    /dev/hda6 /var ext3 defaults 0 0
    /dev/hda7 /usr ext3 defaults 0 0
    /dev/hda8 /home ext3 defaults 0 0
    /dev/hda9 /srv ext3 defaults 0 0


    3. /etc/network/interfaces
    ネットワークが繋がらないと話しにならなくなる...

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

    # The loopback network interface
    auto lo eth0
    iface lo inet loopback

    iface eth0 inet dhcp

    4. /dev/の作成
    ./MAKEDEV hda
    ./MAKEDEV ttyS0
    ./MAKEDEV ttyS1
    mknod /dev/fl3 b 250 3


    5. 玄箱特有のコマンドのコピー

    cp /usr/sbin/ppc_uartd /mnt/usr/sbin/
    cp /etc/init.d/ppc_uartd /mnt/etc/init.d
    cd /mnt/etc/rc2.d
    ln -s ../init.d/ppc_uartd S20ppc_uartd

    差分はこのくらい。
    で、

    echo -n 'OKOK' > /dev/fl3 を入力して、再起動すればDebianになってるハズ。
    起動後、ppc_uartd が動いているか確認した方がいい(ps axu と /var/log/syslog)。
    動いてないと数分で電源落ちるから...


    X. 玄箱のお作法

    shutdownするなら
    # echo -n 'EEEE' > /dev/ttyS1
    # shutdown -h now

    rebootするなら
    # echo -n 'CCCC' > /dev/ttyS1
    # shutdown -r now

    EMモードにするなら
    echo -n 'NGNG' > /dev/fl3

    EMモードから抜けるなら
    echo -n 'OKOK' > /dev/fl3

    2008年1月27日日曜日

    Debian etch on OpenBlocks266 (2)

    I: Base system installed successfully.
    まで終ったら...

    chrootして、残りの設定を行う。
    chroot /root/debroot/

    1. ユーザとパスワードの設定
    passwd
    で、ルートのパスワードを設定して、
    adduser hoge
    で、一般ユーザを作成

    2. 必要なパッケージをインストール
    aptitude install ssh sudo

    3. /etc以下の設定
    3.1. nano /etc/inittab
    tty1〜tty6をコメントにして、ttyS0, ttyS1 を有効にする。

    3.2. nano /etc/securetty
    ttyS1を追加

    3.3. nano /etc/fstab
    # /etc/fstab: static file system information.
    #
    #
    proc /proc proc defaults 0 0
    /dev/hda1 / ext3 defaults,errors=remount-ro 0 1
    /dev/hda2 none swap sw 0 0

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

    # The loopback network interface
    auto lo eth0 eth1
    iface lo inet loopback

    iface eth1 inet dhcp
    iface eth0 inet static
    address 192.168.0.254
    netmask 255.255.255.0

    3.5. nano /etc/hostname
    obs266

    4. /dev/の作成
    cd /dev/
    ./MAKEDEV hda
    ./MAKEDEV ttyS0
    ./MAKEDEV ttyS1
    mknod /dev/nvram0 c 240 0
    mknod /dev/nvram1 c 240 1

    以上、でchrootから exit.

    SSD-Linuxから必要なファイルをコピーする。
    cp -R /lib/modules/2.6.18 /root/debroot/lib/modules/
    cp /usr/sbin/flashcfg /root/debroot/usr/sbin

    最後に、flashcfg -c initrd でフラッシュから起動して、
    mount /dev/hda1 /mnt 後、
    /mnt/root/debroot以下のファイルを /mnt/ に移し、
    flashcfg -c hda1 して再起動すれば、OK!.

    ダメだったら、背面のinitボタンを押しながら、
    電源を入れて、 flashから起動し設定を見直そう。

    Debian etch on OpenBlocks266 (1)

    SSD Linuxが動いている状態で、以下 3パッケージを debianのftpサイトから取得
    - debootstrap_0.3.3.2etch1_all.deb
    - wget_1.10.2-2_powerpc.deb
    - perl-base_5.8.8-7etch1_powerpc.deb

    上記パッケージをそれぞれ、ar x で展開し、中身のdata.tar.gzを展開する。
    ar x wget_1.10.2-2_powerpc.deb
    tar zxf data.tar.gz

    ar x debootstrap_0.3.3.2etch1_all.deb
    tar zxf data.tar.gz

    ar x perl-base_5.8.8-7etch1_powerpc.deb
    tar zxf data.tar.gz

    debianのパイナリへのシンボリックリンクとPATHを設定
    ln -s /root/usr/lib/debootstrap /usr/lib/
    ln -s /root/usr/bin/perl /usr/bin/
    export PATH=/root/usr/sbin:/root/usr/bin:$PATH
    export LD_LIBRARY_PATH=/root/usr/lib:$LD_LIBRARY_PATH

    インストールディレクトリを作成
    mkdir debroot

    インストーラを起動
    debootstrap --arch powerpc etch /root/debroot http://cdn.debian.or.jp/debian/

    ... しばらく待つ。

    2008年1月26日土曜日

    SSD/Linux 0.4-20080118

    インストーラが随分かわってら。

    fdisk /dev/hda
    で、パーティションを切ったら。

    /sbin/mke2fs -j /dev/hda1
    で、フォーマットして、

    mkswap /dev/hda2
    swapon /dev/hda2
    で、swapを有効にして、

    sysinst
    で、インストール。

    最後に
    flashcfg -c hda1
    で、HDDから起動するように変更(flashcfg -c initrd でフラッシュに戻る)

    2008年1月24日木曜日

    bootp+tftpd

    ひっさしぶりにOpenBlocks266アップデートしようとしたらすっかり忘れてら。

    aptitude install bootp tftpd

    で、/etc/bootptab を編集して...

    obs266:\
    :ht=ether:\
    :sa=192.168.0.1:\
    :ha=000A85018CA3:\
    :ip=192.168.0.254:\
    :sm=255.255.255.0:\
    :bs=auto:\
    :hd=/srv/tftp:\
    :bf=zImage.initrd.treeboot-product:\

    ファイルを /srv/tftp/zImage.initrd.treeboot-product に用意して、

    /usr/sbin/arp -s 192.168.0.254 00:0A:85:01:8C:A3
    で、ARPを固定で登録して、

    /usr/sbin/bootpd -d4

    とかで、bootpdを立ち上げといて、OpenBlcksの電源をOn!

    ※ tftpのルートディレクトリを変える場合は、
    bootptabの hd= と /etc/inetd.conf の tftp の行を変えて、
    /etc/init.d/openbsd-inetd restart
    でおけ。

    inetd

    /etc/init.d/inetd
    から、
    /etc/init.d/openbsd-inetd
    になってる...いつの間に...Debian GNU/Linux lenny/sid