Где хранить скрипты bash, которые все пользователи могут выполнять в Debian?

У меня много скриптов bash на моем сервере, которые могут использовать все пользователи.

но, похоже, местоположение

/usr/local/sbin

не самое лучшее место.

Я не хочу использовать домашний каталог пользователей, потому что все могут их выполнять.

есть ли соглашение о том, где их хранить в Debian?

5
задан Simon
источник

1 ответов

"официальное" место для местных исполняемые /usr/local/bin. Этот каталог обычно находится в $PATH всех пользователей по умолчанию. Традиционно, программы, которые не устанавливаются через менеджер пакетов (например,apt), хранящиеся в /usr/local/bin каталог и те, которые установлены менеджером пакетов в /usr/bin. См.здесь для получения дополнительной информации и здесь для официальных определений и более подробной информации, чем вам когда-либо понадобится.

это просто соглашения, хотя и вы можете использовать свой собственный каталог. Например, хранить скрипты, которые могут выполняться всеми пользователями в /usr/local/scripts вам нужно выполнить следующие действия:

  1. создать папку (я предполагаю, что у вас есть sudo настроен, если не просто переключиться на root С su) и разрешить выполнение:

    sudo mkdir /usr/local/scripts
    sudo chmod 755 /usr/local/scripts
    
  2. добавить этот каталог ко всем $путям пользователя (предполагается, что все используют bash). Добавьте эту строку в /etc/profile:

    export PATH=$PATH:/usr/local/scripts
    

лучший способ (как @Michał Šrajer указал в комментариях) , что будет работать для большинства оболочек (по крайней мере, для любых, которые используют pam_env модуль будет установить $путь в /etc/environment. Например:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/scripts"
7
отвечен terdon 2017-04-13 12:37:10
источник

Другие вопросы bash debian path