我的服务器上有许多 bash 脚本,所有用户都可以使用。
但似乎位置
/usr/local/sbin
不是最好的地方。
我不想使用用户的主目录,因为每个人都可能执行它们。
在 Debian 上是否有关于将它们存储在哪里的惯例?
答案1
本地可执行文件的“官方”位置是/usr/local/bin
。默认情况下,此目录通常位于所有用户的 $PATH 中。传统上,未通过包管理器(例如apt
)安装的程序存储在/usr/local/bin
目录中,而由包管理器安装的程序存储在 中/usr/bin
。请参阅这里了解更多信息这里了解官方定义以及您所需的更多细节。
不过,这些只是惯例,您可以自由使用自己的目录。例如,要存储可由所有用户执行的脚本,/usr/local/scripts
您需要遵循以下步骤:
创建目录(我假设您已经
sudo
配置好了,如果没有,只需切换到root
)su
并允许执行:sudo mkdir /usr/local/scripts sudo chmod 755 /usr/local/scripts
将此目录添加到所有用户的 $PATH(假设每个人都在使用 bash)。将此行添加到
/etc/profile
:export PATH=$PATH:/usr/local/scripts
一个更好的方法(如@Michał Šrajer在评论中指出)将适用于大多数 shell(至少是使用pam_env
模块将在 中设置 $PATH /etc/environment
。例如:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/scripts"