Nếu tôi có một máy khách windows đọc một tệp trên Linux smb share trong khoảng thời gian <= 10 giây, máy khách windows sẽ hiển thị thông tin không chính xác (được lưu trong bộ nhớ cache?) Của tệp đó.
Tôi đã tái tạo điều này trên nhiều hệ thống.
Các bước ví dụ để sao chép:
1) thiết lập chia sẻ samba linux - ví dụ này, sử dụng Debian và cài đặt samba. thí dụ:
sudo mkdir /test
sudo chmod 777 /test
bổ sung smb.conf:
[test]
read only = no
locking = no
path = /test/
guest ok = yes
2) Ánh xạ thư mục này dưới dạng một ổ đĩa trong máy khách windows (bài kiểm tra này sẽ sử dụng L :)
3) tạo một tập tin với một số văn bản trên máy chủ samba
nano /test/test.txt
ORIGINAL
4) tạo tệp bó đơn giản trên máy windows để xem tệp cứ sau 5 giây:
copy con test.bat
@echo off
cls
:1
type L:\test.txt
timeout 5
goto 1
5) chạy tệp bó, nó sẽ hiển thị GỐC sau mỗi 5 giây.
6) trên máy chủ linux, thay đổi nội dung tập tin
nano /test/test.txt
CHANGED
7) xem tệp bó đang chạy trên windows, nó vẫn sẽ nói "NGUỒN GỐC" cứ sau năm giây chứ không phải "THAY ĐỔI" như tệp thực.
8) chấm dứt tệp bó và đợi ~ 15 giây, HOẶC thay đổi thời gian chờ thành thứ gì đó> 10 giây và nó sẽ cập nhật đúng.
Hy vọng rằng tôi đã giải thích và vạch ra cách kiểm tra điều này đầy đủ.
Bất cứ ai cũng có thể tái tạo hành vi này và / hoặc đề nghị cách khắc phục điều này?
.
.
.
GHI CHÚ:
Máy khách Linux> Máy chủ Linux SMB hiển thị nội dung tệp thích hợp.
Windows Client> Windows SMB Host hiển thị nội dung tệp thích hợp.
Cụ thể là Windows Client> Linux SMB Host không hiển thị nội dung tệp thích hợp trong khoảng thời gian làm mới <= 10 giây.
Tất cả các hương vị Windows tôi đã thử nghiệm với (Win7, Win10, Server2016) đều thể hiện hành vi tương tự.
Tôi cũng đã thử nghiệm các giao thức khác nhau trên chia sẻ samba của mình 'NT1, SMB2, SMB3' và chúng không thay đổi hành vi.
LƯU Ý: Tôi tin rằng đây rất có thể là sự cố của Windows, nhưng tôi chưa nhận được bất kỳ phản hồi nào về kỹ thuật hoặc siêu người dùng trong một tuần. Điều này khá dễ dàng để kiểm tra, bất cứ ai cũng có thể xác nhận hành vi này hoặc trạng thái khác?