web-dev-qa-db-fra.com

Quel est le moyen le plus simple d’éditer et d’ajouter des fichiers à "/ var / www"?

Une fois le serveur Web installé, existe-t-il un moyen simple de définir un utilisateur capable d’utiliser l’interface graphique pour copier des fichiers et des répertoires sur le serveur Web local/var/www

Je me suis octroyé des privilèges d’administration dans Ubuntu mais cela n’autorise toujours pas les copies.

144
k_graham

Si vous créez/var/www en écriture pour son groupe et ajoutez l'utilisateur au groupe, cet utilisateur n'aura pas à utiliser Sudo. Essaye ça:

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

L'utilisateur devrait alors pouvoir éditer/var/www/files sans tracas.

La première ligne ajoute l'utilisateur au groupe www-data, la deuxième ligne efface tous les fichiers dont les droits de propriété sont altérés, et la troisième permet à tous les utilisateurs membres du groupe www-data de pouvoir lire et écrire tous les fichiers/var/www.

Si vous êtes connecté en tant que <username>, vous devez vous déconnecter et vous reconnecter pour que l’appartenance au groupe prenne effet.

219
Azendale

Vous pouvez chownname__, c'est-à-dire chname__etablissez le ownname__er de ce dossier. Cela vous permettra de changer l'utilisateur et le groupe du dossier, permettant à votre utilisateur d'ajouter/supprimer des fichiers dessus. Pour ce faire, remplacez yourusernamepar votre nom et exécutez:

Sudo chown yourusername.users /var/www

Et c'est tout.


Cependant, je préfère créer un hôte virtuel dans mon dossier personnel, c'est beaucoup plus facile.

En gros, il vous permet d’utiliser n’importe quel dossier en tant que dossier de service Apache. Pour montrer à quel point c'est simple, supposons que votre nom d'utilisateur est nom d'utilisateur et que le dossier que vous souhaitez servir est / home/nom d'utilisateur/www

Créez le fichier suivant (par exemple mywebprojectsname__) dans/etc/Apache2/sistes-available en remplaçant le nom d'utilisateur et le chemin du dossier (il suffit de copier-coller et de remplacer dans #CHANGE HERE):

<VirtualHost *:80>
    ServerAdmin webmaster@localhost

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

Créons maintenant le dossier wwwname__, ajoutons un monde simple bonjour, désactivez le site Web par défaut (/var/www), activez notre site Web mywebprojectset redémarrez Apache.

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

Et cela, maintenant vous n’avez plus besoin d’aller à /var/www, vous ajoutez simplement des fichiers à votre www(ou autre prénom) et c’est déjà là :).

25

Méthode 1:

  • Presse ALT+F2 et entrez gksudo nautilus puis cliquez sur Exécuter.

    alt text

  • Il ouvrira le nautile avec des empreintes de racine.
  • Aller au système de fichiers var www et maintenant vous pouvez ajouter/copier/collez vos fichiers.

Méthode 2:

  • Installer nautilus-gksu  Install nautilus-gksu
  • Après avoir installé le type nautilus -q dans votre terminal pour actualiser les menus par clic droit.
  • Vous trouverez maintenant l'entrée "Ouvrir en tant qu'administrateur" dans le menu contextuel de votre nautile.
  • Lorsque vous devez ouvrir des fichiers avec l’autorisation root, il vous suffit de cliquer avec le bouton droit de la souris sur ce fichier/dossier et de sélectionner "Ouvrir en tant qu’administrateur".
  • Il ouvrira ce fichier/dossier avec la permission root.

    alt text

9
karthick87

Cela pourrait être aussi simple que Sudo usermod -a -G developers $username en utilisant ACL.

Cela prend un peu de travail, cependant, pour commencer. Ceci est pour Ubuntu 10.10 au moins. Commencez par monter les systèmes de fichiers avec l'option acl dans/etc/fstab.

Sudo vim /etc/fstab

UUID = xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/ext4 par défaut, acl 0 1

Sudo mount -o remount,acl /

Créez ensuite un groupe auquel un utilisateur peut appartenir à cette fin.

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

L'utilisateur doit se déconnecter puis se reconnecter pour devenir membre du groupe de développeurs.

Bien sûr, ne le faites pas si vous avez le contenu souhaité dans le répertoire/var/www, mais juste pour illustrer sa configuration:

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

Remplacez ensuite les références à "/ var/www" par "/ var/www/public" dans un fichier de configuration, puis rechargez.

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

Si nous voulions restreindre la suppression et le changement de nom de tous, à l'exception de l'utilisateur qui a créé le fichier:

Sudo chmod +t /var/www/public

De cette façon, si nous voulons créer des répertoires pour des infrastructures qui existent en dehors de la racine du document Apache ou peut-être créer des répertoires accessibles en écriture au serveur, cela reste simple.

Répertoire des journaux en écriture Apache:

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

Répertoire de la bibliothèque lisible par Apache:

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

/var/www folder est la propriété de la racine. vous devez changer le propriétaire en votre propre nom d'utilisateur pour modifier les fichiers de ce dossier. Pour cela, vous pouvez essayer les commandes suivantes.

Sudo -i // pour passer à la console racine

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

Désormais, la propriété du dossier /var/www/html will sera attribuée à l'utilisateur scott. Maintenant, Scott peut copier/déplacer des fichiers dans ce dossier.

0
Anoop

La meilleure façon de faire est de suivre les étapes ci-dessous: -

  1. Presse Alt + Ctrl + T et le terminal s'ouvrira et tapez Sudo -s et connectez-vous avec votre mot de passe.
  2. Vous êtes maintenant connecté en tant que root.
  3. Maintenant, tapez nautilus et le dossier d’accueil s’ouvrira pour vous en tant que root. Alors maintenant, vous pouvez facilement éditer les fichiers et faire ce que vous voulez.

J'espère que cela t'aides. :)

0
Mitayshh Dhaggai