it-swarm.com.de

Was ist der einfachste Weg, um Dateien in "/ var / www" zu bearbeiten und hinzuzufügen?

Nach der Installation des Webservers können Sie auf einfache Weise festlegen, dass ein Benutzer über die grafische Oberfläche Dateien und Verzeichnisse auf den lokalen Webserver/var/www kopieren kann

Ich habe mir Administratorrechte in Ubuntu gegeben, aber es sind immer noch keine Kopien erlaubt.

145
k_graham

Wenn Sie/var/www für seine Gruppe schreibbar machen und den Benutzer der Gruppe hinzufügen, muss dieser Benutzer Sudo nicht verwenden. Versuche dies:

Sudo adduser <username> www-data
Sudo chown -R www-data:www-data /var/www
Sudo chmod -R g+rwX /var/www

Der Benutzer sollte dann in der Lage sein,/var/www/files problemlos zu bearbeiten.

In der ersten Zeile wird der Benutzer der Gruppe www-data hinzugefügt, in der zweiten Zeile werden alle Dateien mit fehlerhaftem Besitz gelöscht und in der dritten Zeile werden alle Benutzer, die Mitglieder der Gruppe www-data sind, zum Lesen und Schreiben aller Dateien aufgefordert/var/www.

Wenn Sie als <username> angemeldet sind, müssen Sie sich abmelden und erneut anmelden, damit die Gruppenmitgliedschaft wirksam wird.

221
Azendale

Sie können chown, das heißt ch, den owner dieses Ordners ändern. Auf diese Weise können Sie den Benutzer und die Gruppe des Ordners ändern und Ihrem Benutzer das Hinzufügen/Entfernen von Dateien ermöglichen. Ersetzen Sie dazu yourusername durch Ihren Namen und führen Sie Folgendes aus:

Sudo chown yourusername.users /var/www

nd das wars.


Ich bevorzuge es jedoch, einen virtuellen Host in meinem Ausgangsordner zu erstellen, es ist viel einfacher.

Grundsätzlich können Sie jeden Ordner als Apache-Serving-Ordner verwenden. Angenommen, Ihr Benutzername ist Benutzername und der Ordner, den Sie bereitstellen möchten, ist / home/Benutzername/www

Erstellen Sie die folgende Datei (zum Beispiel mywebprojects) in/etc/Apache2/sistes-available, indem Sie den Benutzernamen und den Ordnerpfad ersetzen (im Grunde genommen kopieren und einfügen und in #CHANGE HERE ersetzen):

<VirtualHost *:80>
    ServerAdmin [email protected]

    # CHANGE HERE
    DocumentRoot /home/username/www

    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>

    # CHANGE HERE
    <Directory /home/username/www/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
        AllowOverride None
        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
        Order allow,deny
        Allow from all
    </Directory>

    ErrorLog /var/log/Apache2/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog /var/log/Apache2/access.log combined

    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>

</VirtualHost>

Jetzt erstellen wir den Ordner www, fügen eine einfache Hallo-Welt hinzu, deaktivieren die Standard-Website (/var/www), aktivieren unsere Website mywebprojects und starten Apache neu.

mkdir ~/www 
echo "<html><h1>Hello World</h1></html>" > ~/www/test.html
Sudo a2dissite default #
Sudo a2ensite mywebprojects
Sudo service Apache2 restart

Und das, jetzt musst du nicht zu /var/www gehen, du fügst einfach Dateien zu deinem www (oder einem anderen gegebenen Namen) hinzu und es ist bereits da :).

25

Methode 1:

  • Drücken Sie ALT+F2 und geben Sie gksudo nautilus ein und klicken Sie dann auf Ausführen.

    alt text

  • Es wird Nautilus mit Root-Berechtigungen öffnen.
  • Gehe zum Dateisystem var www und jetzt kannst du hinzufügen/kopieren/Fügen Sie Ihre Dateien ein.

Methode 2:

  • Installieren Sie nautilus-gksu  Install nautilus-gksu
  • Nach der Installation geben Sie nautilus -q in Ihr Terminal ein, um die Kontextmenüs zu aktualisieren.
  • Jetzt finden Sie in Ihrem Nautilus-Kontextmenü den Eintrag "Als Administrator öffnen".
  • Wenn Sie Dateien mit Root-Berechtigung öffnen möchten, müssen Sie nur mit der rechten Maustaste auf diese Datei/diesen Ordner klicken und "Als Administrator öffnen" auswählen.
  • Die Datei/der Ordner wird mit Root-Berechtigung geöffnet.

    alt text

9
karthick87

Es könnte so einfach sein wie Sudo usermod -a -G developers $username mit ACL.

Das erfordert allerdings ein wenig Arbeit. Dies gilt mindestens für Ubuntu 10.10. Hängen Sie zuerst die Dateisysteme mit der Option acl in/etc/fstab ein.

Sudo vim /etc/fstab

UUID = xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/ext4 Standard, acl 0 1

Sudo mount -o remount,acl /

Bilden Sie dann eine Gruppe, zu der ein Benutzer zu diesem Zweck gehören kann.

Sudo groupadd developers
Sudo usermod -a -G developers $username

Der Benutzer muss sich abmelden und erneut anmelden, um Mitglied der Entwicklergruppe zu werden.

Tun Sie dies natürlich nicht, wenn Sie Inhalte im Verzeichnis/var/www haben, die Sie möchten, sondern nur, um die Einrichtung zu veranschaulichen:

Sudo rm -rf /var/www
Sudo mkdir -p /var/www/public
Sudo chown -R root:developers /var/www/public
Sudo chmod 0775 /var/www/public
Sudo chmod g+s /var/www/public
Sudo setfacl -d -m u::rwx,g::rwx,o::r-x /var/www/public

Ersetzen Sie dann die Verweise auf "/ var/www" durch "/ var/www/public" in einer Konfigurationsdatei und laden Sie sie erneut.

Sudo vim /etc/Apache2/sites-enabled/000-default
Sudo /etc/init.d/Apache2 reload

Wenn wir das Löschen und Umbenennen von allen Benutzern außer dem Benutzer, der die Datei erstellt hat, einschränken möchten:

Sudo chmod +t /var/www/public

Auf diese Weise ist es immer noch einfach, Verzeichnisse für Frameworks zu erstellen, die außerhalb des Apache-Dokumentenstamms existieren, oder von Servern beschreibbare Verzeichnisse zu erstellen.

Mit Apache beschreibbares Protokollverzeichnis:

Sudo mkdir /var/www/logs
Sudo chgrp www-data /var/www/logs
Sudo chmod 0770 /var/www/logs

Apache-lesbares Bibliotheksverzeichnis:

Sudo mkdir /var/www/lib
Sudo chgrp www-data /var/www/logs
Sudo chmod 0750 /var/www/logs
6
user8290

/var/www folder ist Eigentum des Roots. Sie müssen das Eigentum in Ihren eigenen Benutzernamen ändern, um Dateien in diesem Ordner zu ändern. Hierzu können Sie die folgenden Befehle versuchen.

Sudo -i //, um zur Root-Konsole zu wechseln

Sudo chown -R <username> <path> // for eg. Sudo chown -R scott /var/www/html (scott is the username, -R indicates recrusive)

Nun kann dem Benutzer scott der Besitz des Ordners /var/www/html will zugewiesen werden. Jetzt kann scott Dateien in diesen Ordner kopieren/verschieben.

0
Anoop

Am einfachsten ist es, die folgenden Schritte auszuführen:

  1. Drücken Sie Alt + Ctrl + T und das Terminal öffnet sich und gibt Sudo -s ein und meldet sich mit Ihrem Passwort an.
  2. Sie sind jetzt als root angemeldet.
  3. Geben Sie nun nautilus ein und es wird der Home-Ordner für Sie als Root geöffnet. So können Sie die Dateien jetzt ganz einfach bearbeiten und tun, was Sie wollen.

Hoffe das hilft. :)

0