#  > Servidores >  > Sistemas Operacionais >  >  Permissão para executar script.sh

## zzzhhh

Olá amigos,
Estou com um problema de execução de script...deu tudo que é tipo de permição e logado como root e não consigo ter permissão para executar nenhum tipo de script
as permissões que ja tentei...

chmod +x script.sh
chmod 775 script.sh
chmod 777 script.sh
e outros tipos
estou fazendo alguma coisa errada? estou usando FreeBSD 7 com kernel recompilado.
Obrigado a todos

----------


## GrayFox

Com chmod 775 teria que funcionar. Poste o resultado.

----------


## zzzhhh

Como que eu posso postar o resultado...algum log?



```
host# chmod 775 aa.sh
host# ./ aa.sh
./: Permission denied.
host#
```

----------


## GrayFox

Bom, tente o chmod 755.

O que pode estar acontecendo é voce estar executando algum software que acessa o kernel e nao tem permissao.
Exemplo:
Se voce colocar o securelevel para 1, algumas regras do ipfw nao iriao funcionar. Se colocar entao securevel 2, ai mesmo nao vai funcionar nada.
Seria mais facil voce postar o seu script para termos uma ideia, mas antes tente com chmod 755.

Saudações,

----------


## zzzhhh

Pois é...eu ja tentei com 775, 777 e não funciona...
meu secure level é -1


```
host# sysctl kern.securelevel
kern.securelevel: -1
```

 e o meu script n funciona nem se for assim


```
#!/bin/sh
echo"Bom dia";
```

 Sera que eu tenho que modificar algum tipo de permissão ou alguma coisa no Kernel e recompilalo?

----------


## GrayFox

echo "bom dia"

Teria que funcionar legal. O dono do arquivo é o root, ou usuario comum?

Saudações,

----------


## zzzhhh

o dono é o root
tbm se eu tentar com usuario normal da o mesmo problema


```
host# ls -l
total 0
-rwxrwxr-x  1 root  wheel  0 Apr 16 13:02 aa.sh
host#
```

 
Eu não sei mais o que fazer para resolver este problema de permissão.

----------


## Fernando

Ele vai quando voce faz ele rodar como processo separado?

sh aa.sh
cat aa.sh | sh
sh < aa.sh

Em teoria se a shell consegue ler o arquivo, ela consegue intepretar o comando.. Permissao pra executar nao seria nem necessaria nesse caso..

Vale olhar tambem se o path pro sh ta correto..
Existem variacoes de acordo com a versao do OS..

/usr/X386/bin
/usr/bin

etc.

Outra coisa, qual shell voce esta' usando agora? csh ou sh mesmo? echo $0

----------


## zzzhhh

Amigo deu certo rodando sh aa.sh rodou certinho...
estou usando no momento csh
acho que consegui resolver meu problema...agora vou tentar ver o path acho q deve estar errado ne...
a todos que me ajudaro neste topico muito obrigado.

----------


## Fernando

Acredito que seu problema era que voce estava tentando fazer o 'csh' interpretar o script que estava com source setado para o 'sh'.

Quando voce executa o script com './', ele o executa no mesmo shell que voce esta, no caso, o 'csh'. Quando voce executa com o 'sh' (csh, ksh, etc), ele abre um processo separado e executa ele na shell que voce especificou.

Era por isso que ele tava negando permissao.
Legal que resolveu! Abraco.

----------

