Não consigo executar o "sudo" em um determinado comando, porque não está no caminho do sudo. Como posso dar as permissões corretas então?

Não consigo executar o "sudo" em um determinado comando, porque não está no caminho do sudo. Como posso dar as permissões corretas então?

Quero instalar algum pacote Python usando pip. Recebo um erro surpreendente:

error: could not create '/home/brian/anaconda/lib/python2.7/site-packages/PyDSTool': Permission denied

----------------------------------------
Command "/home/brian/anaconda/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip-build-EIkik9/pydstool/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-ipWEV7-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-EIkik9/pydstool

Ok, aparentemente o comando não tem permissão para criar uma pasta no meu diretório pessoal.Isso já é problemático para mim! Tenho tido problemas com isso e não sei o que fazer...

De qualquer forma, fazer sudo pip install <package of interest>também não funciona porque:

brian@brian-linux:~$ sudo pip install pydstool
[sudo] password for brian: 
sudo: pip: command not found

E agora? Prefiro não me aprofundar nos sudoers e adicionar manualmente o caminho do bin ao qual o sudo não tem acesso. Prefiro que meu diretório inicial se comporte normalmente. Talvez configurar minhas unidades de memória ( /no SSD e /homemontadas no HDD) tenha sido uma péssima ideia?

Responder1

Parece que as permissões do seu ~/estão confusas. Todos os arquivos devem ser de sua propriedade. Use find ~/ -user rootpara ver se o root assumiu parte dele, especialmente o diretório no erro que você postou. Altere as permissões para você mesmo quando necessário.

Onde você conseguiu o "pip" e como ele foi instalado?

Responder2

Não sei se isso funcionará, mas tentaria criar o diretório independente de abrir ou instalar seu pacote de software.

Eu realmente não sei por que você não deveria conseguir escrever em seu diretório pessoal. É o SEU diretório inicial, certo? Porque se você tentasse instalá-lo no diretório inicial de outra pessoa, isso explicaria.

Você tem apenas uma instalação do Linux em seu disco rígido? Se você tiver mais de um, é muito fácil se confundir sobre qual unidade lógica você está conectado.

Se você fizer sudo su você estará logado como root e poderá fazer o que quiser - mas tenha cuidado porque também é muito mais fácil quebrar seu sistema.

informação relacionada