トップ «前の日(03-25) 最新 次の日(03-27)» 追記

屑俺日記

僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。


2005-03-26(Sat) 濃密に

二股

15時頃にバスに飛び乗り、近鉄、地下鉄を乗り継いでJR三宮へ。 K*BUGの定例宴会で大いに飲み喰いした。

kill

$ which kill
/usr/bin/kill
$ tcsh
% which kill
> which kill
kill: シェルに入っているコマンドですー

奈良高専から

wgetしてみた。

$ time wget -q ftp://ftp.kuzuore.com/pub/LinuxPersonalWorkstation-bm.pdf
 
real    2m33.616s
user    0m0.060s
sys     0m0.090s

無線LANが不調らしく有線である。

ping -c 100 www.kuzuore.com
(ry
64 octets from 210.138.41.18: icmp_seq=99 ttl=50 time=189.4 ms
 
--- www.kuzuore.com ping statistics ---
100 packets transmitted, 100 packets received, 0% packet loss
round-trip min/avg/max = 78.7/229.9/386.9 ms

ぼんやりして

鶴橋で降りず、天王寺まで行き、大和路快速を待たず、鈍行を乗り継いで大和郡山へ。 奈良高専には30分ほど遅れて付いた。 3.4GHzの鯖のカーネル再構築は恐ろしく速く見えた。


2006-03-26(Sun) あきたか

apt-get

さらにKNOPPIXのリマスタリング。
流石に限界。aptitudeとか dpkgとかも覚えないと。

削るだけでなく、/etc/apt/sources.listに 手を入れ、ckermitを追加してみた。 更新すると、kdebluetoothも消せた。さらに 消して消して消しまくる。
リマスタリングしたknoppix.isoは288MB位まで 小さくなった。sshdもttyS0もうまくできた。
が、/etc/passwdと/etc/shadowの更新を忘れていた。 これではリモートログインできない。また作りなおす。

# ls -l knoppix.iso
-rw-r--r--  1 root root 302018560 Mar 26 14:51 \
  knoppix.iso

で、焼かずに起動を試す方法。普通にKNOPPIXのCDで 起動して、起動時のプロンプトに以下のように入力。

boot: knoppix bootfrom=/dev/hda1/knoppix.iso

今度はうまくいったが、/home/knoppix/.screenrc も入れた方がよかったか...きりがない。

4.2b2

古ノートについていた2GBのジャンクHDDに突っ込む。例によって 一枚だけ。お薦めに任す。
まだXは動かない。X -configureさえ効かない。

何時の間にか/sbin/xfplamoconfigというスクリプト ができていた(4.0Xより前は知らない)。で、 試したが、どうしてもXが上がらないので 面倒になって再インストール。
やっぱり何か抜けていたらしく、今度は嘘のように スムーズにXが起動する。起動を確認して 周波数や解像度をモニタに合わせる。

でも、まだ何かが変ったようには見えなかったり。

$ uname -a
Linux 2.6.15.6-plamoUP (Plamo 4.0.2) #2 PREEMPT Thu\
 Mar 9 13:25:25 JST 2006

ミニコンポにつないでswedish.auなどをaplayしてみたが、 音声がぶちぶちなのは何がいけないのだろうか。

別にラッキーでもないが

またGoogleのてっぺんを狙って Firefox(X11; U; Linux i686; ja-JP; rv:1.7.12)のロケーションバーにURLを手打ちにしてみた。 やっぱりEUCにしないとダメだった。

というか、URLを打つ必要などなかった。 以前似たようなことを書いていたが、 検索キーワードだけ入れればそっちに飛ぶのだから。

適当に

SA対応。opieとsendmailを個別にmake installして、それからカーネルをビルド。
さて、リブートはいつするか...


2007-03-26(Mon) それぇ

ダメすいっち

SWP-0008F氏ね。
これではLANの分割はできても、ルータやプリンタなど、VLAN間で共通に使用したいモノが繋げられないじゃないか。

あれでもか、これでもかと機能てんこ盛りを謳いあげてる癖に、 マルチプルVLANできない(サポート担当者断言せり)8ポートのVLANスイッチなんて

糞だ。

trunkとbonding

実用には糞かもしれんが、玩具としてはちょっと面白げ。と ポジティブに考え直す。
一台のホストの複数のイーサネットインターフェースを 同じスイッチに繋いで使えるか試すことにする。

linux-net.osdlのサイトも見たが、 カーネルソースのDocumentation/networking/bonding.txtと大体 同じみたい。
例によってPlamo-4.21。kernelは2.6.20とか21とか。

まずカーネル再構築。CONFIG_BONDING=m にする。 次いでifenslaveコマンド((8)といったところか)をビルド。
これはカーネルソースに同梱されている。

# cd Documentation/networking/
# gcc -Wall -Wstrict-prototypes -O \
            -I/usr/src/linux/include \
            ifenslave.c -o ifenslave
# cp ifenslave /usr/sbin

modprobe bonding とかすると、bond0ができた。このとき dmesgにこんなの。

$ dmesg | tail 
(ry
bonding: Warning: either miimon or arp_interval and \
arp_ip_target module parameters must be specified, \
otherwise bonding will not detect link failures! \
see bonding.txt for details.

なんか細かい設定が載っているようだけど、 めんどくさいので、凝ったことはやらない。
eth1とeth2(どっちも蟹だ)をまとめることにする

# ip link set eth1  up
# ip link set eth2  up
# ip link set bond0 up
# ifenslave -f bond0 eth1 eth2
# ip addr add IP/MASK dev bond0

bond0、eth1、eth2全部eth1と同じMACアドレスになった。

スイッチの適当なポート二つをtrunk設定して、 eth1とeth2に繋ぐ。
別のリモートホストからping してみる。反応あり。
なんか両方に飛んでるらしく、双方のLEDが同時に点滅している。
片方引っこ抜いても、ちょっと途切れるだけで、通信は続く。
tcpdump で eth1 と eth2 を別々に見て、首をひねった。 交互に反応しているように見えたが、どっちも echo replyしかキャプチャされないのだ。
bond0からはrequest/reply双方が見えるのだけど。

別の(bondingしてない)ホストからファイルを転送してみたが、 転送時間は全然変らない。orz。
で、そっちもbondingしてみる。とはいえ、あまり似たNICも ないので、内蔵のBroadcom4400とPCMCIAのRealtekRTL8139。
...でも、やっぱり、転送速度は 変らない。

orz.


2008-03-26(Wed) 曇りがち

firefox-2.0.0.13

また自動更新。

vim文字化け

こないだまでできていたはずの日記更新ができなくなった。
puttyからeuc-jpな端末を通してw3mにvimで さっきの記事を書くまではいいが、再度開くと例外なく文字化け。
とりあえずは~/.vimrc をリネームすると、化けなくなった。

www.tcpdump.orgやぁい

ずっと繋がらない。ぐぐって ミラーサイト いくつか探したが、 libpcap-0.9.4とかtcpdump-3.9.4でいいのかしら。
ちなみにFreeBSDのportsに入っているtcpdumpは3.9.7(libpcapは0.9.7)だったが。

HDCN-U320

スイッチがない。
Plamoに挿すと、電源も入った。

usb 5-8: new high speed USB device using ehci_hcd \
and address 2
usb 5-8: configuration #1 chosen from 1 choice
usbcore: registered new interface driver libusual
Initializing USB Mass Storage driver...
scsi0 : SCSI emulation for USB Mass Storage devices
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
usb-storage: device found at 2
usb-storage: waiting for device to settle before scanning
scsi 0:0:0:0: Direct-Access     I-O DATA HDCN-U    \
       9.34 PQ: 0 ANSI: 0
sd 0:0:0:0: [sda] 625142448 512-byte hardware sectors (320073 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 37 00 00 08
sd 0:0:0:0: [sda] Assuming drive cache: write through
sd 0:0:0:0: [sda] 625142448 512-byte hardware sectors (320073 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 37 00 00 08
sd 0:0:0:0: [sda] Assuming drive cache: write through
 sda: sda1
sd 0:0:0:0: [sda] Attached SCSI disk
usb-storage: device scan complete

ついでにFreeBSD-6.3。

umass0: I-O DATA HDCN-U, rev 2.00/9.34, addr 3
da0 at umass-sim0 bus 0 target 0 lun 0
da0: <I-O DATA HDCN-U 9.34> Fixed Direct Access SCSI-0 device
da0: 1.000MB/s transfers
da0: 305245MB (625142448 512 byte sectors: 255H 63S/T 38913C)

mount -t msdosfs /dev/da0s1 /mountpoint しようとしたが失敗。
dmesgを確認すると、"Disk too big, try '-o large' mount option"。
そのとおりにしたら(しばらく待たされたが)うまくいったようだ。

それにしても、ファイルシステムはどうしようか。
流石にこのサイズでVFATはないだろうし、ext3にするとWinで書けず、 NTFSではPC-UN*Xが難だ。うーむ。


2009-03-26(Thu) はれてさむ

lfs64

ほぼ一昼夜で無事にLinux From Scratch x86_64 ができた。
まだ先にゆかねば。

sshとwgetとscreenが稼動するようになると、後は楽だ。


2013-03-26(Tue) 晴れて涼しいが、花粉はおさまらない

EmacsLispのcarとcdr合わせ技

car と cdr 一つずつの組み合わせはあるようだけど、 それ以上は、手元環境では用意されてないかも。

(cadr '((1 2 3) (4 5 6) (7 8 9)))
(4 5 6)
(cdar '((1 2 3) (4 5 6) (7 8 9)))
(2 3)
(cddr '((1 2 3) (4 5 6) (7 8 9)))
((7 8 9))
(caar '((1 2 3) (4 5 6) (7 8 9)))
1
(caddr '((1 2 3) (4 5 6) (7 8 9)))
 
Debugger entered--Lisp error: (void-function caddr)
  (caddr (quote (... ... ...)))
  eval((caddr (quote (... ... ...))))
  eval-last-sexp-1(t)
  eval-last-sexp(t)
  eval-print-last-sexp()
  call-interactively(eval-print-last-sexp nil nil)

無ければ作れ。ということか。

(defun caddr (list)
  (car (cdr (cdr list))))
caddr
 
(caddr '((1 2 3) (4 5 6) (7 8 9)))
(7 8 9)

mapcar

for x in ... みたいなものか。
foreach はあまり使ったことなかったっけ。

(defun multi (n) (* n n))
(mapcar #'multi	'(1 2 3))
(1 4 9)

mapcar #'FUNC list は、 (mapcar (function FUNC) list) になるらしい。
ついでにもう一つ。

(mapcar
  (function car)
    '((*)
      (1 2 3) (4 5 6) (7 8 9)))
(* 1 4 7)
 
(eval (mapcar
  (function car)
    '((*)
      (1 2 3) (4 5 6) (7 8 9))))
28

clisp を立ち上げるのが面倒になってきて (面倒にならないカスタマイズが、まだできない)、 昨日も今日も、専らEmacsLisp。 (Common Lisp に似てるようだし)。

やっと頭からlambda式が出た

はじめてじゃないけど。

(mapcar	#'(lambda (n) (+ n n)) '(1 2 3))
(2 4 6)

さっきのmapcarを見ているうちに、使い捨ての関数を defun するのが 面倒な場合はどうすれば。と考えていると、ひとりでに lambda が出てきた。
Emacs Lisp もすんなり eval してくれた。

おまけ。
この場合、"#'" は必須でもないらしい。mapcar はscheme なら map。


2016-03-26(Sat) 晴れるらしい

scm

こちらでは 例のコードで1712!までだった。

$ scm
SCM version 5e5, Copyright (C) 1990-2006 Free Software Foundation.
SCM comes with ABSOLUTELY NO WARRANTY; for details type `(terms)'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `(terms)' for details.
;loading /usr/share/slib/require
;done loading /usr/share/slib/require.scm
;loading /usr/share/slib/require
;done loading /usr/share/slib/require.scm
;loading /usr/lib/scm/Link
;done loading /usr/lib/scm/Link.scm
;loading /usr/lib/scm/Transcen
;done loading /usr/lib/scm/Transcen.scm
 
> (myfact 1713)
 
;ERROR: "/usr/lib/scm/Iedline.scm": bignum: numerical overflow; \
NUMDIGS_MAX < 1000
; in expression: (#@* #@n (#@myfact (#@- #@n 1)))
; in scope:
;   (n)  procedure myfact
;STACK TRACE
1; (#@myfact 1713)

letsencrypt 鍵更新

既に作り捨てたサーバの鍵が失効するとかしたとかのメールが いくつか届いていた。

letsencrypt$ ./letsencrypt-auto renew --force-renew
Checking for new version...
Requesting root privileges to run letsencrypt...
   sudo /home/$USER/.local/share/letsencrypt/bin/letsencrypt \
  renew --force-renew
[sudo] password for $USER: 
Processing /etc/letsencrypt/renewal/$HOST.$DOMAIN.conf
new certificate deployed without reload, \
 fullchain is /etc/letsencrypt/live/$HOST.$DOMAIN/fullchain.pem
 
Congratulations, all renewals succeeded. \
 The following certs have been renewed:
  /etc/letsencrypt/live/$HOST.$DOMAIN/fullchain.pem (success)

その結果、

$ sudo ls -l /etc/letsencrypt/live/$HOST.$DOMAIN/
合計 0
lrwxrwxrwx 1 root root 41  3月 27 21:57 cert.pem -> \
   ../../archive/$HOST.$DOMAIN/cert2.pem
lrwxrwxrwx 1 root root 42  3月 27 21:57 chain.pem -> \
   ../../archive/$HOST.$DOMAIN/chain2.pem
lrwxrwxrwx 1 root root 46  3月 27 21:57 fullchain.pem -> \
   ../../archive/$HOST.$DOMAIN/fullchain2.pem
lrwxrwxrwx 1 root root 44  3月 27 21:57 privkey.pem -> \
   ../../archive/$HOST.$DOMAIN/privkey2.pem
 
$ sudo ls -l /etc/letsencrypt/archive/$HOST.$DOMAIN/
合計 32
-rw-r--r-- 1 root root 1801  3月  7 17:31 cert1.pem
-rw-r--r-- 1 root root 1801  3月 27 21:57 cert2.pem
-rw-r--r-- 1 root root 1675  3月  7 17:31 chain1.pem
-rw-r--r-- 1 root root 1647  3月 27 21:57 chain2.pem
-rw-r--r-- 1 root root 3476  3月  7 17:31 fullchain1.pem
-rw-r--r-- 1 root root 3448  3月 27 21:57 fullchain2.pem
-rw-r--r-- 1 root root 1708  3月  7 17:31 privkey1.pem
-rw-r--r-- 1 root root 1704  3月 27 21:57 privkey2.pem

liveディレクトリの下がシンボリックリンクになっている、 のは、更新を考慮してのことか。
とはいうものの、新しい証明書が有効かどうか、実は まだ確認してなかったり。


2018-03-26(Mon) よく晴れて日陰はかなり涼しい、くらいに

resize.f2fs(8)

Ubuntu xenialのf2fs-tools(1.6.1-1)にはresize.f2fsは入ってなかった。
Upstreamに入ったより前の リリースに基づいた パッケージだから仕方がない。

$ dpkg -L f2fs-tools | grep bin
/sbin
/sbin/f2fstat
/sbin/parse.f2fs
/sbin/fsck.f2fs
/sbin/fibmap.f2fs
/sbin/mkfs.f2fs
/sbin/defrag.f2fs
/sbin/dump.f2fs

Debian buster (1.10-0-1)にはあったので、試す。
例のf2fs化したraspbianのイメージをMicroSDに書き込んで、 fdisk で/dev/sdb2を消し、再度/dev/sdb2領域設定。

このとき、"Do you want to remove the signature?" と聞いてくるので Yesを選択する。しないと次ができなかった。

そして、resize.f2fs /dev/sdb2する。
すると このように

起動させて、問題なく動くことを確認。
resize_e2fs_once.serviceとかを止める(必要ないから)。
しかし調子に乗ってtestingにしたらdist-upgradeに失敗。再度 書き直す。


リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。

index.htmlは ここから。