[netatalk-ja:0167] Re: エクセルファイルの排他制御について

HAT hat @ fa2.so-net.ne.jp
2013年 4月 9日 (火) 16:21:02 JST


HATです。

Kyo <sixty7kyo_19 @ rock.odn.ne.jp>, Sun, 7 Apr 2013 14:45:35 +0900:
> CentOS5.7+Netatalk2.2.3の設定です。
> 
> ●smb.conf
> [global]
> dos charset = CP932
> display charset = UTF-8
> workgroup = *****
> encrypt passwords=yes
> netbios name = *****
> server string =*****
> security = DOMAIN
> password server = *
> preferred master = No
> local master = No
> domain master = No
> wins server = 192.168.x.xxx
> ldap ssl = no
> create mask = 0770
> directory mask = 0771
> cups options = raw
> veto files = /.AppleDouble/.bin/.AppleDesktop/.AppleDB/
> hide files = /desktop.ini/Temporary
> Items/TheFindByContentFolder/TheVolumeSettingsFolder/Trash/Network Trash
> Folder/
> dos filemode = Yes
> map archive = no
> vfs objects = netatalk
> map to guest = Bad User
> 
> ●AppleVolumes.default
> :DEFAULT: options:usedots,upriv dperm:0771 fperm:0660
> maccharset:MAC_JAPANESE volcharset:UTF8 dbpath:/var/netatalk2/$v ea:auto
> 
> 
> 上記で
> 
> 1)WinXP_EXCEL2003 + 2)MacEXCEL2004
> 1)2)の順で開いて排他ダイアログ出ます。
> 
> 1)WinXP_EXCEL2003 + 2)MacOoo(Version不明)
> 1)2)の順で開いてダイアログ出ません。
> 
> CentOS6.4+Netatalk3.0.3でも確認しました。
> 
> smb.conf
> [global]
>         workgroup = MYGROUP
>         server string = Samba Server Version %v
>         log file = /var/log/samba/log.%m
>         max log size = 50
>         idmap config * : backend = tdb
>         cups options = raw
> [homes]
>         comment = Home Directories
>         read only = No
>         browseable = No
> [printers]
>         comment = All Printers
>         path = /var/spool/samba
>         printable = Yes
>         print ok = Yes
>         browseable = No
> [public]
>         path = /home/public
>         available = No
> 
> afp.conf
> [Global]
> ; Global server settings
> uam list = uams_dhx2.so
> ldap auth method = none
> ldap server = 192.168.0.195
> ldap auth dn = uid=diradmin,cn=users,dc=trueday,dc=local
> ldap userbase = cn=users,dc=trueday,dc=local
> ldap userscope = one
> ldap groupbase = cn=groups,dc=trueday,dc=local
> ldap groupscope = one
> ldap uuid attr = apple-generateduid
> ldap name attr = uid
> ldap group attr = cn
> log file = /var/log/netatalk.log
> log level = default:info
> mac charset = MAC_JAPANESE
> unix charset = LOCALE
> [Homes]
> ; basedir regex = /xxxx
> basedir regex = /home
> ; [My AFP Volume]
> ; path = /path/to/volume
> [public]
> ; path = /path/to/volume
> path = /home/public
> ea = auto
> file perm = 0775
> directory perm = 0775
> search db = yes
> 
> こんな感じで
> publicに保存してあるファイルを開きます。(ローカルアカウントで認証)
> 
> 1)Win7_EXCEL2003 + 2)MacOoo3.1.1
> 1)2)の順で開いて排他ダイアログ出ます。
> 
> 1)Win7_EXCEL2003 + 2)MacLibreOffice3.5.5.3
> 1)2)の順で開いて排他ダイアログ出ます。
> 
> #Oooでもダイアログでますね。。。

> これは使用するソフトウェアによると思いますが
> どうでしょうか?

なんだか、設定ファイルは普通ですね。
結局のところ、Win->Macの順序なら排他制御が働くが、
Mac->Winの順序だと排他制御が働いた実例は皆無であるということでしょうか。
だとすると、排他制御が重要なネットワークでは、sambaとnetatalkを併用するな。
という結論ですね。

> あと、Mac同士とか排他聞いているかも確認したほうが
> (Mac先だと大丈夫とのことだから効いてそうですが)
> よさそうです。

手元のMac 3台で同一のnetatalkに接続して確認しましたが、
結構難解です。
Excelは全く使っていないので、テキストファイルで実験しました。

Mac OS 9 -> OS X 10.8      ○
ちゃんとロックします。

OS X 10.8 -> Mac OS 9      ×
何も警告が出ず、SimpleTextで編集/保存できてしまいました。

Mac OS 10.6 <-> OS X 10.8  △
複雑でわけがわかりません。
ロックしたり、しなかったりします。
10.6で開いてから閉じたのに、10.8ではまだロックしてたりもします。
色々いじっていると、「バージョン履歴がどうのこうの」という警告が出る
こともあります。
最近のOS Xは「バージョン」なる機能が増えて、更にややこしくなっている
ようです。

結局のところ、クライアント数が多いネットワークではsamba/netatlkの
併用は推奨できないということか。

そういうことがしたい場合、
Windowsをサーバにする
OS Xをサーバにする
HELIOSナントカをサーバにする
というのが正しいのかもしれない。

ウチではsamba/netatalkを併用して20年くらい経過しましたが、
排他処理でトラブった経験はありません。
ユーザ最大二人だからか。

-- 
HAT


netatalk-ja メーリングリストの案内