Как я могу выполнить двоичный файл, расположенный в каталоге установки пакета My Python (без sudo)

Допустим, у меня есть такая структура пакетов Python:

top-level/
    __init__.py
    utilities.py
    myscript.py
    binaryfile
LICENSE.txt
MANIFEST.in
README.rst
setup.cfg
setup.py

При установке пакета он будет расположен в:

/usr/local/lib/python2.7/dist-packages/mypackage/

и путь двоичного файла будет:

/usr/local/lib/python2.7/dist-packages/mypackage/binaryfile

Мой вопрос: Как я могу выполнить этот двоичный файл, который находится под /usr/local/... без привилегий root (без sudo) из скрипта, расположенного в моем пакете.

Я использую свой пакет в качестве консольного сценария, поэтому вместо использования:

sudo mypackage

чтобы запустить мой пакет, я хочу использовать только:

mypackage

1 ответ

  1. Вы хотите дать разрешение на выполнение обычным пользователям, поэтому запуск

    sudo chmod +x /usr/local/lib/python2.7/dist-packages/mypackage/binaryfile
    

    один раз должен сделать возможным для обычных пользователей, чтобы выполнить его.