トップ 最新 追記
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|10|12|
2009|02|03|06|07|10|11|12|
2010|01|02|03|04|07|09|10|11|12|
2011|01|03|04|05|06|07|08|10|
2012|01|06|08|09|10|12|
2013|01|02|03|04|07|09|11|12|
2014|01|03|04|05|06|09|
2015|04|
2016|01|08|
ここは旧えびめもです。えびめも2に移行します(2016/12/1)

2007年12月07日

sqlite3

sqlite3でテーブル名一覧を見る方法
SELECT tbl_name FROM sqlite_master WHERE type='table';

sqlite3

sqlite3でデータベースファイルとして生パーテーションが使えるか実験
 # dd if=/dev/zero of=/dev/sdc2    (ここで /dev/sdc2 は生パーテーション)
 # sqlite3 /dev/sdc2
 sqlite> create table users ( a,b );
 sqlite> .dump
 BEGIN TRANSACTION;
 COMMIT;
 sqlite>
ダメみたいですな。

2007年12月10日

lighttpd

lighttpd(debian etchベース)でのBASIC認証方法メモ。
10-auth.conf ファイルを conf-available から conf-enabled へコピー
    # cp /etc/lighttpd/conf-available/10-auth.conf \
            /etc/lighttpd/conf-enabled/
/etc/lighttpd/conf-enabled/10-auth.conf ファイルの最後に htpasswd を追加
 
    auth.backend = "htpasswd"
    auth.backend.htpasswd.userfile = "/どっか/適当な/htpasswdファイル"
    auth.require =  ( "/system" =>
                      ( "method"  => "basic",
                        "realm"   => "メッセージ",
                        "require" => "valid-user"
                      )
                    )
htpasswdファイルを作る
 # htpasswd -c /どっか/適当な/htpasswd ユーザ名
New password:
Re-type new password:
lighttpdをrestartする
# /etc/init.d/lighttpd restart

2007年12月11日

NAS買う

自己リスクでhackしてnfs-serverを動かせることが必要条件。

Bic cameraにI-O DATAのHDL-GT 1.6T を見に行ったら Baffalo の TS-H2.0TGL/R5 の方が安かった。I-O DATA の1.6T よりも Baffaloの2.0Tが安くポイントも18%だという。販売員はBaffaloの拡販トークを炸裂。困った。な〜んて事を書いたら某氏に怒られてしまう(笑)

NAS買った

結局 IO-DATA 社の HDL-GT の 2.0Tモデルを買った。ついでにAPCの無停電電源も。年内にGigaLanの24ポートHUBも買わないと。工事が面倒だけど。

当然NASとしても使いつつ、nfs-server を立ち上げる計画。その前に telnetd 仕込む方法をぐぐってみる。

HDL-GT2.0 telnetd 有効化パッチを作る

kinneko氏の日記をはじめ、ネット上の先輩諸兄の情報を探すと、HDLにはbusyboxのtelnetdが入っていて、デーモン起動を有効化するだけでよいということが分かった。探して行くと要件はこの2つだけ。
/etc/init.d/rc.local の最後に /usr/sbin/telnetd と1行追加する (デーモンの起動)
/etc/securetty に pts/0 と1行追加する (rootログインの許可)
HDLのWeb管理画面のファームウェの更新機能を使ってこの2つを仕込む。
ファイル名 landisk-update.sh
#!/bin/sh
#
# landisk-update.sh
#
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
mount -o remount,rw,noatime /
echo "/usr/sbin/telnetd" >> /etc/init.d/rc.local
echo "pts/0" >> /etc/securetty
ファイル名 for_HDL-GT_series
1.22
この2つだけが入った update.tgz を作る。作った→hdl-telnetd.zip

HDL-GT2.0 telnetd 有効化パッチ 実行してみる

Web管理画面のファームウェの更新に update.tgz を食わせてみる。おーどきどき。これで壊したら kinneko氏に泣きつくしかない。

OKを押して再起動・・・長い・・・長い・・・まさか壊したか!と心配になる。。。

HDL-GT2.0 telnetd 有効化 できた

無事再起動後、telnet ポートがコネクトでき、root ユーザでパスワードなしで(笑)ログインできた。
$ telnet 192.168.7.****
Trying 192.168.7.****...
Connected to 192.168.7.****
Escape character is '^]'.
 
Using fallback suid method
landisk login: root
Linux landisk 2.6.12.6-arm1 #2 Mon Jun 18 17:29:41 JST 2007 armv5tejl GNU/Linux
 
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
 
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
landisk:~# uname -r
2.6.12.6-arm1

HDL-GT 中を見る

/etc/passwd を見たところ、
1) root ユーザはパスワード無し
2) NASのユーザは unixユーザとして登録しているが、シェルが /bin/false を指定していてログインできない
という設計のようだ。

HDL-GT ボリューム構成

# cat /etc/fstab
proc                            /proc           proc    defaults,nosuid,noexec  0 0
/dev/md1                        /boot           ext2    defaults,rw     0 0
/dev/md2                        /               ext3    defaults,rw     1 1
/dev/sda3                       swap            swap    defaults        0 0
/dev/sdb3                       swap            swap    defaults        0 0
/dev/sdc3                       swap            swap    defaults        0 0
/dev/sdd3                       swap            swap    defaults        0 0
/dev/sde3                       swap            swap    defaults        0 0
/dev/sdf3                       swap            swap    defaults        0 0
/dev/md5                        /mnt/hda5       ext3    defaults,rw,sync        0 0
# df -h
Filesystem          サイズ  使用  残り 使用% マウント位置
rootfs                388M  244M  141M  64% /
/dev/root             388M  244M  141M  64% /
/dev/shm               62M  3.6M   59M   6% /mnt/ram0
tmpfs                  62M     0   62M   0% /dev/shm
/dev/md1              198M   99M   97M  51% /boot
/dev/md5              506M  9.3M  471M   2% /mnt/hda5
/dev/md13             1.4T  688K  1.4T   1% /mnt/sataraid1
この2つだけ貼っておけば十分だろう。

HDL-GT samba

globalのところだけ貼っておく
landisk:~# cat /etc/samba/smb.conf
[global]
        winbind separator = @
        template shell = /bin/false
        dos filetimes = yes
        winbind uid = 20000-30000
        server string = HDL-GT series
        msdfs root = no
        dns proxy = No
        private dir = /var/log
        map to guest = Bad User
        winbind cache time = 30
        socket options = TCP_NODELAY SO_RCVBUF=32768 SO_SNDBUF=32768
        smb passwd file = /etc/samba/smbpasswd
        panic action = /usr/share/samba/panic-action %d
        guest only = no
        netbios name = LANDISK
        printing = cups
        dos charset = CP932
        passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n
        winbind gid = 20000-30000
        workgroup = KOUBOU
        null passwords = yes
        unix password sync = yes
        security = user
        max log size = 50
        passwd program = /usr/bin/passwd %u
        unix charset = UTF-8
        password server =
        guest account = nobody
        passdb backend = tdbsam
        winbind enum groups = yes
        host msdfs = no
        printcap name = cups
        wins support = no
        os level = 0
        realm =
        guest ok = yes
        client schannel = No
        lock directory = /var/lock
        load printers = yes
        encrypt passwords = yes
        use sendFile = yes
        log file = /var/log/samba/log.%m
        winbind enum users = yes
        wins server =
        display charset = UTF-8

HDL-GT nfs-user-server を動かす

中を見てみると HDL-GT は debian sarge arm をベースにしているようなので、debian sarge arm から portmap と nfs-user-server の .deb パッケージを落としてきて手で展開する。
/位置で作業(怖いけど)
  # cd /
 
Read/Writeにする
  # mount -o remount,rw /
 
portmapを落として展開
  # wget http://ftp.debian.org/debian/pool/main/p/portmap/portmap_5-9_arm.deb
  # ar x portmap_5-9_arm.deb
  # tar xzvf data.tar.gz
  # update-rc.d portmap start 43 S . start 32 0 6 . start 18 2 3 4 5 . stop 81 1 .
 
nfs-user-serverを落として展開
  # wget http://ftp.debian.org/debian/pool/main/n/nfs-user-server/nfs-user-server_2.2beta47-20sarge2_arm.deb
  # ar x nfs-user-server_2.2beta47-20sarge2_arm.deb
  # tar xzvf data.tar.gz
  # update-rc.d nfs-user-server defaults 25
 
不要ファイルを消す
  # rm portmap_5-9_arm.deb
  # rm nfs-user-server_2.2beta47-20sarge2_arm.deb
  # rm debian-binary
  # rm control.tar.gz
  # rm data.tar.gz
 
エクスポートファイルを作る
  # cat > /etc/exports
  適当な exports ファイル
  ctrl+d
 
ReadOnlyにする
  # mount -o remount,ro /
 
デーモンの起動
  # /etc/init.d/portmap start
  # /etc/init.d/nfs-user-server start
やりたかったことが完成した。ただし NASの設計者は portmap デーモンが動いている前提でシステムを作っていないはずなので、システムのバックアップ時などに portmapを止めたりはしてくれないだろうからバックアップシステムなどに支障をきたす恐れがある。その辺は自己責任で。

2007年12月17日

帰るタイミング

そろそろ帰ろうかと新人君に声をかけたら、
『今キリが悪いです。
switch文を書いているところなので』
そりゃキリが悪いところだったね。ごめんね。

2007年12月18日

えびちゃん

ここは某えびちゃんがブレイクする前から存在している日記なのですが、えびちゃんを目当てに検索して来る人が沢山いる。うれしいけど的外れです。どんなに探しても
『えびちゃん 裸』
という画像は置いてないです。ごめんなさい。
と書くとまた検索ワードに引っかかってしまうのだ

2007年12月19日

ddの途中経過を知る方法

SIGUSR1を送ると標準出力に途中経過を表示する。ddを & をつけてバックグラウンドで動かせば便利
 # dd if=なんとか of=かんとか &    
 # kill -USR1 ddのpid

2007年12月26日

たいわん

前任者が退職したので私が台湾企業との取引担当者になった。英文もだいぶブランクがある。言い回しは思い出してきているのだが単語のスペルが忘却のかなただ。ウィ アプリシエイト ユア・・・と書こうとしてアプリシエイトのスペルが分からん。googleに聞く。音は覚えていても文字は書かないと忘れる。


2007年12月27日

求人

求人広告を出してみました。エンジャパンでシリコンリナックスを検索してみてください。

社内の様子

求人広告と連動して社内の様子も公開しました。
http://www.si-linux.co.jp/index.php?%B8%DB%CD%D1%BE%F0%CA%F3

非該当証明

ホワイト国(26ヶ国)メモ
アイルランド、アメリカ合衆国、アルゼンチン、イタリア、英国、オーストラリア、
オーストリア、オランダ、カナダ、ギリシャ、スイス、スウェーデン、スペイン、
大韓民国、チェコ、デンマーク、ドイツ、ニュージーランド、ノルウェー、ハンガリー、
フィンランド、フランス、ベルギー、ポーランド、ポルトガル、ルクセンブルク