Como posso executar programas em / usr / local / bin sem sudo ou root?

2

Estou no Ubuntu 14.04 LTS.

Eu instalei o buildozer e ele acabou em /usr/local/bin . Eu não posso executá-lo sem usar sudo ou root e isso provavelmente causará problemas no futuro. No momento, tentar executar buildozer init retornará buildozer: command not found , a menos que eu use root. Como posso tornar os programas em /usr/local/bin/ visíveis sem usar o root?

Se isso não for possível, é seguro mover o buildozer para outra pasta que esteja na variável PATH e ainda assim funcione sem problemas?

/usr/local/bin já está na minha variável PATH .

Movendo buildozer e buildozer-remote para /usr/bin/ e executando buildozer init :

Traceback (most recent call last):
  File "/usr/bin/buildozer", line 9, in <module>
    load_entry_point('buildozer==0.29', 'console_scripts', 'buildozer')()
  File "/usr/local/lib/python2.7/dist-packages/buildozer/scripts/client.py", line 13, in main
    Buildozer().run_command(sys.argv[1:])
  File "/usr/local/lib/python2.7/dist-packages/buildozer/__init__.py", line 971, in run_command
    getattr(self, cmd)(*args)
  File "/usr/local/lib/python2.7/dist-packages/buildozer/__init__.py", line 1015, in cmd_init
    copyfile(join(dirname(__file__), 'default.spec'), 'buildozer.spec')
  File "/usr/lib/python2.7/shutil.py", line 83, in copyfile
    with open(dst, 'wb') as fdst:
IOError: [Errno 13] Permission denied: 'buildozer.spec'

EDIT: Eu mudei diretórios para onde estou realmente fazendo o trabalho em Python e funcionou bem. Muito obrigado!! :)

    
por Tan Wang 25.07.2015 / 23:28

1 resposta

1

Use ls -l para fornecer uma lista longa. O resultado deve ser algo como isto:

drwxr--r-- 10 root root 4096 Jul 25 22:17 usr

Os campos aqui mostram os direitos de acesso ao arquivo, o número de links físicos do arquivo, o nome de usuário do proprietário, o nome do grupo que possui o arquivo, o tamanho do arquivo em bytes, a data e a hora do arquivo. última modificação e nome do arquivo, respectivamente.

Você está interessado nos direitos de acesso ao arquivo e ao usuário e ao proprietário do grupo do arquivo. Se ele diz "root root", então você deve ter privilégios de root - use o comando sudo - para escrever ou executar o arquivo.

Você pode usar os comandos chmod chown e chgrp para modificar as permissões do arquivo. Eu, no entanto, desencorajaria você a deixar os usuários separados dos arquivos de gravação ou execução de raiz no diretório / usr / bin. Isso pode comprometer a segurança do seu sistema.

Erro editado graças a @Martin Thornton.

    
por shredalert 26.07.2015 / 00:00