symbolischen Link unter einem bestimmten Benutzer anlegen

aggitron

Commander
Registriert
Jan. 2006
Beiträge
2.074
Hallo,

ich muss als root einen symbolischen Link anlegen. Normal funktioniert das mit
Code:
ln -s QUELLE ZIEL [Verknüpfungsname]

Allerdings muss dieser Link unter dem Benutzer www-data eingetragen werden.

So soll es aussehen:
lrwxrwxrwx 1 www-data www-data 10 Okt 11 16:56 LINKNAME -> ZIEL

So sieht es aus wenn ich es mit root mache:
lrwxrwxrwx 1 root root 10 Okt 11 16:56 LINKNAME -> ZIEL

Wenn ich mit
Code:
su www-data
versuche den Benutzer zu wechseln versuche, sagt er mir das dieser im Moment nicht verfügbar ist.
Wie kann ich das Problem lösen?
 
du kannst den User ändern in dem du:

- chown www-data [Verknüpfungsname]
- chgrp www-data [Verknüpfungsname]

anwendest.
 
Hat denn www-data Rechte auf dem Ziel?
 
Immortal6_6_6 schrieb:
du kannst den User ändern in dem du:

- chown www-data [Verknüpfungsname]
- chgrp www-data [Verknüpfungsname]

anwendest.

Mit den Befehlen bewegt sich gar nichts. Er bringt aber auch keine Fehlermeldung.
/edit
Kommando zurück. Das hat funktioniert, auch wenn er das unter ls -l nicht anzeigt.

Norsfyr schrieb:
Hat denn www-data Rechte auf dem Ziel?

Ja, hat er. Ich habe nur versehentlich diesen symbolischen Link genutzt.
 
Zuletzt bearbeitet:
Noch kürzer:
Code:
chown <user>: <pfad>
Es wird dann die Standardgruppe des Users verwendet.
 
Also um die ursprüngliche Frage zu beantworten, man muss für den bereits genannten Befehl chown den Parameter -h verwenden, um den Besitzer des Links (nicht des Linkziels) zu ändern.

Da das hier genannte Vorgehen (ohne -h) aber zur Lösung des Problems des TE beigetragen hat, war das offensichtlich gar nicht sein Problem, sondern er wollte den Besitzer der Zieldateien ändern.

Um die letzte Frage auch noch zu beantworten - um zum User www-data zu wechseln, muss man ihm eine shell definieren. Dazu modifiziert man die /etc/passwd. Aus
Code:
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
wird z.B.
Code:
www-data:x:33:33:www-data:/var/www:/bin/bash
Das braucht man aber selten und sollte nur temporär so sein, z.B. zur Fehlersuche.
 
Tumbleweed schrieb:
Da das hier genannte Vorgehen (ohne -h) aber zur Lösung des Problems des TE beigetragen hat, war das offensichtlich gar nicht sein Problem, sondern er wollte den Besitzer der Zieldateien ändern.
Hoffentlich hat er sich jetzt nicht eine Sicherheitslücke aufgemacht. Die Datei gehörte evtl. nicht grundlos zu root, falls er sie nicht selbst angelegt hat.

Tumbleweed schrieb:
Um die letzte Frage auch noch zu beantworten - um zum User www-data zu wechseln, muss man ihm eine shell definieren. Dazu modifiziert man die /etc/passwd.
Die Login Shell definiert man am besten mit dem Befehl "chsh". Und noch besser ändert man die gar nicht in dem Fall, sondern macht "sudo -s -u www-data".
 
Zurück
Oben