Как я могу запускать программы в /usr/local/bin без sudo или root?

Я на Ubuntu 14.04 LTS.

Я установил buildozer и все закончилось /usr/local/bin, Я не могу запустить его без использования sudo или root, и это, вероятно, вызовет проблемы в будущем. Щас пытаюсь убежать buildozer init вернусь buildozer: command not found если я не использую root. Как я могу сделать программы в /usr/local/bin/ виден без использования рута?

Если это невозможно, безопасно ли мне переместить buildozer в другую папку, которая находится в PATH переменная и до сих пор она работает без проблем?

/usr/local/bin уже в моем PATH переменная.

перемещение buildozer а также buildozer-remote в /usr/bin/ и работает 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'

РЕДАКТИРОВАТЬ: я изменил каталоги, где я на самом деле делаю работу с Python, и он работал нормально. Спасибо!!:)

1 ответ

Использование ls -l чтобы дать вам длинный список. Результат должен выглядеть примерно так:

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

В этих полях отображаются права доступа к файлу, количество жестких ссылок файла, имя пользователя владельца, имя группы, которой принадлежит файл, размер файла в байтах, дата и время последней модификации файла, и имя файла соответственно.

Что вас интересует, так это права доступа к файлу, а также пользователю и владельцу группы файла. Если он говорит "root root", то вы должны иметь привилегии root - используйте команду sudo - для записи или выполнения файла.

Вы можете использовать chmodchown а также chgrp Команды для изменения прав доступа к файлу. Тем не менее, я бы не рекомендовал пользователям, кроме root, записывать или выполнять файлы в каталоге /usr/bin. Это может привести к нарушению безопасности вашей системы.

Ошибка отредактирована благодаря @Martin Thornton.

Другие вопросы по тегам