MacOSX 10.7.x(Lion)以降になってから、Android端末のESファイルエクスプローラからはユーザ名でファイル共有できなくなっていた。
brew の samba3 をインストールした。
(1)標準のファイル共有をオフにする
システム環境設定>ファイル共有:切
(2)netbiosdが動いているならオフにする
</usr/local/Cellar/samba/3.6.8/etc/smb.conf>を用意する。
・ユーザを追加する
(4)sambaの起動を考える
あまり美しくないが、以下の独自</usr/local/sbin/samba>スクリプトを使うことにする。
#私は .zprofile に追加している。
brew の samba3 をインストールした。
(1)標準のファイル共有をオフにする
システム環境設定>ファイル共有:切
(2)netbiosdが動いているならオフにする
もし、</usr/local/Cellar/samba/3.6.8/var/log.nmbd>が(3)% brew install samba
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
</usr/local/Cellar/samba/3.6.8/etc/smb.conf>を用意する。
[global]% testparmを確認。
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
・ユーザを追加する
# /usr/local/bin/smbpasswd -a usernameこのsmbpasswdで/usr/local/Cellar/samba/3.6.8/private/passdb.tdbが変化したようだ。
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.
(4)sambaの起動を考える
あまり美しくないが、以下の独自</usr/local/sbin/samba>スクリプトを使うことにする。
#! /bin/sh・このsambaスクリプトを起動時に以下のようにして動かす。
#$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
#私は .zprofile に追加している。
ps ax|grep -v grep|grep /usr/local/sbin/smbd・現状では、これらにて、MacOSX10.6.x Snow Leopard時代と同様に、Android端末のESファイルエクスプローラからユーザ名でファイル共有できるようになった。
if [ $? != 0 ]; then
sudo /usr/local/sbin/samba start
fi