maksim.s
Интересующийся
Offline
|
|
« : 10-06-2011 08:19 » |
|
Здравствуйте. Мне необходимо смонтировать несколько сетевых папок от различных учётных записей: > net use "\\somehost.ru\share1" 123 /user:SOMEHOST\user1 The command completed successfully
> net use "\\somehost.ru\share2" 234 /user:SOMEHOST\user2 Multiple connections to a server or shared resource by the same user, using more than one user name, are not allowed. Disconnect all previous connections to the server or shared resource and try again.
но windows упорно не хочет этого делать. Постоянно делать mount/unmount - не самый лучший вариант. Какие ещё есть способы обойти это ограничение?
|
|
|
Записан
|
|
|
|
PooH
Глобальный модератор
Offline
Пол:
... и можно без хлеба!
|
|
« Ответ #1 : 10-06-2011 08:48 » |
|
Правда по Win NT но я думаю не поменялось: http://support.microsoft.com/kb/106211/ruДля соединения с другой учетной записи, отключите предыдущего подключения к серверу. Данное поведение является особенностью по соображениям безопасности.
|
|
|
Записан
|
Удачного всем кодинга! -=x[PooH]x=-
|
|
|
maksim.s
Интересующийся
Offline
|
|
« Ответ #2 : 10-06-2011 08:58 » |
|
Правда по Win NT но я думаю не поменялось: http://support.microsoft.com/kb/106211/ruДля соединения с другой учетной записи, отключите предыдущего подключения к серверу. Данное поведение является особенностью по соображениям безопасности. PooH, спасибо за ответ. Сам только что наткнулся на эту статью. Но, к сожалению, постоянный mount/unmount - не самое лучшее решение. Очень неэффективно, т.к. мне нужно читать много файлов из различных расшаренных папок.
|
|
|
Записан
|
|
|
|
PooH
Глобальный модератор
Offline
Пол:
... и можно без хлеба!
|
|
« Ответ #3 : 10-06-2011 09:23 » |
|
Если винда не дает подключиться под двумя именами одновременно, то имхо только логику обработки менять.
|
|
|
Записан
|
Удачного всем кодинга! -=x[PooH]x=-
|
|
|
maksim.s
Интересующийся
Offline
|
|
« Ответ #4 : 10-06-2011 09:39 » |
|
Если винда не дает подключиться под двумя именами одновременно, то имхо только логику обработки менять.
Не совсем так. Например, удаётся подключить 2 сетевых папки следующим образом: > net use "\\somehost.ru\share1" 123 /user:SOMEHOST\user1 > net use "\\192.168.1.2\share2" 234 /user:SOMEHOST\user2 , где 192.168.1.2 - ip адрес somehost.ru. Вообще говоря, можно задать несколько имён для хоста somehost.ru и для каждой учётной записи коннектиться по различным именам. Костыль, конечно...
|
|
|
Записан
|
|
|
|
PooH
Глобальный модератор
Offline
Пол:
... и можно без хлеба!
|
|
« Ответ #5 : 10-06-2011 17:20 » |
|
винда жжот, как всегда
|
|
|
Записан
|
Удачного всем кодинга! -=x[PooH]x=-
|
|
|
maksim.s
Интересующийся
Offline
|
|
« Ответ #6 : 14-06-2011 08:01 » |
|
Задачка примерно такая. Есть конфиг примерно следующего содержания user1:pass1 \\host1\path1 user2:pass2 \\host2\path2 user3:pass3 \\host3\path3 ... Несколько процессов (не потоков, именно процессов) параллельно должны скачивать файлы из этих шар и обрабатывать их определённым образом. Если hostI == hostJ и userI != userJ, то возникнут проблемы с одновременным доступом. Хочется найти наиболее безкостыльное решение. Единственное решение, которое приходит в голову - отсортировать шары заданным образом (какие можно обрабатывать параллельно), раскидать их по соответствующим процессам и в каждом процессе делать mount/unmount.
|
|
|
Записан
|
|
|
|
PooH
Глобальный модератор
Offline
Пол:
... и можно без хлеба!
|
|
« Ответ #7 : 14-06-2011 08:54 » |
|
А нельзя поменять архитектуру, чтобы данные с хостов складывались на один хост. Хочется найти наиболее безкостыльное решение. а как это ДОЛЖНО работать? как процессы должны делить между собой данные?
|
|
|
Записан
|
Удачного всем кодинга! -=x[PooH]x=-
|
|
|
maksim.s
Интересующийся
Offline
|
|
« Ответ #8 : 14-06-2011 08:58 » |
|
А нельзя поменять архитектуру, чтобы данные с хостов складывались на один хост. Хочется найти наиболее безкостыльное решение. а как это ДОЛЖНО работать? как процессы должны делить между собой данные? Не, я не архитектор и поменять ТЗ не получится. Есть инициирующий процесс, который запускает дочерние и говорит что и с каких шар они должны собирать.
|
|
|
Записан
|
|
|
|
PooH
Глобальный модератор
Offline
Пол:
... и можно без хлеба!
|
|
« Ответ #9 : 14-06-2011 08:59 » |
|
ну вот и пусть инициирующий процесс все примонтит, а потом размонтит...
а вчем проблема совместного доступа? создай записи в hosts типа: user.host ... я так понял винда это пропускает.
|
|
|
Записан
|
Удачного всем кодинга! -=x[PooH]x=-
|
|
|
maksim.s
Интересующийся
Offline
|
|
« Ответ #10 : 14-06-2011 09:17 » |
|
ну вот и пусть инициирующий процесс все примонтит, а потом размонтит... Возникнут ещё и другие проблемы: с распараллеливанием (кто-то кого-то вынужден будет ждать) и пр. В идеале, конечно, хотелось бы множественный доступ к шарам. а вчем проблема совместного доступа? создай записи в hosts типа: user.host ... я так понял винда это пропускает.
Нет, не пропускает: в hosts добавляю: 192.168.149.137 ABCDEF123 затем ping ABCDEF123
Pinging ABCDEF123 [192.168.149.137] with 32 bytes of data: Reply from 192.168.149.137: bytes=32 time<1ms TTL=128 далее net use \\ABCDEF123\share 123 /user:SOMEHOST\user1 System error 52 has occurred.
You were not connected because a duplicate name exists on the network. If joining a domain, go to System in Control Panel to change the computer name and try again. If joining a workgroup, choose another workgroup name.
|
|
|
Записан
|
|
|
|
baldr
|
|
« Ответ #11 : 14-06-2011 09:22 » |
|
maksim.s, а почему нельзя использовать одного того же юзера для всех папок одного хоста?
|
|
|
Записан
|
Приличный компьютер всегда будет стоить дороже 1000 долларов, потому что 500 долларов - это не вполне прилично
|
|
|
x77
Команда клуба
Offline
Пол:
меняю стакан шмали на обратный билет с Марса.
|
|
« Ответ #12 : 14-06-2011 09:24 » |
|
почему каждый процесс не может замапить шары под себя уникальными идентификаторами?
|
|
|
Записан
|
|
|
|
PooH
Глобальный модератор
Offline
Пол:
... и можно без хлеба!
|
|
« Ответ #13 : 14-06-2011 09:24 » |
|
мда... винда.
а не проще клиент-сервер написать?
Добавлено через 56 секунд: x77, да тут винда просто не дает сделать два коннекта, не в идентификаторах дело.
Добавлено через 4 минуты и 53 секунды: согласен с baldr, надо завести правило: один сервер - один пользователь. А если на каком-то серваке две шары от разных пользователей. Нарезать явно права для технологического пользователя.
|
|
« Последнее редактирование: 14-06-2011 09:30 от PooH »
|
Записан
|
Удачного всем кодинга! -=x[PooH]x=-
|
|
|
maksim.s
Интересующийся
Offline
|
|
« Ответ #14 : 14-06-2011 09:38 » |
|
maksim.s, а почему нельзя использовать одного того же юзера для всех папок одного хоста?
а не проще клиент-сервер написать?
Отвечу сразу на оба вопроса. У нас такой продукт, что нам чел предоставляет доступ к своим серверам, а наше приложение качает оттуда файлы. Мы должны обрабатывать все возможные ситуации: много серверов, много шар с различным доступом на одном сервере и т.д. (зависит, вообще говоря, не от нас). Собственно эту проблему я сейчас думаю как решить. Такой продукт, такая архитектура. Раньше это приложение работало под линухом, но самба тоже требовала танцев с бубном: после нескольких mount/umount линух падал. Мало того, самба не поддерживает доступ к шифрованным шарам и т.п. Решили переписать под винду, сейчас думаем какие возникнут проблемы с виндой.
|
|
|
Записан
|
|
|
|
baldr
|
|
« Ответ #15 : 14-06-2011 09:46 » |
|
maksim.s, видимо, тут получаются следующие варианты: * писать менеджер ресурсов, управляющий подключениями * приложение пытается получить доступ к папке, если не получается - уходит на "второй круг" - пытается сделать еще пару попыток через несколько секунд И не забывать закрывать подключение после каждой сессии.
|
|
|
Записан
|
Приличный компьютер всегда будет стоить дороже 1000 долларов, потому что 500 долларов - это не вполне прилично
|
|
|
|