comando não encontrado após configurar o caminho corretamente no bash

0

Eu configurei o caminho corretamente como antes, mas estou recebendo o comando não encontrado erro.

$echo $PATH
/usr/local/bin/node

Então eu tenho que executar o nó usando o caminho completo para cada execução e sempre dá erro de permissão negada quando executado sem sudo:

$sudo /usr/local/bin/node ***

Alguém sabe qual é o problema?

    
por haeminish 13.02.2017 / 07:22

1 resposta

1

Reduza seu $PATH de /usr/local/bin/node para /usr/local/bin .

A variável $PATH é para armazenar os nomes dos diretórios que contêm executáveis; é não para armazenar quaisquer nomes de executáveis dentro desses diretórios. O comando file mostrará a diferença:

file /usr/local/bin /usr/local/bin/node

O problema sudo provavelmente significa que o usuário atual não tem permissão para executar node . Verifique a permissão e a propriedade:

stat --printf="%a %G:%U\n" /usr/local/bin/node

Deveria dizer algo como:

777  root:root

Suponha que não, mas há outro arquivo foo in usr/local/bin/ que funciona sempre e tem as permissões e a propriedade corretas. Para dar node as mesmas permissões e propriedade de foo :

sudo chown --reference=/usr/local/bin/foo /usr/local/bin/node
sudo chmod --reference=/usr/local/bin/foo /usr/local/bin/node
    
por 13.02.2017 / 08:12

Tags