最近の変更サイトマップ

NAS4Freeで別サーバのCIFSをマウントしFTPで公開する

背景

知り合いがWindows 7をファイルサーバにしており、共有フォルダをFTPで公開したいと申す。当初はFileZilla ServerでFTPを立てていたが、英語だし設定が面倒で知人自身に管理させるのは無理がある。そこで、NAS4Freeで共有フォルダをマウントし、ブラウザで簡単に設定が行えるFTP鯖代わり使ってしまおうと思った次第。

仮想マシン上で動かせば環境の復元も簡単だし、何よりセキュリティ面でも安心だし一石二鳥でウマー。

環境

  • NAS4Free 9.2.0.1
  • Windows 7 Professional

設定

nsmb.confでcharasetsを指定するとマウント時にlibiconv.soが無いと言われるので、シンボリックリンクを張る。

cd /usr/local/lib/
ln -s libiconv.so.3 libiconv.so

マウントポイント作成

mkdir /mnt/FileServer

nsmb.confを作って編集。

/etc/nsmb.conf

[default]
workgroup=WORKGROUP

[SERVERNAME]
addr=192.168.xxx.yyy
charsets=UTF-8:UTF-8

[SERVERNAME:USERNAME]
password=$$cryptedpasswd

注意点

  • ワークグループ名(WORKGROUP)、サーバ名(SERVERNAME)、ユーザー名(USERNAME)は全部大文字にしなければならないっぽい。とりあえずユーザー名が小文字だと、パスワードが合っててもマウントされないことは確認。
  • $$cryptedpasswdには
    smbutil crypt 平文パスワード

    で得られる文字列を指定する。NAS4Freeにsmbutilが含まれていないので、ここだけは別のマシンを用意する必要がある。まぁ、仮想マシンで適当なLiveCDを動かせば済むだろうから、良い時代になったもんだ…。

  • 最近のバージョンならcharsetsも正常に機能するっぽい。UTF-8:UTF-8しか試してないけど。

fstabを編集。 -d,-fでファイルとディレクトリのパーミッションを設定してやるのがミソ。

/etc/fstab

//USERNAME@SERVERNAME/path_to_sharing /mnt/FileServer smbfs rw,-d=777,-f=777 0 0

動作確認

mount /mnt/FileServer
ls /mnt/FileServer

で正しくマウントされればNAS4Free起動時に自動マウントされるハズ。

メモ

マウントが「Cannot allocate memory」エラーで失敗する場合、共有先のリソースが枯渇しいる可能性が高い。イベントログに「非ページプール割り当ての制限に達したため、サーバーはシステムの非ページプールから割り当てることができませんでした」と出ていたら間違いない。

根本的な解決方法はWindows Serverを使えって事になるが、クライアント版でも以下のレジストリエントリを追加すると回避出来る模様。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Lanmanserver\Parameters
SizeDWORD3
IRPStackSizeDWORD50
MaxMpxCtDWORD255
MaxWorkItemsDWORD1024

感想

思ったより簡単に実現出来た。NAS4Freeが元となるFreeBSDから構造が大きく変わっておらず、ユーザーランド等もほぼそのままで助かった。

用途特化系のディストリビューションって、フットプリントを削減するために必要最低限の機能しかなく、システム領域もカツカツだったりでカスタマイズするのが大変という印象があったが、一概にそうとも言えないんだなーと思いました。まる。

参考サイト

コメント

コメントを入力. Wiki文法が有効です:
 
nas4free/mount_cifs_and_publish_ftp.txt · 最終更新: 2015-01-06 11:51 (外部編集)
CC Attribution-Noncommercial-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0