僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。
の例会&&新年会に参加。NetBSDでまた遊びたくなって来た。 そしてNTEmacsもなかなか弄り甲斐がありそうだ。 lilypondとかいうPDFとMIDIのソフトの話(次回予定)もあった。 マシンを貸そうか。で、用意はいかに。
新年会の帰途、話に夢中になったためか確認もせず降りた駅が 目指していた京橋でなく枚方市であった事に気づくまでずいぶん 掛かった。駅構内を歩き、改札を抜け、階段を降り、駅前の通り を歩いて駅名表示を見て、ようやく何かを取り戻す。
講演の席上でFDClone-2.08をmake。
零時過ぎに帰ってから旧バージョンをremovepkgし、make install。
また古く新しい世界が見えて来るかもしれない。
MacOSX+ターミナル+vim6.2は、非常に書きにくい。結局
PlamoLinux上のnviで書き直す。
時々文字が化けて、直らない。Ctrl+Lすると画面が下駄だらけ
になった。また、語句の挿入もうまく処理できないっぽい。
まあ書き込みは正常だからいいか。と思ったが、正常でなかった。
vimもターミナルもeuc-jpにしたが、MacOSXでは未来がないようだ。
昨日聞いた話(Mac上でqemuによりNetBSD-macppcが起動できないらしい)
を聞いて試してみた。
NetBSD-macppc3.0をBittorrentで落し、QemuX-0.15bata
で起動させようとして失敗。
ddでディスクもどきを作り、 QemuXのMenuを色々いじってみたが、
どうしても起動できなかった。
CDROM boot failure code : 0004 Boot from CD-Rom failed FATAL: Could not read the boot disk
LJ700についてたDVD-ROM(PanasonicのOEM)は、KNOPPIX5.x(を
もとにしたシステム)が起動しない。
KNOPPIX5.1.1日本語版も、例外ではなかった。
IOdataのDVRP-UN8L(NECのND-7551A)では動くけど。
で、この組み合わせでdesktop=berylしてみる。
一応、動くことは動く。
流石にPentiumM 1GHz + 256MB + Redion Mobility 7500
では少々きついようだった。デスクトップの
切り替わりが少々もたつく。
Plamo-4.21だけでなく、(これもできていた筈の)
KNOPPIX4.0.2(のカスタマイズ版)もやはりダメ。pppは16を返す。
WinXPでは繋がったので、Willcomのせいじゃない(筈である)。
次の手は如何に。
特定のNICに複数のIPを割り当てたことが なかった(筈である。が、忘れただけかも)。
ちょっとやってちょっと動いたに留まる。
DHCPでは無理っぽい(代替の構成は、複数IPの共用はできないみたい)。
イーサネットインターフェースの場合は設定して「OK」をクリックすればOKだったが、
IEEE1394で同様に設定すると、
再起動を要求された。
一度に三つのIPを追記したのが祟ったかもしれず。
Windowsでは、一つのNICで複数のNetに同時に接続している状態を、 「論理的にマルチホーム」、複数のNICで複数のNetに繋がってる状態を 「物理的にマルチホーム」と呼ぶ らしい。
lennyに入れたVirtualBox-OSEでは、 は、ブリッジのネットワークインターフェース 名は"vbox[0-9][0-9]*"に限られているらしい。
とはいえ、仮想マシンが増えてくると、管理が
面倒になってくる。せめて仮想マシンの種別で
NIC名も区別したいものだ。
起動時にVBoxTunctlに渡す引数は、/etc/vbox/interfaces
に記述するらしい。
$ head -n4 /etc/vbox/interfaces # Linux static host networking interface configureation # # <interface> <user> <bridge> # vbox0 guest br0
でも適当なデバイス名(winxp0とか)を追記してみたが、 それだけが起動時には有効にならなかった。
/etcの下を適当にgrepしているうちに、/etc/init.d/virtualbox-ose に気づく。
$ cat -n /etc/init.d/virtualbox-ose
(ry
126 valid_ifname() {
127 if expr match "$1" "vbox[0-9][0-9]*$" > /dev/null 2>&1
128 then
129 return 0
130 else
131 return 1
132 fi
133 }
(ry
127行目を、s/vbox/.*/ してやると、デバイス名はかなり自由になった。
念のため仮想マシンに当ててみたが、一応普通に動いているようだ。
VPNソフトをいくつか使用してネットワークに消せないアイコンが残ったので、
このあたりで奇麗にする。リカバリディスクを入れて再起動し、
Windowsの再インストールを選択。
リカバリディスクは、MBRを上書きしなかった。手間が大いに省けた。
初めてだ。
G54のPPTPサーバを設定すると、割と簡単にLAN間接続ができた。
PPTPクライアントを、AirHとPocketRouterのPlamo-4.22 で繋ぐ。
%USERPROFILE%> tracert -d $REMOTE_PC Traceing route to $REMOTE_PC ver a maximum of 30 1 340 ms 303 ms 310 ms $LOCAL_ROUTER 2 324 ms 307 ms 307 ms $REMOTE_PC Trace complete. %USERPROFILE%>
PPTPサーバも、Internetの途中のルータも何も見えない。
これがLayer2 VPNたる所以だろうか。
個別のPCは見えるが、ワークグループのブラウジングはできなかった。
今度は
WindowsXPマシンをPPTPサーバにしてみる。マシンは
Lenny の VirtualBoxの中。
NATルータの設定を変えて、1723/TCP と
プロトコル番号47を
WinXPマシンに向ける。
クライアント側のLANは先ほどと同様。
一昨日まで、書き換えたスクリプトで失敗を繰り返したが、 昨日は一応うまくいった。ので、さらに増長。
バイナリイメージを、SDカードサイズぴったりにしてみた。
bsd-pi.img のファイルサイズを、手元のSDカード(8GB)と
同じ(この場合、fdisk -l によると7948206080 バイト)にする。
ビルドするFreeBSD 10.00 と、仮想のホストのどちらのせいか
大量のデータをディスクに書き込むと、あまり安定しないようだ。
データ量を制約したり、スーパーユーザによるdd(1)などの
使用を控えたり、nice の下で動作させたりする。
はみ出したら truncate で縮める。
factor(6)で 以前試した例題。
$ time /usr/games/factor 4611686018427387903 4611686018427387903: 3 2147483647 715827883 13.90 real 13.26 user 0.03 sys
ちょっと微妙。
当然といえば当然なのだろうけど。
脆弱性対応確認。
$ ldd /bin/true linux-vdso.so.1 => (0x00007fff74db7000) libc.so.6 => \ /lib/x86_64-linux-gnu/libc.so.6 (0x00007f5fdcd56000) /lib64/ld-linux-x86-64.so.2 (0x00007f5fdd0ee000) $ ls -l /lib/x86_64-linux-gnu/libc.so.6 lrwxrwxrwx 1 root root 12 1月 27 09:25 \ /lib/x86_64-linux-gnu/libc.so.6 -> libc-2.13.so $ ls -l /lib/x86_64-linux-gnu/libc-2.13.so -rwxr-xr-x 1 root root 1603600 1月 27 09:25 \ /lib/x86_64-linux-gnu/libc-2.13.so $ file /lib/x86_64-linux-gnu/libc-2.13.so /lib/x86_64-linux-gnu/libc-2.13.so: \ ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), \ dynamically linked (uses shared libs), \ BuildID[sha1]=0xf6ad460540e2095396694c47abfe546be9fe4956, \ for GNU/Linux 2.6.26, stripped $ /lib/x86_64-linux-gnu/libc-2.13.so GNU C Library (Debian EGLIBC 2.13-38+deb7u7) stable \ release version 2.13, by Roland McGrath et al. Copyright (C) 2011 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Compiled by GNU CC version 4.4.7. Compiled on a Linux 3.2.65 system on 2015-01-26. Available extensions: crypt add-on version 2.1 by Michael Glad and others GNU Libidn by Simon Josefsson Native POSIX Threads Library by Ulrich Drepper et al BIND-8.2.3-T5B libc ABIs: UNIQUE IFUNC For bug reporting instructions, please see: <http://www.debian.org/Bugs/>.
FreeBSD 11-CURRENT r277866。
[$USER@$HOST /usr/src/usr.bin/true]$ wc -l true.c 46 true.c [$USER@$HOST /usr/src/usr.bin/false]$ wc -l false.c 46 false.c
30行ほどは著作権表示、10行ほどが内部への著作権情報 埋め込み、肝心の処理は5行ほど。
int main(void) { return 0; /* false(1)なら1 */ }
GNU Coreutils-8.23の場合、
$ wc -l true.c false.c 80 true.c 2 false.c 82 合計
true.c は15行ほどのライセンス表示に
Usageに18行ほど、残りが実際の処理部分。
実のところ、どこがどうなってるのか、
あまりよくわからなかったり。
false.c は
$ cat false.c #define EXIT_STATUS EXIT_FAILURE #include "true.c"
例によって難バカ。
gcc に文句を言われる関数を一つ(2ヶ所)ようやく
削除。
ついでに入出力するファイルの長さをUnixに合わせる(255バイト)。
gets(3)からfgets(3)への書き換えについて
参考になったサイト。
もっともgcc -Wall やられると、まだまだ エラーでまくりだったりする。
main()の頭にint をつけ、それから
get_opt1()にreturn 0 を加えた。
最初と最後のエラーだけは出なくなった。
Debianがほぼ全自動なら、こちらは半自動といった感じ。
インストールガイドなどを
読みながら、起動、grubのインストール、
xorg まとめて放り込み、lightdmとLXDE、
日本語フォントなど。
fcitxの自動起動はどうするんだっけ、あたりまで。
リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。