
Como faço para definir a permissão, para que eu possa? A opção "Criar nova pasta" está esmaecida.
Eu tentei isso:
sudo chmod -rw /opt/lampp/htdocs
Mas ainda não funciona. Quando eu adiciono:
sudo chmod -rw 755 /opt/lampp/htdocs,
Diz:"755" no such file or directory
Responder1
Você está confundindo como o chmod e as permissões de arquivo unix funcionam.
Você precisa configurar o diretório /opt/lampp/htdocs para que o usuário com o qual você está logado tenha permissão para escrever. Você também precisa garantir que o que você escreve lá possa ser lido por qualquer servidor web que o LAMPP use (infelizmente não estou familiarizado com o LAMP).
Primeiro você precisa ver quem é o proprietário de /opt/lampp/htdocs:
$ ls -ld /opt/lampp/htdocs
Deve retornar algo como:
drwxr-xr-x 4 lampp www 4096 2011-03-22 12:43 /opt/lampp/htdocs
O primeiro bit (dwrxr-xr-x) são as permissões do arquivo. "lampp" é o proprietário do diretório e "www" é o proprietário do grupo do diretório. Você precisa observar este.
Primeiro vamos classificar o grupo. Se o grupo for qualquer coisa exceto "root", então está tudo bem e você pode pular esta seção:
Se for "root", será necessário mudar para algo mais sensato. Vamos criar um novo grupo ao qual ele pertencerá:
$ sudo groupadd www
Em seguida, altere o grupo no diretório:
$ sudo chgrp -R www /opt/lampp/htdocs
Agora você precisa fazer o servidor web rodar como o grupo www. Se o servidor web for Apache, você deve verificar o arquivo /etc/apache/httpd.conf e editar a configuração "Grupo" de acordo. Não conheço a configuração de outros servidores web.
Agora é aqui que você pularia se não precisasse mudar o grupo de root para outro.
Agora precisamos abordar as permissões no diretório. Queremos usar algumas permissões muito especiais, chamadas de bit "setgid".
$ sudo chmod 2775 /opt/lampp/htdocs
$ ls -ld /opt/lampp/htdocs
drwxrwsr-x 4 lampp www 4096 2011-03-22 12:43 /opt/lampp/htdocs
Você vê que as permissões mudaram um pouco. Vamos explicar isso.
- A primeira letra é o tipo de arquivo. Neste caso, "d" é para Diretório.
- Os próximos três, "rwx", são as permissões que o proprietário (lampp) possui no diretor. r = ler, w=escrever e x=ver o conteúdo do diretório.
- Os próximos três "rws" são para o proprietário do grupo (www), mas você percebe que o x neste caso é na verdade um s - falaremos disso em um momento.
- Os três últimos, "rx", são para todos os demais. Isso é lido e veja o conteúdo do diretório. Sem escrita.
O "s" nas permissões do grupo é chamado de bit "setgid". Esta é uma permissão especial que faz com que qualquer arquivo criado no diretório herde o proprietário do grupo do próprio diretório. Portanto, se o usuário "fred" no grupo "usuários" criar um arquivo lá, ele será propriedade de "fred" no grupo "www". Isso é muito útil para uma área compartilhada onde várias pessoas leem e gravam os mesmos arquivos.
Mas do jeito que está, você ainda não tem a capacidade de escrever nessa área. Por que? Porque você não está no grupo "www". Vamos corrigir isso agora:
$ sudo usermod -aG www blub
Substitua "www" pelo proprietário do grupo do diretório /opt/lampp/htdocs que você anotou perto do início.
Você precisará sair e entrar novamente para que esta alteração tenha efeito - suas associações ao grupo são lidas no momento do login.
Depois de fazer isso, você descobrirá que agora pode escrever arquivos magicamente em /opt/lampp/htdocs.
Se você tiver outros usuários no sistema que deseja permitir a gravação, basta adicioná-los ao grupo www com o usermod -aD www <username>
comando.
Responder2
Este simples comando de terminal me deu permissões completas htdocs
e pude começar a trabalhar em projetos PHP
sudo chmod 777 -R /opt/lampp/htdocs
Em resposta ao comentário de Muhammed, seria melhor usarsudo chmod 755 -R /opt/lampp/htdocs
Responder3
você usa +rw OU os octais, não ambos.
O que você está tentando fazer é remover privilégios de leitura e gravação de um diretório chamado 755 e também de /opt/lampp/htdocs.
De qualquer forma, você não deveria usar o xampp - você pode obter uma instalação nativa mais atualizada de uma pilha de lâmpadas - você pode instalá-la com o Taskel.
Responder4
Para alterar a propriedade do grupo do diretório /opt/lampp/htdocs
e seu conteúdo para o grupo jade
.
sudo chgrp -R jade /opt/lampp/htdocs
Então, se você quiser modificar as permissões (por exemplo, conceder jade
acesso de gravação ao grupo), normalmente usaria o comando chmod. Por exemplo:
sudo chmod -R g+w /opt/lampp/htdocs