Fresh build of FreeNAS current stable release. I created a single CIFS share with windows permissions. Set log-level to debug.
Added a single file with an ADS from the internet. Mounted the share on a debian 8.5 build. Performed 'rm' on the file. The 'rm' command never completes.
strace on the rm command shows that it hangs on the unlink():
Code:
newfstatat(AT_FDCWD, "openvpn.zip", {st_mode=S_IFREG|0775, st_size=12984, ...}, AT_SYMLINK_NOFOLLOW) = 0
geteuid() = 1000
newfstatat(AT_FDCWD, "openvpn.zip", {st_mode=S_IFREG|0775, st_size=12984, ...}, AT_SYMLINK_NOFOLLOW) = 0
faccessat(AT_FDCWD, "openvpn.zip", W_OK) = 0
unlinkat(AT_FDCWD, "openvpn.zip", 0^C
Process 1281 detached
<detached ...>
The log.smbd file rapidly fills with the following block of text over and over and over again until I control-c the rm command.
Code:
[2016/07/13 04:54:21.821077, 10, pid=11240, effective(0, 0), real(0, 0)] ../source3/smbd/open.c:3866(open_streams_for_delete)
open_streams_for_delete found 2 streams
[2016/07/13 04:54:21.821091, 10, pid=11240, effective(0, 0), real(0, 0)] ../source3/smbd/open.c:3897(open_streams_for_delete)
Unable to stat stream: openvpn.zip:Zone.Identifier:$DATA
[2016/07/13 04:54:21.821103, 10, pid=11240, effective(0, 0), real(0, 0)] ../source3/smbd/open.c:4973(create_file_default)
create_file: access_mask = 0x10000 file_attributes = 0x80, share_access = 0x7, create_disposition = 0x1 create_options = 0x0 oplock_request = 0x0 private_flags = 0x4 root_dir_fid = 0x0, ea_list = 0x0x0, sd = 0x0x0, fname = openvpn.zip:Zone.Identifier:$DATA
[2016/07/13 04:54:21.821117, 10, pid=11240, effective(0, 0), real(0, 0)] ../source3/smbd/open.c:4450(create_file_unixpath)
create_file_unixpath: access_mask = 0x10000 file_attributes = 0x80, share_access = 0x7, create_disposition = 0x1 create_options = 0x0 oplock_request = 0x0 private_flags = 0x4 ea_list = 0x0x0, sd = 0x0x0, fname = openvpn.zip:Zone.Identifier:$DATA
[2016/07/13 04:54:21.821157, 10, pid=11240, effective(0, 0), real(0, 0)] ../source3/smbd/trans2.c:301(get_ea_names_from_file)
get_ea_names_from_file: ea_namelist size = 52
[2016/07/13 04:54:21.821184, 10, pid=11240, effective(0, 0), real(0, 0)] ../source3/smbd/trans2.c:210(get_ea_value)
get_ea_value: EA user.DosStream.Zone.Identifier:$DATA is of length 27
[2016/07/13 04:54:21.821197, 10, pid=11240, effective(0, 0), real(0, 0)] ../lib/util/util.c:559(dump_data)
[0000] 5B 5A 6F 6E 65 54 72 61 6E 73 66 65 72 5D 0D 0A [ZoneTra nsfer]..
[0010] 5A 6F 6E 65 49 64 3D 33 0D 0A 00 ZoneId=3 ...
I've managed to catch a log file from service start until I killed it (without the log being overwritten in the process - it's quick)
You can see the posix_unlink and deletion starts at time-stamp 2016/07/13 05:21:03.532018 in the attached
Interested to hear your thoughts. Output seems to be exactly the same as this previous post
https://forums.freenas.org/index.ph...ng-signal-4-on-file-delete.34865/#post-212783