Qual é a maneira mais simples de editar e adicionar arquivos para “/ var / www”?

135

Tendo instalado o servidor web existe uma maneira simples de definir um usuário capaz de usar a interface gráfica para copiar arquivos e diretórios para o servidor web local / var / www

Eu me dei privilégios administrativos no Ubuntu, mas ele ainda não permite cópias.

    
por k_graham 03.01.2011 / 20:49

7 respostas

204

Se você fizer / var / www gravável por seu grupo e adicionar o usuário ao grupo, esse usuário não precisará usar o sudo. Tente isto:

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

O usuário deve então poder editar / var / www / files sem problemas.

A primeira linha adiciona o usuário ao grupo www-data, a segunda linha limpa todos os arquivos com propriedade confusa e o terceiro faz com que todos os usuários membros do grupo www-data possam ler e escrever todos os arquivos em / var / www.

Se você estiver logado como <username> , precisará sair e fazer login novamente para que os membros do grupo entrem em vigor.

    
por Azendale 01.07.2011 / 03:14
25

Você pode chown , que é ch ange a own er dessa pasta. Isso permitirá que você altere o usuário e o grupo da pasta, permitindo que o usuário adicione / remova arquivos nela. Para fazer isso, substitua yourusername pelo seu nome e execute:

sudo chown yourusername.users /var/www

E é isso.

No entanto, prefiro criar um virtualhost na minha pasta pessoal, é muito mais fácil.

Basicamente, ele permite que você use qualquer pasta como uma pasta de serviço do apache. Para mostrar como é simples, vamos assumir que seu nome de usuário é nome de usuário e que a pasta que você deseja veicular é / home / username / www

Crie o seguinte arquivo (por exemplo mywebprojects ) em / etc / apache2 / sistes-available, substituindo o nome de usuário e o caminho da pasta (basicamente copie e cole e substitua em #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>

Agora vamos criar a pasta www , adicionar um mundo hello simples, desativar o website padrão ( /var/www ), ativar nosso website mywebprojects e reiniciar o apache.

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

E isso, agora você não precisa ir para /var/www , você simplesmente adiciona arquivos ao seu www (ou outro dado) e já está lá:).

    
por Marcos Roriz Junior 05.01.2011 / 12:02
9

Método 1:

  • Pressione ALT + F2 e digite gksudo nautilus e clique em Executar.

  • Ele abrirá o nautilus com previlégios de raiz.
  • Vá para o sistema de arquivos var www e agora você pode adicionar / copiar / colar seus arquivos.

Método 2:

  • Instale o nautilus-gksu
  • Depois de instalar o tipo nautilus -q no seu terminal para atualizar os menus do botão direito.
  • Agora você encontrará a entrada "Abrir como administrador" no menu de atalho do nautilus.
  • Quando você precisar abrir arquivos com permissão de root, basta clicar com o botão direito do mouse nesse arquivo / pasta e selecionar "Abrir como administrador".
  • Ele abrirá esse arquivo / pasta com permissão de root.

por karthick87 03.01.2011 / 20:55
6

Pode ser tão simples quanto sudo usermod -a -G developers $username usando o ACL.

Isso requer um pouco de trabalho, no entanto, para começar. Isto é para o Ubuntu 10.10 pelo menos. Primeiro monte os sistemas de arquivos com a opção acl em / etc / fstab.

sudo vim /etc/fstab

UUID = padrões xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx / ext4, acl 0 1

sudo mount -o remount,acl /

Em seguida, crie um grupo ao qual um usuário possa pertencer para essa finalidade.

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

O usuário precisa sair e entrar novamente para se tornar um membro do grupo de desenvolvedores.

Claro, não faça isso se você tiver conteúdo no diretório / var / www que você deseja, mas apenas para ilustrar a configuração para começar:

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

Em seguida, substitua as referências a "/ var / www" por "/ var / www / public" em um arquivo de configuração e recarregue.

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

Se quiséssemos restringir a exclusão e renomeação de todos, exceto do usuário que criou o arquivo:

sudo chmod +t /var/www/public

Dessa forma, se quisermos criar diretórios para estruturas que existam fora do A raiz do documento do Apache ou talvez criar diretórios graváveis pelo servidor, ainda é fácil.

Diretório de registros graváveis do Apache:

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

Diretório da biblioteca legível por Apache:

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

A maneira mais fácil de fazer é seguir as etapas abaixo: -

  1. Pressione Alt + Ctrl + T e o terminal abrirá e digitará sudo -s e fará o login com sua senha.
  2. Agora você está logado como root .
  3. Agora digite nautilus e ele abrirá a pasta pessoal para você como root. Agora você pode editar os arquivos e fazer o que quiser.

Espero que isso ajude. :)

    
por Mitayshh 08.04.2013 / 15:49
0

/var/www folder é de propriedade da raiz .. você precisa alterar a propriedade para seu próprio nome de usuário para modificar arquivos nesta pasta. Para isso, você pode tentar os seguintes comandos ..

sudo -i // para alterar para o console raiz

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

Agora, a propriedade da pasta /var/www/html will será atribuída ao usuário scott . Agora scott pode copiar / mover arquivos nesta pasta.

    
por Anoop 16.12.2015 / 06:31
-1

Se você estiver usando a versão do servidor, tente o webmin. Tem uma ótima interface web e gerenciador de arquivos. Ou isso ou Filezilla

    
por John Hallquist 24.08.2012 / 02:38