What is CROSH
Chrome Shell, or CROSH, is a command line interface similar to Linux’s BASH or Windows Command Line Terminals, and is built to be a powerful and user-friendly command-line interface for Google’s Chrome OS.
It provides developers and advanced users with access to diagnostic tools and system-level features to troubleshoot issues, check hardware and network information, monitor system performance, and perform other essential tasks. While not intended for extensive software development or system configuration, CROSH serves as a convenient and secure tool for users to delve into the inner workings of their Chrome OS devices and resolve potential problems efficiently.
Things that CROSH can do
provides access to some system-level features and diagnostic tools. It is primarily designed for developers and advanced users to perform troubleshooting, testing, and various system-related tasks. Here are some of the things that CROSH is capable of.
- Network diagnostics: CROSH commands allow you to check network connectivity, ping addresses, and display network device information.
- Hardware information: You can use CROSH to retrieve hardware details such as CPU, memory, and storage information.
- Battery information: CROSH can provide information about your device's battery health, charge level, and other related details.
- System performance: You can monitor the system's performance, including CPU usage, memory consumption, and active processes.
- SSH access: CROSH supports Secure Shell (SSH), which allows you to establish a secure remote connection to other devices.
- Power testing: Developers can use CROSH to perform power testing and assess the power consumption of Chrome OS devices.
- System logs: You can access and review system logs for troubleshooting purposes.
- Wi-Fi management: CROSH allows you to manage Wi-Fi connections and check connection status.
- Touchpad and keyboard diagnostics: You can run diagnostics on the touchpad and keyboard to check for any issues.
Things that CROSH Cannot do
While CROSH is a very powerful tool that users can use, it is important to know that it is somewhat limited as it is built to be as lightweight as possible. This means that CROSH has certain limitations and specific restrictions due to its design and purpose. Here are some of the things that CROSH is not capable of:
- System-wide configuration: CROSH is primarily designed for diagnostics and troubleshooting, so it doesn't offer direct access to system-wide configuration settings or preferences. For more advanced system configuration tasks, you might need to use other methods or access the Chrome OS settings.
- File management: CROSH does not provide full-fledged file management capabilities like a traditional file manager. While you can access some system files and perform basic file-related operations, it's not a complete replacement for a graphical file manager.
- Web browsing: CROSH is not a web browser and cannot be used for browsing the internet. Its functionality is limited to system diagnostics and a few specific tasks.
- Installing apps or extensions: CROSH does not support the installation of Android apps or Chrome extensions. To install applications or extensions, you need to use the official Chrome OS interface or the Google Play Store.
- User management: CROSH doesn't have features for managing user accounts, creating new users, or changing user settings. These tasks are handled through the Chrome OS settings.
- Full system control: While CROSH provides access to some system-level information and basic commands, it doesn't allow complete control over the operating system. Critical system functions are still restricted to ensure the security and stability of Chrome OS.
- Complex software development: While CROSH is useful for basic diagnostics and troubleshooting tasks, it may not be the ideal environment for complex software development. Developers typically use more robust and feature-rich development environments and tools.
- Software installations: CROSH does not support software installations, especially for Linux applications or other software packages. For that, you would need to use other mechanisms, such as the Chrome OS Linux container or Android app installations.
It is also worth noting separately that, CROSH does not grant the user the ability to disable device management. Device management in Chrome OS is a core feature designed to allow administrators to manage and control Chrome OS devices in an organization or educational setting. It helps in configuring devices, enforcing policies, managing updates, and ensuring security across a fleet of Chrome OS devices.
Typically access to device management settings and tools are restricted to an organization’s system administrators. If you are facing issues related to device management on a Chrome OS device, you should contact the system administrator or IT support in your organization or school for assistance. They will have the necessary permissions and tools to manage device settings appropriately.
ChromeOS CROSH Commands Cheat Sheet
The following sections is a table containing most of the commands that can be used with CROSH.
Command | Action |
---|---|
Exit | Exit the Cross Shell |
Help | Displays the Cross help |
Help_advanced [-c count] [-i interval] [-n] [-s packetsize] [-W waittime] < destination > | Show advanced Cross commands (Mostly used for debugging) |
ping | Send ICMP ECHO_REQUEST packets to a network host. If < destination > is “gw” then the next hop gateway for the default route is used. It works just like the ping command on other operating systems. Press Ctrl+C to stop the ping process or halt any other command in Crosh. |
ssh | Starts the ssh subsystem if invoked without any arguments. “ssh < user > < host >”, “ssh < user > < host > < port >”, “ssh < user >@< host >”. or “ssh < user >@< host > < port >” connect without entering the subsystem. |
ssh_forget_host | Remove a host from the list of known ssh hosts. This command displays a menu of known hosts and prompts the host to forget. |
top | Sets the chapsd log level. No arguments can start verbose logging. |
battery_test [< test length >] | Tests battery discharge rate for a given number of seconds. No argument will default to a 300-second test. |
bt_console <agent> | Enable the Bluetooth debugging console |
chaps_debug ["start" " stop" < log_level >] | Sets the chapsd logging level. No arguments will start verbose logging. |
connectivity | Shows connectivity status. |
experimental_storage < "status" "enable" "disable" > | Enable or disable experimental storage features. |
ff_debug [< tag_expr >] [–help] [–list_valid_tags] [–reset] | Add and remove ff debugging tags. |
memory_test | Performs extensive memory testing on the available free memory. |
modem < command > [args…] | Interact with the 3G modem. Run “modem help” for detailed help. |
modem_set_carrier carrier-name | Configures the modem for the specified carrier. |
network_diag [–date] [–link] [–show-macs] [–wifi] [–help] [–wifi-mon] < host > | A function that performs a suite of network diagnostics. Saves a copy of the output to your download directory. |
network_logging < "wifi" "cellular" "ethernet" > | A function that enables a predefined set of tags useful for debugging the specified device. |
p2p_update ["enable" "disable"] | Enables or disables the peer-to-peer (P2P) sharing of updates over the local network. This will both, attempt to get updates from other peers in the network and share the downloaded updates with them. Run this command without arguments to see the current state. |
rlz < "status" "enable" "disable" > | Enable or disable RLZ. |
rollback | Attempt to rollback to the previous update cached on your system. Only available on non-stable channels and non-enterprise enrolled devices. Please note that this will powerwash your device. |
route [-n] [-6] | Display the routing tables. |
set_apn [-n < network-id >] [-u < username >] [-p < password >] < apn > | Set the APN to use when connecting to the network specified by < network-id >. If < network-id > is not specified, use the network-id of the currently registered network. |
set_apn – c | Clear the APN to be used so that the default APN will be used instead. |
set_arpgw < "true" "false" > | Turn on extra network state checking to make sure the default gateway is reachable. |
set_cellular_ppp [-u < username >] [-p < password >] | Set the PPP username and/or password for an existing cellular connection. If neither -u nor -p is provided, show the existing PPP username for the cellular connection. |
set_cellular_ppp -c | Clear any existing PPP username and PPP password for an existing cellular connection. |
sound < command > < argument > | Low-level sound configuration. Can be used to play/record audio samples and enable beam forming on Pixel. “sound beamforming < "on" "off" >” will enable/disable the feature. “sound record [duration]” will start recording. “sound play < filename >” will play the recorded audio samples. |
storage_status | Reads storage device SMART health status, vendor attributes and error log. |
storage_test_1 | Performs a short offline SMART test. |
storage_test_2 | Performs an extensive readability test. |
syslog < message > | Logs a message to syslog. |
tracepath [-n] < destination >[/port] | Trace the path/route to a network host. |
tracepath [-n] < destination >[/port] | Trace the path/route to a network host. |
update_over_cellular ["enable" "disable"] | Enables or disables the auto updates over cellular networks. Run without arguments to see the current state. |
upload crashes | Uploads available crash reports to the crash server. |
wpa_debug [< debug_level >] [–help] [–list_valid_level] [–reset] | Set wpa_supplicant debugging level. |
xset m | Tweak the mouse acceleration rate. |
xset r rate | Tweak autorepeat rates. The delay is the number of milliseconds before autorepeat starts. The rate is the number of repeats per second. |
xset r [keycode] < "on" "off" > | Turn autorepeat on/off. If keycode is specified, it affects only that key. If not specified, it affects global behavior. |
crwdns2944067:047crwdne2944067:0
How do I unblock
Levi Johnson - crwdns2934203:0crwdne2934203:0
Can I ask what you mean by "unblock"? Is Crosh giving you some kind of error message?
Jacob Mehnert -
to unlock crosh it is control alt t
Raylan Pride -
How Do I Unblock CROSH Commands On My Chromebook?
Elizabith Thurman -
why i need more cheet codes to cheet on something
Elizabith Thurman - crwdns2934203:0crwdne2934203:0