Debugging Features
This page describes Chromium OS features that are supported beginning in release M41.
Introduction
You can enable debugging features on your ChromeOS device to support installing and testing custom code on your device. These features allow you to:
- Remove rootfs verification so you can modify OS files
- Enable SSH access to the device using the standard test keys so you
can use tools such as
cros flash
to access the device - Enable booting from USB so you can install an OS image from a USB drive
- Set both the dev and the system root login password to a custom value so you can manually SSH into the device
Debugging features lower system security, primarily by allowing remote access via SSH using publicly known keys. For this reason, you can enable them only during the Out of the Box Experience (OOBE) when the device is booted in Developer Mode. Once you've finished OOBE (e.g. you've logged in to an account), you can't access this section again. You'd have to powerwash it to reset back.
Enabling debugging features
To enable debugging features, do the following:
- Use the powerwash process or the recovery process to wipe your hard drive. After the device reboots and you sign in again, you’ll see the first screen. Note: For managed ChromeOS devices, do NOT follow the powerwash or recovery instructions because you won’t be able re-enroll the device afterwards. Instead, wipe the data on your ChromeOS device to reset the device.
- Set the device to Developer Mode (see Developer Information for ChromeOS Devices). The system reboots, then displays the “OS Verification is OFF" screen.
- Press Ctrl+D to dismiss this screen. The device reboots and shows the first screen.
- Click the Enable debugging features link. A confirmation dialog displays.
- Click Proceed. The system reboots and displays a dialog with password prompts.
- [OPTIONAL] Set the new root password. Note: If you leave the root password blank, the password defaults to .
- Click Enable. The screen displays messages indicating success or failure.
- Click OK. You'll see the first screen again.
- Follow the remaining prompts to configure your Chrome device.
Disabling debugging features
On a managed ChromeOS device, most debugging features remain enabled, even after powerwashing or wiping the data. Use one of the following processes to disable features, depending on your requirements:
-
The cros flash script for updating the ChromeOS image directly
-
The cros flash script
for updating the ChromeOS image via USB (or directly using the `--clobber-stateful` flag)
-
Powerwash process
This table summarizes the features reset by each procedure (✓ means the feature is reset):
ChromeOS Recovery | `cros flash` | `cros flash usb://` | or | `cros flash --clobber-stateful` | Powerwash |
Rootfs verification | ✓ | ✓ | ✓ | ||
SSH w/ test keys | ✓ | ✓ | ✓ | ||
USB boot | ✓ | ||||
System password | (for SSH login) | ✓ | ✓ | ✓ | |
Dev password | (if present, overrides | system password for VT2 login) | ✓ | ✓ | ✓ |
To manually disable booting from USB:
- Make sure the device is in developer mode.
- Open the terminal window by pressing Ctrl + Alt + F2.
- Log in as
root
. - Type the default password
test0000,
or the custom password you set previously. - At the command prompt, type
crossystem dev_boot_usb=0