[Samba] windows /bat script question

Alexander Lazarevich alazarev at itg.uiuc.edu
Wed Mar 9 19:21:47 GMT 2005


Thanks Marc and Nat,

I can't test for existence of anything on server1, since I'm actually 
moving the storage to server2, but I can do the following (in this case 
the testfile exists on some directory of server2):

if not exist p:\testfile (
    net use /delete p:
    ifmember.exe "DOMAIN\Projects"
    if errorlevel 1 net use p: \\server2\projects
)

I still want to run the net use /delete p: command even though 
server1\projects is offline, just because I want to remove any persistant 
connections to server1, so the clients will stop asking for 
server1\projects in the future.

The only downside here is if there is no connection to p: at all, the 
script still tries to remove p:, but that's no big deal since most 
profiles allready have p: persistantly mounted.

Thanks for the help!

Alex

On Wed, 9 Mar 2005, Kaplan, Marc wrote:

> This is definitely a kludgy way of doing it, but if I had that problem
> and wanted to solve it quickly, I would put a file named THISISSERVER1
> on \\server1\projects\. This way you can do an "if exist
> p:\THISISSERVER1" test. This is ugly, but it will work.
>
> 		-Marc
>
>> -----Original Message-----
>> From: samba-bounces+marc_kaplan=adaptec.com at lists.samba.org
> [mailto:samba-
>> bounces+marc_kaplan=adaptec.com at lists.samba.org] On Behalf Of
> Alexander
>> Lazarevich
>> Sent: Wednesday, March 09, 2005 8:51 AM
>> To: samba at lists.samba.org
>> Subject: [Samba] windows /bat script question
>>
>> Subject isn't exactly samba, but samba people usually know a lot about
>> windows bat scripting. Here's my problem:
>>
>> Currently our domain login script is doing this (among other things):
>>
>> ifmember.exe "WINDOWS-DOMAIN\Projects"
>> if errorlevel 1 ( net use p: \\server1\projects )
>>
>> This works fine. The problem is I'm moving the projects storage to a
>> different server called server 2 (which is linux running samba 3, so
> it
>> is samba related somewhat). The logic I need is:
>>
>> If p: is on server 1, remove the persistant share \\server1\projects,
> then
>> if p: does not exist, create a persistant share p: \\server2\projects.
>>
>> Sounds easy enough, but I have no idea how to test if a share is on a
>> particular remote server. I'm trying "if exist \\server1\projects",
> but
>> that doesn't work the way I want it as scripts seem to only understand
> the
>> local drive letter names, not the remote names. I could try to spit
> out
>> the contents of "net use p:" to a file, then parse out the remote name
>> string, and compare that, but that seems like a hard way to accomplish
> it
>> and I don't want the script parsing out stuff during a login. There's
> got
>> to be an easier way.
>>
>> I could also just always remove the p:, then mount it from server2.
> But
>> that adds an extra /delete every single time someone logs on, I'd
> prefer
>> not to do that. I only want to /delete p: if p: is remote server1, not
> if
>> it's remote server 2.
>>
>> Anyone have an idea?
>>
>> Thanks in advance,
>>
>> Alex
>> --
>> To unsubscribe from this list go to the following URL and read the
>> instructions:  https://lists.samba.org/mailman/listinfo/samba
> --
> To unsubscribe from this list go to the following URL and read the
> instructions:  https://lists.samba.org/mailman/listinfo/samba
>


More information about the samba mailing list