Discussion:
Frage Netzwerkfreigabe
(zu alt für eine Antwort)
Jürgen Meyer
2013-04-29 20:05:19 UTC
Permalink
Ich habe hier Win 7
Meine Zeile lautet:
net share Memories=C:\ProgramData\Memories /Grant:Jeder,Change

Ich störe mich jetzt an "Jeder".
Anstelle von Jeder habe ich mal Everyone eingegeben.
Das führt aber zum Fehler.
Bedeutet das, dass es nur auf einem deutschen System funktioniert?
Wie macht man es ggflls. international?

Gruß
Jürgen
Stefan Kanthak
2013-04-29 20:27:01 UTC
Permalink
"J?rgen Meyer" <***@gmx.de> schrieb:

Dein NUA ist KAPUTT!
Post by Jürgen Meyer
Ich habe hier Win 7
net share Memories=C:\ProgramData\Memories /Grant:Jeder,Change
Ich störe mich jetzt an "Jeder".
Anstelle von Jeder habe ich mal Everyone eingegeben.
Das führt aber zum Fehler.
Bedeutet das, dass es nur auf einem deutschen System funktioniert?
Ja.
Post by Jürgen Meyer
Wie macht man es ggflls. international?
Wenn NET.EXE nicht voellig bescheuert implementiert ist:
NET.EXE SHARE ... /GRANT:S-1-1-10,Change
oder
NET.EXE SHARE ... /GRANT:*S-1-1-10,Change

Stefan
[
--
Die unaufgeforderte Zusendung werbender E-Mails verstoesst gegen §823
Abs. 1 sowie §1004 Abs. 1 BGB und begruendet Anspruch auf Unterlassung.
Beschluss des OLG Bamberg vom 12.05.2005 (AZ: 1 U 143/04)
Jürgen Meyer
2013-04-30 10:15:12 UTC
Permalink
On Mon, 29 Apr 2013 22:27:01 +0200, "Stefan Kanthak"
Post by Stefan Kanthak
Dein NUA ist KAPUTT!
Post by Jürgen Meyer
Ich habe hier Win 7
net share Memories=C:\ProgramData\Memories /Grant:Jeder,Change
Ich störe mich jetzt an "Jeder".
Anstelle von Jeder habe ich mal Everyone eingegeben.
Das führt aber zum Fehler.
Bedeutet das, dass es nur auf einem deutschen System funktioniert?
Ja.
Post by Jürgen Meyer
Wie macht man es ggflls. international?
NET.EXE SHARE ... /GRANT:S-1-1-10,Change
oder
NET.EXE SHARE ... /GRANT:*S-1-1-10,Change
Stefan
[
Hallo Stefan,

Danke für die Antwort.
Die genannten Parameter S-1-1-10
habe ich noch nie gesehen.
Auch bei Google bin ich nicht fündig geworden.
Hast Du da mal einen Link?

Wie dem auch sei:
Bei mir gibt es mit den Parametern einen Systemfehler 1332

Gruß
Jürgen
Stefan Kanthak
2013-04-30 10:40:26 UTC
Permalink
"J?rgen Meyer" <***@gmx.de> schrieb:

Dein NUA ist noch immer kaputt!
Post by Jürgen Meyer
On Mon, 29 Apr 2013 22:27:01 +0200, "Stefan Kanthak"
Post by Stefan Kanthak
Dein NUA ist KAPUTT!
Post by Jürgen Meyer
Ich habe hier Win 7
net share Memories=C:\ProgramData\Memories /Grant:Jeder,Change
Ich störe mich jetzt an "Jeder".
Anstelle von Jeder habe ich mal Everyone eingegeben.
Das führt aber zum Fehler.
Bedeutet das, dass es nur auf einem deutschen System funktioniert?
Ja.
Post by Jürgen Meyer
Wie macht man es ggflls. international?
NET.EXE SHARE ... /GRANT:S-1-1-10,Change
oder
NET.EXE SHARE ... /GRANT:*S-1-1-10,Change
Stefan
[
Hallo Stefan,
Danke für die Antwort.
Die genannten Parameter S-1-1-10
habe ich noch nie gesehen.
O tempora, o mores!
Post by Jürgen Meyer
Auch bei Google bin ich nicht fündig geworden.
Hast Du da mal einen Link?
<https://support.microsoft.com/kb/243330>
Post by Jürgen Meyer
Bei mir gibt es mit den Parametern einen Systemfehler 1332
Beschwer Dich bei den bescheuerten Vollidioten in Redmond!
Schreibe Fehlermeldungen zu (mindestens) den Kommandos NET.EXE,
CACLS.EXE, XCACLS.EXE und ICACLS.EXE, dass diese nicht sprach-
unabhaengig arbeiten. Verweise ggf. auf SUBINACL.EXE, das das kann.

Stefan
[
--
Die unaufgeforderte Zusendung werbender E-Mails verstoesst gegen §823
Abs. 1 sowie §1004 Abs. 1 BGB und begruendet Anspruch auf Unterlassung.
Beschluss des OLG Bamberg vom 12.05.2005 (AZ: 1 U 143/04)
Hans-Peter Matthess
2013-04-30 11:19:18 UTC
Permalink
Post by Jürgen Meyer
Ich störe mich jetzt an "Jeder".
Anstelle von Jeder habe ich mal Everyone eingegeben.
Das führt aber zum Fehler.
Klar, Everyone funktioniert nur auf einem englischen Windows.
Post by Jürgen Meyer
Bedeutet das, dass es nur auf einem deutschen System funktioniert?
Wie macht man es ggflls. international?
Die SID für Jeder/Everyone ist S-1-1-0
Also z.B.
icacls Objekt /grant Jeder/Everyone:(x)
oder
icacls Objekt /grant *S-1-1-0:(x)
--
Scheinsicherheit und System-Zerstörung durch Virenscanner:
http://www.soehnitz.de/itsicherheit/virenscannersinnoderunsinn/index.html
Darum: http://www.soehnitz.de/itsicherheit/wassiewirklichbrauchen/index.html
Konfiguration einfach gemacht: http://home.arcor.de/skanthak/safer.html
Andreas Erber
2013-04-30 15:06:32 UTC
Permalink
Post by Hans-Peter Matthess
Post by Jürgen Meyer
Ich störe mich jetzt an "Jeder".
Anstelle von Jeder habe ich mal Everyone eingegeben.
Das führt aber zum Fehler.
Klar, Everyone funktioniert nur auf einem englischen Windows.
Post by Jürgen Meyer
Bedeutet das, dass es nur auf einem deutschen System funktioniert?
Wie macht man es ggflls. international?
Die SID für Jeder/Everyone ist S-1-1-0
Also z.B.
icacls Objekt /grant Jeder/Everyone:(x)
oder
icacls Objekt /grant *S-1-1-0:(x)
Jetzt sagt bloß Everyone und Jeder haben unterschiedliche SIDs...? Nein
haben sie natürlich nicht. Windows ist seid Vista nicht mehr
sprachgebunden.

http://support.microsoft.com/kb/243330
--
Beste Grüße,
Andy
Hans-Peter Matthess
2013-05-01 09:52:58 UTC
Permalink
Post by Andreas Erber
Post by Hans-Peter Matthess
Die SID für Jeder/Everyone ist S-1-1-0
Also z.B.
icacls Objekt /grant Jeder/Everyone:(x)
oder
icacls Objekt /grant *S-1-1-0:(x)
Jetzt sagt bloß Everyone und Jeder haben unterschiedliche SIDs...?
Was hast du an obigem Beispiel nicht verstanden?
Post by Andreas Erber
Nein
haben sie natürlich nicht. Windows ist seid Vista nicht mehr
sprachgebunden.
Es ist insofern sprachgebunden als "Jeder" nur in deutschen
und "Everyone" nur in englischen Windosen funktioniert.
Die SID hingegen funktioniert überall.
--
Scheinsicherheit und System-Zerstörung durch Virenscanner:
http://www.soehnitz.de/itsicherheit/virenscannersinnoderunsinn/index.html
Darum: http://www.soehnitz.de/itsicherheit/wassiewirklichbrauchen/index.html
Konfiguration einfach gemacht: http://home.arcor.de/skanthak/safer.html
Jürgen Meyer
2013-05-01 10:26:34 UTC
Permalink
Danke noch einmal für die Beiträge.
Icalcs hift mir ja nicht weiter weil es um eine Netzwerkfreigabe geht, nicht
um die Rechte auf einem Rechner.

Die Sache mit der SID macht mir aber immer noch Kopfschmerzen.
Die erste Zeile funktioniert, bei der zweiten gibt es einen Systemfehler 1322

Net Share Memories=C:\ProgramData\Memories /Grant:Jeder,Change
Net Share Memories=C:\ProgramData\Memories /Grant:*S-1-1-0,Change

Gruß
Jürgen
Hans-Peter Matthess
2013-05-01 11:13:33 UTC
Permalink
Post by Jürgen Meyer
Icalcs hift mir ja nicht weiter
Das war auch nur ein Beispiel, weil ich dafür die Syntax auswendig wusste.
Sollte auch mit net.exe funktionieren. Dafür hätte ich Google befragen
müssen.
--
Scheinsicherheit und System-Zerstörung durch Virenscanner:
http://www.soehnitz.de/itsicherheit/virenscannersinnoderunsinn/index.html
Darum: http://www.soehnitz.de/itsicherheit/wassiewirklichbrauchen/index.html
Konfiguration einfach gemacht: http://home.arcor.de/skanthak/safer.html
Hans-Peter Matthess
2013-05-01 12:15:14 UTC
Permalink
Post by Jürgen Meyer
Die Sache mit der SID macht mir aber immer noch Kopfschmerzen.
Die erste Zeile funktioniert, bei der zweiten gibt es einen Systemfehler 1322
Net Share Memories=C:\ProgramData\Memories /Grant:Jeder,Change
Net Share Memories=C:\ProgramData\Memories /Grant:*S-1-1-0,Change
Kann ich hier nachvollziehen. Das wäre dann schwach von net.exe.
Mit "subinacl /share" geht es hier.
--
Scheinsicherheit und System-Zerstörung durch Virenscanner:
http://www.soehnitz.de/itsicherheit/virenscannersinnoderunsinn/index.html
Darum: http://www.soehnitz.de/itsicherheit/wassiewirklichbrauchen/index.html
Konfiguration einfach gemacht: http://home.arcor.de/skanthak/safer.html
Andreas Erber
2013-05-01 20:50:36 UTC
Permalink
Post by Hans-Peter Matthess
Post by Andreas Erber
Post by Hans-Peter Matthess
Die SID für Jeder/Everyone ist S-1-1-0
Also z.B.
icacls Objekt /grant Jeder/Everyone:(x)
oder
icacls Objekt /grant *S-1-1-0:(x)
Jetzt sagt bloß Everyone und Jeder haben unterschiedliche SIDs...?
Was hast du an obigem Beispiel nicht verstanden?
Hatte mich tatsächlich verlesen. Wobei ich das Problem des OP immer noch
nicht kapiert habe.
--
Beste Grüße,
Andy
Stefan Kanthak
2013-05-01 21:29:13 UTC
Permalink
Wobei ich das Problem des OP immer noch nicht kapiert habe.
Dummerweise erlauben nicht alle Kommandos/Schnittstellen die
sprachunabhaengige Angabe eines Benutzernamens als SID in der Form
[*]S-1-*-*.

Auf der Kommandozeile eines deutschen Windows (resp. eines Benutzer-
Kontos, dessen MUI auf "Deutsch" eingestellt ist) musst Du "Jeder",
"Gast", "Gaeste", "Administratoren" etc. fuer die vordefinierten
Benutzer(gruppen) angeben.

Bei einem englischen Windows dagegen "Everyone", "Guest", "Guests",
"Administrators" etc.

Soll ich mit anderen Sprachen weitermachen?

Das Problem ist bei MSFT seit dem letzten Jahrtausend wohlbekannt:
siehe beispielsweise <http://support.microsoft.com/kb/298128>,
<http://support.microsoft.com/kb/309428>,
<http://support.microsoft.com/kb/329816>,
<http://support.microsoft.com/kb/915087>,
<http://support.microsoft.com/kb/2662548>, ...

Stefan
[
--
Die unaufgeforderte Zusendung werbender E-Mails verstoesst gegen §823
Abs. 1 sowie §1004 Abs. 1 BGB und begruendet Anspruch auf Unterlassung.
Beschluss des OLG Bamberg vom 12.05.2005 (AZ: 1 U 143/04)
Andreas Erber
2013-05-02 06:03:55 UTC
Permalink
Post by Stefan Kanthak
Wobei ich das Problem des OP immer noch nicht kapiert habe.
Dummerweise erlauben nicht alle Kommandos/Schnittstellen die
sprachunabhaengige Angabe eines Benutzernamens als SID in der Form
[*]S-1-*-*.
Auf der Kommandozeile eines deutschen Windows (resp. eines Benutzer-
Kontos, dessen MUI auf "Deutsch" eingestellt ist) musst Du "Jeder",
"Gast", "Gaeste", "Administratoren" etc. fuer die vordefinierten
Benutzer(gruppen) angeben.
Bei einem englischen Windows dagegen "Everyone", "Guest", "Guests",
"Administrators" etc.
Ja soweit komm ich mit. Aber wo ist das Problem? Works as designed? Oder
etwa nicht? Muss man halt die richtige Sprache kaufen/einstellen?
--
Beste Grüße,
Andy
Mario Rothacher
2013-05-02 08:57:25 UTC
Permalink
Post by Andreas Erber
Post by Stefan Kanthak
Auf der Kommandozeile eines deutschen Windows (resp. eines Benutzer-
Kontos, dessen MUI auf "Deutsch" eingestellt ist) musst Du "Jeder",
"Gast", "Gaeste", "Administratoren" etc. fuer die vordefinierten
Benutzer(gruppen) angeben.
Bei einem englischen Windows dagegen "Everyone", "Guest", "Guests",
"Administrators" etc.
Ja soweit komm ich mit. Aber wo ist das Problem? Works as designed? Oder
etwa nicht? Muss man halt die richtige Sprache kaufen/einstellen?
Für den Hausgebrauch mag das gehen. Aber wenn Du dieses Kommando in
einem Script hast für eine Internationale Firma welche Windows-Clients
in zig Sprachen installiert hat, dann musst Du diesen Script für jede
anderssprachige Version anpassen. Viel Spass damit! Positiv gesehen
erhöht es aber Dein Wortschatz in vielen Sprachen ;-)

cu
Mario
Hans-Peter Matthess
2013-05-02 11:56:00 UTC
Permalink
Post by Mario Rothacher
Für den Hausgebrauch mag das gehen. Aber wenn Du dieses Kommando in
einem Script hast für eine Internationale Firma welche Windows-Clients
in zig Sprachen installiert hat, dann musst Du diesen Script für jede
anderssprachige Version anpassen.
Oder eben in dem Skript alle Kommandos ablaufen lassen, eines davon wird
klappen, die anderen laufen eben vor die Wand. <eg>
--
Scheinsicherheit und System-Zerstörung durch Virenscanner:
http://www.soehnitz.de/itsicherheit/virenscannersinnoderunsinn/index.html
Darum: http://www.soehnitz.de/itsicherheit/wassiewirklichbrauchen/index.html
Konfiguration einfach gemacht: http://home.arcor.de/skanthak/safer.html
Jürgen Meyer
2013-05-02 12:28:16 UTC
Permalink
Post by Mario Rothacher
Post by Andreas Erber
Post by Stefan Kanthak
Auf der Kommandozeile eines deutschen Windows (resp. eines Benutzer-
Kontos, dessen MUI auf "Deutsch" eingestellt ist) musst Du "Jeder",
"Gast", "Gaeste", "Administratoren" etc. fuer die vordefinierten
Benutzer(gruppen) angeben.
Bei einem englischen Windows dagegen "Everyone", "Guest", "Guests",
"Administrators" etc.
Ja soweit komm ich mit. Aber wo ist das Problem? Works as designed? Oder
etwa nicht? Muss man halt die richtige Sprache kaufen/einstellen?
Für den Hausgebrauch mag das gehen. Aber wenn Du dieses Kommando in
einem Script hast für eine Internationale Firma welche Windows-Clients
in zig Sprachen installiert hat, dann musst Du diesen Script für jede
anderssprachige Version anpassen. Viel Spass damit! Positiv gesehen
erhöht es aber Dein Wortschatz in vielen Sprachen ;-)
cu
Mario
Danke für die rege Beteiligung.
Das Hauptproblem ist doch, warum akzeptiert Net Share keine SID hinter Grant?

Ich bin in dem Zusammenhang auf eine weitere Merkwürdigkeit gestoßen:
Die ersten drei Zeilen funktionieren nicht, die vierte schon:

Net share *S-1-1-0 /delete
Net share '*S-1-1-0' /delete 'Einfache Anführungszeichen
Net share "*S-1-1-0" /delete 'Doppelte Anführungszeichen

Bis hierhin erhalte ich immer die Meldung:
Diese freigegebene Ressource existiert nicht.
Existiert aber doch.

Mache ich es aber mit:
Net share %1 /delete
dann geht es.
(Aufruf der bat durch ein externes Kommando mit Variablenübergabe)

Auch das folgende läuft:
Net Share %1=%2
Dabei ist %1 die SID und %2 das Verzeichnis.

Damit bekommt "Jeder" allerdings nur Leserechte.
Das würde auch international funktionieren.
Allerdings sollen auch Änderungsrechte gesetzt werden.
Und hinter Grant funzt eine SID oder eine Variable offenbar nicht.
Oder meine Syntax ist immer noch falsch.

Gruß
Jürgen
Stefan Kanthak
2013-05-02 15:28:17 UTC
Permalink
"J?rgen Meyer" <***@gmx.de> schrieb:

Frag Deine Eltern, wieso sie Dir diesen komischen Vornamen gaben!
Post by Jürgen Meyer
Post by Mario Rothacher
Post by Andreas Erber
Post by Stefan Kanthak
Auf der Kommandozeile eines deutschen Windows (resp. eines Benutzer-
Kontos, dessen MUI auf "Deutsch" eingestellt ist) musst Du "Jeder",
"Gast", "Gaeste", "Administratoren" etc. fuer die vordefinierten
Benutzer(gruppen) angeben.
Bei einem englischen Windows dagegen "Everyone", "Guest", "Guests",
"Administrators" etc.
Ja soweit komm ich mit. Aber wo ist das Problem? Works as designed? Oder
etwa nicht? Muss man halt die richtige Sprache kaufen/einstellen?
Für den Hausgebrauch mag das gehen. Aber wenn Du dieses Kommando in
einem Script hast für eine Internationale Firma welche Windows-Clients
in zig Sprachen installiert hat, dann musst Du diesen Script für jede
anderssprachige Version anpassen. Viel Spass damit! Positiv gesehen
erhöht es aber Dein Wortschatz in vielen Sprachen ;-)
cu
Mario
Danke für die rege Beteiligung.
Das Hauptproblem ist doch, warum akzeptiert Net Share keine SID hinter Grant?
Weil MSFT immer nur behauptet: bei uns ist alles aus einem Guss, aber
trotzdem schlampt! Vor allem: weil MSFT keine QA hat!

Einige wenige Kommandos wie ICACLS.EXE oder SUBINACL.EXE akzeptieren
sowohl SIDs als auch die lokalisierten Namen, die meisten aber nur die
lokalisierten Namen.
Post by Jürgen Meyer
Net share *S-1-1-0 /delete
AUTSCH!
Wieso willst Du die Freigabe *S-1-1-0 entfernen?
Post by Jürgen Meyer
Net share '*S-1-1-0' /delete 'Einfache Anführungszeichen
Net share "*S-1-1-0" /delete 'Doppelte Anführungszeichen
Diese freigegebene Ressource existiert nicht.
Existiert aber doch.
ARGH! Nein, eine Freigabe *S-1-1-0 existiert GARANTIERT nicht!
Post by Jürgen Meyer
Net share %1 /delete
dann geht es.
(Aufruf der bat durch ein externes Kommando mit Variablenübergabe)
Net Share %1=%2
Dabei ist %1 die SID und %2 das Verzeichnis.
Falsch. %1 ist der Name der Freigabe.
Lies die Ausgabe von "NET.EXE SHARE /?" nochmal GANZ aufmerksam.
Post by Jürgen Meyer
Damit bekommt "Jeder" allerdings nur Leserechte.
Ja. Ohne Angabe von /GRANT gilt nur "Jeder" darf "Lesen".
Post by Jürgen Meyer
Das würde auch international funktionieren.
Nein.
Post by Jürgen Meyer
Allerdings sollen auch Änderungsrechte gesetzt werden.
Und hinter Grant funzt eine SID oder eine Variable offenbar nicht.
Oder meine Syntax ist immer noch falsch.
Beides!

Stefan
[
--
Die unaufgeforderte Zusendung werbender E-Mails verstoesst gegen §823
Abs. 1 sowie §1004 Abs. 1 BGB und begruendet Anspruch auf Unterlassung.
Beschluss des OLG Bamberg vom 12.05.2005 (AZ: 1 U 143/04)
Andreas Erber
2013-05-02 20:06:41 UTC
Permalink
Post by Mario Rothacher
Post by Andreas Erber
Ja soweit komm ich mit. Aber wo ist das Problem? Works as designed? Oder
etwa nicht? Muss man halt die richtige Sprache kaufen/einstellen?
Für den Hausgebrauch mag das gehen. Aber wenn Du dieses Kommando in
einem Script hast für eine Internationale Firma welche Windows-Clients
in zig Sprachen installiert hat, dann musst Du diesen Script für jede
anderssprachige Version anpassen. Viel Spass damit! Positiv gesehen
erhöht es aber Dein Wortschatz in vielen Sprachen ;-)
Ach, jetzt komm ich mit. Für mich Skripten auf dem Client eines der
bösen "machs nicht solange dir nicht was besseres einfällt" Sachen.
Dafür gibts ja "eigentlich" die GPOs die ja Mehrsprachig sind. Aber es
stimmt schon, alles bekommt man damit manchmal auch nicht abgedeckt.

Vielleicht ists in Powershell besser? ;)
--
Beste Grüße,
Andy
Jürgen Meyer
2013-05-05 08:06:03 UTC
Permalink
Post by Andreas Erber
Post by Mario Rothacher
Post by Andreas Erber
Ja soweit komm ich mit. Aber wo ist das Problem? Works as designed? Oder
etwa nicht? Muss man halt die richtige Sprache kaufen/einstellen?
Für den Hausgebrauch mag das gehen. Aber wenn Du dieses Kommando in
einem Script hast für eine Internationale Firma welche Windows-Clients
in zig Sprachen installiert hat, dann musst Du diesen Script für jede
anderssprachige Version anpassen. Viel Spass damit! Positiv gesehen
erhöht es aber Dein Wortschatz in vielen Sprachen ;-)
Ach, jetzt komm ich mit. Für mich Skripten auf dem Client eines der
bösen "machs nicht solange dir nicht was besseres einfällt" Sachen.
Dafür gibts ja "eigentlich" die GPOs die ja Mehrsprachig sind. Aber es
stimmt schon, alles bekommt man damit manchmal auch nicht abgedeckt.
Vielleicht ists in Powershell besser? ;)
OK, nun mal Butter bei die Fische, wie man hier oben im Norden sagt.

Nach langem Googlen habe ich jetzt eine funktionierende Lösung
zusammengestoppelt.
Man muss zunächst den Namen der SID ermitteln.
Dann kann man den Namen übergeben.

Die Sache sieht jetzt so aus:

set MySid=S-1-1-0
for /f "delims= " %%a in ('"wmic path win32_account where SID='%MySid%' get
name"') do (
if not "%%a"=="name" (
set myvar=%%a
goto :loop_end
)
)
:loop_end

net share Memories /Delete
net share Memories=C:\ProgramData\Memories /grant:%myvar%,change

Die Freigabe vorab zu löschen, macht durchaus Sinn.
Probiert mal, eine bestehende Freigabe mit Net Share zu ändern.
Das kann insbesondere bei einer Neuinstallation notwendig werden.
(Anderer Pfad etc.)
Freigabename und Verzeichnis müssen ja nicht fest vorgegeben sein wie im
obigen Script.

Icacls kann's mit einem Parameter.
Net Share kennt so einen Parameter nicht.

Juergen

Loading...