$BM%2m$J@83h$N@_7W$H

The Design and Implementation of the Gracious Days


LAST MODIFIED: 2011/09/28 15:20:49 UTC

$B?7$7$$Ca=x$N3NN)$O!"B>$N2?$K$bA}$7$FFq$7$/!"(B
mail protected]$9$k2DG=@-$,Dc$/!"4m81$J;v6H$G$"$k!#(B
$B2~3W $BA4$F$N $B?7Ca=x$+$iMx1W$r $B5Z$S9x$N;Y;}$7$+=8$a$i$l$J$$!#(B
--- Niccolo Machiavelli, The Prince

$B$3$N $B=ON}%f!<%6$r5gCO$KDI$$9~$`$3$H$K$J$k!#(B
$B$H$$$&$N$O!"2?$,?F@Z$G$"$j!"2?$,E,@Z$G$J$$$+$+$H$$$&(B
$B%*%Z%l!<%F%#%s%0%7%9%F%`$N9M$(J}$NN"$r$+$/$3$H$P$+$j$K(B
$B$+$J$j$NO+NO$rHq$d$5$J$1$l$P$J$i$J$$$+$i$G$"$k!#(B
--- A.S.Tannenbaum, Modern Operating Systems


$BITDj4|99?7$NF|5-$G$9!#%G%#%9%/%9%Z!<%9$N4X78>e!"(B $B$"$^$j$K8E$/$J$C$?$b$N$O=gC$7$F$$$-$^$9!#(B $B$3$NF|5-$N99?7$O!":#Ln$5$s$N(B *BSD Diary Links $B$+$i

September 2011

$B46A[$O$3$A$i$^$G(B ($BFbMF$OF?L>$N%a!<%k$GAw$i$l$^$9(B)

$B%3%a%s%H(B:

$BCm(B: $B$*JV;v$,I,MW$J>l9g$OD>@\%a!<%k$/$@$5$$!#(B $B$?$@$7!"3N

Wednesday, September 28

* ZFS $B$N%H%i%V%kB3$-(B(3)

$B2u$l$?(B zpool $B$N%G!<%?$r8DJL$K@:::!#(B $B:#$^$G$4$^$+$7$4$^$+$7;H$C$F$$$?$1$l$I!"(B $B%a%?%G!<%?$K$"$jF@$J$$CM$,F~$C$F$$$k$b$N$,$$$/$D$+8+$D$+$C$?$N$G!"(B $B$d$C$Q$j(B zpool $B$rGQ4~$7$F$D$/$j$J$*$9$3$H$K7hDj!#(B

$BF1$8%^%7%s$K!"(BHDD $B$r(B 3 $BBf$[$IDI2C!#(B $BF19=@.!&F1MFNL$N(B zpool $B$r$D$/$k$3$H$O!"(B $B@\B3$G$-$k(B HDD $B$N?t$N4X78$GFq$7$$$N$G!"(B $BDI2C$7$?(B HDD $B$r>iD9@-$J$7$N(B JBOD $B9=@.$K$7$F?7$7$$(B zpool $B$r:n@.!#(B $B8=:_$N%G!<%?NL$O2?$H$+F~$kBg$-$5!#(B

$B85$N(B zpool $B$G(B snapshot $B$r$D$/$C$?$j>C$7$?$j$9$k$N$O$A$g$C$HI]$$$N$G!"(B zfs send + recv $B$O;H$o$:!"(Brsync $B$GF14|!#(B $BFI$_$3$_;~$K(B panic $B$7$?$j!"%G!<%?$,2u$l$F$$$k>l=j$,J,$+$i$J$$$H8e!9$a$s$I$&$J$N$G!"(B $B%G!<%?$,$*$+$7$1$l$P%m%0$K;D$7$F!"IT@09g$rE,Ev$KJd@5$9$k%3!<%I$rDI2C!#(B $B$A$g$C$HMpK=$JJ}K!$G$O$"$k$1$l$I!"BgItJ,$N%G!<%?$O>eN.%5%$%H$+$i$N%_%i!<$J$N$G!"(B $B2u$l$F$$$k$b$N$O$"$H$GA*BrE*$KF14|$9$l$P==J,$@$HH=CG!#(B

$B$H$$$&$o$1$G!"(Ballbsd.org $B$N(B FTP $B%_%i!<$O!"%G!<%?$NB`Hr$,=*$k$^$G0l;~E*$K;_$a$F$$$^$9!#(B CVS repository $BEy!"$=$l0J30$N%3%s%F%s%D$O$9$G$KB`Hr$,=*$C$F$$$k$N$G!"(B $B%"%/%;%9$G$-$k$h$&$KLa$7$^$7$?!#8E$$(B zpool $B$rGK4~$7$F!"(B $B:#EY$O5U$K=q$-La$9;~$K%@%&%s%?%$%`$,H/@8$7$^$9$,!"(B $B$=$N;~$N@Z$jBX$($OC;$$;~4V$G=*$k$H;W$$$^$9!#(B

* ZFS $B$N%H%i%V%kB3$-(B(4)

$B$H$$$&$o$1$G!"%G!<%?$NGKB;$,(B zpool scrub $B$G8!=P$5$l$J$$>l9g!"(B $B$=$N(B zpool $B$r;H$$B3$1$k$N$O4m81$@$h!"$H$$$&Ev$?$jA0$N7kO@$KE~Ce!#(B $B$=$N%G!<%?GK2u$N4V@\E*$J860x$O%+!<%M%k$N%P%0$@$C$?$o$1$J$N$G$9$,!"(B $BCOF;$J8!>Z$H%l%]!<%H$N7+$jJV$7$G!"$@$$$V%P%0$rDY$9$3$H$,$G$-$^$7$?!#(B

$B$^$@(B lock order reversal $B$,$b$&0l8D;D$C$F$$$k46$8$,$"$k$N$GD4::Cf$G$9$,!"(B $B=$@58e$N%7%9%F%`$G$O!"?7$7$/$D$/$C$?(B v28 $B$N(B zpool $B$,!J:#$N$H$3$m!K855$$KF0$$$F$$$^$9!#(B

RELENG_8 $B$G(B v28 $B$r;H$&$R$H$O!"fIW$G$9!#(B $BFC$K(B r224608 $B$,$"$?$C$F$$$J$$>uBV$G;H$&$H!"$+$J$j4m81(B$B$G$9!#(B $B$4Cm0U!#(B

* Errata

offset $B$N@bL@(B$B$G!"O@M}%;%/%?$N%*%U%;%C%HCM(B (ATA8-ACS $B$N(B IDENTIFY DEVICE $B$GJV$C$F$/$k(B word 209 $B$N(B 15:14 $B$,(B 01b $B$N;~$N!"(B13:0 $BItJ,$N?tCM(B) $B$,$"$k>l9g!"!V2C;;$7$^$7$g$&!W$H=q$$$F$$$?$N$G$9$,!"8:;;$N4V0c$$$G$7$?!#(B $B!J$4;XE&$/$@$5$C$?J}!"$I$&$b$"$j$,$H$&$4$6$$$^$7$?!K(B

512e $B$N;~!"%*%U%;%C%H$,(B 0 $B$J$i(B LBA=7 $B$X$N%"%/%;%9$O(B PBA=0 $B$X$N%"%/%;%9$H$J$k$N$G$9$,!"(B $B$3$NCM$,(B 1 $B$@$H!"(BLBA=7 $B$X$N%"%/%;%9$O(B +1 $B$:$l$F(B PBA=1 $B$X$N%"%/%;%9$K$J$j$^$9!#(B $B$J$N$G!"(B8n - 1 $B$K%"%i%$%s%a%s%H$r9g$o$;$kI,MW$,$"$k!"$H$$$&$N$,@5$7$$$G$9!#(B

Friday, September 23

* ZFS $B$N%H%i%V%kB3$-(B

8 $B7n2<=\$+$i(B allbsd.org $B$N%a%$%s%U%!%$%k%5!<%P$ND4;R$,0-$/!"(B $BMn$A$k$3$H$,$7$P$7$P!#(B

$B860x$O(B ZFS $B$KMm$s$@%H%i%V%k!#(BRELENG_8 $B$G(B pool $B$r(B v28 $B$K$7$F$+$i$H$$$&$b$N!"%P%0$rF'$_$^$/$C$F$$$^$9!#(B $B$@$$$V%P%0$ODY$7$^$7$?$,!"(B 8-STABLE $B$G(B ZFS $B$r;H$&$N$O!"(B $B$b$&$A$g$C$HBT$C$?$[$&$,NI$$$+$bCN$l$^$;$s!#(B 8.2-RELEASE $B$O(B v15 $B$G$9$,!"$=$C$A$O0BDj$7$F$^$9!#(B 8.2R $B$r;H$C$F$$$k?M$O$40B?4$/$@$5$$!#(B

$BC1$K%+!<%M%k$,(B panic $B$9$k$H$3$m$+$i!"(Bpool $B$rG'<1$7$J$/$J$k%l%Y%k$^$G!"$$$m$$$m$J>I>u$H@o$C$?7k2L!"(B $B7P83CM$,$?$^$j$^$7$?(B...

$B>iD9@-$N$"$k(B zpool $B$r9=@.$7$F$$$kJ*M}%G%P%$%9$,8N>c$7$?>l9g$N8r49$dBP=hJ}K!$O!"(B $BB?$/$NJ88%$K>R2p$5$l$F$$$^$9$,!"(B zpool $B$d(B zfs $B%G!<%?%;%C%H$,2u$l$F$7$^$C$?>l9g$NBP=h$O!"$J$+$J$+Fq$7$$$G$9!#(B $B$"$s$^$j$^$H$^$C$F$$$^$;$s$,!"(BZFS $B$N>c327P83Nc$O$J$+$J$+CN$k5!2q$,>/$J$$$b$N$G$b$"$k$N$G!"(B $B$D$i$D$i$C$H=q$$$F$_$^$7$?!#(B

$B4pK\E*$J@Z$jJ,$1$O!V(Bzpool $B%l%Y%k$N>c32!W$H!V(Bzfs $B%l%Y%k$N>c32!W$+$i%9%?!<%H$7$^$9!#(B $B$3(B $B$N(B $B$X(B $B$s(B $B$N5-;v!"$+$J$j$G$?$i$a$J$N$G?.$8$J$$$[$&$,NI$$$H;W$$$^$9!#(B $B!V(BZFS $B$O>c32$K6/$$!W$J$s$F;v

zpool $B$N>c32BP1~%U%m!<(B

zpool $B$O!"O@M}%\%j%e!<%`%^%M!<%8%c$H$7$F$N5!G=$rDs6!$9$k$b$N$G$9!#(B $B$=$3$GH/@8$9$k2DG=@-$,$"$k>c32$O!"(B1) $BJ*M}%G%P%$%9$H$NBP1~4X78>pJs$,2u$l$k!"(B 2) $B%V%m%C%/%l%Y%k$N%G!<%?40A4@-$,<:$o$l$k!"$N(B 2 $BE@$G$9!#(B

1) $B$,5/$3$k$H!"$^$:(B zpool $B$,G'<1$5$l$J$/$J$j$^$9!#(B $BBP1~4X78$O!"J*M}%G%P%$%9$=$N$b$N$K5-O?$5$l$F$$$k$G$9$,!"(B $B$=$l$r5/F0;~$KKh2sA4ItC5$9$H;~4V$,$+$+$C$F$7$^$&$?$a!"(B /boot/zfs/zpool.cache $B$K%-%c%C%7%e%G!<%?$,J]B8$5$l$F$$$^$9!#(B $B$?$H$($P$3$N%U%!%$%k$,2u$l$k$H!"B8:_$9$k$O$:$N(B zpool $B$,8+$($J$/$J$C$F!"(B $B$+$J$j>G$k$3$H$K$J$k$o$1$G$9!#(B

zpool import $B$rpJs$rl9g$O(B /dev $B$ND>2<$K$"$k$N$G!"(B -d /dev $B%*%W%7%g%s$r$D$1$J$$$H8+$D$+$i$J$$$+$bCN$l$^$;$s!#(B

$B$A$c$s$H8+$D$+$l$P!"$=$N:]$K2u$l$?%-%c%C%7%e%G!<%?$r:F9=C[$7$F$/$l$k$N$G!"(B $B2?$b$7$J$/$H$bLdBj$O2r7h$7$^$9!#$3$3$G$R$H$D!"(B $B!V(BZFS $B$O!"%G!<%?9=B$$KL7=b$,$"$C$F!"$=$l$,=$I|2DG=$J;~!">!$B=$I|$@$1$rL@<(E*$K9T$J$&%*%Z%l!<%7%g%s$O!"4pK\E*$K$"$j$^$;$s!#(B $B>c32$N@Z$jJ,$1$r$7$F$$$k;~$K$b!"%"%/%;%9$9$kEY$K>!

$B$5$F!"(Bzpool import $B$ro$K=*N;$7$J$$>u67$O$"$jF@$^$9!#(B $B$R$H$D$O%G!<%?$,40A4$K2u$l$F$$$FG'<1$G$-$J$$%1!<%9!#(B $B$3$l$O$b$&!"$I$&$7$h$&$b$J$$$N$G%P%C%/%"%C%W$+$i=q$-La$7$^$7$g$&!#(B

$B$b$&$R$H$D$O!"(Bzpool import $B$ru67$G$9!#(B $B$3$l$OBP1~4X78$N%G!<%?$KCWL?E*$JGK2u$,H/@8$7$F$$$^$9!#(B $B@h$[$I$N86B'$r9M$($k$H!"GK2u$r$J$*$7$F$/$l$F$bNI$5$=$&$J$N$G$9$,!"(B $B$"$N86B'$O!"(BZFS $B$NA`:n$G(B panic $B$9$k$h$&$J>l9g!"(B $B$=$l$O=$I|IT2DG=$JGK2u$+!"%+!<%M%k$N%P%0(B$B$H$$$&0UL#$G$b$"$j$^$9!#(B $B$J$N$G!"$J$*$9$3$H$O$G$-$J$$$H9M$($k$N$,@5$7$$G'<1$G$9!#(B

panic $BEy$GA`:n$G$-$J$/$J$C$F$7$^$C$?;~$K$O(B

$B$H$O8@$&$b$N$N!"BgNL$N%G!<%?$,F~$C$?(B zpool $B$r4IM}$7$F$$$F!"(B $B%P%C%/%"%C%W$b??LLL\$K$H$C$F$J$$>l9g$@$C$?$i!"(B $B!V$H$K$+$/%^%&%s%H$G$-$k>uBV$KLa$7$?$$!W$H9M$($?$/$J$j$^$9$h$M!#(B

$B$=$3$G$H$l$kA*Br;h$K!"!V(Bpanic $B$rL58z$K$9$k!W$H$$$&A`:n$,$"$j$^$9!#(B $B$3$l$O!"L7=b$9$k%G!<%?$rL5M}LpM}@09g@-$N$"$k%G!<%?$KCV$-49$($F!"(B $B=hM}$r@h$K?J$a$k!"$H$$$&$3$H$G$9!#(B

$B6qBNE*$K$O!"(Bsysctl $BJQ?t(B vfs.zfs.recover $B$r(B 1 $B$K@_Dj$9$k$3$H$G!"(B $BCWL?E*$J(B panic $BH/@8;~$K!"(Bpanic $B$NH/@8$rM^@)$9$k$3$H$,$G$-$^$9!#(B Solaris $B$G(B /etc/system $B$K(B zfs:zfs_recover=1 $B$r@_Dj$9$k$N$HF1$8$G$9!#(B

$B$b$7$=$N(B panic $B$,!"(Bintent log $B$K5/0x$9$k$b$N$G$"$k>l9g$O!"(B $B%m%0$rL5;k$9$k$3$H$GI|5l$G$-$k>l9g$,$"$j$^$9!#$3$l$b%G!<%?$O<:$o$l$F$7$^$&$N$G$9$,!"(B $BHf3SE*Ho32$O>/$J$/$F:Q$_$^$9!#6qBNE*$K$O!"(B vfs.zfs.zil_replay_disable=1 $B$r@_Dj$7$^$7$g$&!#(B 8.2R $B$H$=$l0JA0$G$O!"(Bvfs.zfs.zil_disable=1 $B$H$$$&@_Dj$K$J$j$^$9!#(B $BN>

$BCWL?E*$G$J$$(B assert $B$G$b!"(Bpanic $B$,H/@8$9$k$3$H$,$"$j$^$9(B $B!J(Bassert $B$H$O!"%+!<%M%k$NFbIt$GG0$N$?$a9T$J$C$F$$$k!"%G!<%?$K0[>o$,$J$$$+$I$&$+$N%A%'%C%/$N$3$H$G$9!K!#(B Solaris $B$G$O(B aok=1 $B$H$9$k$3$H$G(B assert $B$r6/@)E*$KL5;k$5$;$k$3$H$,$G$-$k$N$G$9$,!"(B FreeBSD $B$G$OL5;k$5$;$kA`:n$,$"$j$^$;$s!#$3$l$K0z$C$+$+$C$?>l9g$O!"(B $B%+!<%M%k$r=q$-49$($k$+!"(Bzdb $B$r;H$o$J$$$H2sHr$G$-$^$;$s!J(Bzdb $B$K$D$$$F$O8e=R!K!#(B

$B$3$l$i$N@_Dj$rF~$l$F6/@)E*$K?J$a$l$P!"$H$j$"$($:(B panic $B$G:F5/F0$r7+$jJV$9$h$&$J!"%I%D%\$J>uBV$+$iC&$9$k$3$H$O$G$-$^$9!#(B $B$?$@$7!"Cm0U$7$J$1$l$P$J$i$J$$$N$O!"(B $B%G!<%?$O=$I|IT2DG=$JGK2u$,H/@8$7$F$$$k2DG=@-$,$"$j!"(B $B$+$DGK2u$5$l$?%G!<%?$O=$I|$G$-$J$$(B $B$H$$$&E@$G$9!#(BOS $B$N%P%0$G(B panic $B$7$F$$$k$3$H$b$"$k$N$G!"(B $BI,$:$7$b%G!<%?$,2u$l$F$$$k$H$O8@$($J$$$N$G$9$,!"(B $B=$I|$9$kJ}K!$@$H9M$($k$N$OBg$-$J4V0c$$$J$N$G!"@5$7$/M}2r$7$^$7$g$&!#(B

$B%G!<%?40A4@-$N%(%i!<(B

$BOC$O$:$C$H$5$+$N$\$C$F!"l9g$N>c32$r9M$($F$_$^$7$g$&!#(B $B$3$l$O(B ZFS $B$N%A%'%C%/%5%`5!G=$,$+$J$j6/NO$K%A%'%C%/$7$F$/$l$k$N$G!"(B $BLdBj$K$J$k$3$H$O5)$G$9!#>iD9@-$N$"$k(B zpool $B$J$i!">!

$B%A%'%C%/%5%`$N@09g@-$N8!>Z$r;X<($9$k(B zpool scrub $B$H$$$&%3%^%s%I$,$"$j$^$9!#(B $B$3$l$r(B fsck $B$N$h$&$K!V%U%!%$%k%7%9%F%`$NIT@09g$r=$I|$9$k$?$a$NA`:n$@!W$H4*0c$$$7$F$$$k@bL@$r$?$^$K8+$+$1$k$N$G$9$,!"(B $B$3$l$O%V%m%C%/%l%Y%k$N%A%'%C%/%5%`$H%G!<%?$N@09g@-$r!"(Bzpool $BA4BN$KBP$7$FD4$Y$J$*$9$@$1$NA`:n$G$9!#(B $B%U%!%$%k%7%9%F%`%l%Y%k$NIT@09g$O%A%'%C%/$7$F$/$l$^$;$s!#(B

$B$^$?!"%V%m%C%/%l%Y%k$N40A4@-%A%'%C%/$O!"DL>o$N%"%/%;%9$G$b>o$K9T$J$o$l$k$b$N$J$N$G!"(B $B%(%i!<$,$"$l$P!"(Bscrub $B$G$J$/$H$b!"%"%/%;%9$7$?%?%$%_%s%0$G>!l9g!"%(%i!<$,$"$k$+$I$&$+$,Js9p$5$l$J$$$N$G!"(B $B$=$l$rD4$Y$?$$;~$K$O!"(Bscrub $B$N

$B%V%m%C%/%l%Y%k$N40A4@-$,<:$o$l$k$H$$$&$N$O!"(BHDD $B$X$N=q$-9~$_A`:n$KLdBj$,$"$k!"(B HDD $B$N%G!<%?$,2?$i$+$N860x$G2=$1$F$7$^$C$?Ey!"(B $B%O!<%I%&%'%"$N?.Mj@-$K5/0x$9$k$b$N$,B?$$$G$9!#>iD9@-$r3NJ]$7$F$$$l$P!"(B $B=$I|$G$-$J$$>uBV$K4Y$k$3$H$O$[$H$s$I$"$j$^$;$s!#(B

zdb $B%W%m%0%i%`(B

$B>e5-$N>c32BP1~%U%m!<$G$OL>A0$@$1=q$$$?$N$G$9$,!"(B ZFS $B$K$O(B zpool, zfs $B$N%3%^%s%I$NB>$K!"(Bzdb $B$H$$$&%D!<%k$,$"$j$^$9!#(B $B$3$N%D!<%k$O!"!V(BZFS $B$N%G!<%?$r%f!<%6%i%s%I$+$iFI$_=q$-$9$k$?$a$N%W%m%0%i%`!W$G$9!#(B $B%+!<%M%k$N%=!<%9%U%!%$%k$N0lIt$r%W%m%0%i%`$NCf$K

zdb $B$OFI$_=q$-$N%D!<%k$@$H=q$-$^$7$?$,!"(B $B4pK\E*$K(B ZFS $B$N>pJs$r?M4V$,FI$_$d$9$$$h$&$K%@%s%W$9$k5!G=$7$+$"$j$^$;$s!#(B $B%G!<%?=$I|$N$?$a$N%D!<%k$G$O$"$j$^$;$s(B$B$N$G!"8m2r$7$J$$$G$/$@$5$$!#(B $B$b$H$b$H3+H/

$B$7$+$7!"$3$N%D!<%k$O%G!<%?$rFI$_=P$9:]$K;H$&%=!<%9%U%!%$%k$,%+!<%M%k$H6&DL$K$J$C$F$$$k$?$a!"(B ZFS $B$N86B'$,E,MQ$5$l$^$9!#$D$^$j!"(B$BIT@09g$,$"$k%G!<%?$KAx6x$9$k$H!"(B $B>!$B$N$G$9!#(B $B$3$l$r$&$^$/;H$&$H!"?<9o$J>u67$K$J$C$?(B zpool $B$r!"(B $BG'<1$9$k%l%Y%k$^$G;}$C$F$$$/$3$H$,$G$-$^$9!#(B $B2?EY$b7+$jJV$7$^$9$,!"%G!<%?$N=$I|$O$G$-$^$;$s!#(B $B$"$/$^$G(Bzpool $B$H$7$FG'<1$G$-$J$$>u67$r2r>C$G$-$k$@$1(B$B$J$N$G!"(B $B4N$KLC$8$F$/$@$5$$!#(B

zpool $B$K%"%/%;%9$9$k$H(B panic $B$7$F$7$^$&$H$+!"(Bzpool import $B$rl9g!"(B zdb $B$G%"%/%;%9$9$k$H!"F1$8$h$&$K%(%i!<$,=P$^$9!#%+!<%M%k$HF1$8%=!<%9$r;H$&$N$G!"$^$"Ev$?$jA0$NOC$G$9$M!#(B

$B%+!<%M%k$N>l9g!"A0=R$7$?(B zfs_recover=1 $B$r@_Dj$9$l$P!"(Bpanic $B$r2sHr$G$-$^$7$?$,!"(B zdb $B$G$O(B -AA $B$r;XDj$9$k$H(B panic $B$,2sHr$G$-$^$9!#(B -A $B$r;XDj$9$k$H!"(Bassert $B$NIT@09g$r2sHr$7$^$9!#(B $B$D$^$j!"(B-AAA $B$r;XDj$9$l$P!"(Bpanic $B$H(B assert $B$NN>J}$r2sHr$7$F(B zpool $B$X%"%/%;%9$9$k$3$H$,$G$-!"(B $B$=$N%"%/%;%9$NH/@8$K$h$C$F!"H/8+$5$l$?IT@09g$O6/@)E*$K2r>C$5$l$^$9!#(B

$B6qBNE*$K$O!"A0$,(B tank $B$G$"$l$P!"(B

# zdb -d tank

$B$H$9$l$P!"(BZFS $B%G!<%?%;%C%H$N0lMw$,I=<($5$l$^$9!#$b$7!"(Btank $B$,G'<1$5$l$F$$$J$1$l$P!"(B

# zdb -e -p /dev -d tank

$B$N$h$&$K!"(B-e $B$H(B -p /dev $B$r$D$1$F$/$@$5$$!#(B-e $B$OG'<1$5$l$F$$$J$$(B zpool $B$rC5$9%*%W%7%g%s!"(B -p /dev $B$OC5$9>l=j$r;XDj$9$k%*%W%7%g%s$G$9!#(B -p /dev $B$rIU$1$J$/$F$b8+$D$1$i$l$k>l9g$,$"$j$^$9$,!"G0$N$?$aIU$1$F$*$/$3$H$r$*$9$9$a$7$^$9!#(B

import $B$G$-$J$$MW0x$O$$$m$$$m$H9M$($i$l$k$N$G$9$,!"(B $B%G!<%?%;%C%H$N0lMw$rI=<($9$k(B zdb $B$N%3%^%s%I$,%(%i!<$J$/=*$k$N$G$"$l$P!"(B import $B$G$-$k3NN($O9b$$$G$9!#$b$7%(%i!<$,=P$k$h$&$J$i!"(B $B

# zdb -e -p /dev -AAA -d tank

intent log $B$,2u$l$F$$$k$H!"(Bimport $B$7$?;~$K(B panic $B$,H/@8$7$?$j!"(Bimport $B$G$-$J$/$J$k$3$H$,$"$j$^$9!#(B zdb $B$O!"%H%i%s%6%/%7%g%s%m%0$N%(%s%H%j$N0lIt$rGK4~$5$;$kA`:n$,$"$k$N$G!"(B $B$b$7>e5-$rA`:n$7$F$b%@%a$J$h$&$J$i!"(B-F $B%*%W%7%g%s$rIU$1$F$_$^$7$g$&!#(B

# zdb -e -p /dev -F -d tank

$B$^$?!"(B-c $B%*%W%7%g%s$r;H$&$H!"%V%m%C%/%l%Y%k$N%A%'%C%/%5%`$rD4::$9$k$3$H$b$G$-$^$9!#(B $BFbMFE*$K$O(B scrub $B$HF1$8$G$9!#(Bscrub $B$N

# zdb -e -p /dev -cc tank

$B7+$jJV$7$K$J$j$^$9$,!"(Bzdb $B$G2DG=$JA`:n$O%+!<%M%k$HF1$8$G$9!#(B $B$G$9$N$G!"%+!<%M%k$G<:GT$9$kA`:n$O!"(Bzdb $B$G$bF1$8$h$&$K<:GT$7$^$9!#(B FreeBSD $B$N>l9g!"(Bassert $B$r2sHr$9$kl9g$O(B zdb $B$N(B -A $B$r;H$&$N$,0lHV4JC1$JJ}K!$G$9!#$=$NB>!"(Bimport $B$G$-$J$$$J$I!"(B $B%+!<%M%k$KG'<1$5$;$k$3$H$,$G$-$J$/$J$C$F$7$^$C$?;~$K$O!"(Bzdb $B$G%"%/%;%9$7$F$_$k$N$,$R$H$D$N\$7$/CN$i$J$$$H!"I=<($5$l$kFbMF$O$A$s$W$s$+$s$W$s$@$H;W$$$^$9$,!"(B $B%"%/%;%9$9$k$3$H$K0UL#$,$"$j$^$9!#(B

zdb $B$G%"%/%;%9$7$?>l9g!"2?$,=$I|$5$l$k$N$+!?=$I|$5$l$?$N$+$O!"GD0.$9$k$N$,:$Fq$G$9!#(B $B$?$H$($P!"J*M}%G%P%$%9$N%Q%9L>>pJs$,2u$l$F$7$^$C$?>l9g!"(B $B!V(Bzdb -e -d tank$B!W$H>pJs$,=$@5$5$l$k$?$a!"$=$NpJs$,=$@5$5$l$?$s$@$J!W$HM}2r$G$-$k$N$G$9$,!"(B $BCN$i$J$$$H!V$5$C$-$O%(%i!<$@$C$?$N$K!"$J$s$GFs2sL\$O%(%i!<$J$/F0$/$N$@$m$&!W$H:.Mp$7$F$7$^$&$G$7$g$&!#(B

$B$3$N$h$&$K!"(Bzdb $B$O;HMQ

$B$$$:$l$K$7$F$b!"$3$N%D!<%k$KMj$i$J$1$l$P$J$i$J$$>u67$K4Y$C$F$$$k$N$G$"$l$P!"(B $B$b$&$9$G$K%G!<%?$N40A4=$I|$O$G$-$J$$>u67$G$9!#(B $BLdBj$,=$@5$G$-$k(B$B$J$s$F$$$&$N$OBg13$G!"(B $B%+!<%M%k$+$i%"%/%;%9$G$-$J$/$J$C$?(B zpool $B$r!"%"%/%;%9$G$-$k%l%Y%k$K;}$C$F$$$/$3$H$,$G$-$k$+$bCN$l$J$$!"(B $BDxEY$KM}2r$7$F$/$@$5$$!#Ev3:5-;v$O!V(Bmetaslab$B!W$N$3$H$r!V%a%?%i%Y%k!W$H=q$$$F$$$?$j$9$k$N$G!"(B $B$*$=$i$/(B zdb $B$,2?$r$7$F$$$k$N$+!"2?$,I=<($5$l$F$$$k$N$+$rM}2r$7$J$$$G=q$+$l$F$$$k$N$@$H;W$$$^$9!#(B

$B%+!<%M%k$,G'<1$G$-$k>uBV$K;}$C$F$$$/$3$H$,$G$-$?$i!"(Bzdb $B$KMj$kI,MW$O$"$j$^$;$s!#(B

zfs $B$N>c32BP1~%U%m!<(B

ZFS $B$O!"%U%!%$%k%7%9%F%`%l%Y%k$NIT@09g$KBP$7$F$[$H$s$I2?$b$G$-$^$;$s!#(B $B$=$b$=$b!"%V%m%C%/%l%Y%k$G$N40A4@-$,%A%'%C%/%5%`$K$h$C$FJ]>Z$5$l$F$$$k$3$H$K6/$/Mj$C$F$$$k$?$a!"(B $B%U%!%$%k%7%9%F%`%l%Y%k$G$NIT@09g$NH/@8$KBP$9$kBP:v$O!"F~$C$F$$$J$$$N$G$9!#(B $B$b$C$H$b!"$3$N$N%U%!%$%k%7%9%F%`$G$b!">u67$O$"$^$jJQ$o$i$J$$OC$G$O$"$j$^$9!#(B

$B$?$H$($PHs>o$K5)$G$O$"$k$N$G$9$,!">C$;$J$$%U%!%$%k$d!"(B $BCf?H$,2u$l$?%G%#%l%/%H%j$,:n@.$5$l$F$7$^$&$3$H$,$"$j$^$9!#(B $B$^$?!"%"%/%;%9$9$k$H(B panic $B$9$k$h$&$J%U%!%$%k$,$G$-$F$7$^$&2DG=@-$b%<%m$G$O$"$j$^$;$s!#(B $B$=$&$$$&>u67$K4Y$C$?>l9g!"$I$&$9$l$PNI$$$N$G$7$g$&$+!#(B

$B%V%m%C%/%l%Y%k$N=$I|IT2DG=$J%(%i!<$,!"(Bzfs $B%l%Y%k$N%(%i!<$rH/@8$5$;$k$3$H$O$"$jF@$^$9!#(B ZFS $B4IM}%,%$%I$N!V%G!<%?GK2u%(%i!$B$K=q$$$F$"$k>u67$,!"$=$l$G$9!#(B $B$7$+$7!"I,$:$7$b%V%m%C%/%l%Y%k$N%(%i!<$,860x$H$J$C$F$$$k$o$1$G$O$J$$$N$G!"(B scrub $B$KMj$k$3$H$O$G$-$^$;$s!#(Bscrub $B$G$^$C$?$/%(%i!<$,8!=P$5$l$J$/$F$b!"(B $BCf?H$,2u$l$?%G%#%l%/%H%j$OB8:_$G$-$k$+$i$G$9!#(B

$B2?$i$+$N860x$G%"%/%;%9$G$-$J$$%G%#%l%/%H%j%(%s%H%j$O!"(B $B$I$3$+JL$N$H$3$m$K(B mv $B$7$FB`Hr$5$;$F$*$-$^$7$g$&!#(B $B%"%/%;%98"$r(B 0 $B$K$7$F$*$1$P!"8m$C$F%"%/%;%9$7$F$7$^$&$3$H$b$"$j$^$;$s!#(B $B:o=|$G$-$l$P:o=|$7$?$[$&$,NI$$$N$G$9$,!":o=|$7$h$&$H$7$?$i(B panic $B$9$k$h$&$J>l9g!"4JC1$K=$I|$9$kJ}K!$O$"$j$^$;$s!#(B

* ZFS $B$N%H%i%V%kB3$-(B (2)

$B$b$&$R$H$D!"(BZFS $B$K4X$7$F!V(BZFS $B$O(B fsck $B$N$h$&$J%A%'%C%/$,I,MW$J$$$N$G!"(B $B5/F0;~$KBT$?$5$l$k$3$H$O$J$$!W$H$$$&OC$rJ9$$$?$3$H$,$"$j$^$9!#(B $B$3$l$b13$G$9!#(Bfsck $B$N$h$&$J%A%'%C%/$,$J$$$N$O??u67$O!"(BZFS $B$G$b$A$c$s$HH/@8$7$^$9!#(B

ZFS $B$O!"(Bspace map $B$d=q$-9~$_=hM}$N%G!<%?9=B$$K!"%m%0$r;H$C$F$$$^$9!#(B $B$=$N$?$a!"0U?^$7$J$$EE8;CG$,H/@8$7$?>l9g$G$b!"(B $B=hM}$,CfESH>C<$J>uBV$K$J$C$F$7$^$&$3$H$O$"$j$^$;$s!#(B

$B5/F0;~!"(BZFS $B$N%G!<%?%;%C%H$r%^%&%s%H$9$k:]$K$O!"(B $B$3$N%m%0$rD4$Y$F!"L$=hM}$N%H%i%s%6%/%7%g%s%(%s%H%j$r=hM}$9$k$N$G$9$,!"(B $B$=$l$,KDBg$JNL$K$J$C$F$$$k>l9g!"$=$N;~E@$GBT$?$5$l$^$9!#(B $B$U$D$&$NA`:n$G$O9b!9?t==IC$N%*!<%@$G=*$j$^$9$7!"(B $B$=$b$=$b@5>o$K%7%c%C%H%@%&%s$G$-$F$$$l$P%m%0$O%/%j%"$5$l$F$$$k$3$H$,B?$/(B $B5$$E$-$K$/$$$N$G$9$,!"

# zfs destroy tank@20110920

$B$3$N%3%^%s%I$O!"(Btank@20110920 $B$H$$$&%9%J%C%W%7%g%C%H$r:o=|$7$^$9!#(B $B$3$N%9%J%C%W%7%g%C%H$N@[email protected]$G$"$k(B tank $B$H$$$&%G!<%?%;%C%H$,!"(B $BBgNL$N%U%!%$%k$rJz$($F$$$?$H$7$^$7$g$&!#(Bdestroy $B$N=hM}$O!"(B $B%m%0>e$N5-O?$OBg$-$/$"$j$^$;$s$,!"(B $B

$B$3$N%3%^%s%I$r8e$KEE8;$r6/@)E*$KMn$9$H!"(B $B:F5/F08e$K%^%&%s%HD>A0$N$H$3$m$G!"=hM}$,;_$^$C$?$h$&$K8+$($^$9!#(B Ctrl+T $B$G=hM}$rD4$Y$k$H!"uBV$GBT$?$5$l$F$$$k$O$:$G$9!#(B

load: 0.12  cmd: zfs 98 [tx->tx_sync_done_cv)] 355.56r 0.00u 0.03s 0% 2284k

$B$"$k$$$O!"

load: 0.31  cmd: zpool 336 [zio->io_cv)] 1.20r 0.00u 0.06s 0% 2140k

$B;_$^$C$F$$$k$h$&$K8+$($k$N$G$9$,!"(B $B$3$l$O(B destroy $B$N=hM}$r1d!9$HB3$1$F$$$^$9!#40A4$K=*$k$^$G%^%&%s%H$7$F$/$l$^$;$s!#(B $B%U%!%$%k$N?t$K$b$h$j$^$9$,!"$*$*$-$$$b$N$G$O?t;~4VC10L$N;~4V$,$+$+$j$^$9!#(B

$BAa$/5/F0$7$F$[$7$$!"$H;W$C$F$b!"8=;~E@$G$3$NLdBj$KBP$9$kM-8z$J\$7$/8+$F$_$^$7$g$&!#(B

$B%a%b%j$,B-$j$J$$(B?

$B>c32I|5l;~$K8+Mn$H$7$,$A$J$N$,!"%a%b%j$N>CHq$G$9!#(B ZFS $B$O%G!<%?9=B$$NB?$/$r%a%b%j>e$K:\$;$F=hM}$r?J$a$k$?$a!"(B $B=>Mh$N%U%!%$%k%7%9%F%`$HHf3S$7$F%a%b%j$rB?$/;H$&$N$G$9$,!"(B $B$=$l$H$OJL$K!">c32I|5l;~$N=hM}$KI,MW$J%^%7%s%j%=!<%9$rGD0.$7$F$*$/I,MW$,$"$j$^$9!#(B

$BOC$,$A$g$C$HOFF;$K$=$l$^$9$,!"(BFFS $B$N>l9g$rI|=,$7$F$*$-$^$7$g$&!#(B $B$4B8CN$N$H$*$j!">c32I|5l;~$K;H$o$l$k%D!<%k$O(B fsck_ffs $B$G$9!#(B $B$3$N%D!<%k!"$I$l$/$i$$%a%b%j$r;H$&$N$+$"$^$jCN$i$l$F$$$J$$$h$&$J5$$,$9$k$N$G$9$,!"(B $B:GBg$G(B 1GB $B$N%G%#%9%/$"$?$j(B 1MB $B$/$i$$$N%a%b%j$r;H$$$^$9!#(B $B$3$l$O!"(B $B%G%#%9%/A4BN$+$iI,MW$J%G!<%?$r=8$a$F!"(B $B%a%b%j$K:\$;$F=hM}$9$k$D$/$j$K$J$C$F$$$k$+$i$G$9!#(B

$B:G6a$N(B HDD $B$OMFNL$,(B 2TB $B$H$+J?5$$G$"$j$^$9$+$i!"(B2TB $B$r$^$k$^$k(B 1 $B8D$N%U%!%$%k%7%9%F%`$H$7$F:n@.$7$F$7$^$&$H!"(B fsck $B$N/M>M5$r;}$C$F7W;;$7$?M}O@:GBgCM$J$N$G!"(B $B/$J$$NL$G$$$1$k$3$H$,B?$$$G$9$,!"(B fsck $B$OC1$K;~4V$5$($+$1$l$PNI$$!"$H$$$&OC$G$O$J$$$o$1$G$9!#(B

$B%$%s%9%H!<%k;~$K%Q!<%F%#%7%g%s$KJ,$1$k$3$H$r$;$:!"(B $BA4It(B / $B$G$D$/$k$3$H$r4+$a$F$$$k2r@b$b$?$^$K8+$+$1$k$N$G$9$,!"(B $B%a%b%j$,>/$J$$%7%9%F%`$G(B 2TB $B$NC10l%U%!%$%k%7%9%F%`$r$D$/$k$H!"(B $B>c32$,H/@8$7$F$+$i(B fsck $B$,0[>o=*N;$9$k$3$H$K5$$E$/!"(B $B$H$$$&:G0-$N%Q%?!<%s$K$J$j$+$M$^$;$s!#CN<1$H$7$FCN$C$F$*$/$Y$-$3$H$@$H;W$$$^$9!#(B

$B$5$F!"OC$rLa$7$^$7$g$&!#(B ZFS $B$N>l9g$b!"c32$+$iI|5l$9$k;~$KIaCJ$h$j$bB?$/$N%a%b%j$r>CHq$7$^$9!#(B $B$I$l$/$i$$>CHq$9$k$N$+$O9=@.$d>u67$K6/$/0MB8$9$k$N$G0l35$K8@$($J$$$N$G$9$,!"(B $B5^$JEE8;CGEy$,H/@8$7$?8e$K:F5/F0$9$k$H!"(B $B%G!<%?%;%C%H$r%^%&%s%H$7$J$/$F$b!"(Bzpool $B$rG'<1$7$?;~E@$G!"(B $B5-O?$5$l$F$$$?L$=hM}$NFbMF$r=hM}$7$h$&$H$7$^$9!#(B $B$=$N:]!"=hM}$KI,MW$J%G!<%?$NFI$_9~$_$,H/@8$7$F%a%b%j$r>CHq$9$k$o$1$G$9!#(B $BCHq$N;~E@$G!"%a%b%jITB-$H$J$k%1!<%9$,$"$j$^$7$?!#(B

$B$-$l$$$K%7%c%C%H%@%&%s$7$J$+$C$?>l9g$N:F5/F08e!"(B zpool $B$rG'<1$5$;$?>l9g$N=hM}$NN.$l$r!"

# zpool list
NAME   SIZE  ALLOC   FREE    CAP  DEDUP  HEALTH  ALTROOT
a     18.1T  6.52T  11.6T    35%  1.81x  ONLINE  -

$B$3$N(B zpool $B$O!"(BFTP $B%5!<%PMQ$N%G!<%?$rJ];}$9$k(B a/ftproot $B$H$$$&%G!<%?%;%C%H$,$"$k$N$G$9$,!"(B $B$=$N%G!<%?%;%C%H$N%9%J%C%W%7%g%C%H$r$D$/$C$F!"(Bdestroy $B$7$?D>8e$K%7%9%F%`$r6/@)%j%;%C%H$7$^$7$?!#(B $BMFNL$O

# zfs list a/ftproot
NAME        USED  AVAIL  REFER  MOUNTPOINT
a/ftproot  3.93T  6.80T  3.93T  /a/ftproot

$B:F5/F08e!"(Bzpool $B$rG'<1$7$?D>8e$N(B zfskern $B%+!<%M%k%W%m%;%9$NMM;R$O!"(B $B

# procstat -w 1 -kk 9
  PID    TID COMM             TDNAME           KSTACK
    9 100064 zfskern          arc_reclaim_thre mi_switch+0x16e sleepq_timedwait+0x42 _cv_timedwait+0x14f arc_reclaim_thread+0x29d fork_exit+0x11d fork_trampoline+0xe 
    9 100065 zfskern          l2arc_feed_threa mi_switch+0x16e sleepq_timedwait+0x42 _cv_timedwait+0x14f l2arc_feed_thread+0x1a8 fork_exit+0x11d fork_trampoline+0xe 
    9 100251 zfskern          txg_thread_enter mi_switch+0x16e sleepq_wait+0x44 _cv_wait+0x13c txg_thread_wait+0x79 txg_quiesce_thread+0xb5 fork_exit+0x11d fork_trampoline+0xe 
    9 100252 zfskern          txg_thread_enter mi_switch+0x16e sleepq_wait+0x44 _cv_wait+0x13c zio_wait+0x61 dsl_scan_sync+0x4d3 spa_sync+0x390 txg_sync_thread+0x139 fork_exit+0x11d fork_trampoline+0xe

4 $BHVL\$K$"$k(B 100252 $B$N%9%l%C%I$,!"(Bdsl_scan_sync() $B$H$$$&$N$r8F$s$G$$$^$9!#(B $B$3$l$O(B scrub $B$d(B resilvering $B$HF1$8$h$&$J%9%-%c%s$N=hM}$G$9!#(B zpool iostat $B$G$O(B 1MB/s, 500 IOPS $B$/$i$$$N(B read $B$H$7$F8+$($F$$$^$9!#(B

$B$3$l$,Av$C$F$$$k4V!"(Bwired $B$J%a%b%j$N>CHqNL$OA}$(B3$1$^$9!#(B $B;~$*$j=q$-9~$_%"%/%;%9!J(Bdestroy $B$KD>@\4XO"$9$k=hM}!K$,H/@8$7!"

# procstat -w 1 -kk 9
  PID    TID COMM             TDNAME           KSTACK
    9 100064 zfskern          arc_reclaim_thre mi_switch+0x16e sleepq_timedwait+0x42 _cv_timedwait+0x14f arc_reclaim_thread+0x29d fork_exit+0x11d fork_trampoline+0xe 
    9 100065 zfskern          l2arc_feed_threa mi_switch+0x16e sleepq_timedwait+0x42 _cv_timedwait+0x14f l2arc_feed_thread+0x1a8 fork_exit+0x11d fork_trampoline+0xe 
    9 100251 zfskern          txg_thread_enter mi_switch+0x16e sleepq_wait+0x44 _cv_wait+0x13c txg_thread_wait+0x79 txg_quiesce_thread+0xb5 fork_exit+0x11d fork_trampoline+0xe 
    9 100252 zfskern          txg_thread_enter mi_switch+0x16e sleepq_wait+0x44 _cv_wait+0x13c zio_wait+0x61 dbuf_read+0x5e5 dmu_buf_hold+0xe0 bpobj_iterate_impl+0x23d bpobj_iterate_impl+0x31b dsl_scan_sync+0x4c3 spa_sync+0x390 txg_sync_thread+0x139 fork_exit+0x11d fork_trampoline+0xe

$B$^$?!"$"$kDxEY?J$`$H!"

# procstat -w 1 -kk 9
  PID    TID COMM             TDNAME           KSTACK
   9 100064 zfskern          arc_reclaim_thre mi_switch+0x16e sleepq_timedwait+0x42 _cv_timedwait+0x14f arc_reclaim_thread+0x29d fork_exit+0x11d fork_trampoline+0xe 
    9 100065 zfskern          l2arc_feed_threa <running>
    9 100251 zfskern          txg_thread_enter mi_switch+0x16e sleepq_wait+0x44 _cv_wait+0x13c txg_thread_wait+0x79 txg_quiesce_thread+0xb5 fork_exit+0x11d fork_trampoline+0xe 
    9 100252 zfskern          txg_thread_enter mi_switch+0x16e sleepq_wait+0x44 _cv_wait+0x13c zio_wait+0x61 dsl_pool_sync+0x2c3 spa_sync+0x336 txg_sync_thread+0x139 fork_exit+0x11d fork_trampoline+0xe

$BC1$K%7%s%0%k%f!<%6%b!<%I$G:F5/F0$7$?$@$1$G!"(B zfs mount $B$O!"$^$C$?$/$7$F$$$J$$>uBV(B$B$G$9!#(B $B$3$N(B dsl_scan_sync() $B$d(B dsl_pool_sync() $B$N=hM}$N4V$O!"(B zfs destroy $B$N=hM}$,9T$J$o$l$F$$$^$9!#:$$C$?$3$H$K!"(B$B$3$N=hM}$,=*$k$^$G!"(B a/ftproot $B$r%^%&%s%H$9$k$3$H$,$G$-$^$;$s!#(B $B$J$+$J$+87$7$$$N$G$9$,!"$:$C$HBT$?$J$$$H$$$1$J$$$N$G$9!#(B

destroy $B$7$F$k$o$1$G$9$+$i!"(B zpool list $B$GI=<($5$l$k(B ALLOC $B$O!"$@$s$@$s$H8:$C$F$$$/$N$,4QB,$G$-$^$9!#(B $B$3$3$G%a%b%j$N;HMQNL$KCmL\$7$^$7$g$&!#(B

$B:G=i$K;n$7$?;~$K$O%^%7%s$NJ*M}%a%b%j(B 8GB $B$r0l5$$K?)$$DY$7$F$7$^$C$?$?$a!"(B $BCHq$rM^@)$5$;$^$7$?!#(B

vfs.zfs.arc_min="1G"
vfs.zfs.arc_max="2G"
vfs.zfs.arc_meta_limit="1G"
vfs.zfs.dedup.prefetch=0
vfs.zfs.prefetch_disable=1
vfs.zfs.l2arc_noprefetch=1
vfs.zfs.vdev.min_pending=1
vfs.zfs.vdev.max_pending=2

zpool $B$rG'<1$7$F$+$i(B 26 $BJ,8e$N(B wired $B$O(B 4370MB $B$G$9!#(B 40 $BJ,8e$O(B 5042MB $B$K$J$j$^$7$?!#C;$$;~4V$G8+$k$HA}$($?$j8:$C$?$j$7$F$$$^$9$,!"(B $B3N

$B40N;$7$?$N$O(B 54 $BJ,8e!"(B6.52T $B$+$i(B 5.95TB $B$K(B ALLOC $B$O8:>/$7$^$7$?!#(B 583MB $B$r(B 3240 $BIC$G=hM}$7$?$3$H$K$J$j$^$9$+$i!"(B $B$*$h$=(B 180KB/s $B$/$i$$$G$9!#(Bwired $B$N%a%b%j$O:G=*E*$K(B 5683MB $B$r<($7$F$$$^$7$?!#:#EY$OB-$j$?$o$1$G$9$,!"(B $B$3$NNL$N%a%b%j$,$J$1$l$P!"$3$NI|5l=hM}$OESCf$G;_$^$C$F$7$^$&$3$H$K$J$j$^$9!#(B

$B$^$?!"A0=R$N$H$*$j!"$3$N=hM}$,=*$i$J$/$H$b(B zfs mount $B$G$-$k%G!<%?%;%C%H$O$"$j$^$9!#(B $B$7$+$7!"%^%&%s%H$O$G$-$k$b$N$N!"=hM}$,=*$k$^$G(B sync $B$,$G$-$^$;$s!#(B $B$3$NG:$^$7$$>u67$O!"D9$$%@%&%s%?%$%`$r@8$`$3$H$,$"$j$^$9!#(B ZFS $B$O%9%J%C%W%7%g%C%H$N:n@.$,4JC1$K$G$-$^$9$,!"0U30$HMn$77j$O?<$$$N$G!"(B $B

8-STABLE $B$N%P%0(B

8.2R $B$OLdBj$J$$$N$G$9$,!"(Br225100 $B$h$jA0$N(B 8-STABLE $B$K$O!"(B $B5/F0;~$K%G%C%I%m%C%/$,H/@8$9$k$3$H$,$"$j$^$9!#8+J,$1$k%3%D$O!"(B Ctrl+T $B$G

load: 0.90  cmd: zpool 35 [spa_namespace_lock] 10.15r 0.00u 0.12s 0% 2116k

$B3:Ev$9$k%P!<%8%g%s$G!"$3$l$,=P$F;_$^$C$F$$$k$H$7$?$i!"(B $B$=$N%P%0$rF'$s$G$$$k2DG=@-$,9b$$$H9M$($FNI$$$H;W$$$^$9!#(B zpool remove $B$d!"(Bzpool add $B$N%?%$%_%s%0$GH/@8$7$d$9$/!"(B $B:F5/F0$7$F$b$3$l$K0z$C$+$+$jB3$1$k%1!<%9$,$"$j$^$9!#(B

r225100 $B$NJQ99$rF~$l$F%+!<%M%k$r:F9=C[$9$l$P!"$3$N>I>u$O>C$($^$9!#(B slog $B$d(B cache $B%G%P%$%9$rF~$l$F$$$k$H!":F8=$7$d$9$$%P%0$G$9!#(B

Saturday, September 3

* 4KiB $B%;%/%?$N(B HDD $B$H(B FreeBSD

Western Digital $B$NJ*M}%;%/%?D9(B 4KiB $B$N(B HDD (WDxxEARS $B$J$I(B) $B$,H/Gd$5$l$F$+$i$b$&(B 2 $BG/$[$I7P2a$7$^$7$?!#(B $B!V(BFreeBSD $B$G;H$($k$N(B?$B!W$H$$$&OC$r!"$$$m$$$m$J$H$3$m$G?R$M$i$l$?$j!"(B $B@bL@$7$?$j$7$F$$$k$h$&$J5$$,$9$k$N$G$9$,!"(B $B$^$H$^$C$?;qNA$,$J$$$N$G!"$^$H$a$F$_$^$7$?!#(B

4096B $B%;%/%?D9$N(B HDD

$B$I$&$7$F(B WD $B$OJ*M}%;%/%?D9$r(B 512B $B$+$i(B 4096B $B$KJQ99$7$?$+!"(B $B$H$$$&OC$O!"$$$m$$$m$J$H$3$m$G>R2p$5$l$F$$$k$N$G:#99$G$9$,!"(B $B$3$l$O(B WD $B$@$1$,FH<+$K9M$($?$o$1$G$O$J$/$F!"(B $B%9%H%l!<%85!4o$N4k6H%3%s%=!<%7%"%`$G$"$k(B IDEMA (International Disk Drive Equipment and Materials Association) $B$G5DO@$5$l$?

IDEMA $B$G$O!V(BHDD $B$,:#8e5-O?L)EY$rA}Bg$5$;$F$$$C$?;~!"(B $B<'5$G^BN>e$N(B S/N $BHf$N8:>/$,LdBj$H$J$k!#$=$3$G!"(B $B$=$l$KBP1~$9$k5;=Q$H$7$F$J$K$r:NMQ$9$Y$-$+!W$H$$$&LdBjDs5/$,!"(B 1998 $BG/$K5/$3$j$^$7$?!#$=$3$G$O!"(B $BL)EY$,>e$,$k$H<'@-:`NA$NFC@-$K5/0x$9$k%(%i!

$B%(%i!J,$KIU2C$9$k>pJs$rA}$d$9!"$H$$$&$3$H$r0UL#$7$^$9!#(B $B$3$N>pJs$O!"J*M}%;%/%?C10L$GMQ0U$7$J$1$l$P$J$j$^$;$s!#$D$^$j(B HDD $B$NCf$G$N(B 512B $B$N>pJs$O!"(B $B!V(B512B + $B%(%i!pJs!W$H$$$&!"(B $B$A$g$C$HBg$-$$%G!<%?$H$7$F3JG<$5$l$F$$$k$o$1$G$9!#(B

$B5-O?L)EY$NA}Bg$K$h$C$F!"%(%i!<$NH/@83NN($OA}2C$7$^$9!#(B $B$J$N$G!"$=$3$KF1$8%(%i!

$B$7$+$7!"C1=c$KD{@5G=NO$r$"$2$k$H!"$;$C$+$/A}$($?5-21MFNL$,%(%i!pJs$K?)$o$l$F$7$^$C$F!"(B $B4r$7$/$J$$>u67$K$J$C$F$7$^$$$^$9!#(B $Bl9g!"(B $B%G!<%?$ND9$5$O(B 8 $BG\0c$$$^$9$,!"$=$3$K$/$C$D$1$k%(%i!pJs$O(B 8 $BG\$K$J$i$:!"(B $B$b$C$HC;$$>pJs$K$9$k$3$H$,2DG=$G$9!#$D$^$j!"(B $B!V$R$H$+$?$^$j!W$H9M$($k%G!<%?$NNL$rBg$-$/$9$l$P!"(B $B!JAjBPE*$K$G$9$,!K>/$J$$%(%i!pJs$G!"(B $BF1DxEY$ND{@5G=NO$r

$B$J$N$G!"$$$m$$$m$H!V$R$H$+$?$^$j!W$NBg$-$5$rJQ$($FM}O@7W;;$7$F$_$?$H$3$m!"(B 4096B $B$,!":#$^$G$HF1$8?e=`$N?.Mj@-$r0];}$7$D$D!"%(%i!pJs$KI,MW$J5-21MFNL$NA}2C$,M^$($i$l$kCM$@$m$&!"(B $B$H$$$&$3$H$,Js9p$5$l$^$7$?!#$=$N8&5fJs9p$r%9%?!<%HCOE@$H$7$F!"(BIDEMA $B$G$O(B 4096B $B$rJ*M}%;%/%?$H$9$k6H3&I8=`$N:vDj$KF~$j!"6qBNE*$J@=IJ$,(B 2009 $BG/$+$iH/I=$5$l$O$8$a$^$7$?!#(B $B:#8eA}$($k$+$I$&$+$OJ,$+$j$^$;$s$,!"6H3&$H$7$F$NN.$l$K$J$C$F$$$^$9!#(B

$BCm0U$7$J$1$l$P$J$i$J$$$N$O!"J*M}%;%/%?D9$,(B 4096B $B$K$J$C$?$+$i$H$$$C$F!"(B $B%f!<%6$,%"%/%;%9$N$K;H$&O@M}%;%/%?D9$,(B 4096B $B$K$J$C$F$$$k$H$O8B$i$J$$$3$H$G$9!#(B Advanced Format $B$G$O!"

  • 512 emulation (512e): $BO@M}%;%/%?$,(B 512B $B$K8+$($k!#(B
  • 4K native (4Kn): $BO@M}%;%/%?$,(B 4096B $B$K8+$($k!#(B

512e $B$N>l9g!"(BHDD $B$O(B OS $B$KBP$7$FO@M}%;%/%?D9$r(B 512B $B$HJs9p$7!"(B 4Kn $B$N>l9g$O(B 4096B $B$HJs9p$7$^$9!#8=:_N.DL$7$F$$$k$b$N$N$O!"$[$H$s$I(B 512e $B$G$9!#(B $B$I$A$i$J$N$+$O!"(BATA_CAM $B$rM-8z$K$7$F(B camcontrol $B$r;H$&$H%A%'%C%/$G$-$^$9!#(B

# camcontrol identify ada1
pass2: <C300-CTFDDAC064MAG 0006> ATA-9 SATA 3.x device
pass2: 300.000MB/s transfers (SATA 2.x, UDMA5, PIO 8192bytes)

protocol              ATA/ATAPI-9 SATA 3.x
device model          C300-CTFDDAC064MAG
firmware revision     0006
serial number         00000000104702FF6594
WWN                   500a7512ff6594
cylinders             16383
heads                 16
sectors/track         63
sector size           logical 512, physical 512, offset 0
LBA supported         125045424 sectors
LBA48 supported       125045424 sectors
PIO supported         PIO4
DMA supported         WDMA2 UDMA5 
media RPM             non-rotating
:

$B$3$N%5%s%W%k7k2L$O%;%/%?D9$,(B 512B $B$N(B SSD $B$KBP$7$F9T$J$C$?$b$N$G$9$,!"(Bsector size $B$H$$$&Ms$K!"(B logical $B$H(B physical $B$N%;%/%?D9$,=P$F$$$k$3$H$,3NG'$G$-$^$9!#(B $B$3$3$G(B physical $B$,(B 4096 $B$K$J$C$F$$$l$P!"J*M}%;%/%?D9$,(B 4096B $B$@!"$H$$$&0UL#$G$9!#(B512e $B$J$i(B logical=512, physical=4096 $B$K!"(B 4Kn $B$J$iN>J}$H$b(B 4096 $B$K$J$j$^$9!#(B

$B$=$N8e$m$N!"(Boffset $B$H$$$&$N$,6J\=R$7$^$9!#(B

FreeBSD $B$G;H$($k$N(B?

$B7kO@$+$i8@$&$H!"$A$c$s$H;H$($^$9!#8=9T$N$b$N$G!V;H$($J$$!W$H$$$&Js9p$O$"$,$C$F$-$F$$$^$;$s!#(B $B$?$@$7!"Cm0U$7$J$1$l$P$J$i$J$$E@$,$$$/$D$+$"$j$^$9!#(B

LBA $B$N%"%i%$%s%a%s%H(B

$B%"%i%$%s%a%s%H$H$O!"O@M}%;%/%?HV9f$rJ*M}%;%/%?6-3&$N?tCM$K4]$a$k$3$H$G$9!#(B 512e $B$N>l9g!"%f!<%6$+$i$O(B 512B $BC10L$G%"%/%;%9$G$-$k$o$1$G$9$,!"(B $BFI$_=q$-$N:G>.C10L$O(B 4096B $BC10L$G$9!#(B $B$G$9$N$G!"%"%/%;%9$9$k%;%/%?HV9f$,(B 8 $B$NG\?t$K$J$C$F$$$k;~$,!"(B $B$b$C$H$b8zN(NI$/%"%/%;%9$G$-$^$9!#(B

$B$?$H$($P!"O@M}%;%/%?HV9f(B 0 $B$X$N%"%/%;%9$H!"HV9f(B 3 $B$X$N%"%/%;%9$r9M$($F$_$F$/$@$5$$!#(B $B$I$A$i$b7k2LE*$K!"J*M}%;%/%?$KBP1~$9$k(B 8 $B8D$NO@M}%;%/%?(B (0,1,2,3,4,5,6,7) $B$9$Y$F$X$N%"%/%;%9$K$J$j$^$9!#$=$l$>$l$N%"%/%;%9$,(B 4KiB $B$N%G!<%?$rFI$_9~$`%"%/%;%9$@$C$?$H$9$k$H!"(B $BHV9f(B 0 $B$OJ*M}%;%/%?(B 1 $B8DJ,$@$1$G=hM}$,=*N;$7$^$9$,!"(B $BHV9f(B 3 $B$O

$B$3$N$h$&$K!"%"%/%;%9C10L$H%"%/%;%9@hF,0LCV@_Dj$N:Y$+$5$,0[$J$k>l9g!"(B $B%"%/%;%9@hF,0LCV@_Dj$r%"%/%;%9C10L$K9g$o$;$kA`:n$r!"!V%"%i%$%s%a%s%H$rB7$($k!W$HI=8=$7$^$9!#(B $B@bL@$7$?$H$*$j!"$A$g$&$IJ*M}%;%/%?$N@hF,0LCV$+$i%"%/%;%9$9$k$N$,!"0lHV8zN($,NI$/$J$j$^$9!#(B $B$b$A$m$sFI$_9~$`NL$,(B 5KiB $B$@$H$7$?$i!"7k6I$I$A$i$bF1$8%"%/%;%9=hM}NL$K$J$k$N$G$9$,!"(B $BH/@8$7F@$k$$$m$$$m$J%Q%?!<%s$r9M$($k$H!"(B $B@hF,0LCV$+$i$:$l$F$$$k%"%/%;%9$O!"J*M}%;%/%?$rM>J,$K%"%/%;%9$9$k2DG=@-$,9b$/$J$j!"(B $B7k2LE*$K%"%/%;%9@-G=$NDc2<$K$D$J$,$j$^$9!#(B

$B$7$?$,$C$F!"%Q!<%F%#%7%g%sJ,3d;~$N@hF,%;%/%?HV9f$N%"%i%$%s%a%s%H$K5$$r$D$1$J$$$H!"(B $B@-G=$,Dc2<$9$k$3$H$,$"$k$o$1$G$9!#(B4096B $B$J$i:GDc$G$b(B 8 $B$NG\?t$K$7$^$7$g$&!#(B $B8=>u$N%$%s%9%H!<%i$d(B gpart $BEy$N%D!<%k$O!"$=$N$X$s$NLLE]$r8+$F$/$l$^$;$s!#(B

$B$?$@$7!"A0=R$N(B offset $B$,(B 0 $B$G$J$$>l9g$O!"(B8 $B$NG\?t$K(B offset $B$N?t$r(B$B2C;;$7$F(B$B8:;;$7$F$/$@$5$$!#(B $BHs>o$KJ,$+$j$E$i$$;EMM$J$N$G$9$,!"(Boffset $B$,(B 1 $B$N;~!"O@M}%;%/%?$N@hF,$HJ*M}%;%/%?$N@hF,$O!"(B $BO@M}%;%/%?(B 1 $B8DJ,$@$1$:$l$F$$$^$9!#$3$N>l9g!"(B 8 $B$NG\?t$G$O$J$/!"(B8 $B$NG\?t(B + 1 8 $B$NG\?t(B - 1 $B$K4]$a$J$$$H$$$1$^$;$s!#(B $B!J(B2011/9/28 $B8m>pJs=$@5!K(B

$B$A$J$_$K:G6aA}$($F$-$?(B SSD $B$O!"$b$N$K$h$C$Fe$NM}M3$G!"(BMLC $B$J$i(B 128KiB, SLC $B$J$i(B 64KiB $B$N%"%i%$%s%a%s%H$,!":GDc$G$bI,MW$K$J$j$^$9!#(B 4096B $B$O9b!9(B 8 $BG\$G$9$,!"(BSSD $B$OHs>o$KBg$-$JC10L$r;}$C$F$$$k$?$a!"(B $B@-G=$KM?$($k%$%s%Q%/%H$bBg$-$$$G$9!#(B

$B:G6a$N(B Windows $B$d(B MacOS X $B$O!"=i4|@_Dj;~$N3+;O%;%/%?$r(B 1MiB $B6-3&$K(B $B@_Dj$7$F$/$k$h$&$K$J$C$F$-$F$$$^$9$N$G!"$=$l$K$J$i$C$F!"(B $B$$$D$b$=$l$K9g$o$;$k$H7h$a$F$*$/$H!"(B $B%I%i%$%V$N

$BJ*M}%;%/%?D9$,(B 512B $B$@$HJs9p$5$l$k(B?

$B$9$G$K=q$$$?$H$*$j!"(BHDD $B$+$i(B OS $B$KJs9p$5$l$k%;%/%?D9$O(B camcontrol $B%f!<%F%#%j%F%#$G%A%'%C%/$9$k$3$H$,$G$-$^$9!#(B 512e $B$N(B HDD $B$OO@M}%;%/%?D9$r(B 512B $B$HJs9p$7$^$9$,!"(B FreeBSD $B$OJ*M}%;%/%?D9$K4p$E$$$?(B I/O $B%"%/%;%9C10L$N:GE,2=$r9T$J$$$^$9!#(B

$B$7$+$7!"$I$&$b!VJ*M}%;%/%?$,(B 512B $B$@!W$H13>pJs$rJV$9$b$N$,$"$k$i$7$/!"(B $B$=$N>l9g$O:GE,2=$,8z$-$^$;$s!#$=$N>l9g$G$bF0$+$J$/$J$k$h$&$J(B $B?<9o$J1F6A$O$J$$$N$G$9$,!"

$BBP1~J}K!$O\$7$$$G$9!#(B

http://ivoras.net/blog/tree/2011-01-01.freebsd-on-4k-sector-drives.html

$B4JC1$K$^$H$a$k$H!"

UFS $B$G$"$l$P!"(Bnewfs $B;~$K%U%i%0%a%s%H%5%$%:$rBg$-$/$H$kA`:n$,M-8z$G$9!#(B $B!V(B-b 32768 -f 4096$B!W$H$$$&%*%W%7%g%s$r;XDj$7$^$7$g$&!#(B

UFS $B$N%U%i%0%a%s%H%5%$%:$O!"(BUFS $B$NCf$G$b$C$H$b>.$5$$%G!<%?%V%m%C%/$N%5%$%:$@$H9M$($F$/$@$5$$!#(B UFS $B>e$N%G!<%?$O!"!V%V%m%C%/!W$H!V%U%i%0%a%s%H!W$H$$$&(B 2 $B

4096B $B$NJ*M}%;%/%?D9$r;}$C$F$$$k>l9g!"(B $B%U%i%0%a%s%H$,(B 2048B $B$@$H%"%i%$%s%a%s%H$NLdBj$,@8$8$F%"%/%;%9B.EY$,Dc2<$9$k2DG=@-$,$"$j$^$9!#(B $B$=$3$G!"%V%m%C%/$r(B 32KiB, $B%U%i%0%a%s%H$r(B 4KiB $B$K$7$F(B newfs $B$9$k$3$H$G!"(B $B:G>.%"%/%;%9C10L$r(B 4KiB $B$K$7$^$9!#%Q!<%F%#%7%g%s@hF,$N%"%i%$%s%a%s%H$,B7$C$F$$$k$N$G$"$l$P!"(B $B$[$\$9$Y$F$N%"%/%;%9$,(B 4KiB $B6-3&$+$i%9%?!<%H$9$k$h$&$K$J$j!"8zN(E*$G$9!#(B

$B%G%a%j%C%H$O!"MFNLMxMQ8zN($,.C10L$,(B 4KiB $B$K$J$k$N$G!"(B 4KiB $B$h$j>.$5$$%U%!%$%k$r=q$-9~$s$G$b!":GDc(B 4KiB $B$r>CHq$7$^$9!#(B $B$[$H$s$I$N>l9g!"$3$l$,Bg$-$/LdBj$K$J$k$3$H$O$J$$$N$G$9$,!"(B 2KiB $B%U%i%0%a%s%H$N(B UFS $B$+$i%U%!%$%k$r%3%T!<$7$?$j$7$?>l9g$K!"(B $B6u$-MFNL$N7W;;$,0c$C$F$/$k$N$GCm0U$,I,MW$G$9!#(B

ZFS $B$O!"(BZFS $B%G!<%?%;%C%H$NFC@-$NCf$G(B ashift $B$H$$$&%Q%i%a!<%?$,(B 12 $B$K$J$C$F$$$k>uBV$,:GE,$G$9!#(B (ashift $B$O%"%i%$%s%a%s%H$N$?$a$N%Q%i%a!<%?!#(B512B $B$@$H(B 2^9 $B$J$N$G(B 9 $B$G$9(B)

# zdb
p:
    version: 28
    name: 'p'
    state: 0
    txg: 4
    pool_guid: 6065572820319548312
    hostid: 521902490
    hostname: 'test.allbsd.org'
    vdev_children: 1
    vdev_tree:
        type: 'root'
        id: 0
        guid: 6065572820319548312
        create_txg: 4
        children[0]:
            type: 'disk'
            id: 0
            guid: 16575765623681420282
            path: '/dev/ada0s1f'
            phys_path: '/dev/ada0s1f'
            whole_disk: 1
            metaslab_array: 30
            metaslab_shift: 27
            ashift: 9
            asize: 15994191872
            is_log: 0
            create_txg: 4

$B2<$+$i(B 4 $BHVL\$K$"$j$^$9!#(Bashift $B$O!"(B zpool $B$r9=@.$9$k(B HDD $B$=$l$>$l$K@_Dj$5$l$k%Q%i%a!<%?$G$9!#(B

$BJ*M}%;%/%?D9$r!V(B512B $B$@!W$HJs9p$9$k(B HDD $B$N>l9g!"8!=P$,$&$^$/$$$+$:$K(B $B>e5-$N$h$&$K(B ashift $B$,(B 9 $B$K$J$C$F$7$^$$$^$9!#$3$l$OL@<(E*$K;XDj$9$k$3$H$,(B $B$G$-$J$$%Q%i%a!<%?$J$N$G!">e5-(B URL $B$N5-;v$G$O!"(Bgnop $B$r;H$C$F(B 4096B $B$K(B $B8+$;$+$1$F(B ZFS $B%G!<%?%;%C%H$r:n@.$9$k!"$H$$$&9S5;$r;H$C$F$$$^$9!#(B

# gnop create -S 4096 /dev/ada1
# gnop create -S 4096 /dev/ada2
# zpool create data mirror /dev/ada0.nop /dev/ada1.nop
# zpool export data
# gnop destroy /dev/ada0.nop /dev/ada1.nop
# zpool import data

$B!V(Bgnop -S 4096 /dev/ada1$B!W$O!"(B/dev/ada1.nop $B$H$$$&%G%P%$%9%N!<%I$r@8@.$7$^$9!#(B gnop $B$G@8@.$5$l$k%G%P%$%9%N!<%I$O!"4pK\E*$K%"%/%;%9$rAGDL$7$9$k$@$1$J$N$G$9$,!"(B $B%;%/%?D9$dAmMFNL$r8+$+$1>eJQ$($?$j!"5?;wE*$J%(%i!<$rH/@8$5$;$?$j$H$$$&IU2C5!G=$,IU$$$F$$$^$9!#(B $B

-S 4096 $B$r;XDj$7$F@8@.$7$?(B /dev/ada1.nop $B$r;H$C$F%"%/%;%9$9$k$H!"(B $B%;%/%?D9$,(B 4096B $B$G$"$k$h$&$K8+$($^$9!#$=$l$r;H$C$F(B ZFS $B%G!<%?%;%C%H$r:n@.$7!"(B $B0l2s(B export $B$7$^$9!#$=$7$F(B gnop $B%G%P%$%9$r:o=|$7$F$+$i(B import $B$9$l$P!"(B ashift $B$,(B 12 $B$K$J$C$?%G!<%?%;%C%H$,F@$i$l$k!"$H$$$&$o$1$G$9!#(B

$B>/!96/0z$G$9$,!":#$N$H$3$m$O$3$N$h$&$JJ}K!$7$+$"$j$^$;$s!#(B $B2?$b$7$J$/$F$b;H$($k$N$G$9$,!"(B $B%"%i%$%s%a%s%H$r9g$o$;$J$$$H@-G=$NDc2<$,H/@8$7$^$9$N$G!"(B $BLLE]$G$b9g$o$;$F$*$/$N$r$*$9$9$a$7$^$9!#(B

$B$^$?!"(Bmirror $B$d(B raidz pool $B$K(B 512B $B$H(B 4096B $B$J(B HDD $B$r:.:_$5$;$k$H!"(B $B@-G=$,Mn$A$k$3$H$,$"$j$^$9!#$3$l$O(B 4096B $B%;%/%?$J(B HDD $BFCM-$NOC$G$O$J$/!"(B $B%G%P%$%9$NHsBP>N@-$K$h$C$FH/@8$9$kLdBj$G$9!#(B

$B46A[$O$3$A$i$^$G(B ($BFbMF$OF?L>$N%a!<%k$GAw$i$l$^$9(B)

$B%3%a%s%H(B:

$BCm(B: $B$*JV;v$,I,MW$J>l9g$OD>@\%a!<%k$/$@$5$$!#(B $B$?$@$7!"3N