brew の samba3 をインストールした。
(1)標準のファイル共有をオフにする
システム環境設定>ファイル共有:切
(2)netbiosdが動いているならオフにする
もし、</usr/local/Cellar/samba/3.6.8/var/log.nmbd>が lib/util_sock.c:667(open_socket_in) bind failed on port 137 socket_addr = 0.0.0.0. Error = Address already in use になるならば、 # lsof -nP -iUDP|grep netbiosd を見て、 netbiosd 71 _netbios 3u IPv4 0x9c1852d416cc8b7 0t0 UDP *:138 netbiosd 71 _netbios 4u IPv4 0x9c1852d416cca3f 0t0 UDP *:137 であれば、netbiosdを無効にする。 # launchctl unload -w /System/Library/LaunchDaemons/com.apple.netbiosd.plist(3)% brew install samba
</usr/local/Cellar/samba/3.6.8/etc/smb.conf>を用意する。
[global] workgroup = WORKGROUP server string = Samba 3.6.8 passdb backend = tdbsam log level = 1 [homes] comment = Home Directories browseable = no read only = no create mask = 0644 directory mask = 0775 valid users = %S% testparmを確認。
・ユーザを追加する
# /usr/local/bin/smbpasswd -a username New SMB password: Retype new SMB password: Forcing Primary Group to 'Domain Users' for username Forcing Primary Group to 'Domain Users' for username Added user username.このsmbpasswdで/usr/local/Cellar/samba/3.6.8/private/passdb.tdbが変化したようだ。
(4)sambaの起動を考える
あまり美しくないが、以下の独自</usr/local/sbin/samba>スクリプトを使うことにする。
#! /bin/sh #$Id: /usr/local/sbin/samba,v 1.0 2013-04-24 14:49:49+09 root$ if [ `whoami` != "root" ]; then echo "Must be root." exit 1 fi case "$1" in start) /usr/local/sbin/nmbd -D /usr/local/sbin/smbd -D echo "Start samba" ps -afx|grep -v egrep|egrep '^ UID|/usr/local/sbin/.mbd' ;; stop) killall smbd killall nmbd ;; status) echo "Status samba" ps -afx|grep -v egrep|egrep '^ UID|/usr/local/sbin/.mbd' echo "----------------------------------------------------" (cd /usr/local/Cellar/samba/3.6.8/var;ls -lh log.?mbd) echo "#################################################" echo "$ tail /usr/local/Cellar/samba/3.6.8/var/log.nmbd" tail /usr/local/Cellar/samba/3.6.8/var/log.nmbd echo "#################################################" echo "$ tail /usr/local/Cellar/samba/3.6.8/var/log.smbd" tail /usr/local/Cellar/samba/3.6.8/var/log.smbd echo "#################################################" /usr/local/bin/smbstatus ;; *) echo "Usage: $0 start|stop|status" >&2 exit 3 ;; esac exit 0・このsambaスクリプトを起動時に以下のようにして動かす。
#私は .zprofile に追加している。
ps ax|grep -v grep|grep /usr/local/sbin/smbd if [ $? != 0 ]; then sudo /usr/local/sbin/samba start fi・現状では、これらにて、MacOSX10.6.x Snow Leopard時代と同様に、Android端末のESファイルエクスプローラからユーザ名でファイル共有できるようになった。
0 件のコメント:
コメントを投稿