android reboot 是 Android 系统中的一个底层命令,用于重启设备,它通常通过 adb shell 或在设备终端中直接执行,它的核心功能是向 init 进程(Android 的第一个进程)发送一个重启请求。

(图片来源网络,侵删)
基本语法
reboot [选项] [原因]
[选项]是可选的,用于控制重启的行为。[原因]是一个可选的字符串,用于记录重启的原因,这有助于系统调试和日志分析。
主要参数详解
以下是最常用和最重要的参数:
-p 或 --poweroff
- 功能: 关机,而不是重启。
- 说明: 执行此命令后,设备会正常关闭系统并断电,这是“软关机”,意味着系统会安全地保存状态并通知所有应用退出。
- 示例:
adb shell reboot -p # 或者 adb shell reboot --poweroff
-r 或 --reboot
- 功能: 重启(这是默认行为)。
- 说明: 当你直接输入
reboot而不带任何参数时,系统默认执行的就是reboot -r,这个参数明确指定了重启操作。 - 示例:
adb shell reboot -r # 或者 adb shell reboot --reboot
-b 或 --bootloader
- 功能: 重启到 Bootloader 模式。
- 说明: Bootloader 是设备启动时加载的第一个软件,它负责加载 Android 操作系统,进入此模式通常用于刷机、解锁 Bootloader 或使用
fastboot命令。 - 示例:
adb shell reboot -b # 或者 adb shell reboot --bootloader
-f 或 --factory
- 功能: 重启到恢复模式。
- 说明: 注意: 这个参数在不同版本的 Android 或不同设备上可能有差异,在某些设备上,
reboot -f会进入恢复模式,而在其他设备上可能等同于reboot -b,进入恢复模式通常用于进行出厂重置、清除缓存分区或应用更新包。 - 示例:
adb shell reboot -f # 或者 adb shell reboot --factory
-n 或 --nowarm
- 功能: 冷启动,不进行热启动优化。
- 说明: Android 系统在重启后会有一个“热启动”(warm boot)的优化过程,它会尝试加快应用启动速度,使用
-n参数可以跳过这个优化,进行一次完全的“冷启动”(cold boot),这通常用于测试或调试。 - 示例:
adb shell reboot -n # 或者 adb shell reboot --nowarm
-s 或 --safemode
- 功能: 重启到安全模式。
- 说明: 安全模式下,只会加载系统预装的核心应用,所有第三方应用都会被禁用,这有助于诊断由第三方应用引起的问题。
- 示例:
adb shell reboot -s # 或者 adb shell reboot --safemode
重启原因
你可以在 reboot 命令后面附加一个字符串作为重启原因,这个原因会被记录在系统的日志中,方便开发者或技术人员追踪问题。
- 示例:
# 带有原因的重启 adb shell reboot "recovery" adb shell reboot "bootloader" adb shell reboot "ota-updating" adb shell reboot "user-requested"
查看日志可以使用 logcat 命令:
adb logcat | grep "reboot"
你会看到类似这样的输出:

(图片来源网络,侵删)
I/BootReceiver( 1234): Rebooting from command line, reason: recovery
实际使用示例
假设你已经通过 adb shell 连接到你的 Android 设备,或者直接在设备的终端应用(如 Termux)中执行。
-
普通重启:
reboot # 或者 reboot -r
-
完全关机:
reboot -p
-
重启到 Bootloader(刷机模式):
(图片来源网络,侵删)reboot -b # 现在你可以使用 fastboot 命令了 # fastboot devices
-
重启到恢复模式(进行恢复操作):
reboot -f # (注意:某些设备可能需要使用其他命令,如 reboot recovery)
-
重启到安全模式:
reboot -s
-
通过 ADB 远程执行重启:
# 在电脑的命令行中执行 adb reboot adb reboot -p adb reboot -b
重要注意事项
-
需要 Root 权限: 在较新的 Android 版本上,普通应用执行
adb shell reboot命令可能会失败,因为它需要REBOOT权限,该权限通常只授予系统应用或拥有 Root 权限的用户,如果你在使用adb时遇到权限错误,可能需要使用root选项:adb root adb shell reboot
-
设备差异: 不同手机厂商(如小米、华为、三星、Pixel)对
reboot命令的实现可能略有不同,某些设备可能不支持-s(安全模式) 参数,或者-f的行为与标准定义不同,如果某个参数不起作用,请查阅你设备特定的文档或社区论坛。 -
系统分区: 某些重启操作(如进入 Bootloader 或 Recovery)需要设备解锁 Bootloader 或特定的系统状态才能正常工作。
希望这份详细的解释能帮助你全面了解 android reboot 的各种参数和用法!
