shanks
Goto Top

Laufwerk Name ändern

Hallo Zusammen, ich hoffe ihr könnt mir helfen bei meinem Problem.

Erstmal möchte ich sagen, dass ich ein Absoluter neuling bin was Powershell angeht, da ich seit 1 Jahr Informatik mache.

Wir haben eine Aufgabe erhalten für eine kleine Firma ein Peer to Peer Netzwerk zu erstellen. Mit Users, die zu Gruppen gehören diese Gruppen dürfen auf bestimmt Ordners zugreifen, und sind Freigegeben, nur für bestimmt Gruppen.

Um mir und meine Gruppe alles zu errleichert habe ich so einen kleine Script geschrieben, damit man nicht 14 mal das selbe eingeben muss, und es schneller geht.
mkdir c:\dat\verw
mkdir c:\dat\aust
mkdir c:\dat\entw
mkdir c:\dat\proj
mkdir c:\buch

net user marcel Aa12345 /add /fullname:"Marcel"  
net user nadine Aa12345 /add /fullname:"Nadine"  
net user christina Aa12345 /add /fullname:"Christina"  
net user thomas Aa12345 /add /fullname:"Thomas"  
net user andrea Aa12345 /add /fullname:"Andrea"  
net user roger Aa12345 /add /fullname:"Andrea"  
net user max Aa12345 /add /fullname:"Max"  
net user claude Aa12345 /add /fullname:"Claude"  
net user james Aa12345 /add /fullname:"James"  
net user doris Aa12345 /add /fullname:"Doris"  
net user tanja Aa12345 /add /fullname:"Tanja"  

net localgroup lg-verw-f /add
net localgroup lg-aust-f /add
net localgroup lg-entw-f /add
net localgroup lg-entw-r /add
net localgroup lg-proj-f /add
net localgroup lg-proj-r /add
net localgroup lg-buch-f /add
net localgroup lg-buch-r /add


net localgroup lg-verw-f marcel /add
net localgroup lg-verw-f nadine /add

net localgroup lg-aust-f marcel /add
net localgroup lg-aust-f nadine /add
net localgroup lg-aust-f christina /add
net localgroup lg-aust-f thomas /add
net localgroup lg-aust-f andrea /add
net localgroup lg-aust-f roger /add
net localgroup lg-aust-f max /add
net localgroup lg-aust-f claude /add
net localgroup lg-aust-f james /add
net localgroup lg-aust-f doris /add
net localgroup lg-aust-f tanja /add

net localgroup lg-entw-f marcel /add
net localgroup lg-entw-f thomas /add
net localgroup lg-entw-f andrea /add
net localgroup lg-entw-f roger /add
net localgroup lg-entw-f max /add
net localgroup lg-entw-f claude /add

net localgroup lg-entw-r nadine /add
net localgroup lg-entw-r james /add
net localgroup lg-entw-r doris /add
net localgroup lg-entw-r tanja /add

net localgroup lg-proj-f marcel /add
net localgroup lg-proj-f nadine /add
net localgroup lg-proj-f james /add
net localgroup lg-proj-f doris /add
net localgroup lg-proj-f tanja /add

net localgroup lg-proj-r thomas /add
net localgroup lg-proj-r andrea /add
net localgroup lg-proj-r roger /add
net localgroup lg-proj-r max /add
net localgroup lg-proj-r claude /add

net localgroup lg-buch-f christina /add

net localgroup lg-buch-r marcel /add
net localgroup lg-buch-r nadine /add

net share sh-verw=c:\dat\verw "/grant:lg-verw-f,FULL"  
net share sh-aust=c:\dat\aust "/grant:lg-aust-f,FULL"  
net share sh-entw=c:\dat\entw "/grant:lg-entw-f,FULL" "/grant:lg-entw-r,READ"  
net share sh-proj=c:\dat\proj "/grant:lg-proj-f,FULL" "/grant:lg-proj-r,READ"  
net share sh-buch=c:\buch "/grant:lg-buch-f,FULL" "/grant:lg-buch-r,READ"  


So jetzt möchte ich gerne das die Ordners jedem als Laufwerk angezeigt werden (sieht schöner aus), dass habe ich auch geschafft.
net use Z: "\\10.95.0.10\sh-aust"  
net use Y: "\\10.95.0.10\sh-verw"  
net use X: "\\10.95.0.10\sh-entw"  
net use W: "\\10.95.0.10\sh-proj"  
net use V: "\\10.95.0.10\sh-buch"  

(aust=Austausch, verw=Verwaltung,entw = Entwicklung, proj = Projekte, buch = Buchhaltung )
So jetzt zu meiner eigendlicher Frage : ich möchte gerne das die Laufwerke anders heissen zur Zeit heissen Sie so : sh-aust(\\10.95.0.10)
Das möchte ich nicht und überall einzeln ändern ( rechts Klick Umbennen ) möchte ich auch nicht ich würde das gerne auf einmal machen, dann ist es überall gleich.

Bis jetzt habe ich es nicht geschafft den Powershell Befehl rauszufinden wie ich die Laufwerke umbennen kann.
Ausprobiert habe ich:
Label Z: Austausch
Ausgabe : Diese Volumebezeichnung kann nicht geändert werden. Diese Anforderung wird nicht unterstützt.
(Ich habe es mit C: probier und es wurde angenommen )
Ich habe alles Probiert nichts klappt im Internet auch das gefunden geht leider nicht:

$drive = gwmi win32_volume -Filter "DriveLetter = 'Z:'"
$drive.Label = "Austausch"
$drive.put()


Ich habe keine Ahnung ob das geht Bitte um Hilfe ! :D
gruss Shanks

Content-Key: 299916

Url: https://administrator.de/contentid/299916

Printed on: April 25, 2024 at 01:04 o'clock

Member: SaschaRD
SaschaRD Mar 23, 2016 at 14:13:48 (UTC)
Goto Top
Hallo Shanks,

die Informationen werden für jeden User in der Registry gespeichert unter "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2", wenn Du dort eine neue Zeichenfolge anlegst mit dem Namen _LabelFromReg und dem Wert Test, dann heißt die Netzlaufwerkverknüpfung auch so.

Gruß, Sascha
Mitglied: 114757
114757 Mar 23, 2016 updated at 14:21:10 (UTC)
Goto Top
Moinsens,
hier reicht ein:
(New-Object -Com Shell.Application).Namespace('z:').Self.Name = 'Neuer Laufwerks-Name'
Gruß jodel32

damit man nicht 14 mal das selbe eingeben muss, und es schneller geht.
Da sind aber immer noch sehr viele redundaten Infos drin, mit einerm Array der Namen und der Shares und einer Foreach-Schleife ließe sich das noch wesentlich weiter abkürzen face-wink
Member: Shanks
Shanks Mar 24, 2016 at 11:45:00 (UTC)
Goto Top
Hallo jodel ;)

Vielen Dank für deine schnelle Antwort, leider hat es nicht geklappt Fehler (siehe Bild) javascript:void(0);

Powershell sagt er kann es nicht laden ? Kannst du wir weiter helfen ?
Oder existiert im Powershell kein Befehl mit dem man den Laufwerkname ändern kann ?

( was meinst du mit redundaten Infos drin ? )
Vielen Dank

Gruss Dekii ;)
powershell
Mitglied: 114757
114757 Mar 24, 2016 updated at 11:49:03 (UTC)
Goto Top
Vielen Dank für deine schnelle Antwort, leider hat es nicht geklappt Fehler (siehe Bild)
Du hast einen Tippfehler eingebaut, dir fehlt ein n bei Application! Peinlich ...

was meinst du mit redundaten Infos drin ?
Naja mit Powershell macht man das normalerweise mit Arrays und einer FOREACH Schleife anstatt die Zeilen alle fast mit den selben Daten untereinander zu schreiben face-wink
Member: Shanks
Shanks Mar 24, 2016 at 12:30:33 (UTC)
Goto Top
Du hast einen Tippfehler eingebaut, dir fehlt ein n bei Application! Peinlich ...
Ups ;) Vielen Dank :D jetzt funktioniert alles, dummer fehler, ist wirklich Peinlich..


Naja mit Powershell macht man das normalerweise mit Arrays und einer FOREACH Schleife anstatt die Zeilen alle fast mit den selben Daten untereinander zu schreiben face-wink

Und wie kann soetwas aussehen, bezog jetzt auf meinem "Srcipt" Z.B Benutzer erstellen ? Wie gesagt ich bin ein absoluter anfänger und würde das gerne lernen :D

Gruss Shanks
Mitglied: 114757
114757 Mar 24, 2016 updated at 12:46:54 (UTC)
Goto Top
Und wie kann soetwas aussehen, bezog jetzt auf meinem "Srcipt" Z.B Benutzer erstellen ?
z.B. so (Namen durch Platzhalter ausgetauscht und nicht alle aufgeführt):
# Gruppen und deren Mitglieder in einer Hashtable definieren
$groups = @{
    'gruppe1' = @('Marcel','Nadine')  
    'gruppe2' = @('Thomas','Andrea', 'Tanja')  
}

# Gruppendefinitionen mit einer Foreach-Schleife durchlaufen
$groups.GetEnumerator() | %{
    $gruppe = $_.Name
    # Gruppe selber erstellen
    net localgroup $_.Name /add

    # Für jeden User der Gruppe
    $_.Value | %{
        # Benutzer erstellen
        net user "$_" /add /fullname:"$_"  
        # Benutzer der Gruppe hinzufügen
        net localgroup $gruppe $_ /add 
    }
}
ersetzt z.B. folgenden Wust von oben:
net user marcel Aa12345 /add /fullname:"Marcel"
net user nadine Aa12345 /add /fullname:"Nadine"
net user christina Aa12345 /add /fullname:"Christina"
net user thomas Aa12345 /add /fullname:"Thomas"
net user andrea Aa12345 /add /fullname:"Andrea"
net user roger Aa12345 /add /fullname:"Andrea"
net user max Aa12345 /add /fullname:"Max"
net user claude Aa12345 /add /fullname:"Claude"
net user james Aa12345 /add /fullname:"James"
net user doris Aa12345 /add /fullname:"Doris"
net user tanja Aa12345 /add /fullname:"Tanja"

net localgroup lg-verw-f /add
net localgroup lg-aust-f /add
net localgroup lg-entw-f /add
net localgroup lg-entw-r /add
net localgroup lg-proj-f /add
net localgroup lg-proj-r /add
net localgroup lg-buch-f /add
net localgroup lg-buch-r /add


net localgroup lg-verw-f marcel /add
net localgroup lg-verw-f nadine /add

net localgroup lg-aust-f marcel /add
net localgroup lg-aust-f nadine /add
net localgroup lg-aust-f christina /add
net localgroup lg-aust-f thomas /add
net localgroup lg-aust-f andrea /add
net localgroup lg-aust-f roger /add
net localgroup lg-aust-f max /add
net localgroup lg-aust-f claude /add
net localgroup lg-aust-f james /add
net localgroup lg-aust-f doris /add
net localgroup lg-aust-f tanja /add

net localgroup lg-entw-f marcel /add
net localgroup lg-entw-f thomas /add
net localgroup lg-entw-f andrea /add
net localgroup lg-entw-f roger /add
net localgroup lg-entw-f max /add
net localgroup lg-entw-f claude /add

net localgroup lg-entw-r nadine /add
net localgroup lg-entw-r james /add
net localgroup lg-entw-r doris /add
net localgroup lg-entw-r tanja /add

net localgroup lg-proj-f marcel /add
net localgroup lg-proj-f nadine /add
net localgroup lg-proj-f james /add
net localgroup lg-proj-f doris /add
net localgroup lg-proj-f tanja /add

net localgroup lg-proj-r thomas /add
net localgroup lg-proj-r andrea /add
net localgroup lg-proj-r roger /add
net localgroup lg-proj-r max /add
net localgroup lg-proj-r claude /add

net localgroup lg-buch-f christina /add

net localgroup lg-buch-r marcel /add
net localgroup lg-buch-r nadine /add