LinuxCommandLibrary

adb-kill-server

Stop the ADB server process

TLDR

Kill the adb server if it is running

$ adb kill-server
copy

SYNOPSIS

adb kill-server

DESCRIPTION

The adb kill-server command is part of the Android Debug Bridge (ADB) toolkit, a client-server program used for debugging and interacting with Android devices from a host computer. ADB consists of three components: the ADB client (adb), the ADB daemon (adbd) running on the device, and the ADB server running on the host.

This specific command forcefully terminates the ADB server process on the host machine, which manages communication between the client and devices. It is essential for troubleshooting issues like stuck device connections, unresponsive ADB commands, or corrupted server state. For example, if adb devices fails to list devices despite proper USB debugging setup, killing and restarting the server often resolves it.

Upon execution, the server stops immediately, dropping all active sessions. The next ADB command automatically restarts the server. This makes it a quick reset mechanism without rebooting the system or device. It runs without root privileges typically, but firewall or SELinux policies might interfere. Widely used by developers for efficient Android development workflows.

CAVEATS

Abruptly disconnects all ADB clients and devices; no confirmation prompt. May require sudo if ADB server binds to privileged ports. Does not affect device-side adbd.

COMMON USAGE

Pair with adb start-server for full reset: adb kill-server && adb start-server.
Use after USB reconnects, driver updates, or permission denials.

TROUBLESHOOTING TIP

If server won't die, check ps aux | grep adb and pkill adb. Restart USB debugging on device post-kill.

HISTORY

Introduced in early Android SDK tools (circa 2007) by Google as part of platform-tools. Evolved with Android versions; remains unchanged in core functionality across SDK releases.

SEE ALSO

adb(1), adb start-server(1), adb devices(1)

Copied to clipboard