Qual'è il modo più semplice per modificare e aggiungere file a "/ var / www"?

138

Dopo aver installato il server Web c'è un modo semplice per impostare un utente in grado di utilizzare l'interfaccia grafica per copiare file e directory sul server web locale / var / www

Mi sono concesso privilegi amministrativi in ​​Ubuntu ma non sono ancora state permesse copie.

    
posta k_graham 03.01.2011 - 20:49

7 risposte

206

Se si rende / var / www scrivibile dal suo gruppo e si aggiunge l'utente al gruppo, tale utente non dovrà usare sudo. Prova questo:

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

L'utente dovrebbe quindi essere in grado di modificare / var / www / files senza problemi.

La prima riga aggiunge l'utente al gruppo www-data, la seconda riga cancella tutti i file con proprietà incasinate, e la terza fa in modo che tutti gli utenti che sono membri del gruppo www-data possano leggere e scrivere tutti i file in / var / www.

Se hai effettuato l'accesso come <username> , devi uscire e accedere nuovamente affinché l'appartenenza al gruppo abbia effetto.

    
risposta data Azendale 01.07.2011 - 03:14
25

Puoi chown , ovvero ch ange il own er di quella cartella. Ciò ti consentirà di modificare l'utente e il gruppo della cartella, consentendo all'utente di aggiungere / rimuovere file su di esso. Per farlo, sostituisci yourusername con il tuo nome ed esegui:

sudo chown yourusername.users /var/www

E questo è

Tuttavia, preferisco creare un virtualhost nella mia cartella home, è molto più semplice.

Fondamentalmente ti permette di usare qualsiasi cartella come una cartella di servizio Apache. Per mostrare quanto sia semplice, supponiamo che il tuo nome utente sia username e che la cartella che vuoi servire sia / home / username / www

Crea il seguente file (ad esempio mywebprojects ) in / etc / apache2 / sistes-available sostituendo il nome utente e il percorso della cartella (in pratica copia e incolla e sostituisci in #CHANGE QUI):

<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>

Ora creiamo la cartella www , aggiungiamo un semplice mondo Hello, disabilitiamo il sito web predefinito ( /var/www ), abilitiamo il nostro sito web mywebprojects e riavviamo apache.

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

E così, ora non devi andare a /var/www , semplicemente aggiungi file al tuo www (o altro dato) ed è già lì:).

    
risposta data Marcos Roriz Junior 05.01.2011 - 12:02
9

Metodo 1:

  • Premi ALT + F2 e inserisci gksudo nautilus e fai clic su Esegui.

  • Aprirà nautilus con i privilegi di root.
  • Vai al filesystem var www e ora puoi aggiungere / copiare / incollare i tuoi file.

Metodo 2:

  • Installa nautilus-gksu
  • Dopo aver installato il tipo nautilus -q nel terminale per aggiornare i menu del clic destro.
  • Ora troverai la voce 'Apri come amministratore' nel menu del tuo clic con il tasto destro del nautilus.
  • Quando devi aprire qualsiasi file con i permessi di root, devi semplicemente fare clic destro su quel file / cartella e selezionare "Apri come amministratore".
  • Si aprirà quel file / cartella con il permesso di root.

risposta data karthick87 03.01.2011 - 20:55
6

Potrebbe essere semplice come sudo usermod -a -G developers $username utilizzando ACL.

Questo richiede un po 'di lavoro, tuttavia, per iniziare. Questo è almeno per Ubuntu 10.10. Innanzitutto monta i file system con l'opzione acl in / etc / fstab.

sudo vim /etc/fstab

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

sudo mount -o remount,acl /

Quindi crea un gruppo a cui un utente può appartenere per questo scopo.

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

L'utente deve uscire e rientrare per diventare un membro del gruppo di sviluppatori.

Ovviamente, non farlo se hai contenuto nella directory / var / www che vuoi, ma solo per illustrare la configurazione per iniziare:

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

Quindi sostituisci i riferimenti a "/ var / www" con "/ var / www / public" in un file di configurazione e ricarica.

sudo vim /etc/apache2/sites-enabled/000-default
sudo /etc/init.d/apache2 reload

Se volessimo limitare l'eliminazione e la rinomina da tutti tranne l'utente che ha creato il file:

sudo chmod +t /var/www/public

In questo modo, se vogliamo creare le directory per i framework che esistono al di fuori del Apache root del documento o forse creare directory scrivibili dal server, è ancora facile.

Directory dei registri scrivibili in Apache:

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

Directory della libreria leggibile con Apache:

sudo mkdir /var/www/lib
sudo chgrp www-data /var/www/logs
sudo chmod 0750 /var/www/logs
    
risposta data user8290 05.01.2011 - 03:41
0

Il modo più semplice per fare è seguire i passaggi indicati di seguito: -

  1. Premi Alt + Ctrl + T e il terminale si aprirà e digiterà sudo -s e accedi con la tua password.
  2. Ora hai effettuato l'accesso come root .
  3. Ora digita nautilus e si aprirà la cartella principale come root. Così ora puoi facilmente modificare i file e fare quello che vuoi.

Spero che questo aiuti. :)

    
risposta data Mitayshh 08.04.2013 - 15:49
0

/var/www folder è di proprietà della radice .. devi modificare la proprietà sul tuo nome utente per modificare i file in questa cartella. Per questo puoi provare i seguenti comandi ..

sudo -i // per passare alla console di root

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

Ora la proprietà della cartella /var/www/html will è assegnata all'utente scott . Ora scott può copiare / spostare file in questa cartella.

    
risposta data Anoop 16.12.2015 - 06:31
-1

Se stai utilizzando la versione del server, prova a webmin. Ha un'ottima interfaccia utente web e file manager. O quello o Filezilla

    
risposta data John Hallquist 24.08.2012 - 02:38

Leggi altre domande sui tag