Freigabe mit shell erstellen

Status
Für weitere Antworten geschlossen.

Umpalumpa

Benutzer
Mitglied seit
26. Dez 2014
Beiträge
57
Punkte für Reaktionen
0
Punkte
0
Hallo zusammen,

ich muss Freigaben automatisch via Script erstellen lassen. Nur wie? Benutzerrechte setzen kann ich ja, aber Freigaben?

Danke und Gruß, Umpalumpa
 

fpo4711

Benutzer
Mitglied seit
26. Mai 2010
Beiträge
2.772
Punkte für Reaktionen
1
Punkte
0
Hallo,

Du schreibst leider nicht welche DSM Version. Auf jeden Fall lief das unter DSM 4. Beispiel dazu findet sich auch hier im Forum.

Rich (BBCode):
[DS710-4] ~ > synoshare
Copyright (c) 2003-2012 Synology Inc. All rights reserved.

Usage: synoshare (Version 3827)
        --help
        --build
        --get sharename
        --get_by_attr PATH share_attr
        --enc_mount sharename password
        --enc_unmount sharename1 sharename2 ...
        --enum {ALL}|{LOCAL|USB|SATA|ENC|DEC}{+}
        --enumpre {ALL}|{LOCAL|USB|SATA|ENC|DEC}{+} prefix caseless{0|1}
        --enummnt mntpath
        --del {TRUE|FALSE} sharename1 sharename2 ...
        --add sharename desc path na rw ro browsable{0|1} adv_privilege{0~7}
        --rename  old_sharename new_sharename
        --setdesc sharename desc
        --setvol  sharename volume_id
        --setbrowse sharename browse_flag{0|1}
        --setuser sharename user_auth{NA|RO|RW} operator{+|-|=} user_name_list_with_comma
        --setrsec section_name
        --getrsec section_name
        --getmap sharename
        --delrsec section_name
        --getrval section_name key separator
        --dbopen2 sharename
        --upgrade_recyclebin_conf
 

Umpalumpa

Benutzer
Mitglied seit
26. Dez 2014
Beiträge
57
Punkte für Reaktionen
0
Punkte
0
Hallo,

Du schreibst leider nicht welche DSM Version. Auf jeden Fall lief das unter DSM 4. Beispiel dazu findet sich auch hier im Forum.

Hallo fpo4711,

ah super, genau das, was ich suche. Ich setze den DSM 5.2 ein. Weißt du auch, wie ich einer Gruppe Rechte für ein Share zuteile? Ich finde nur das Parameter synoshare --setuser ..., aber das funktioniert nicht mit Gruppen.

Danke und Gruß, Umpalumpa
 

Umpalumpa

Benutzer
Mitglied seit
26. Dez 2014
Beiträge
57
Punkte für Reaktionen
0
Punkte
0
... mit chown user:group geht's jedenfalls nicht ...
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
chown chmod und chgrp setzten nur die Rechte im Dateisystem. Du suchst die Rechte der Anwendung. Geht das nicht mit dem synoshare Kommando? Alternativ könnte man die Anwendungsrechte auch auf alle setzen und dann die Rechte im Dateisystem wieder entziehen. Denn die Anwendungsrechte können nichts erlauben was die Dateisystemrechte verbieten
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
12.538
Punkte für Reaktionen
2.989
Punkte
423
Probier es mal mit
Code:
root@DS415:~# synoacltool
Copyright (c) 2003-2014 Synology Inc. All rights reserved.

Usage: synoacltool

SYNOPSIS
        synoacltool -h
        synoacltool -check PATH [ACL Perm]
        synoacltool -get PATH
        synoacltool -get-perm PATH USERNAME
        synoacltool -add PATH [ACL Entry]
        synoacltool -replace PATH [ACL Entry Index] [ACL Entry]
        synoacltool -get-archive PATH
        synoacltool -set-archive PATH [ACL Archive Option]
        synoacltool -del-archive PATH [ACL Archive Option]
        synoacltool -del PATH [ACL Entry Index]
        synoacltool -del PATH
        synoacltool -copy PATH_SRC PATH_DST
        synoacltool -set-owner PATH [user|group] NAME
        synoacltool -set-eadir-acl PATH
        synoacltool -enforce-inherit PATH
        synoacltool [-stat|-cstat|-fstat|-lstat|-utime] PATH

        -h: show help
        -check: check acl permission of file
        -get: get syno acl of file
        -get-perm: extract windows permission from acl or linux permission
        -add: add syno ace into file
        -replace: replace specified ace by index number
        -del: delete syno acl of file
        -get-archive: get ACL archive bit
        -set-archive: set ACL archive bit
        -del-archive: delete ACL archive bit
        -stat, -cstat, -lstat, -fstat: get stat/archive bit
        -utime: set current time into file
        -copy: copy ACL from source to destination, only works when ACL exists
        -set-eadir-acl: set ACL for EA dir
        -enforce-inherit: enforce ACL inheritance

OPTIONS
        ACL Entry Index: >= 0
        ACL Option: [inherit|single]
        ACL Archive Option: is_inherit,is_read_only,is_owner_group,has_ACL,is_support_ACL
        ACL Entry: [user|group|owner|everyone|authenticated_user|system]:name:[allow|deny]:permissions:inherit mode

                Example: user:root:allow:rwx-d---RWc--:fd--
                Example: owner:*:allow:rwx-d---RWc--:fd--

                Fields
                        name: user/group name
                        ACL Perm: rwxpdDaARWcCo
                                 r: (r)ead data
                                 w: (w)rite data (create file)
                                 x: e(x)ecute
                                 p: a(p)pend data (create dir)
                                 d: (d)elete
                                 D: (D)elete child (only for dir)
                                 a: read (a)ttribute (For SMB read-only/hidden/archive/system)
                                 A: write (A)ttribute
                                 R: (R)ead xattr
                                 W: (W)rite xattr
                                 c: read a(c)l
                                 C: write a(c)l
                                 o: get (o)wner ship

                        inherit mode: fdin
                                 f: (f)ile inherited
                                 d: (d)irectory inherited
                                 i: (i)nherit only
                                 n: (n)o propagate
Wenn du herausgefunden hast, wie es funktioniert - hier gibt es auch ein Wiki, in dem man seine Erkenntnisse dann weitergeben/veröffentlichen kann.
Es muss ja nicht alles an den immer gleichen Leuten hängen bleiben ;)
 
Zuletzt bearbeitet:

fpo4711

Benutzer
Mitglied seit
26. Mai 2010
Beiträge
2.772
Punkte für Reaktionen
1
Punkte
0
Weißt du auch, wie ich einer Gruppe Rechte für ein Share zuteile? Ich finde nur das Parameter synoshare --setuser ..., aber das funktioniert nicht mit Gruppen.

synoacltool ist aber meines Wissens nur von Wert wenn auch wirklich Windows Access Lists verwendet werden. Hab das schon lange nicht mehr in der Anwendung, kann mich aber vage daran erninnern das für Gruppen ein @ vorrangestellt werden muß wenn synoshare verwendet werden soll. Ob das nun noch immer unter DSM 5 der Fall ist weis ich nicht.

Gruß Frank
 

Umpalumpa

Benutzer
Mitglied seit
26. Dez 2014
Beiträge
57
Punkte für Reaktionen
0
Punkte
0
synoacltool ist aber meines Wissens nur von Wert wenn auch wirklich Windows Access Lists verwendet werden. Hab das schon lange nicht mehr in der Anwendung, kann mich aber vage daran erninnern das für Gruppen ein @ vorrangestellt werden muß wenn synoshare verwendet werden soll. Ob das nun noch immer unter DSM 5 der Fall ist weis ich nicht.

Gruß Frank


YYYEEEEESSSS!!!!!

Das war's!!! Es geht immer noch!! Also, die Lösung sieht so aus:

Rich (BBCode):
synoshare --setuser Freigabename RW + @gruppenname

Danke und Gruß,
Umpalumpa

P.S.: Ihr seid super, großes Lob an das Forum. Aber: Wo kann ich denn sowas nachlesen? Gibt's da irgendeine Manpage oder Anleitung oder sowas? Ich bin des Englischen mächtig, finde aber oft nur Foreneinträge wo rumgerätselt wird. Allein die Infos die man bei synoshare --help erhält sind ein Witz. Mir fehlt ein man synoshare! Das würde doch die Flexibilität und Skalierbarkeit der Synology-Geräte erhöhen, wenn die existierenden Werkzeuge vernünftig erläutert wären ...
 

Umpalumpa

Benutzer
Mitglied seit
26. Dez 2014
Beiträge
57
Punkte für Reaktionen
0
Punkte
0
Das Gleiche geht übrigens direkt beim Anlegen der Freigabe:

synoshare --add duck "Entenhausen" /volume1/duck "" "@md" "" 1 0

Gruß, Umpalumpa
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat 

 
 
  AdBlocker gefunden!

Du bist nicht hier, um Support für Adblocker zu erhalten. Dein Adblocker funktioniert bereits ;-)

Klar machen Adblocker einen guten Job, aber sie blockieren auch nützliche Funktionen.

Das Forum wird mit hohem technischen, zeitlichen und finanziellen Aufwand kostenfrei zur Verfügung gestellt. Wir zeigen keine offensive Werbung und bemühen uns um eine dezente Integration.

Bitte unterstütze dieses Forum, in dem du deinen Adblocker für diese Seite deaktivierst.

Du kannst uns auch über unseren Kaffeautomat einen Kaffe ausgeben oder ein PUR Abo abschließen und das Forum so werbefrei nutzen.

Vielen Dank für Deine Unterstützung!