[samba-jp:20129] SMB_VFS_LSTAT fails on smbd/trans2.c:call_trans2qfilepathinfo
Saito
SambaML @ NSTN.jp
2008年 3月 29日 (土) 11:39:37 JST
斉藤と申します.
Fedora 8 (x86_64) とその公式リポジトリにある Samba 3.0.28a で
CIFS UNIX extensions を用いて /home の共有をサーバ間で行いた
いと考えました.
※ ユーザごとにマウントするのではなく, /home 自体を一括して共
有します
ここで,
> [Samba] Cant create in a subdirectory...
> http://lists.samba.org/archive/samba/2004-June/087651.html
> CIFS mounting problems (twilight zone :): msg#00023
> http://osdir.com/ml/linux.file-systems.cifs/2005-06/msg00023.html
にあるような問題が発生しています.
具体的な現象としては,
○ ディレクトリを作成すると, 所有者・グループが正しく設定され
ず, 作成した本人が利用できない
たとえば, 一般ユーザが自分のホームディレクトリ以下に
> /home/a_user $ mkdir testdir
のようにして作成したディレクトリが,
> /home/a_user $ ls -l
> drwxr-xr-x 2 root users 0 2008-03-28 01:26 testdir
となります (期待値は a_user:users).
ファイルの作成時には, 正しい所有者に設定されます.
> /home/a_user $ touch testfile
> /home/a_user $ ls -l testfile
> -rw-r--r-- 1 a_user users 0 2008-03-28 01:26 testfile
log level = 3 にして確認したエラーメッセージは, サーバの
/var/log/samba/log.192.168.0.2 によると,
> [2008/03/28 01:26:12, 3] smbd/trans2.c:call_trans2qfilepathinfo(3336)
> call_trans2qfilepathinfo: SMB_VFS_LSTAT of a_user/test failed (そのようなファイルやディレクトリはありません)
> [2008/03/28 01:26:12, 3] smbd/error.c:unix_error_packet(56)
> unix_error_packet: error string = そのようなファイルやディレクトリはありません
となっています (前後のログはエラーらしくはないのですが, 概ね
上記参考リンク先の Samba ML のものと同じです).
関連して, もう一点気になるのは, マウントしたときの同サーバロ
グに,
> [2008/03/28 01:26:12, 1] smbd/service.c:make_connection_snum(1033)
> 192.168.0.2 (192.168.0.2) connect to service Home initially as user mountuser (uid=0, gid=100) (pid 24264)
のようなもので, mountuser とは fstab のオプション
> credentials=/var/lib/samba/private/credentials,workgroup=A_WORKGROUP,ip=192.168.0.1,setuids,user_xattr
にある credentials の中に書いたユーザ名ですが, このユーザは
uid = 100, gid = 100 です.
testparm の出力は
-------
[global]
workgroup = A_WORKGROUP
server string = File Sharing Server
interfaces = lo, eth0
passdb backend = tdbsam
log file = /var/log/samba/log.%m
max log size = 50
server signing = auto
deadtime = 300
load printers = No
wins support = Yes
hosts allow = 127., 192.168.0.1, 192.168.0.2
hosts deny = ALL
block size = 32768
use sendfile = Yes
map archive = No
mangled names = No
delete readonly = Yes
[Home]
comment = Home Storage for Core Systems
path = /var/lib/Core-HomeStorage
valid users = mountuser
admin users = mountuser
read only = No
create mask = 0644
--------
でした.
サーバ・クライアントとも, この一般ユーザは /etc/passwd に同じ
uid, gid で存在しています.
上記参考リンク先でも解決はしなかったようです.
何が問題なのでしょうか.
(最悪, Linux の mand-lock のせいかとも…….)
なお, サーバ側 Linux のカーネルは 2.6.23.15-137.fc8, クライアン
ト側 Linux のカーネルは 2.6.24.3-50.fc8 です.
よろしくお願いします.
samba-jp メーリングリストの案内