Três perguntas
Permissão no Linux cabe em três verbos. Ler: dá para ver o conteúdo. Mudar: dá para editar ou apagar. Executar: dá para rodar, no caso de um programa ou um script.
Um arquivo pode deixar você ler e mesmo assim impedir a execução. São regras separadas.
O aviso que aparece
Quando a regra barra o comando, o terminal não fica em silêncio. Ele escreve Permission denied. A pasta existe. O arquivo existe. Falta permissão para aquela ação.
devlinux@lab-server:~$ ./scripts/send_metrics.sh
bash: ./scripts/send_metrics.sh: Permission deniedResolva
O script está na pasta e o terminal disse Permission denied na hora de rodar. O que falta?
Ler a regra antes de mudar
ls -l mostra, junto do nome, letras como r, w e x. r é ler, w é mudar, x é executar. Primeiro você lê essa linha. Só depois decide se a regra precisa mudar.
Descubra
Na listagem, o script tem r e w, e não tem x. Dá para abrir o texto dele?
Para se achar na pasta antes de olhar a regra, veja como navegar em pastas.
Categorias