はじめに Edit

  • ファイル名の文字コード
    samba+netatalkを使って日本語ファイル名を扱うとき文字コードが問題になります。
    主に次の2通りの方法ががありますので、好きなほうを選択してください。
    本件に関し、netatalk2 & samba3が非常に参考になります。
  • (1)Shift-JIS
    ファイル名をShift-JISで扱います。LANDISKのオリジナルと同じ文字コードです。
    Mac特有の文字が扱えないという問題がありますが、既に使用中のファイル名を変更することなく使えます。
  • (2)UTF8
    ファイル名をUTF8で扱います。
    UTF8を使用するとMac特有文字とWindows間の文字コード問題をほぼ解決することができます。
    しかし、次のような問題が発生します。
    • 文字コード変換
      LANDISK環境で使用中のファイルは、Shift_JISであるためUTF8に変換する必要があります。
      (LANDISK環境で、該当ファイルを別マシンに一旦退避させ、sambaをUTF8に設定後、
      書き戻すのが一番簡単な方法です。)

    • 相互運用性の問題
      UTF8へ変換後のファイルはオリジナルのLANDISK環境からは文字コードが違うため文字化けします。

  • nobody:nobodyの変更
    オーナー:グループ=nobody:nobodyの番号をLANDISKと同じ値、65534:65534へと変更します。
    bash-2.05b# groupmod -g 65534 nobody
    bash-2.05b# usermod -u 65534 -g nobody nobody
    
  • インストール
    yumでまとめてインストールします。
    bash-2.05b# yum install netatalk samba samba-swat
    

Samba 3 Edit

  • /etc/samba/smb.conf
    大体こんな感じになります。(UTF8で使用する場合はUTF-8を:CP932へ変更)
    hosts allowを環境に合わせて変更してください。
    # Global parameters
    [global]
    	dos charset = CP932
    	unix charset = UTF-8
    	display charset = EUCJP-MS
    	server string = HDL series
    	map to guest = Bad User
    	null passwords = Yes
    	unix password sync = Yes
    	log file = /var/log/samba/%m.log
    	socket options = TCP_NODELAY SO_RCVBUF=32768 SO_SNDBUF=32768
    	os level = 0
    	dns proxy = No
    	guest ok = Yes
    	hosts allow = 192.168.0., 192.168.1., 127.
    
    [disk]
    	comment = LAN disk
    	path = /share/disk
    	read only = No
    	force create mode = 0777
    	force directory mode = 0777
    	guest only = Yes
    
    [www]
    	path = /share/www
    	read only = No
    	force create mode = 0777
    	force directory mode = 0777
    	guest only = Yes
    
  • smb/nmbデーモンの(再)起動
    bash-2.05b# /etc/init.d/smb restart
    省略…
    SMBサービスを起動中:                               [  OK  ]
    NMBサービスを起動中:                               [  OK  ]
    bash-2.05b#
    
  • ランレベルの設定
    smbデーモンのランレベルを設定します。 ランレベル3,4,5で動作するよう設定します。
    bash-2.05b# chkconfig --level 345 smb on

Netatalk 2 Edit

  • /etc/atalk/AppleVolumes.default
    最終行を変更。(UTF8で使用する場合はUTF8を:Shift_JISへ変更)
    #~ :DEFAULT: options:usedots cnidscheme:dbd maccharset:MAC_JAPANESE volcharset:UTF8
    
    /share/disk "disk"
    /share/www  "www"
    
    #マウントするディレクトリとMacからアクセスするフォルダ名を列挙
    
  • /etc/atalk/afpd.conf
    最終行を変更。
    - -transall -uamlist uams_guest.so,uams_clrtxt.so -maccodepage MAC_JAPANESE -unixcodepage EUC-JP
    
  • /etc/atalk/netatalk.conf
    該当箇所を変更。
    # specify the Mac and unix charsets to be used
    ATALK_MAC_CHARSET='MAC_JAPANESE'
    ATALK_UNIX_CHARSET='EUC-JP'
    
  • netatalkデーモンの(再)起動
    bash-2.05b# /etc/init.d/atalk restart
    省略…
    FATAL: Module appletalk not found.
    [could not load appletalk module]
    Starting AppleTalk services: 
      Starting atalkd:                                         [  OK  ]
      Registering landisk:Workstation:                         [  OK  ]
      Registering landisk:netatalk:                            [  OK  ]
      Starting papd:                                           [  OK  ]
      Starting cnid_metad:                                     [  OK  ]
      Starting afpd:                                           [  OK  ]
    
    bash-2.05b#
    
    FATAL: Module appletalk not found.と怒られるが無視でOK!
    なぜなら、appletalkは、モジュールでなくカーネルに組み込んでいるから!
  • 接続
    MacOSX(Panther)の場合、「移動」→「サーバへ接続」→「サーバアドレス」を次のように指定して接続できます。
    afp:/at/landisk

付録 … swatの設定 Edit

sambaの設定をwebブラウザから設定するためのツールswatの設定を行います。

  • /etc/xinetd.d/swat
    # default: off
    # description: SWAT is the Samba Web Admin Tool. Use swat \
    #	       to configure your Samba server. To use SWAT, \
    #	       connect to port 901 with your favorite web browser.
    service swat
    {
    	port		= 901
    	socket_type	= stream
    	wait 		= no
    	only_from 	= 127.0.0.1
             only_from 	= 192.168.0.0/24   ←アクセスを許可する端末を追加
             only_from 	= 192.168.1.0/24
    	user		= root
    	server		= /usr/sbin/swat
    	log_on_failure	+= USERID
    	disable		= no
    }
    
  • xinetdの再起動
    bash-2.05b# /etc/xinetd restart
    
  • ブラウザでアクセス
    ブラウザで、http://YOUR_LANDISK:901/をアクセスし、rootパスワードを入力すると
    sambaの設定画面が表示されます。

    swat.jpg

番外編 … WebDAVによるファイル共有 Edit

  • mod_encodingのインストール
    yum install mod_encoding

  • /share/webdavの作成
    bash-2.05b# cd /share
    bash-2.05b# mkdir webdav
    bash-2.05b# chown apache:apache webdav
    
  • /etc/httpd/conf.d/webdav.conf
    Alias /webdav "/share/webdav"
    <Location /webdav>
        Order deny,allow
        Deny from all
        Allow from 192.168.0.0/24
        Allow from 192.168.1.0/24
        Dav on
    </Location>
    
  • apacheの再起動
    bash-2.05b# /etc/init.d/httpd restart
    httpdを停止中:                                             [  OK  ]
    httpd を起動中:                                            [  OK  ]
    
  • 接続
    Windowsの場合、
    「マイ ネットワーク」→
    「ネットワークプレースを追加する」→
    「インターネットまたはネットワークのアドレス」で
    http://192.168.1.80/webdav
    等と入力


Counter: 9279, today: 1, yesterday: 0

添付ファイル: fileswat.jpg 153件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2006-06-13 (火) 20:02:26 (6534d)