User hat nur mit sudo Rechten die das Recht in einem gemounteten Verzeichnis zu schreiben

  • Hallo Zusammen,


    ich bin mir sicher ihr könnt mir einen Tipp geben wie ich einem User ohne Nutzung von sudo die Schreibrechte auf ein gemountetes Verzeichnis gebe.

    Ich habe folgendes Szenario:

    Auf einem Linux-Server befindet sich eine Datenbank. Diese Datenbank wird automatisch mit Daten befüllt, wenn in ein bestimmtes Verzeichnis auf dem Server Dateien abgelegt werden (ist ein Dokumentenmanagement System). Der Prozess auf der Serverseite funktioniert wunderbar.

    Jetzt sollen verschiedene Clienten Dateien in dieses Verzeichnis ablegen. Über Samba habe ich dieses Laufwerk im Netzwerk freigegeben sodass z.B. von Windowsrechnern das Laufwerk verbunden werden kann und man einfach Dateien dahin kopieren kann.

    Ich habe einen Clienten (RaspberryPi) der mir gerade Kopfzerbrechen beschert und hier bräuchte ich eure Hilfe:

    Auf diesem Clienten läuft ein Python Programm das nach einem Tastendruck eine PDF-Datei erzeugt. Diese PDF-Datei muss in das Verzeichnis des Servers kopiert werden. Das Python Programm läuft im Kontext des Users <Artur>

    <Artur> ist Mitglied der Gruppe <scandienst>

    Code
    artur@PrintServer:/mnt $ id artur
    uid=1000(artur) gid=1001(scandienst) groups=1001(scandienst),4(adm),20(dialout),24(cdrom),27(sudo),29(audio),44(video),46(plugdev),60(games),100(users),102(input),105(render),106(netdev),995(spi),994(i2c),993(gpio),115(lpadmin)

    Auf dem Clienten habe ich einen Ordner unter /mnt erstellt:

    /mnt/ScanInput

    Diesem Ordner habe ich mit chmod und chown folgende Rechte gegeben:

    Code
    drwxrws--x 2 artur scandienst 4096 Feb 25 02:53 ScanInput

    Man sieht das artur der Owner ist und die Gruppe scandienst zugeordnet ist.

    Wenn ich nun das Laufwerk auf dem Server mit dem Befehl:

    Code
    sudo mount -t cifs //xxx.xxx.xxx.xxx/public/extsdb/Docker/ecoDMS/scaninput /mnt/ScanInput -o defaults,username=artur,password=#######

    auf dem Clienten mounte, hat das Verzeichnis wieder root als Owner:

    Code
    drwxr-xr-x 2 root scandienst    0 Feb 25 10:01 ScanInput

    Das Problem ist dann, dass das Python Programm nun keine "normalen" Rechte mehr hat in dieses Verzeichnis (/mnt/ScanInput) zu schreiben.

    Wenn ich manuell als angemeldeter User=artur mit

    Code
    sudo nano Test.txt

    eine Datei in dem gemounteten Verzeichnis (/mnt/ScanInput) erzeuge, wird sie auch, so wie es soll, auf dem Server kopiert und dort verarbeitet.


    Wie bekomme ich es hin das ich als User=artur ohne sudo in das gemountete Verzeichnis schreiben kann?


    Vielen Dank

  • UID und GID im mount mit hinzufügen, evt. noch rw für Schreibrechte

    sudo mount -t cifs //xxx.xxx.xxx.xxx/public/extsdb/Docker/ecoDMS/scaninput /mnt/ScanInput -o rw,defaults,username=artur,password=#######,uid=1000,gid=1001

    PC | AMD Ryzen 7 3700X - NVIDIA GeForce RTX 2070 Super - 32 GB RAM - 1 TB NVME - 2 TB HDD - ArchLinux

    Lappi | Intel I3 - 16 GB RAM - 128 GB SSD - ArchLinux

    Homi | Intel Atom 3 - Intel Grafik - 4 GB RAM - 1x 128 GB SSD - 2x 4 TB Seagate IronWolf HDD im RAID - Debian 11 mit OMV 6

    ________________________________________________________________________________

    RADIO TEAM BAWÜ - Wir haben Spaß an Musik!!!

  • Vielen Dank euch beiden. Mit der Angabe der UID und GID hat es wunderbar funktioniert.

    Habe nun in der fstab die Einträge erweitert alles funktioniert super.

    Code
    tmpfs /mnt/ramdisk/temp tmpfs nodev,nosuid,size=200M,uid=1000 0 0
    //###.###.###.###/public/extsdb/Docker/ecoDMS/scaninput /mnt/ecoDMSInput cifs defaults,username=artur,password=######,uid=1000,gid=1001
    //###.###.###.###/public/extsdb/Docker/ecoDMS/scaninput /mnt/ScanInput cifs defaults,username=artur,password=######,uid=1000,gid=1001

    Mit der Erweiterung auch für die ramdisk, kann das python programm nun auch die temporären Dateien wieder selber löschen ;)

    Viele Grüße,

    Artur

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!