我在 Ubuntu 上遇到权限问题。
我有一个用户应用程序用户在我的系统上它可以运行node、npm等,
但现在我需要安装 net-tools 包
这个:https://zoomadmin.com/HowToInstall/UbuntuPackage/net-tools
问题是我安装它
sudo apt-get update -y
作为 root 用户,因为我没有 appuser 的权限。
当我尝试以 root 用户身份运行它时,例如命令:arp
它工作正常。
但是当我想以 appuser 身份运行它时,即使我将 appuser 添加到 sudoers ,它也无法工作。
当以 appuser 身份运行时,arp
我得到:
bash: arp: command not found
答案1
如果您已经安装net-tools
(以 root 身份),您应该能够arp
通过指定它的绝对路径以非特权用户身份运行,例如
/usr/sbin/arp
或确保它是PATH
为用户提供的;例如在适当的初始化文件(.profile
或您的 shell/环境的等效文件)中,添加一行,例如
PATH="$PATH:/usr/sbin"
答案2
- 您应该始终使用
apt-get
root 身份进行安装。这并不意味着只有 root 才能运行已安装的程序。 sudo apt-get update -y
不安装任何东西。用于sudo apt install net-tools
安装网络工具。apr
在/usr/sbin
此目录中不在普通用户路径中。您可以将其添加到您的路径中(编辑~/.profile
)。或将其运行为/usr/sbin/arp
.