filippg
Goto Top

Shares auflisten ohne WMI

Hallo,

ich möchte in einem Skript die Shares auf einer NAS auslesen. Am besten per Powershell. Dazu finden sich ca 50.000 Artikel, die zeigen, wie das mit WMI ganz leicht geht. Leider unterstützt das NAS-System kein WMI. Aber die Shares lassen sich remote auslesen (z.B. mit MMC oder Hyena). Ein Tool wie ShareEnum bringt mir nicht so richtig was, weil ich dann den Output wieder parsen müsste, außerdem greift es vielleicht auch auf WMI zu und kann deswegen nicht verwendet werden.
Frage daher:
Welche grundsätzliche Möglichkeit gibt es neben WMI noch, um Shares aufzulisten? Wie fragt die MMC die Liste ab? Und toll wären Beispiele, wie man das skripten kann, am besten mit Powershell.

Gruß & Danke

Filipp

Content-Key: 138416

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

Printed on: April 23, 2024 at 06:04 o'clock

Member: Dynadrate
Dynadrate Mar 16, 2010 at 21:40:43 (UTC)
Goto Top
NET VIEW
[\\Computername [/CACHE] | /DOMAIN[:Domänenname]]
NET VIEW /NETWORK:NW [\\Computername]
Member: filippg
filippg Mar 17, 2010 at 09:33:57 (UTC)
Goto Top
Hallo,

danke für die Antwort.
Was ich leider vergessen hatte zu schreiben: ich benötige auch die versteckten Shares, die gibt mir net view... offenbar nicht aus. Daneben müsste ich da den Output wieder halbwegs aufwändig parsen.

Gruß

Filipp
Member: Dynadrate
Dynadrate Mar 17, 2010 at 11:25:41 (UTC)
Goto Top
RMTSHARE \\server
\\server\sharename
\\server\sharename=drive:path [/USERS:number | /UNLIMITED]
[/REMARK:"text"]
[/GRANT [user[:perm][ /GRANT user[:perm]]]]
[/REMOVE user]
\\server\sharename=printername /PRINTER [/USERS:number | /UNLIMITED]
[/REMARK:"text"]
[/GRANT [user[:perm][ /GRANT user[:perm]]]]
[/REMOVE user]
\\server\sharename [/USERS:number | /UNLIMITED]
[/REMARK:"text"]
[/GRANT [user[:perm][ /GRANT user[:perm]]]]
[/REMOVE user]
\\server\sharename /DELETE

NOTE: if a sharename or path contains spaces, it should be enclosed
in quotes:
\\server\"with space"="c:\with space"

Das mit dem parsen bleibt dir aber.
Member: filippg
filippg Mar 17, 2010 at 16:46:10 (UTC)
Goto Top
Hallo,

habe jetzt etwas geeignetes gefunden, die Shares können per ADSI (bestimmt auch LDAP) abgefragt werden. In der Powershell

$adsi = [adsi]"WinNT://meinserver/LanmanServer,FileService"
$adsi.psbase.children | SELECT Description, HostComputer, Name, Path

Schöheitsfehler: die Built-In (C$) werden nicht aufgelistet (andere versteckte aber schon).

Gruß & Danke

Filipp