僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。
emacs-lispの本をつついたり、ぐぐったり。する。 キーバインドはM-x describe-key で。 load-pathを表示するには load-path と打って、 M-x eval-print-last-sexp(デフォでC-j)。
.emacs も適当に。(load "cl")とか、M-x load-file $PATH/cl.el とかで cl.el(c)を明示的に(?)ロードさせないと sumibiがうまく動作しないことに気づく。
KNOPPIXのターミナルサーバもう少し。
↓のようなネットワークを組む。
Client1 をRouterのLANに繋ぐのは、KNOPPIXが
起動しきってから。というのも起動中に
サーバ側のNICがeth1になった状態で、先にeth0の彼方に
向けて DHCP Discover してしまう(RouterがDHCPサーバになっている)。
その結果、Router側だけに繋がって、TerminalServerにnfs
できなくなった。
Terminal Server | |---------- | | Client1 Client2 | | | Router | | The Net
netstat や route でちょっと。
Client1をIP forward、そしてIP MASQUERADEする。しかしなぜかClient2では
名前解決ができなかった。
外部のDNSサーバは見えるし、そちらを指定したクエリも
ちゃんと帰ってくるが、/etc/resolv.conf
(ファイル名間違えた?)
に何を書いてもうまくいかない。
グローバルIPアドレス直打ちで自サイトは見えたけど。
$ uuencode $FILE $FILE | mail -s $TITLE $TO
したものをmewで受信して、
$ uudecode $MH_FILE
すると、
あっさり元通りになった。
パーミッションを含めてだ。
ひと昔は当り前だったに違いないが
(というか、ちゃんとmanに載っていた)、
MTAのない環境が当り前だった立場には
ちょっぴり新鮮。
流石にタイムスタンプまでは保存してくれないが。
ファイル名を2回打つのが面倒なら
$ cat $FILE | uuencode - すればよい。
他のMUAでの追試はまたにしよう。
$ dd if=/dev/urandom \ of=random.img \ bs=1MB \ count=1 $ uuencode random.img random.img \ > encode.txt $ uuencode -m random.img random.img \ > base64.txt $ ls -l rand.img encode.txt base64.txt -rw-r--r-- 1 $USER $GROUP 1421437 Apr 4 22:59 base64.txt -rw-r--r-- 1 $USER $GROUP 1444733 Apr 4 22:59 encode.txt -rw-r--r-- 1 $USER $GROUP 1048576 Apr 4 22:58 rand.img
SSD/Linuxいじる。
ログインユーザは、vipw(8)で作ってもダメ。useradd(8)
でモゲモゲしないと、passwd USER でひっかかる。
sshdはあったけど、ホストキーがない。
以前のメモを探し出してホストキーを作成。ほんがほんが。
これでようやくputtyから入れるようになった。
makeだかgmakeだか、はてさてbmakeだかが見つからない。
全部をインストールするよう設定したはずなんだけど、
(g)ccも入ってないみたい。
インストーラが
タコなのか、それとも$PATHに入ってないのか。
viはnviでもvimでもないらしい。
立ち上げて :set version と打つと、
"Version 4.0 (gritter) 3/25/05" と出た。
ls(1)など基本コマンドはGNU coreutils 6.7である。
(none)[50]# uname -a Linux (none) 2.6.16 #1 SMP Thu Mar 15 18:30:30 JST 2007\ i686 SSD/Linux 0.4-20070315 (none)[51]# echo $PS1 \h[\!]\$
昨日、2時間ほど立ち読みした
入門書を買った。
慣れるために色々。
$ python Python 2.6 (r26:66714, Oct 21 2008, 21:35:51) [GCC 4.2.4] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> 1 + 1 2 >>> 1.2 + 1 2.2000000000000002 >>> 1.23 + 1 2.23 >>> 1.234 + 1 2.234 >>> 1.2345 + 1 2.2344999999999997 >>> print 1.2 + 1 2.2 >>> print 1.23 + 1 2.23 >>> print 1.234 + 1 2.234 >>> print 1.2345 + 1 2.2345 >>> quit()
できたのは昨日(数分前)だったが、submitした途端 滅茶滅茶になったので、一日ずらして書き直す。
以前、
配列を使ったことがあったが、循環リストなら折り返す
処理が要らなくなると踏んで試す。
循環リストの作り方が間違っていたことと、
改行の処理に迷ったところが嵌りどころだった。
#!/usr/bin/env clisp (defparameter *print-circle* t) (setf fzlist '("fizzbuzz" 1 1 "fizz" 1 "buzz" "fizz" 1 1 "fizz" "buzz" 1 "fizz" 1 1 1)) (setf (cdr (cdr (cdr (cdr (cdr (cdr (cdr (cdr (cdr (cdr (cdr (cdr (cdr (cdr (cdr fzlist) )))))))))))))) fzlist) (defun myfb (mylist num) (cond ((< num 0) nil) ((zerop num) (car mylist)) (t (myfb (cdr mylist) (- num 1))))) (defun fb (newlist first last) (cond ((> first last) nil) ((eq (myfb fzlist first) 1) (princ first) (princ '#\newline) (fb newlist (+ 1 first) last)) (t (princ (myfb fzlist first)) (princ '#\newline) (fb newlist (+ 1 first) last)))) (fb fzlist 1 100)
例のスクリプトでFreeBSD は落ちなくなったようだ。
$ uname -a FreeBSD raspberry-pi 11.0-CURRENT FreeBSD 11.0-CURRENT \ #25 r264093: Fri Apr 4 10:11:21 JST 2014 root@$HOST:/src/FreeBSD/obj/arm.armv6/usr/src/head/sys/RPI-B arm $ vmstat procs memory page disk faults cpu r b w avm fre flt re pi po fr sr mm0 in sy cs us sy id 1 1 0 268M 83M 1042 0 6 0 627 2 0 1742 781 3619 9 23 68
Type A ではキーボードを認識しなかった。
USB Ethernet は使えた。
ただし毎回、確実に起動すると言えないのは 以前と変りなかった。
リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。