spl/zfs-0.6.1 ZFS on Linux がついに Stable になった模様

ZFS on Linux がついに Stable になった模様。祝。
http://zfsonlinux.org/

http://archive.zfsonlinux.org/downloads/zfsonlinux/spl/spl-0.6.1.tar.gz
http://archive.zfsonlinux.org/downloads/zfsonlinux/zfs/zfs-0.6.1.tar.gz

Debian, Fedora, and RHEL/CentOS用のリポジトリが公開されたのでURLを転記。

Debian: Add to /etc/apt/sources.list
deb http://archive.zfsonlinux.org/debian wheezy main
deb-src deb http://archive.zfsonlinux.org/debian wheezy main

Fedora: See http://zfsonlinux.org/fedora for directions.
rpm http://archive.zfsonlinux.org/fedora/$releasever/$basearch
srpm http://archive.zfsonlinux.org/fedora/$releasever/SRPMS

RHEL/CentOS: See http://zfsonlinux.org/epel for directions.
rpm http://archive.zfsonlinux.org/epel/$releasever/$basearch
spms http://archive.zfsonlinux.org/epel/$releasever/SRPMS

WindowsなしでDOS起動USBメモリをつくる

LinuxとかしかないときのBIOSアップデートとかに使うDOS起動USBメモリの作り方。

ここからFreeDOS-1.1-USB-Boot.img.bz2をダウンロードして解凍しておく。

中身が消えてもいいUSBメモリを差し込む。
dmsgなんかをみてデバイス名を確認する。(/dev/~なんちゃら)
おもむろにddでイメージを書き込む
# dd if=FreeDOS-1.1-USB-Boot.img of=/dev/~

USBメモリをアンマウントして引っこ抜いて、一呼吸おいてもう一回差し込んでマウントする
書き込むBIOSファイルをUSBメモリに展開

でうまくいくはず。

Ubuntu 12.04 LTS Precise Pangolin で Dtrace for Linux

ZFS on Linuxのついでに、Solarisで使えるDtraceをUbuntu 12.04で使えるようにする手順です。
ZFS and DTrace running on Ubuntu Linuxの手順に沿ってインストールします。

Step1:準備

試したバージョン・いるもの

  • Ubuntu Desktop 12.04 64bit版をインストールした環境
  • gitがインストールされて無い場合は事前にインストール

素のままだとbuild-essensial,zlib1g-dev,bison,libc6-dev,libelf-dev,libdwaf-devあたりもインストールしておく必要があります

Step2:インストール

gitで使うディレクトリを作成し、cdで移動してgit cloneでdtrace4linuxのソースをいただいてきます。

$ git clone git://github.com/ShepBook/dtrace-for-linux.git

(gitの9416/tcpを通さない社内学内のproxy越えは”git clone http://github.com/ShepBook/dtrace-for-linux.git”とするといいかも)

出来てるdtrace-for-linuxのディレクトリに移動してmake allでビルドします。

$ cd dtrace-for-linux
$ sudo make all

エラーなく終了したらmake installでインストールします。Solarisと同じに/usr/sbin/dtraceにインストールされます。

$ sudo make install

DTrace の kernel module を make load で反映します。

$ sudo make load

これでインストール完了です。

Step3:お試し

とりあえず試しに…といった場合は

BEGIN {
trace("Hello, world!!!");
exit(0);
}

をhello.dに保存して、

$ sudo dtrace -s hello.d

すると、以下の感じに結果が表示されると思います。

dtrace: script 'hello.d' matched 1 probe
CPU     ID                    FUNCTION:NAME
  1      1                           :BEGIN   Hello, world!!!

あとは、Dtraceについて検索して出てきたページを参考にどうぞー。
そもそもLinuxでDtrace?だからなに?って感じですが、いいんです。いえあ!

SolarisのFTPサーバでファイルの一覧が取得できない件

タイトルが変だけど、遭遇した人にはわかるはず。
クライアント側でファイル名の一覧が取得できなかったり、タイムスタンプが化けたりといった件。
例によって、毎回はまるのでメモ。

LANG環境がUTF-8で、UTF-8に対応していないツールではファイル名が表示されないらしい。
FTP環境のLANG設定をrootで以下のコマンドにより変更すると解消する。

# svccfg -s ftp setenv LANG C

以下のコマンドでja_JP.UTF-8の元の環境に戻る。

# svccfg -s ftp unsetenv LANG

Solaris9とかの場合は/etc/inetd.confのftpの行を書き換えるといいらしい
http://kb2.adobe.com/jp/cps/228/228596.html
before)ftp stream tcp nowait root /usr/sbin/in.ftpd

after)ftp stream tcp nowait root /usr/bin/env env LANG=C /usr/sbin/in.ftpd
ファイルを保存し、inetd に HUP シグナルを送る( >kill -HUP ##(inetd のプロセス番号)、もしくはマシンを再起動させ、設定を適用。

Oracle Solaris 11 で固定IP(静的/static)の設定にはまった件

Solaris11がリリースされたのでダウンロードしてインストールして、Expressのときと同じようにstaticにIPアドレスを設定しようとしたらはまったのでメモ。

Oracleの掲示板を見ながら作業した。

Solaris11 Expressの場合は、svcadmコマンドで

# svcadm disable svc:/network/physical:nwam
# svcadm enable svc:/network/physical:default

して、ipadmや以前と同じように設定出来たのだが、Solaris11の場合はDHCPが無効にならない…さらにnetadmコマンドでnwamは使わないと設定しないとダメ。
manual[fixed](static)とautomatic[reactive](DHCP)の2つのモードで設定する。

なので以下のようにmanualモードにすると、固定IPで設定が可能となる。

# netadm enable -p ncp DefaultFixed
Enabling ncp DefaultFixed

DHCPに戻したい場合は以下のコマンドで、

# netadm enable -p ncp Automatic

あとやったこと。
論理インターフェースの再生成と、確認。

# ipdam delete-ip net0
# ipadm create-ip net0
# dladm show-link
LINK CLASS MTU STATE OVER
net0 phys 1500 up –
# dladm show-phys
LINK MEDIA STATE SPEED DUPLEX DEVICE
net0 Ethernet up 1000 full e1000g0

固定IPの設定

# ipadm create-addr -T static -a 192.168.0.XXX/24 net0/v4wire

設定の確認

# ipadm show-addr
ADDROBJ TYPE STATE ADDR
lo0/v4 static ok 127.0.0.1/8
net0/v4wire static ok 192.168.0.XXX/24
lo0/v6 static ok ::1/128

デフォゲの設定

# route -p add default 192.168.0.XXX
add net default: gateway 192.168.0.XXX
add persistent net default: gateway 192.168.0.XXX

pingとかで確認してちゃんと通ればOK。

あとは、/etc/nsswitch.dnsを/etc/nsswitch.confにコピーとか、/etc/resolv.confにDNSの設定とか。

NetraT1がCDブートしない

やるたびに忘れるのでメモ。

Fast Data Access MMU Missというエラーが出てNetraが起動しない場合の対処方法

lom> boot forth
lom> poweron
ok boot cdrom
Fast Data Access MMU Miss
ok setenv auto-boot? false
ok reset
ok boot cdrom

NetraT1がオートブートする

やるたびに忘れるのでメモ。
SUN Netra T1のディスクを完全消去して捨てるお仕事。

okプロンプトを出さずに勝手に起動してしまう場合は、ブレークキーを押しながら起動する。
TeraTermの場合は「Alt+B」を押し続ける。またはokプロンプトが出ている状態で次のようにする。

ok setenv auto-boot? false
ok boot cdrom

Solaris 11 Express で rpool をミラー構成にする

GUIインストール時はディスクの構成をあれこれいじることができない。シングル構成だったディフォルトのストレージプールの rpool をミラー構成にした時のメモ。

c8t0d0s0 に c8t1d0s0 のディスクをミラーする。フォーマットして zpool attach で。

# zpool attach rpool c8t0d0s0 c8t1d0s0

うまくいかなかった…
追加するディスクのスライスが一緒じゃないとダメみたい。次のようにして同じ状態にする。

# prtvtoc /dev/rdsk/c8t0d0s0 | fmthard -s - /dev/rdsk/c8t1d0s0

prtvtoc は引数で指定されたディスクのジオメトリとパーティション情報を出力します。fmthard はその情報でディスクの VTOC と呼ばれる管理領域に書き込みます。パイプで繋げて一つ目のディスクから出力される情報を追加するディスクに書き込みます。

あたらめて zpool attach します。

# zpool attach -f rpool c8t0d0s0 c8t1d0s0 

出来た!\(^o^)/

最後にgrubをインストールしときます。

# installgrub /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c8t1d0s0

で、zpool status rpool すると同期の状態がわかります。