Just nu i M3-nätverket
Jump to content

TS Mapped Network Drives


Rickard_Activeadmins.net

Recommended Posts

Rickard_Activeadmins.net

Hallå,

 

Jag har ytterligare ett liten konf jag behöver hjälp med när det gäller Terminal Services i App mode. Jag har inte lyckats hitta någon information om det...

 

Jag vill att när en klient loggar in via TS App så ska dennes mappade nätverksvägar (map network drive) följa med.. De skall alltså synas precis som vanligt i Utforskaren. Men det gör de inte nu.. Skrivare följer med, och hemkatalog, men inte det där. Kan man på något sätt länka den lokalt mappade nätverksdriven så att den hanterads i AD? När man gör en map network drive så är det väl antagligen bara en lokal angelägenhet, det vill säga den inställningen sparas bara på klienten, inte av AD.. Eller?

 

 

/Rickard

Link to comment
Share on other sites

Gör ett login-script som mappar upp dem och peta in i AD:t att detta skall köras när vederbörande loggar in.

 

Så har jag gjort och nu mappas det som jag vill upp åt mina användare :)

 

Exempel:

@echo off

net use f: /delete

net use g: /delete

net use f: \\<servernamn>\<delning>

net use g: \\<servernamn>\<delning>

 

Ge filen ändelsen .bat och stoppa den sedan i <dc-server>\netlogon så kommer alla åt den.

 

 

Link to comment
Share on other sites

Rickard_Activeadmins.net

 

nja..det var inte riktigt rätt.. Det där gällde tvärtom, ifall man ville få åtkomst till den lokala datorn genom TS. Jag vill helt enkelt att de nätverksmappningar man gjort lokalt ska följa med till TS... Annars kan man ju alltid skapa nya nätverksmappningar i TS, men det är det jag vill undvika...

 

Link to comment
Share on other sites

Rickard_Activeadmins.net

 

Jo, så kan man ju göra.. Men då tror jag inte ens man behöver göra något script, det går nog att ordna direkt genom AD.. Men det är inte riktigt vad jag är på jakt efter här. Med den här lösningen så tar den ju inte hänsyn till individens uppmappningar, utan man specar ju bara precis vilka mappningar som ska göras..och det blir krånligt om en användare måste säga till mig varje gång hon har lagt till en till mappning... Det är ju inte riktigt samma sak som att klientens befintliga mappningar förs över till TS..

 

Men tack för tipset iaf...

 

Link to comment
Share on other sites

Rickard_Activeadmins.net

 

Isånt fall kan de lika gärna gå in och göra nya mappningar direkt i TS.. Verkar enklare..:)

 

Men återigen tack för att du tog dig tid..:)

 

Link to comment
Share on other sites

Följer inte de där mappningarna med profilen. I så fall, använd Roaming Profiles.

______________________________________________

Verkar som jag har fått tillbaka mitt alias.

Tror jag, eller?

 

Link to comment
Share on other sites

Rickard_Activeadmins.net

 

nä..de följde inte med profilen.. Jag hittade dock precis ett alternativ för just det, men den valmöjligheten var gråad... Kunde inte välja att ta med client drives.. Vet ej varför, har inte kollat något mer på det just nu..

 

Roaming profiles vill jag inte använda då det skulle fungera dåligt eftersom det ofta sker över uppringd anslutning, eller VPN, och att det då skulle ta alltför lång tid.. Plus att det inte är snällt mot servern... Med 300 användare så blir det ju en del tryck.. Men annars hade det varit en bra idé.

 

Link to comment
Share on other sites

Nu verkar du ha hittat ett sätt att göra det (den gråa rutan). Men en idé är att sköta det via ett lite snyggare login-script äv vad som föreslogs ovan.

 

Tänker mig en .vbs som kollar vilka mappningar klienten har och skapar samma på TSen, borde inte vara så svårt med rätt APIer eller en bra DLL.

 

Om du vill kan jag kanske svänga ihop ett sådant, men det kanske löser sig med den mystiska kryssrutan?

 

/Mn

Slartibartfast: Is that your robot? Marvin: No. I'm mine.

 

 

Link to comment
Share on other sites

Rickard_Activeadmins.net

 

ja..det får du gärna göra om du vill.. Jag scriptar inte själv, och ett sånt script kan ju vara bra att ha, så...ja tack!

 

Link to comment
Share on other sites

Jag har två script som nästan är klara som fixar detta. Ska bara fixa till lite errorhantering.

 

Återkommer imorgon (tydligen måste man göra nyttiga saker också, inte bara roliga =).

 

/Mn

Slartibartfast: Is that your robot? Marvin: No. I'm mine.

 

 

Link to comment
Share on other sites

Då så. Kastade ihop ett par script som fixar detta. Säkert inte den snyggaste lösningen men det fungerar.

 

Det första scriptet kollar vilka enheter som man har mappade och skriver det till en fil i användarens hemkatalog ("mappings").

 

Det andra scriptet läser filen och mappar upp enheterna.

 

Om du lägger det första scriptet som ett utloggningsscript (ska visst gå i AD). Eller möjligen sist i inloggningsscriptet. Och den andra scriptet kör du på Terminal Servern. Kan även ligga i autostart...

 

Script 1

Option Explicit

Dim objNetwork, objDrives, objUser, objFSO, objFile
Dim strPath, strFileName, X

strFileName = "mappings"

Set objNetwork = WScript.CreateObject( "WScript.Network" )
Set objDrives = objNetwork.EnumNetworkDrives

Set objUser = GetObject("WinNT://" & objNetwork.userDomain  & "/" & objNetwork.userName)
strPath = objUser.homeDirDrive & "\" & strFileName

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.CreateTextFile (strPath, True)

For x = 0 to objDrives.count-1 Step 2
if objDrives.item(x) <> "" Then
	objFile.writeline objDrives.Item(x) & " " & objDrives.Item(x+1)
end if
Next

objFile.close
Set objNetwork = Nothing
Set objDrives = Nothing
Set objUser = Nothing
Set objFSO = Nothing
Set objFile = Nothing

 

Script 2

Option Explicit

On Error Resume next

Public objNetwork, objDrives, objUser, objFSO, objFile
Public strMapping, strPath, strDrive, strFileName

strFileName = "mappings"

Set objNetwork = WScript.CreateObject( "WScript.Network" )
Set objDrives = objNetwork.EnumNetworkDrives

Set objUser = GetObject("WinNT://" & objNetwork.userDomain  & "/" & objNetwork.userName)
strPath = objUser.homeDirDrive & "\" & strFileName

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile (strPath, 1, False)

call DoMappings

objFile.close
Set objNetwork = Nothing
Set objDrives = Nothing
Set objUser = Nothing
Set objFSO = Nothing
Set objFile = Nothing

Sub DoMappings
On Error resume next
While objFile.AtEndOfStream <> True
	strMapping = objFile.ReadLine
	strDrive = Left(strMapping, 2) 
	strPath = Mid(strMapping, 4, Len(strMapping))
	objNetwork.MapNetworkDrive strDrive, strPath
	Call ErrorHandler
Wend	
End Sub

Sub ErrorHandler
Select Case Err.number
	case 0
		'wscript.echo "Ok: " & strMapping
	case -2147024811
		'wscript.echo "Enheten finns redan: " & strMapping
		err.clear
		call DoMappings
	case else
		wscript.echo "Error: " & err.number & err.description
End Select
End Sub

 

Hoppas du får till det, annars är det bara att fråga. Kanske värt en poäng?

 

[red] Ser att all min fina tabulering försvann, istället fick jag en massa felaktiga radbrytningar. Om du vill mailar jag scriptet, koden ser mycket snyggare ut egentligen...

 

Mina script verkar inte fungera i WinNT, hoppas du har hunnit uppgradera.[/red]

 

/Mn

Slartibartfast: Is that your robot? Marvin: No. I'm mine.

 

[inlägget ändrat 2002-09-10 10:43:47 av ZanY]

Link to comment
Share on other sites

Rickard_Activeadmins.net

 

Jag har inte testat det så noga, men jag fick det inte att fungera riktigt iaf..

 

Ska det där scriptet känna av vilka mappningar man har lokalt, alla mappningar? Eller känner den bara av hemkatalogen..? Hemkatalogen följer nämligen redan med..utan hjälp av script...

 

Men om det här scriptet känner av samtliga mappningar man har lokalt på sin burk, och sen för över de till TS, då är det ju perfekt.. Men jag har inte fått det att fungera. Måste jag ändra några inställningar i scriptet för att det ska fungera, eller är det helt automatiskt?

 

Jag har lagt script-1 som .bat i en GPO vid logoff... Eller ska den vara .wsb? Det kanske inte spelar nån roll?

 

Script-2 har jag lagt som .bat i autostart på TS-servern. Är det korrekt?

 

 

Scripten startar ju och kör igenom, men jag får inte med mappningarna till TS.. Fast jag har inte hunnit testa alltför mycket heller iofs...

 

 

Link to comment
Share on other sites

Jag ska kanske förklara lite bättre.

 

Det är vb-script, alltså ska de heta .vbs för att fungera. Dessutom måste Windows Scripting Host vara installerat, men det är det alltid numera.

 

När du kör script 1 skapas en fil i din hemkatalog som heter "mappings", titta i den så ser du alla dina lokala mappningar. När du sedan har loggat in på en annan dator (t.ex en TS) så kör du script 2 som skapar mappningar utifrån vad som står i filen.

 

Det gör det även ganska enkelt att lägga till mappningar för enskilda användare, bara att editera filen i deras hemkatalog.

 

Lycka till!

 

/Mn

Slartibartfast: Is that your robot? Marvin: No. I'm mine.

 

 

Link to comment
Share on other sites

Rickard_Activeadmins.net

 

ok. Nu har jag testat att köra den som .vsb, men det går ej särskilt bra. Jag får nu ett felmeddelande om att den inte kan hitta sökvägen...nåt sånt.. Rad 11 i det första scriptet, alltså vid utloggningen. Nätverket är det inga problem med annars, det är felfritt, så vad felet är vet jag inte.

 

Du kanske kan förklara vad som händer på just rad 11..?

 

Link to comment
Share on other sites

Hmm, på rad 11 i första scriptet försöker den kolla ansluta till domänen för att ta reda på hemkatalog.

Om du vill felsöka kan du lägga till denna rad ovanför rad 11.

wscript.echo objNetwork.userDomain & ", " & objNetwork.userName 

 

Då borde det komma upp en ruta där det står "ert domännamn, ditt användarnamn".

 

Fungerar det?

 

/Mn

Slartibartfast: Is that your robot? Marvin: No. I'm mine.

 

 

Link to comment
Share on other sites

Rickard_Activeadmins.net

 

jo..det kommer upp en sådan inforuta.. "domän, administrator"

 

Men nu kom jag att tänka på en detalj, som kanske påverkar.. domännamnet är netbiosnamnet, det är alltså inte dns-namnet som anges. netbios-namnet är det vi använder här inne. Kan det ha någon påverkan?

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...