Відключення / вихід із спільної мережі Windows без перезавантаження служби Workstation


14

У мене працює файловий сервер (SMB), до якого я підключився в Провіднику (Windows 7 Professional), відвідавши безпосередньо \\ 1.2.3.4. Я ввійшов як один користувач, не зберігаючи облікові дані, і тепер бажаю вийти (насправді я хочу змінити іншого користувача, але в цілому можу вийти із системи).

Я шукав способи зробити це і знайшов купу інформації, яка пропонує використовувати якусь форму net use \\1.2.3.4 /del:

Однак жодне з них насправді не могло працювати на мене. Я запускаю net use * /del, а потім використовую net useдля перевірки того, що список порожній, і все ж поділка загадково залишається в провіднику, не впливає, доступна та все ще використовує попередній логін.

Ще одна річ, яку я намагався, яка теж не вдалася, робила, наприклад, net use \\1.2.3.4 /user:newusernameперемикання облікових даних. Однак, навіть коли net useз'явився порожній список з'єднань , це все-таки призвело до помилки, вказуючи на те, що декілька підключень до одного ресурсу з різними користувачами заборонено - чому існували з'єднання, які не відображалися в net useсписку списку, для мене загадка.

Потім я знайшов цю статтю Як вийти із спільної папки (microsoft.com), яка рекомендує:

  1. net use * /del (або будь-який сервер).
  2. Очистити облікові дані від менеджера довірених даних.
  3. Перезапустіть службу Workstation.

Ця процедура спрацювала для мене. Менеджера довіри не викликало нічого цікавого, оскільки я не зберігав облікові дані, але netключовим було перезапуск служби Workstation після очищення з'єднань (мені довелося закрити всі вікна провідника, щоб сервіс перезапустився).

Моє запитання: Це взагалі не дуже зручно, особливо коли мені доводиться пояснювати це менш досвідченим користувачам. Хоча я, безумовно, можу створити, наприклад, пакетний скрипт для автоматизації всієї справи, чи існує фактичний, правильний, послідовний спосіб зробити це, що не передбачає перезавантаження служб (і, можливо, не включає командний рядок, хоча особисто я цього не роблю ' t розум)?

Також підпитання: мені дивно, що переважна більшість знайдених нами ресурсів з цього приводу не пропонувала перезапустити Workstation, а запропонований процес використання net useпоодинці, здавалося, працює принаймні для інших людей, які розмістили коментарі щодо ці посади. Чи унікальний для мене перезапуск робочої станції і вказує на якусь іншу проблему на моїй машині, чи це просто чомусь залишилось поза всіма інструкціями? Лише в службі підтримки microsoft.com були інструкції, які рекомендували цей крок, і ось, нарешті, він працював для мене.

Вихід із частки здається, що це був би досить поширений випадок використання, щоб виправдати якийсь простий спосіб зробити це, тому мене бентежить те, як мені важко було це зрозуміти.


Інші речі, які я пробував без ефекту:

  • Закриття всіх вікон Провідника до та після використання net useкоманд (як це запропоновано у відповіді Коді Браунс ), а також перехід із налаштуваннями "окремого процесу за вікном папки", сподіваючись, що це якесь кешування даних про керування обліковими записами (також надихнуте на цю відповідь) .
  • Зміна налаштувань управління зв’язком з домашньою групою (запропоновано відповіддю holmzi_online на вищезгаданій публікації microsoft.com).
  • Вбивство всіх дослідницьких процесів (включаючи основний) та перезапуск дослідника після net use * /del(запропонований тут Робертом Гріром , хоча ця проблема стосувалася зіставлених дисків).


1
@sttr Дякую, але я не впевнений, що бачу зв’язок між цією статтею. Ви можете дати підказку?
Джейсон C

Підкажіть, що в режимі ABE кожен користувач бачить лише папки та файли, на які він має право. В іншому випадку користувач повинен бути самодостатнім для доступу до ресурсів і без необхідності введення пароля. Якщо "сервер" - це Windows 7, то подивіться slickit.ca/2009/07/webdav-on-windows-7.html
STTR

1
@STTR Дякую Як приховування папок від несанкціонованих користувачів або налаштування сервера WebDAV допомагає вийти з загальної частини SMB, до якої можна отримати, ввівши \\ адресу?
Джейсон C

1
@STTR Питання полягає в тому, як випливає з назви, як вийти із загальної папки (SMB, що використовується для Windows для "спільних папок") без перезавантаження служби Workstation (див. Також "Я ввійшов як один користувач, без збереження облікових даних, і тепер бажаю вийти " ). Я не додаю WebDAV до своїх серверів, і не можу додавати сервіси WebDAV до серверів, я не маю контролю над цим, і мені не зрозуміло, як це вирішує проблему зручного виходу. Чи знаєте ви, як вийти із спільної папки?
Джейсон C

Відповіді:


1

2) Ви не самотні в цьому питанні. Більшість людей, мабуть, ніколи не відчувають цього, оскільки у них є лише один користувач та / або кілька користувачів, але всі вони мають той самий пароль. Я, здається, відчуваю це постійно. Я припускаю, що це так, як у мене однакове ім’я користувача на декількох комп'ютерах, але з різними паролями .. (я не в домені; ноутбук - це Windows 8.1 з серверами на базі Windows та Linux ..)

(з пам’яті) Якщо я відкрию кореневу частку комп'ютера, наприклад \ raspi, перш ніж отримати доступ до заблокованої папки, наприклад \ raspi \ private, у мене виникне ця проблема. Здається, що з'єднання здійснюється спочатку за допомогою публічного / відкритого доступу, а потім зберігається.

Щодо 1), мені потрібно лише закрити вікна Провідника та (іноді командні підказки), які отримали доступ до цієї спільної доступу. Мені ніколи не доводилося перезапускати службу робочих станцій.

Але це може працювати для мене, тому що я завжди кажу Windows "запускати вікна папок в окремий процес".

Просто думка..


Спасибі!! Я дуже сподівався, що ваша пропозиція закрити вікна Explorer буде простим виправленням (у мене також є окремі процеси на вікна папок), можливо, деякі кешовані облікові дані для кожного процесу. На жаль, це не зробило хитрощів, а також не відключило окремі процеси за вікном. Я також не бачив жодних змін у поведінці, якщо намагався отримати доступ \\ 1.2.3.4 \ Share спочатку замість кореня (також немає різниці в доступі до імені хоста, а не IP). Я також не в домені і використовую сервери на базі Windows та Linux. Щось економить облікові дані чи зв’язки, але я не знаю, що.
Джейсон C

Ще один момент даних: Незалежно від налаштувань процесу на папку, вбивство всіх процесів провідника (включаючи основний) і перезапуск Explorer також не мали ефекту, що мене здивувало.
Джейсон C

Я збираюся трохи пограти зі своїм оточенням, щоб перевірити це більше, і я подумав .. ваші вікна (провідник, командний рядок і т. Д.) Всі підвищені, або все ні, правда? Мене не раз засмучувало, коли я не усвідомлював або забув, що один із моїх додатків був піднятий .. Це робить деякі дивні речі для мережевих акцій ...
Коді Браун

Я використовував обліковий запис адміністратора, і все підвищено. Я створив новий обліковий запис не адміністратора і перевірив звідти, поведінка незмінна.
Джейсон C

1

Я працював так:

  1. Біжи net use * /delete
  2. Очистіть облікові дані (наприклад, мій - 172.26.190.129, а дата створення - сьогодні, тільки це)
  3. Вимкнути "локальне з'єднання" (Панель управління \ Мережа та Інтернет \ Net Connect \ Local Connect)
  4. Зачекайте хвилинку (я не знаю чому, але я думаю, що це може перервати деякі посилання від мого Win7 до Ubuntu і може очистити кеш)
  5. Увімкніть "локальне з'єднання", і воно спрацювало ..

2
Що ви маєте на увазі під «Очистити облікові дані» і як це робити?
Калімо

"Очистити облікові дані" тут абсолютно незрозуміло.
Джонатан Вуд

0

Це може бути довгий знімок, але чи довго ви чекали після використання net use * /d? Наскільки я знаю, навіть після видалення спільного доступу Windows зберігає сеанс відкритим, якщо є відкриті ручки (вікно провідника тощо). І навіть після закриття цих ручок настає період тайм-ауту, протягом якого він знову підключить частку. За замовчуванням здається 10-15 хвилин. Ви можете скоротити це в реєстрі.

Дивіться https://blogs.msdn.microsoft.com/oldnewthing/20110223-00/?p=11413

Однак, схоже, що "KeepConn" більше не використовується в новіших версіях Windows. Див. "Таймер підключення в режимі очікування" на цій сторінці: http://blogs.msdn.com/b/openspecification/archive/2013/03/19/cifs-and-smb-timeouts-in-windows.aspx


0

Пуск -> Панель управління -> Облікові записи користувачів та безпека сім'ї -> Облікові записи користувачів -> Управління своїми обліковими записами.

Розгорніть один із своїх "Уповноважених даних Windows", а потім натисніть "Видалити з сховища".

Пуск -> Панель управління

Панель управління -> Облікові записи користувачів та безпека сім'ї

Облікові записи користувачів та безпека сім'ї -> Облікові записи користувачів

Облікові записи користувачів -> Керуйте своїми обліковими записами

Вийти

Так


-1
net use * /del
net stop Workstation /Y
cmdkey /delete:<resourcename>
net start Workstation
net start browser

Спосіб 2: використовувати кілька імен NetBIOS для одного комп’ютера:

reg add "HKLM\System\CurrentControlSet\Services\LanmanServer\Parameters" /v OptionalNames /t REG_MULTI_SZ /d "NetBIOSName01\0 NetBIOSName02\0 NetBIOSName03\0"

Потім ви можете підключити ресурси різних користувачів, використовуючи різні імена NetBIOS.

net use L: \\NetBIOSName01 /user:<username01> <password01> /P:Yes
net use M: \\NetBIOSName02 /user:<username02> <password02> /P:Yes
net use N: \\NetBIOSName03 /user:<username03> <password03> /P:Yes

Відредагуйте %windir%\system32\drivers\etc\lmhostsта додайте

<Server IP>  NetBIOSName01            #PRE
<Server IP>  NetBIOSName02            #PRE
<Server IP>  NetBIOSName03            #PRE
<Server IP>  <OriginalNetBIOSname>            #PRE

на всіх мережевих робочих станціях

Усі користувачі підключаться до його ресурсів.


Відповідно до назви питання, це не відповідає на питання.
Даніель Б

Дякую, але це перезапускає сервіс Workstation. Я згадував про це у питанні, але вже знаю, що можу автоматизувати перезапуск зі скриптом. Насправді я розмістив приблизно такий самий набір команд на superuser.com/a/883606/245945 . Що я насправді шукаю, це детально, де я написав "запитання" та "підпитання" жирним шрифтом у своєму дописі.
Джейсон C

@JasonC Первісна причина всіх цих дій Системна помилка 1219?
СТТР

@STTR Первісна причина - це бажання вийти без перезавантаження служб. Результати моїх спроб описані у моєму дописі.
Джейсон C

@STTR Дякую Оновлення цікаве, і я ціную ваш час, але мені незрозуміло щодо зв'язку. Я не намагаюся відображати диски або входити з кількома користувачами одночасно. Я просто намагаюся вийти з папки, до якої первісно отримували доступ, перейшовши безпосередньо на \\ адресу. Це не обов'язково навіть бути комутатором користувачів. Можливо, я просто відходжу від комп’ютера, і не хочу залишати вхід увійти в систему. Як вхід у систему, як кілька користувачів на кількох спільних дисках, допоможе вийти із загальної папки без перезавантаження служб?
Джейсон C
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.