kostenloser Webspace werbefrei: lima-city


Rechteproblem mit Chromium-Entwicklertools (Xubuntu 18.04)

lima-cityForumHeim-PCSoftware

  1. Autor dieses Themas

    regioweb

    regioweb hat kostenlosen Webspace.

    Hallo,

    für ein paar CSS-Anpassungen benötige ich die Chromium-Entwicklertools. Leider lassen sich dort jedoch CSS-Dateien nicht so einfach wie beim Firefox speichern. Mann muss vorher über "Sources->Filesystem->Add folder to workspace" einen Workspace hinterlegen. Dabei kommt die Fehlermeldung:

    Inhalt von opt konnte nicht gelesen werden
    Error opening directory '/opt': Permission denied
    Und von der Entwicklertools-Konsole:
    Unable to add filesystem: <permission denied>

    Es ist halt wiedermal ein Rechte Problem. Also hab ich folgenden Befehl versucht:

    sudo chmod -R 777 /opt

    Hat aber nichts gebracht, ausser dass phpmyadmin nicht mehr geht…
    Die selbe Fehlermeldung erhält man übrigens auch, wenn man mal Firefox neu installiert, dann geht da auch nichts mehr…
    Googlesuche hat leider auch nicht geholfen. Hat vielleicht jemand eine Idee?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. regioweb schrieb:
    Es ist halt wiedermal ein Rechte Problem. Also hab ich folgenden Befehl versucht:

    sudo chmod -R 777 /opt
    Schlechte Idee. Zum Beispiel weil dann...

    regioweb schrieb:
    Hat aber nichts gebracht, ausser dass phpmyadmin nicht mehr geht?
    ... Sachen wie PHPMyAdmin nicht mehr funktionieren. Da man nicht weiß, was für Programme da installiert sind und welche Berchtigungen da von nöten sind, kann man auch keine universallösung anbieten, um das zu reparieren. Behelfsmäßig:
    chmod 755  /opt/lampp/phpmyadmin/config.inc.php
    um PHPMyAdmin wieder zum laufen zu bekommen oder gar
    chmod 755 -R /opt
    - letzteres "sollten" die Default-Berechtigungen sein. Mag aber sein, dass spezifische Programme eine spezifische, andersartige Berechtigung voraussetzen.
    755 sollte auch der Originalzustand des /opt-Verzeichnisses sein. Das bedeutet im Wesentlichen: Jeder darf lesen und ausführen, aber nur der Eigentümer(root) darf schreiben.

    Einfach Dinge (vor allem als Root) machen, ohne zu wissen, was man da tut - schlechte Idee.

    Zum Ursprünlichen Problem: Da die Rechte 755 gesetzt sein sollten, sollte im wesentlichen jeder auf /opt lesen können. Deshalb ist es schon weird, dass du da offenbar nicht lesen kannst. Entweder versucht er da also zu schreiben, oder es passiert etwas anderes "weirdes". (Möglicherweise checkt chromium einfach nur auf eine bestimmte berechtigung oder den Eigentümer)
    Als erstes würde ich die spezifischen Dateien, die ich chromium geben möchte einfach ein mal ins heimverzeichnis kopieren. (Bei cp den
    --no-preserve
    -flag nicht vergessen.)
    Wenn dies absolut nicht möglich oder gewollt ist, wäre auch die Änderung des Eigentümers des spezifischen Verzeichnisses via chown denkbar.
    Wenn es dann noch immer nicht geht, würde ich mal versuchen, zu ermitteln, als welcher Benutzer Chromium denn unterwegs ist. (
    ps -u -p $(pidof chromium)
    ). Möglicherweise liegt dort der Haken.
  4. prinz-und-gloeckner

    prinz-und-gloeckner hat kostenlosen Webspace.

    Kannst doch einfach ein Verzeichnis in deinem Heimatverzeichnis verwenden (oder /tmp verwenden, dort ein Unterverzeichnis für die Sitzung anlegen, wird beim Abschalten wieder entsorgt).

    Wie man nun das CSS in eine Datei in dem Verzeichnis abspeichert, konnte ich allerdings nicht nachvollziehen.
    Markieren und Kopieren funktioniert allerdings.
  5. Autor dieses Themas

    regioweb

    regioweb hat kostenlosen Webspace.

    Den Vollzugriff hab ich ja nur zu Testzwecken vergeben. Aber für htdocs und dessen Unterordner, ist er wirklich nützlich. Das zurücksetzen der Rechte hat funktioniert, zumindest läuft phpmyadmin wieder.

    Die Dateien einfach in ein Temporäres Verzeichnis zu kopieren kann eigentlich nicht helfen, weil die CSS-Dateien über PHP-Dateien eingebunden werden und deshalb alles in htdocs bleiben muss. Aber ein Test ergab, das sich ein Ordner im Heimverzeichnis als workspace einbinden lässt, wenn er einem gehört. Ist root der Besitzer, get's nicht. Um sicher zu gehen habe ich natürlich mal den Besitzer von "/opt" geändert, dann kommt aber trotzdem die Fehlermeldung.

    Ich kann nicht glauben, das es einem bei allen Ubuntu Derivaten so schwer gemacht wird, weil es ja wirklich sehr wichtig ist, das es funktioniert. Wer weis, vielleicht existiert das Problem nur bei Xubuntu. Hat eventuell jemand Ubuntu Installiert und kann mal bitte prüfen ob der Bug dort auch existiert!?
  6. regioweb schrieb:
    Die Dateien einfach in ein Temporäres Verzeichnis zu kopieren kann eigentlich nicht helfen, weil die CSS-Dateien über PHP-Dateien eingebunden werden und deshalb alles in htdocs bleiben muss. Aber ein Test ergab, das sich ein Ordner im Heimverzeichnis als workspace einbinden lässt, wenn er einem gehört. Ist root der Besitzer, get's nicht. Um sicher zu gehen habe ich natürlich mal den Besitzer von "/opt" geändert, dann kommt aber trotzdem die Fehlermeldung.
    Ich glaube mir dämmert so langsam, wo das Problem liegt - du benutzt XAMPP? Das funktioniert allgemein nicht besonders gut. Wie bereits im Ubuntu-Wiki zu lesen ist:
    Das häufig für Windows empfohlene XAMPP bereitet unter Ubuntu immer wieder Probleme. Da Ubuntu (fast) alle in XAMPP enthaltenen Serverdienste auch über die offiziellen Paketquellen bereitstellt, sollten bevorzugt die Einzelpakete genutzt werden. Konkret wird das im Artikel LAMP erläutert.
    Das Problem ist, dass es eigentlich nicht übrlich ist,
    htdocs
    in
    /opt
    zu haben.
    htdocs
    gehört nach
    /srv
    , alternativ vielleicht noch in
    /var
    .

    Eine mögliche Lösung wäre, die Eigentumsrechte von
    /opt/lamp/htdocs
    auf deinen aktuellen Benutzer zu übertragen. Wenn Chromium sich weiterhin weigert, auf
    /opt
    zuzugreifen, könnte man noch versuchen, einen Link im Homeverzeichnis zu erstellen.

    Die saubere Lösung wäre jedoch, das ganze sauber aufzusetzen. Also Apache, etc. händisch installieren und das document-root in
    /srv
    anzulegen. Dort hat man dann auch keine Konflikte, wenn man die Rechte verändert. (Sofern der apache dort lesen und ausführen darf.)

    Das "Problem", sofern man es so nennen will - ich betrachte es als Feature - besteht auch unter Arch(Kernel 5.1.14, Chromium 75.0.3770.100)
  7. prinz-und-gloeckner

    prinz-und-gloeckner hat kostenlosen Webspace.

    Du kannst den Apache auch so konfigurieren (Modul userdir), daß zu jedem Nutzerkonto ein Unterverzeichnis angelegt wird, in welchem ein eigenes Projekt entwickelt werden kann.

    Darin solltest du einfach Unterverzeichnisse mit geeigneten Rechten anlegen können.
    Allerdings, bei Entwicklung auf den eigenen Rechner sehe ich auch das Problem nicht, warum man die CSS-Fragmente nicht in einen Text-Editor wir Kate kopieren kann, damit die Projekte entwickeln.
    Chromium wird ja bei PHP ohnehin kaum weiterhelfen, von daher ist dessen Entwicklungsumgebung ohnehin nur von begrenztem Nutzen.
    'Less', 'Sass' wird Chromium ja vermutlich auch nicht mit drin haben, sofern du das für komplexere Stilvorlagen verwenden willst.
    Was WebKit oder Mozilla etc da bieten, ist ja eher eine grobe Hilfe, wenn das Publikum auf vermurkste Seiten im Netz stößt (kommt ja leider oft vor) und gerade mal etwas korrigieren will, um sich die Inhalte (besser) zugänglich zu machen.
  8. Autor dieses Themas

    regioweb

    regioweb hat kostenlosen Webspace.

    Am einfachsten ist es, einen neuen DocumentRoot-Folder in seinem Home-Verzeichnis zu erstellen. In den verschiebt man die Webseiten aus htdocs. Dann muss nur noch der DocumentRoot-Pfad in /opt/lampp/etc/httpd.conf und /opt/lampp/etc/extra/httpd-ssl.conf auf diesen neuen DocumentRoot-Folder geändert werden.

    So gibt es dann keine Rechteprobleme beim einbinden des workspaces. Übrigens kann man mit den Entwicklertools auch PHP-Dateien editieren. In meinem Fall halt Flex-Layout Unterschide zu Firefox ausmerzen.
  9. regioweb schrieb:
    Am einfachsten ist es, einen neuen DocumentRoot-Folder in seinem Home-Verzeichnis zu erstellen. In den verschiebt man die Webseiten aus htdocs. Dann muss nur noch der DocumentRoot-Pfad in /opt/lampp/etc/httpd.conf und /opt/lampp/etc/extra/httpd-ssl.conf auf diesen neuen DocumentRoot-Folder geändert werden.
    Stellt sich am Ende folgendes Problem: Der Webserver sollte gar nicht auf /home/user zugreifen dürfen. Rechte wie 755 oder gar 757/777 sind im Home absolut fatal. (Vor allem, wenn ein Webserver Zugriff darauf hat.) Also bleibt am Ende nur die Möglichkeit auf ACL zurück zu greifen, wenn man das sauber machen will.
    Alles in allem also(unter der Berücksichtigung, dass der Benutzer 'user' und der Webserver-Benutzer 'www-data' heißt):
    - Mit
    sed -i.bak 's/\/opt\/lamp\/htdpcs/\/home\/user\/htdocs/' /opt/lamp/etc/{httpd.conf,extra/httpd-ssl.conf}
    das Document-Root ändern. (Und zur Sicherheit ein Backup der alten Datei behalten.)
    - Mit
    setfacl -m "u:www-data:--x" /home/user
    Ausführungsrechte für den Webserver in /home/user geben, damit er das Verzeichnis einlesen kann.
    - Mit
    setfacl -Rdm "u:www-data:rwx" /home/user/htdocs
    dem Webserver Lese/Ausführungs/Schreibe-Rechte auf htdocs einräumen. (Letztere sind optional - in den meisten Anwendungsfällen braucht man die nicht.)

    Die Methode ist aber ganz klar der userdir-Methode unterlegen - welche eben für genau den Zweck entwickelt wurde.Der Punkt ist, dass bei der "DocumentRoot"-Methode andere Benutzer keinen Zugriff auf das DocumentRoot haben. Und auch, wenn an dem speziellen System nun grade keine anderen Nutzer arbeiten, ist es dennoch besser, es richtig zu machen. Die userdir-Methode ist auch nicht deutlich schwieriger einzurichten (Im Prinzip unterscheidet sie sich nur im ersten Schritt.) und verhindert etwaige Konflikte.
  10. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!