我是否应该像在 Linux 上一样在 macOS 上的 fastboot 命令前添加 sudo?

我是否应该像在 Linux 上一样在 macOS 上的 fastboot 命令前添加 sudo?

我将在 macOS 上使用fastboot。我将遵循他的教程

该指南仅提到了 Windows 和 Linux,而我现在不想在我的 Mac 上安装它们,而且我认为fastboot在所有平台上都是相同的,所以我想我可能只会使用 macOS。

然而,指南写道:

Linux 用户需要将扩展​​名更改为 .sh 并在每个命令前添加 sudo 或直接以 root 身份运行。

这也适用于 macOS 吗?我应该sudo在每个fastboot命令前添加吗?

答案1

否。打开终端窗口的命令(如果您遵循使用 Android SDK 的指南)——您将在其中使用执行 adb——已处于管理控制之下。这意味着输入到终端的每个命令都将使用提升的权限。

答案2

不可以。而且您也不应该sudofastbootLinux 上使用。

客户端工具fastboot从未打算以超级用户身份运行。甚至它的作者也不认为它适合于此目的。如果你看看 Android 产品中的代码,你会发现旨在以超级用户身份运行(在设备本身上),它的写法完全不同。

相反,在 Linux 上你应该使用udev 规则将 Android USB 设备(ADB ID 和不同的 fastboot ID)公开给有权使用它们的用户。Android 文档解释了如何设置和激活所需的规则。

在紧急情况下,如果您真的懒得正确设置它,请sudo暂时让您的用户访问 USB 设备节点,然后fastboot在您的用户 ID 下运行 - 但如果您重新插入设备或重新枚举,您将必须再次执行此操作,例如在快速启动和 ADB 模式之间切换时。

相比之下,Mac 上的情况有所不同,因为系统默认已经授予用户使用 USB 外围设备的权限,因此无需系统配置即可完成此功能。

在任一系统上,一旦正确配置(Mac 上为默认配置,Linux 上为正确设置),您应该在正常用户帐户下运行,即fastboot无需。adbsudo

相关内容