FC2ブログ

DebianサーバーでSambaを諦めてNFSでファイル共有

Sambaの設定をいじりたおしてもどーも以前からの共有ディレクトリにアクセスできない。
そこでNFSというものを教えてもらった。
Unix系では有名なものらしい。古いらしいけど。
まぁ、クライアント機もDebianメインでWindowsなんてSUSEよりも起動回数少ないので問題なかろう。DebianからWindowsのDドライブにもアクセスできるわけですし。

ということでNFS導入。
NFSサーバー構築
DebianでNFSサーバー&クライアント
このへんを参考に。

まずはサーバー側。

# apt-get install nfs-kernel-server
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
nfs-kernel-server はすでに最新バージョンです。


なんてことだ。最初から入ってるじゃないか。
設定ファイル編集

# nano /etc/exports

# /etc/exports: the access control list for filesystems which may be exported
# to NFS clients. See exports(5).
#
# Example for NFSv2 and NFSv3:
# /srv/homes hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_sub$
#
# Example for NFSv4:
# /srv/nfs4 gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
# /srv/nfs4/homes gss/krb5i(rw,sync,no_subtree_check)
#
/home/public 192.168.0.0/24(rw,sync,no_root_squash) ←これ追記


途中がよくわからんが、とりあえず最後に追記しておけばNFSv4で共有できるっぽい。まぁv2、v3、v4の違いすらよくわかってないわけだが。

/home
→ 共有するディレクトリを指定

192.168.0.0/24
→ アクセスを受け付けるネットワークの範囲

rw
→ 読み書き可

sync
→ 同期する

no_root_squash
→ root特権有効


とのこと。まぁ、とりあえず/home/publicという共有用に作ったディレクトリにアクセスできないのが問題なので、ここさえクライアントからアクセスできればよいのだよ。
ネットワークの範囲はこれでローカルネットワーク内からのアクセスのみ、になってるはずだ。たぶん。

書きくわえて保存したらportmap再起動?

# /etc/init.d/portmap start
Starting portmap daemon...Already running..


あれ?もう動いてるじゃん。
NFS再起動

# /etc/init.d/nfs-kernel-server restart
Stopping NFS kernel daemon: mountd nfsd.
Unexporting directories for NFS kernel daemon....
Exporting directories for NFS kernel daemon...exportfs: /etc/exports [1]: Neither 'subtree_check' or 'no_subtree_check' specified for export "192.168.0.0/24:/home/public".
Assuming default behaviour ('no_subtree_check').
NOTE: this default has changed since nfs-utils version 1.0.x

.
Starting NFS kernel daemon: nfsd mountd.


たぶんおっけー。
ちょっと確認

# showmount -e
Export list for tmin-server:
/home/public 192.168.0.0/24


よし。多分大丈夫。

ここからクライアント側の設定。

$ sudo apt-get install nfs-client
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
注意、'nfs-client' の代わりに 'nfs-common' を選択しています
nfs-common はすでに最新バージョンです。


あれ?これももう入ってるじゃん。

# /etc/init.d/portmap start


ん?何も出力されないが大丈夫か?とか思いつつ気にせず次に行く。

# mount -t nfs4 tmin-server:/home/public /home
mount.nfs4: Failed to resolve server tmin-server: Name or service not known
# mount -t nfs tmin-server:/home/public /home
mount.nfs: Failed to resolve server tmin-server: Name or service not known
# mount -a tmin-server:/home/public /home
mount.nfs: Failed to resolve server tmin-server: Name or service not known


むー。オプションが違うのかうまくマウントできない。
もしやと思いPortmapをインストール。

# apt-get install portmap
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
注意、'portmap' の代わりに 'rpcbind' を選択しています
rpcbind はすでに最新バージョンです。


やっぱもう入ってるじゃねーか!!

# /etc/init.d/portmap start
# /etc/init.d/portmap restart


む。やはり何も出力されない。大丈夫かこれ?しかしエラーも出てないからまぁ大丈夫と思うことにする。

ここでふと思い立ってtmin-serverではなくIP指定でやってみる。

# mount 192.168.x.xx:/home/public /home


お?

# df
Filesystem 1K-ブロック 使用 使用可 使用% マウント位置
/dev/md1 51610808 7086036 41903076 15% /
tmpfs 5120 4 5116 1% /lib/init/rw
tmpfs 405992 904 405088 1% /run
tmpfs 811984 144 811840 1% /tmp
udev 10240 4 10236 1% /dev
tmpfs 811984 4 811980 1% /run/shm
tmpfs 2029952 0 2029952 0% /var/tmp
tmpfs 405992 904 405088 1% /var/run
tmpfs 405992 904 405088 1% /var/lock
/dev/sdb1 4127076 105852 3811580 3% /boot
/dev/md0 721409792 339710464 345053952 50% /home
/run/shm 2097152 23432 2073720 2% /mnt/ramdisk
192.168.x.xx:/home/public
721409792 339710464 345053952 50% /home ←ここマウントされてる!!


成功だ!!と思いきや、いきなりデスクトップ設定が吹っ飛ぶ。どうやら/homeにマウントしたせいで/home/.xxがサーバー側のに乗っ取られたようだw 
緑一色の壁紙にデフォルトのアイコン。そしてパネルからのアクセス不可。
焦ってunmount。

# umount -a 192.168.x.xx:/home/public /home
umount: /mnt/ramdisk: device is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
umount: /var/run: device is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
・・・・


いろんなとこでDevice is busyが出てて大丈夫かよ?とか思ってるとデスクトップは復活。
うむ。/homeにマウントするのはヤバイ。それは理解した。
というわけで

# mount -a 192.168.x.xx:/home/public /mnt
# df
Filesystem 1K-ブロック 使用 使用可 使用% マウント位置
/dev/md1 51610808 7086036 41903076 15% /
tmpfs 405992 904 405088 1% /run
tmpfs 811984 148 811836 1% /tmp
udev 10240 4 10236 1% /dev
tmpfs 811984 4 811980 1% /run/shm
tmpfs 405992 904 405088 1% /var/run
/dev/md0 420860848 266122960 133359312 67% /home
df: `/mnt/ramdisk': そのようなファイルやディレクトリはありません
192.168.x.xx:/home/public
721409792 339710464 345053952 50% /mnt


どうやらさっきのバタバタでtmpfsの/mnt/ramdiskが吹っ飛んだようだが問題ない。Screenshot-mnt - ファイル・ブラウザフツーに/mntにアクセスするとちゃんと表示された。内容も見れる!!
よし。これでもうSambaはいらない。いけるだろう。
Debianクライアント&Debianサーバー同士のファイルのやりとりはこれでおっけーだ。
よかったよかった。

関連記事
Samba再び
MediatombでDLNAサーバー構築してみよー
Debian squeezeサーバーでSambaとSwat
Debian squeezeサーバーにMediatombでDLNAサーバー
vsftpdでFTPサーバー
Sambaではまってたのはユーザー追加をry
CentOS6.5でNFS Serverでファイル共有
総合案内当ブログについて
Windowsの目次Linuxの目次Linuxの目次2・ ・自作PC関連の目次Web技術関連の目次
全記事一覧情報サイト新着RSS一覧

Sponsored Link

Debian squeezeサーバーにMediatombでDLNAサーバー

こっちは非常にすんなり。一部躓いたけど、すぐ解決したし。
基本的にはUbuntuServerに入れた時と一緒。
MediatombでDLNAサーバー構築してみよー

# apt-get install mediatomb
設定ファイル編集

# nano /etc/default/mediatomb
# The network interface for MediaTomb to bind to and for which the multica$
# routing entry should be added; "" if the route shouldn't be added at all.
# For example: INTERFACE="eth0"
INTERFACE="eth0"←ここ、空欄だったのにeth0と書き加えて保存。


一応これは事前にipconfig叩いてethxっての確認しといたほうがいいかも。

もう一個設定ファイル編集

# nano /etc/mediatomb/config.xml
文字化け対策
<import hidden-files="no">
<filesystem-charset>UTF-8</filesystem-charset>←
<metadata-charset>CP932</metadata-charset>←ココ2行書き加え
<scripting script-charset="UTF-8">


<protocolInfo extend="yes"/><!-- For PS3 support change to "yes" --> ←ココ最初noだった気がするのでYesに
<!--
Uncomment the lines below to get rid of jerky avi playback on the
DSM320 or to enable subtitles support on the DSM units
-->
<!--
<custom-http-headers>
<add header="X-User-Agent: redsonic"/>
</custom-http-headers>

<manufacturerURL>redsonic.com</manufacturerURL>
<modelNumber>105</modelNumber>
-->
<!-- Uncomment the line below if you have a Telegent TG100 -->
<!--
<upnp-string-limit>101</upnp-string-limit>
-->
<extended-runtime-options>
<ffmpegthumbnailer enabled="no">
<thumbnail-size>128</thumbnail-size>
<seek-percentage>5</seek-percentage>
<filmstrip-overlay>yes</filmstrip-overlay>
<workaround-bugs>no</workaround-bugs>
</ffmpegthumbnailer>
<mark-played-items enabled="no" suppress-cds-updates="yes">
<string mode="prepend">*</string>
</mark-played-items>
</extended-runtime-options>
</server>
<import hidden-files="no">
<filesystem-charset>UTF-8</filesystem-charset>
<metadata-charset>CP932</metadata-charset>
<scripting script-charset="UTF-8">
<common-script>/usr/share/mediatomb/js/common.js</common-script>
<playlist-script>/usr/share/mediatomb/js/playlists.js</playlist-script>
<virtual-layout type="builtin">
<import-script>/usr/share/mediatomb/js/import.js</import-script>
<dvd-script>/usr/share/mediatomb/js/import-dvd.js</dvd-script>
</virtual-layout>
</scripting>
<mappings>
<extension-mimetype ignore-unknown="no">
<map from="mp3" to="audio/mpeg"/>
<map from="ogg" to="application/ogg"/>
<map from="asf" to="video/x-ms-asf"/>
<map from="asx" to="video/x-ms-asf"/>
<map from="wma" to="audio/x-ms-wma"/>
<map from="wax" to="audio/x-ms-wax"/>
<map from="wmv" to="video/x-ms-wmv"/>
<map from="wvx" to="video/x-ms-wvx"/>
<map from="wm" to="video/x-ms-wm"/>
<map from="wmx" to="video/x-ms-wmx"/>
<map from="m3u" to="audio/x-mpegurl"/>
<map from="pls" to="audio/x-scpls"/>
<map from="flv" to="video/x-flv"/>
<map from="mkv" to="video/x-matroska"/>
<map from="mka" to="audio/x-matroska"/>
Uncomment the line below for PS3 divx support ←Uncommentして有効に
<map from="avi" to="video/divx"/>
Uncomment the line below for D-Link DSM / ZyXEL DMA-1000 ←ここもUncomment
<map from="avi" to="video/avi"/>
</extension-mimetype>
<mimetype-upnpclass>
<map from="audio/*" to="object.item.audioItem.musicTrack"/>
<map from="video/*" to="object.item.videoItem"/>



<map from="mp3" to="audio/mpeg"/> ってのは例えばmp3をaudioファイルとして扱いますよ、って意味で、似たようなのがズラズラ並んでるんだけど、前はなーんか書き加えた記憶があるけど、どうも俺がもってるファイル形式はだいたい入ってそうなのでとりあえず放置。

Mediatomb再起動。
# etc/init.d mediatomb restart
で、ブラウザで49152ポートにアクセスすればあの設定画面が見れるはず。なので先にポート開放
# ufw allow 49152
で、クライアント機からhttp://192.168.x.xx:49152/にアクセスすると・・・GUI表示ができない?設定見直してね?とか言うメッセージ。
あら?前はすんなり言ったのになー、とか思いつつエラーメッセージ「MediaTomb UI is disabled. Check your configuration.」でぐぐると一発で。
MediaTombの設定画面が起動しない

設定ファイル /etc/mediatomb/config.xml の初めの方にある
ui enabled= の値が "no" ならば "yes" に変更してください。


ズバリ。
# nano /etc/mediatomb/config.xml
<server>
<ui enabled="yes" show-tooltips="yes"> ←この行ですね。これ、noになってたのでyesに。
<accounts enabled="no" session-timeout="30">

では改めてクライアントのブラウザからサーバー機のIP:49152でアクセス
Screenshot-MEDIATOMB - Chromium-1おっけー!!
左ペインがDatabaseとFilesystemの切り替えになってるので、まずはFilesystemからDLNAで共有したいディレクトリをバンバン選んでいく。
Screenshot-MEDIATOMB - Chromium-2ディレクトリ選ぶと、(状況により)右ペインに中身が表示されるので、+ボタンを押して追加。
これをいくつか繰り返していくと
Screenshot-MEDIATOMB - ChromiumDatabaseに共有したいフォルダが登録されてます。
これ、ツリー表示になってるので一応ここで開いて中身確認もできます。

で、まぁ相変わらずPS3はカウカウ言ってて買ってないので(w
クライアント機のTotemとVLC使って確かめてみる。
Totemの方は「編集」>「プラグイン」から
Screenshot-プラグインの設定コヒーレンスDLNA/UPnPクライアントにチェックして
Screenshot-動画プレイヤーサイドバー表示して上の方にプルダウンで選択できるようになるのでこれを選択
うまく行ってればプレイリストの欄にMediaTombって項目が。
Screenshot-動画プレイヤー-1これ、ツリー表示になってるので開くとさっきのDatabaseと同じツリー表示が。
この中から選んで再生してみればオッケー。一部画像乱れたりとか、「リソースが足りない」とかでた時あったけどだいたいおっけーでした。

VLCの場合は
ツール>設定から下のほう、「すべて」を選んで
Screenshot-設定ユニバーサルプラグ&&プレイ にチェック。
で、プレイリスト表示して
Screenshot-Wonderful Tonight [Live] - VLCメディアプレイヤーローカルネットワーク>ユニバーサルryを選択するとこれまた正常につながればMediaTombってのが現れるので。
これをクリックして同じくツリー表示にして再生したいのを選択すればおっけー。

うん。Sambaでどハマったのでこのメディアディレクトリの権限がどーかなってるかと思ったけど意外とすんなり。
するとSambaで読み込めないのはイッタイナゼナンダゼ?なぞはむしろ深まってしまった・・・
まぁSambaが全てじゃないからいいけれども。
あぁ、Windowsからのアクセス試すの忘れてたわ><

関連記事
Debian squeezeサーバーでSambaとSwat
sambaでWindowsとUbuntu Serverのファイル共有を設定してみる
Sambaでの共有設定2 動画ファイルやら音楽ファイル置いてクライアント機で再生
MediatombでDLNAサーバー構築してみよー
PS3MediaServerってDLNAサーバがBRAVIA行けるらしいとかなんとか
DebianサーバーでSambaを諦めてNFSでファイル共有
vsftpdでFTPサーバー
mt-daapdでiTunesサーバー(Debian Squeeze)
総合案内当ブログについて
Windowsの目次Linuxの目次Linuxの目次2・ ・自作PC関連の目次Web技術関連の目次
全記事一覧情報サイト新着RSS一覧

Sponsored Link

Debian squeezeサーバーでSambaとSwat

Sambaの設定でどハマった。いや、現在進行形です。
Ubuntu使ってた時と同じ設定にしてるはずなんだけど、共有フォルダが開けない。というか、最初は表示すらされなかったし。しかもVistaからつないでみると共有ディレクトリ見えないのに/homeがまる見えという最悪w

/home直下にユーザーディレクトリと別に共有ディレクトリ置いてて、その/homeパーティションをまるごと残したままシステムだけDebianに入れ替えたから所有者とか権限とかそのへんの問題かなぁ?とは思ってはいるんだけど。

[sharedata]
comment = share contents
path = /home/public/ 
read only = No
create mask = 0777


色々いじって今はこうなってる。brouseable = Yes とかwritable = Yes とか色々書き換えたり戻したりしてはいるんだけど。

ところでこのどハマり中にいろいろ調べてたら便利そうなものを発見。
Swatなるもので、ブラウザからGUIでSamba設定をいじれるようだ。
Sambaに関する記述
ちと古いようだが、早速試してみることに。

インストール時にSambaは選択していたので、swatは最初から入ってたようだけど、後から追加した人はaptで入れればおk。
# apt-get install swat
で、SambaサーバーのIP:901にhttpでアクセス。
つまり俺の環境の場合 http://192.168.x.xx:901/をブラウザで開けばおっけー。
Debian -- ユニバーサルオペレーティングシステム - Chromium最初にログインするときにパスワードをもとめられる。
一般ユーザーで入ってもそれなりに見ることはできるが、ここでは設定変更のためrootでログインしたほうがよい。
root rootパスワードを入力してログイン。
Samba Web Administration Tool - ChromiumSwatが正常に動いていてアクセスできればこのように表示される。
基本的には上の方にならんでる8つのボタンからそれぞれの設定に入るらしい。
Samba Web Administration Tool - Chromium-1「Shares」を押して、プルダウンから問題のsharedataを表示。
まぁ、なんか、問題あるとは思えないんだが・・・
これ、プルダウンのすぐ下あたりで共有ディレクトリを追加したり、逆に削除したりも可能。
「標準表示」と「詳細表示」を切り替えれば、それぞれのパラメータを見れるし変えられるし、詳細ではわけわからないほど項目が多いんだけど。
Samba Web Administration Tool - Chromium-2Statusで現在の状態確認。
クライアントもDebianで作業してたんだけど、きっちり表示されてる。
Samba Web Administration Tool - Chromium-3Passward。それぞれのユーザー、グループとそのパスワードの追加、変更など。
# smbpasswd コマンドでやってたことがGUIでできる感じだろうか。
Samba Web Administration Tool - Chromium-4Global。たぶん[Grobal]セクションの記述が反映されてる。

これで任意の設定書き換えたら「設定反映」するとsamba.confが書き換えられるみたい。
ので、設定して、設定反映→# /etc/init.d/samba restart でSambaを再起動してやれば変更した設定で立ち上がる。たぶん。

いじった感じルータの設定管理画面みたいでかなり分かりやすい。
特にユーザーやディレクトリ追加するときなんかにはうろ覚えのコマンドで試行錯誤したり、デフォルトのsmb.confのよくわからない記述の中から該当個所探してうんたらかんたら(最初から書けよというツッコミはなしの方向でw)よりかはずっと効率がいいかも。
一旦設定してしまえばそんなにしょっちゅうメンテしなきゃいかんものでもないしね。

しかし、結局俺のとこではなぜかprinterはアクセスできるのに肝心のsharedataが表示はされるけど中身にアクセスできない状況から脱することは出来なかったのであった。。。

うーん。Mediatombも入れて、こっちでは問題なくそのディレクトリ内指定できたしTotemやVLCをDLNAクライアントとして試したら再生できたし、そうすると権限の問題じゃないようなんだけどなぁ。
ま、Sambaだけがすべてじゃないし(ぉ

関連記事
sambaでWindowsとUbuntu Serverのファイル共有を設定してみる
Sambaでの共有設定2 動画ファイルやら音楽ファイル置いてクライアント機で再生
ちょっとハマってたUbuntu9.04→Ubuntu Server(仮)9.04のSamba共有フォルダアクセス
Samba再び
MediatombでDLNAサーバー構築してみよー
Debian squeezeサーバーにMediatombでDLNAサーバー
DebianサーバーでSambaを諦めてNFSでファイル共有
vsftpdでFTPサーバー
Sambaではまってたのはユーザー追加をry
総合案内当ブログについて
Windowsの目次Linuxの目次Linuxの目次2・ ・自作PC関連の目次Web技術関連の目次
全記事一覧情報サイト新着RSS一覧

Sponsored Link

ブログ内検索

カスタム検索

フリーエリア

クリックで救える命がある。

レンタルサーバー

さくらのマネージドサーバ
さくらインターネットのVPS
ConoHaのVPS
WebARENA VPSクラウド
99円レンタルサーバー
【CloudCore VPS】
GMOクラウドのレンタルサーバー
転送量無制限 ABLENET
@WAPPYレンタルサーバー
SPPDレンタルサーバー

カテゴリー+月別アーカイブ

 

アクセスカウンター

現在の閲覧者数:

プロフィール

tmin

Author:tmin
PCヲタ。ライト2ちゃんねら。
スロット好きのギャンブラー。(元
むしろ人生がギャンブルだが目下のところ負けっぱなし。
座右の銘は「結果オーライ」。故に基本適当。
トラブルもまた楽しみのひとつ

コメント、トラバ、相互リンク歓迎。お気軽にどうぞ。
当ブログについて
Twitterでこっちとあっちの更新情報流すことにしてみます。
http://twitter.com/t_min
Project Mikunchu♪Wikiできました。
Mikunchu200x40.png