FreeBSD

sharenfsでNFSオプション設定

下記のような要領で列挙 # zfs set sharenfs="-mapall=hoge -ro -network 192.168.100.0 -mask 255.255.255.0 -alldirs" tank/share

AHCIで幸せになる

FreeBSD 8.2 Release P7H55D-M ProのSATAx6 SATA2I4-LPPCI(Sil3124)のSATAx4 SATA2I2-PCIe(Sil3132)のSATAx2 ZFS(SATA HDDx12) gmirror(SATA HDDx2) 最初は安全重視でBIOSもIDEです。ad?でディスクが認識されています。一応作業前に、zpool exportはしておき…

DTraceをFreeBSDでつかう

カーネルコンフィグに以下を加えます。 options KDTRACE_FRAME options KDTRACE_HOOKS options DDB_CTFカーネル再構築します。(REL8.*ではWITH_CTF=1をコマンドラインで与えないといけないそうです) # cd /usr/src # make buildkernel WITH_CTF=1 KERNCONF=M…

ZFS用のメモリ、キャッシュサイズなどの設定

# vi /boot/loader.conf # ZFSモジュールをロードするよと明言 zfs_load="YES" # プリフェッチは大容量メモリでも無駄読みが多いとのことでOFF vfs.zfs.prefetch_disable="1" #ZILはデータの安全のため&ドライブをSSDでもっているのでONにしておく vfs.zfs.…

FreeBSD with JailでPostfix

FreeBSD 8.2 Release portsからインストールしたPostfix まず、rc.confでsendmailを止めてpostfixを有効にする設定を書きます。 postfix_enable="YES" sendmail_enable="NO" sendmail_submit_enable="NO" sendmail_outbound_enable="NO" sendmail_msp_queue_…

FreeBSDサーバにTimeMachineのバックアップファイルを置く

FreeBSD 8.2 Release Avahi 0.6.29 netatalk 2.1.5_1,1 MacOS X (10.6.7) FreeBSDのZFS領域が余っているので、MacのTimeMachineのバックアップ領域にすることにしました。 portsよりAvahiとnetatalkを入れておきます。その後の設定で、TimeMachineの対象ドラ…

jail環境をpfのNATの下で動かす。

FreeBSD 8.2 Release re0(192.168.100.220): 外につながるI/F re0 alias(192.168.100.221): jail用alias lo0 alias(192.168.200.1): jail用alias EUCJPのファイル名を持つエリア(更新あり)をjail内のsambaを使ってUTF-8に出力し、それをホスト環境側でmount_…

FreeBSDのsystem driveをgmirrorで冗長化する

FreeBSDのシステムドライブをgmirrorで冗長化します。 ブート時に# gmirror loadと同等のことができるように/boot/loader.confを編集します。その後、sysctlでgeomメタデータを書き込めるようにして、gmirror loadして準備完了です。 # echo 'geom_mirror_lo…

FreeBSD 8.1 Rel → 8.2 Relへfreebsd-updateでアップデート

FreeBSD 8.1 Release on i386 PC freebsd-updateを使ってupdateをしてみます。 # freebsd-update upgrade -r 8.2-RELEASEして、/etc/*のmergeの確認をしながらy,y..としていきます。その後、インストールとリブートをします。 # freebsd-update install && s…

FreeBSD de Dovecot

FreeBSDでメールサーバを建てた記録です。 FreeBSD 8.1 R Dovecot portsからDovecotをインストールします。 # cd /usr/ports/*/dovecot # make install cleandocecotの設定を行います。今回はrootのメールをIMAPで読みたいので、first_valid_uidを0に設定し…

ZFSにディスクを追加する

FreeBSD 8.1 R raidzを組んでいるプールの空き容量が心許なくなったので、ディスクを追加しました。 構成は以下の通り。WDCの4台がひとつのraidzになっていて、そこにST3の4台を追加していきます。 gauntlet# atacontrol list|grep ad Master: ad2 <TRANSCEND/20090323> ATA/ATAP</transcend/20090323>…

rsyncのverboseの文字化けを直す

rsyncに--verboseオプションをつけた際、転送中のファイル名を表示してくれるのですが、困ったことに日本語が\#302などとエスケープっぽく表示されてしまいます。 悩んだ末にたどり着いた答えは、環境変数LANGでした。 ファイル名の文字コードにあわせて、> …

atacontrolでホットスワップ

FreeBSD 8.1 R ホットスワップの可能なSil3124のSATAポートがあります。dmesgでは以下のように表示されています。 <略> atapci3: <SiI 3124 SATA300 controller> port 0xa000-0xa00f mem 0xd700c000-0xd700c07f,0xd7000000-0xd7007fff irq 16 at device 6.0 on pci5 atapci3: [ITHREAD] </sii>…

FreeBSDから外部にメールを出す

FreeBSDからISPのメールサーバを中継してインターネットにメールを送信します。 まずtelnet ISP 25で接続したところ、ESMTP使ってねとお達しがありました。saslが必要になるのでもういっそのことPostfixも入れてしまいます。 インストール 両方ともportsから…

jail内からホストにメールを送る

crontabで実行されるスクリプトからroot宛にメールが来るのはjail内も同じです。*1ただ、いちいちjailにログインしてメールを読むのは億劫です。ホストのroot宛にメール転送してしまいましょう。 まず、ホスト側でメールを受け取れるよう(外部Mail到着監視モ…

pure-ftpdでFTPサーバー

FreeBSDのportsより、pure-ftpdでFTPサーバーを構築します。

/tmpの権限修復

rootでいろいろ実行していたら、/tmpをおかしくしてしまいました。権限を修復します。 /tmpは誰もが書き込める領域、一方で作ったファイルは所有者のみが消せる環境でなくてはなりません。こういうときはパーミッションにスティッキービットなるものを立てる…

ホストとjail環境でportsを共有する

ホスト側での設定 basejailの該当ディレクトリに、マウント用のportsの空ディレクトリを作成します。 gauntlet# mkdir /usr/jails/basejail/usr/portsportsを、nullfsを使用してリードオンリーでマウントします。(/etc/fstabに書いておく) gauntlet# vi /etc…

FreeBSD8.1Rでjailする

FreeBSDでjail環境を構築し、zfsのファイルシステムを割り当てます。 FreeBSD 8.1 Release ezjailのインストール portsからezjailをインストールします。 gauntlet# pwd /usr/ports/sysutils/ezjail gauntlet# make install && make clean標準ではezjailが/u…

FreeBSD8.1RでZFS(&NFS Export)

作成したZFSボリュームをNFSでExportしたときの記録です。 FreeBSD8.1R ZFSボリューム名 tank NFSサーバ機能とZFS機能がonに、ZFSボリュームのsharenfs機能がoffになっていることを確認します。 gauntlet# grep nfs /etc/rc.conf nfs_server_enable="YES" nf…

FreeBSDでntpサーバ

起動時にntpdateで自分の時刻を合わせ、ついでにntpdを起動するということを/etc/rc.confに書きます。 ntpdate_flags="ntp.jst.mfeed.ad.jp" ntpdate_enable="YES" ntpd_enable="YES"ntpdが参照するntp.confは、INTERNET MULTIFEED CO.を参考に以下の通りに…

ZFS用のメモリ、キャッシュサイズの設定など

環境 Dual Core Opteron 4GB RAM FreeBSD 8.1 R # vi /boot/loader.conf vfs.zfs.prefetch_disable=1 vfs.zfs.zil_disable=0 vfs.zfs.arc_max=1024M vfs.zfs.vdev.cache.size=64M vm.kmem_size_max=2048M vm.kmem_size=2048M

ZFS上の文字コードを指定する

FreeBSD上のZFSをNFS exportしてSnow Leopardで読み書きする場合、文字コードをutf-8で使うことになりますが、FreeBSD上で使われるutf-8はNFC、MacOSX上で使われるutf-8はNFDであるということで、濁音の処理などで不都合が発生します。 そこでZFSの機能の一…

FreeBSD(with ZFS)でWDのAFTなHDDを使う

界隈で評判のAFT@WesternDigitalですが、FreeBSD8.1Rで使うことになったので設定したことをまとめました。 Dual core Opteron 4GB Mem A8N-SLI PremiumのSATA2端子に接続 HDD: WD20EARS 4台 接続しているHDDの状況はこんな感じです。 gauntlet# atacontrol l…