Làm cách nào để đặt thời gian chờ mạng Windows cho ổ đĩa được ánh xạ vật lý bị ngắt kết nối?


28

Khi một ổ đĩa mạng ( net use) bị ngắt kết nối vật lý, Windows Explorer (và các chương trình khác) tiếp tục cố gắng liệt kê và / hoặc sử dụng nó trong khoảng 60 giây.

Có cách nào để giảm thời gian chờ này xuống còn 5 giây không?

Để làm rõ, tôi không hỏi về các ổ đĩa mạng được Windows tự động ngắt kết nối sau một khoảng thời gian nhất định hoặc về các kết nối lại tự động trong khi đăng nhập.

Câu hỏi là về điều này:

Kết nối ổ đĩa mạng với máy tính khác. Sau đó tắt máy tính khác. Sau đó thử kết nối lại ổ đĩa mạng, ví dụ bằng cách nhấp đúp vào Windows Explorer → thời gian chờ rất lâu. Làm cách nào để giảm thời gian chờ này?


2
Bạn có thể đang tìm kiếm điều này: superuser.com/a/332754/124651
deppfx

@ Cʜιᴇ007 Cảm ơn tiền thưởng. Nhưng tôi nghĩ mọi người vẫn hiểu lầm. Tôi đã cố gắng viết lại câu hỏi một lần nữa để làm cho nó rõ ràng hơn.
Andreas Haferburg

1
@AndreasHaferburg Không có vấn đề gì, nếu bạn có thời gian để kiểm tra một số câu trả lời mới, điều đó sẽ hữu ích. :)
cʜιᴇ007

Không có thay đổi đăng ký được đề xuất trong các câu trả lời dường như có ích. Tôi nghi ngờ rằng thời gian chờ mà chúng tôi muốn giảm thực sự không phải là thời gian chờ SMB, mà là thời gian chờ TCP / IP chung hơn (hoặc kết hợp một vài trong số chúng).
mivk

Câu trả lời:


6

Trong Windows 7 và Vista, các ổ đĩa mạng được ánh xạ sẽ tự ngắt kết nối sau một thời gian và hiển thị chữ thập đỏ trên biểu tượng ổ đĩa. Bạn vẫn có thể nhấp vào ổ đĩa và xem / sử dụng nội dung nhưng các ứng dụng yêu cầu ổ đĩa mạng sẽ thấy chúng bị ngắt kết nối và sẽ không thấy tệp. Nếu bạn cố gắng ngắt kết nối ổ đĩa, nó sẽ vẫn ngồi đó với nội dung 'Ngắt kết nối mạng' - giải pháp duy nhất là khởi động lại. Điều này là do có thời gian ngắt kết nối mặc định cho các kết nối mạng không hoạt động. Để sửa lỗi này và tắt tự động ngắt kết nối, hãy làm như sau:

  1. Mở dấu nhắc lệnh với tư cách Quản trị viên. Để làm điều này, một trong hai:

    • đi đến Bắt đầu → Tất cả chương trình → Phụ kiện, nhấp chuột phải vào "Dấu nhắc lệnh" và chọn "Bắt đầu với tư cách quản trị viên" hoặc

    • nhập cmd vào hộp tìm kiếm và nhấn Ctrl+ Shift+Enter

  2. Trong phần nhắc lệnh, gõ như sau:

    net config server /autodisconnect:-1
    
  3. nhấn Enter

  4. Khởi động lại máy tính

Các ổ đĩa mạng được ánh xạ của bạn bây giờ sẽ được kết nối - đây là một sửa chữa vĩnh viễn.


4
Điều này không trả lời câu hỏi thực tế của OP, yêu cầu ban đầu đã bị hiểu sai, xem phần chỉnh sửa của OP.
Ƭᴇcʜιᴇ007

Tôi biết nó không liên quan đến OP, nhưng đây chính xác là những gì tôi đang tìm kiếm, nhưng bị từ chối truy cập. Tôi là Quản trị viên trên PC.
Rick

3

Dựa trên http://bloss.msdn.com/b/openspecification/archive/2013/03/27/smb-2-x-and-smb-3-0-timeouts-in-windows.aspx , trông giống như Windows thời gian chờ chia sẻ được kiểm soát bởi mục đăng ký "Hẹn giờ hết hạn yêu cầu".

\HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters\
Value type: Dword  
Value name: SessTimeout
Default:    60 seconds (Windows Vista)

Nó cũng đề cập đến giá trị này giảm xuống còn 20 giây trong Windows 8 SMB 3.0 để chuyển đổi dự phòng nhanh chóng.


3
Thật không may, thử nghiệm của tôi cho thấy rằng cài đặt này không ảnh hưởng đến thời gian chờ liên quan đến việc chờ các ổ đĩa mạng không khả dụng. Tôi đặt nó thành 5 giây và tôi vẫn đợi tương tự ~ 30 giây (Windows 7) Tôi đã ở trước khi tôi đặt nó (và khởi động lại).
Ƭᴇcʜιᴇ007

2

Tôi đã có cùng một vấn đề, nhưng ban đầu nó chỉ khoảng 30 giây. Nhưng khi nó nhảy lên khoảng 2 phút (vì một lý do không rõ), nó trở nên rất khó chịu, tôi phải tìm cách giải quyết nó.

Tôi đã tạo tập lệnh bó để kiểm tra mạng bằng cách xem liệu nó có thể ping máy đích hay không, nếu có thể, nó sẽ ánh xạ các ổ đĩa (nếu không được ánh xạ), nếu không, nó sẽ xóa ánh xạ.

@echo off

set ipaddr=192.168.5.3

set current=neither

:begin

    set state=down

    for /f %%i in ('ping -n 1 %ipaddr% -w 1000 ^| findstr /C:"Received = 1"') do (
        set state=up
    )

    if not %state% == %current% (
        set current=%state%
        if %state% == up (
            net use R: \\%ipaddr%\archive$
        )
        if %state% == down (
            net use R: /delete /y
        )
    )

    sleep 5

goto begin

Kịch bản đó sau đó được gọi bởi một tác vụ theo lịch trình, chạy kịch bản cứ sau 10 phút, với thời gian tác vụ tối đa là 10 phút. Mặc dù cửa sổ bảng điều khiển sau đó vẫn mở trong thời gian này, tôi hiện đang điều tra Network Conditionsvề điều này trong cài đặt lịch trình, có thể được đặt để tạo chia sẻ khi kết nối với mạng mà tôi biết chia sẻ được bật (sẽ đặt cờ), và một tập lệnh thứ hai, sẽ chạy một lần trong 5 phút hoặc lâu hơn, nếu cờ cũ hơn ít nhất là lâu hơn, nó sẽ xóa các chia sẻ, giảm thiểu thời gian của cửa sổ giao diện điều khiển.


4
Thật không may, tôi nghĩ rằng loại giải pháp này tốt như chúng ta có thể mong đợi (vẫn như năm 2014), ít nhất là khi đăng nhập / trì hoãn khởi động Explorer do các ổ đĩa mạng gây ra. Có tiền thưởng của tôi. Có lẽ chúng ta có thể xem lại nó trong một vài năm nữa. :)
cʜιᴇ007 17/12/14

sleeptrong kịch bản của bạn không phải là một lệnh gốc. Tốt hơn nên sử dụng một vbscript trong trường hợp này.
Azevedo

@ Cʜιᴇ007 Bạn đã bao giờ tìm thấy một giải pháp thực sự cho vấn đề này chưa? Tôi có một ổ đĩa mạng thường bị tắt nguồn vật lý và cố gắng truy cập nó từ máy khách dẫn đến sự chậm trễ bực bội.
WackGet

1

Giải pháp của bạn là dưới đây;

Giết "khôi phục kết nối mạng" dài khi đăng nhập (defer = ghosted)

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkProvider]

"RestoreConnection"=dword:00000001 ;(0=no attempt, you must click it)

"RestoreTimeout"=dword:00000005

Ghost kết nối nếu không phản hồi trong RestoreTimeout

"DeferConnection"=dword:00000001

1
Bất kỳ nguồn nào cho nơi bạn có thông tin này từ đó, hoặc một trong những gợi ý về lý do tại sao nó có thể giúp đỡ?
Ƭᴇcʜιᴇ007

2
Thật không may, thử nghiệm của tôi cho thấy rằng cài đặt này không ảnh hưởng đến thời gian chờ liên quan đến việc chờ các ổ đĩa mạng không khả dụng. Tôi đã tạo các khóa trên và đặt giá trị của chúng, nhưng tôi vẫn đợi tương tự ~ 30 giây (Windows 7) Tôi đã ở trước khi tôi đặt nó (và khởi động lại).
Ƭᴇcʜιᴇ007

1
Ngoài ra còn có: [HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ LanmanWorkstation \ Parameters] "ReconnectTimeout" = dword: 00000005 tìm thấy ở đây: sevenforums.com/network-sharing/... Setting mục này cộng với những cái trên hết tới 1 dường như để thực hiện một sự khác biệt rất lớn (sau khi khởi động lại). Bây giờ mọi thứ nhanh chóng như mong đợi một lần nữa.
kermit

1

Điều này làm việc với tôi trên Windows 7 như mong đợi. Ngoài ra nó giải quyết một chờ đợi lâu sau khi đăng nhập. Dán ở đây dưới dạng tệp .reg:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkProvider]
"RestoreConnection"=dword:00000000
"RestoreTimeout"=dword:00000004
"DeferConnection"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\LanmanWorkstation\Parameters]
"SessTimeout"=dword:0000000a
"ExtendedSessTimeout"=dword:00000000
"ReconnectTimeout"=dword:00000004

Điều này không hoạt động trên 8.1
midenok

0

Theo bài đăng này trên Windows7Hacker , việc khắc phục sự cố này ở phía máy khách liên quan đến chỉnh sửa sổ đăng ký.

  1. Mở Registry bằng Regedit.exe
  2. Hải quân đến HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters
  3. Tạo giá trị DWORD được đặt tên KeepConnvà đặt thời gian tính bằng giây để duy trì kết nối

Ví dụ, tôi đặt nó thành 86400 (một ngày).


Trong khi về mặt lý thuyết có thể trả lời câu hỏi, tốt hơn là nên bao gồm các phần thiết yếu của câu trả lời ở đây và cung cấp liên kết để tham khảo.
Ivo Flipse

Ngoài ra, như một lời nhắc nhở chung: Cố gắng làm cho câu trả lời của bạn dài hơn một câu và thêm một số ngữ cảnh. Giải thích cách liên kết thực sự trả lời câu hỏi - nó có thể không rõ ràng.
slhck

@IvoFlipse: Chắc chắn. Cảm ơn vì sự cố gắng.
deppfx

@slhck: Sẽ ghi nhớ điều đó.
deppfx

1
Điều này không trả lời câu hỏi thực tế của OP, yêu cầu ban đầu đã bị hiểu sai, xem phần chỉnh sửa của OP.
Ƭᴇcʜιᴇ007
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.