正規表現生成・テストGUIツール KregExpEditor
便利な正規表現ですが、サクサクッと正規表現のテストや生成をしたい場面や、人の書いた正規表現を読むのが非常に辛いといった場面にしばしば遭遇します。
そのような時に便利なツールがこれ「KregExpEditor」。
Xデスクトップ環境であるKDEに付随するツールです。
ウィンドウ上部のツールバーより、テキストだとか範囲指定文字だとかを選択し、詳細なプロパティを設定することで正規表現の関係図と正規表現文字列(画面下部)が生成されます。関係図の下のテキストエリアに適当に文字列を入力することでその場で正規表現の動作テストが行えます。
正規表現文字列は直接編集することもできるので、他人が書いた読めない正規表現をここに張りつけてみると理解の手助けになるかもしれませんね。
画面内の正規表現の内容は、ドットから始まり1(または001)から255までの数値、という内容です。.999でのテストは.99までしか反応していないのが分かるかと思います。
RAID1+0(RAID10) と RAID0+1(RAID01)の説明と両者の違い
おさらい
まずはRAID1+0, RAID0+1のおさらいです。
RAID 0とRAID 1を組み合わせてパフォーマンスと安全性を同時に向上させます。仮に、どれか一台のディスクが故障しても、データは問題無く読み出せます。これにより、データの安全性はとても高くなり、しかも、RAID 0の高速性も兼ね備えます。 RAID 1+0(0+1)は、4台以上のディスクがあれば実現できます。(最大ディスク数は、RAIDコントローラによって変わってきます。)だた、4台のディスクを使用しても、実際の容量は半分の2台分になってしまいます。 RAID 1+0は、データ消失が許されず、かつ、パフォーマンスもある程度必要なシステムなどに使われています。RAID 1+0とRAID 0+1の違いは、パフォーマンスは理論上それほど差がつかないはずです。ただし、耐障害性の面では理論上RAID 1+0はRAID 0+1よりも高くなります。
RAID1+0の方が耐障害性が高くなる理由
FireFox版Yahoo!ツールバー
FireFox版Yahoo!ツールバーが公開されました。
IE時代実は結構愛用していたので嬉しいです。
http://toolbar.yahoo.co.jp/
ヤフーの各サービス、特にメール・カレンダー・ブックマーク・路線・地図などに1クリックでアクセスできるのはやっぱり便利です。
portsツリーをアップデートする
FreeBSDのローカルportsツリーをアップデートする手順です。
まずはcvsup(GUIなし)をインストールします。
今回はFreeBSD-6用のパッケージを利用しています。
次にcsvupの設定ファイルをコピーします。
# pkg_add ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-6-stable/All/cvsup-without-gui-16.1h_2.tbz
設定ファイルを編集する。編集する箇所はhost名。同期するノードを限定したい場合は、ports-allをコメントアウトし同期するノードをコメントインする。
# mkdir /usr/local/etc/cvsup
# cp /usr/share/examples/cvsup/ports-supfile /usr/local/etc/cvsup/
cvsupを実行する。
# vi /usr/local/etc/cvsup/ports-supfile
-------------------------------------
*default host=cvsup.jp.freebsd.org ← ここ
*default base=/usr
*default prefix=/usr
*default release=cvs tag=.
*default delete use-rel-suffix
*default compressports-all ← ノードを限定する場合はここをコメントして、
…
…
#ports-base ← この辺とかをコメントインする
#ports-accessibility
#ports-arabic
-------------------------------------
夜中に自動的に実行されるようにcronに仕込むのもアリです。
# /usr/local/bin/cvsup -g -L 2 /usr/local/etc/cvsup/ports-supfile
FreeBSD-6.1でUSB Mass Storage Deviceを使ってみる(今回はminiSD)
FreeBSD-6.1RELEASEのカーネルはデフォルトでUSB Mass Storage Deviceに対応していました。
具体的にはこのあたり。
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
# SCSI peripherals
device scbus # SCSI bus (required)
device da # Direct Access (disks)
device pass # Passthrough device (direct SCSI access)
# USB support
device uhci # UHCI PCI->USB interface
device ohci # OHCI PCI->USB interface
device usb # USB Bus (required)
device ugen # Generic
device uhid # "Human Interface Devices"
device umass # Disks/Mass storage - Requires scbus and da
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
なので、カーネル再構築等は必要ないです。
次にデバイス名を特定します。
しながら、USBデバイスを指してみます。すると、
$ tail -f /var/log/messages
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Oct 1 01:11:16 freebsd kernel: umass0: Alcor Micro Mass Storage Device, rev 1.10/1.00, addr 2
Oct 1 01:11:16 freebsd kernel: umass0: Get Max Lun not supported (STALLED)
Oct 1 01:11:16 freebsd kernel: da0 at umass-sim0 bus 0 target 0 lun 0
Oct 1 01:11:16 freebsd kernel: da0:
Oct 1 01:11:16 freebsd kernel: da0: 1.000MB/s transfers
Oct 1 01:11:16 freebsd kernel: da0: 122MB (250880 512 byte sectors: 64H 32S/T 122C)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
また、USBデバイスの状況も見てみます。
$ usbdevs -v
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
addr 1: UHCI root hub, Intel
addr 2: USB WLAN Device, Atheros Communications Inc
addr 3: Basic Optical Mouse, Microsoft
addr 1: UHCI root hub, Intel
addr 2: Mass Storage Device, Alcor Micro
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
$ camcontrol devlist -v
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
scbus0 on umass-sim0 bus 0:
scbus-1 on xpt0 bus 0:< > at scbus-1 target -1 lun -1 (xpt0)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
と表示されるのでda0とわかりました。
詳しくは分かりませんが、SCSIのDirect Access(disks)に割り当てられるんですかね?
後はmountして似るなり焼くなり。
mount_msdosfs /dev/da0s1 /miniSD
FreeBSD-6.1でXDMやKDMでグラフィカルログインする。
XDMやKDMはインストール済みの仮定で進めます。
ちなみに、ログインだけでなくシャットダウンなど細かいことができるKDMのほうがXDMよりオススメです。
まずはttysの編集です。
# vi /etc/ttys
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
ttyv8 "/usr/X11R6/bin/xdm -nodaemon" xterm off secure
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
の部分を
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
ttyv8 "/usr/X11R6/bin/xdm -nodaemon" xterm on secure
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
offをonにします。
KDMにしたい場合は、
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
ttyv8 "/usr/local/bin/kdm -nodaemon" xterm on secure
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
とします。
次にXDM、あるいはKDMの設定です。
先ずはXDMから。
xdm-configとXaccessを編集します。
# vi /usr/X11R6/lib/X11/xdm/xdm-config
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
DisplayManager.requestPort: 177
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
最終行のポート番号を0から177に変更する。
次にXaccess。
# vi /etc/X11/xdm/Xaccess
49行目あたり。
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
* #any host can get a login window
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
この行の先頭の「#」を削除し、コメントアウトから復帰させます。
次にKDMの場合。
kdmrcの編集です。
# vi /usr/local/share/config/kdm/kdmrc
113行目あたりの[Xdmcp]セクション
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Enable=false
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
を
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Enable=true
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
とします。
そしてもう1つ、XDMの場合と同じく、KDE用のXaccessです。
これは編集する必要がない場合もあります(私もそうでした)。
# vi /usr/local/share/config/kdm/Xaccess
38行目あたり
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
* #any host can get a login window
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
この行の先頭の「#」を削除し、コメントアウトから復帰させます。
以上で設定は終わりです。
自分の場合はここでサーバーを再起動しました。
もしくは
でttysを読み込みなおさせてもOKっぽいです。
# kill -HUP 1
では次にWindowsマシンから接続して正しく動作するか確認してみます。
Windows上で動かすXサーバーはXmingを用いています。
XLaunchを起動
↓
Select Display Setting は[Multiple windows]以外で。
↓
Select how to start xming は [Open session via XDMCP]で。
↓
Configure a remote XDMCP connection で接続先サーバーを入力します。
↓
Xサーバーが立ち上がりグラフィカルログイン画面が表示されるはずです。
おー、やっぱりカッコイイですね!
ちなみに、puttyやtera termなどでのCLIログインも問題なく動作しました。