Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/S-PScripts/chromebook-utilities/llms.txt

Use this file to discover all available pages before exploring further.

CAUB (Chrome Auto Update Blocker) is one of the most essential tools for keeping your Chromebook on a version where exploits still function. It works by importing an ONC (Open Network Configuration) file that convinces ChromeOS the Wi-Fi network you are connected to is a pay-to-use metered connection — like a mobile hotspot using cellular data. Because ChromeOS is designed to avoid large downloads on metered connections, it will not check for or download system updates as long as it believes the network is metered. CAUB requires no special access: anyone who can reach chrome://network can apply it. The only catch is that you must apply CAUB to every Wi-Fi network you use regularly, or an update may slip through on a network you forgot to cover.
CAUB only works from ChromeOS v85 to v127. On v128 and above, the ONC-based metered network trick was patched. Use the Flags method, CAUB on Fentanyl, or DAUB (Depthcharge) on newer or older versions respectively.

Main CAUB Procedure

1

Open the network state page

Navigate to chrome://network#state.
2

Expand your Wi-Fi networks

Scroll to the bottom of the page. You will see a Favorites section listing Wi-Fi networks your Chromebook has connected to. Click the + sign next to each network you commonly use to expand it. The more networks you expand the better, but they must come from the Favorites section.
3

Copy all page text

Press Ctrl + A to select all text on the page, then Ctrl + C to copy it.
4

Go to the CAUB generator

Navigate to:
https://minies.pages.dev/caub/
5

Paste and generate

Paste the copied text into the textbox, then press the Generate and download ONC file button.
6

Import the ONC file

Navigate to chrome://network, click the Import ONC button, and import the file you just downloaded.
7

Verify

Your Chromebook will no longer automatically update as long as you are connected to a Wi-Fi network that you included in the CAUB file.
Apply CAUB to all Wi-Fi networks you use — school Wi-Fi, home Wi-Fi, and any other networks your Chromebook connects to. If you join a network that was not covered by CAUB, ChromeOS will automatically update on that network.
CAUB exposes your school Wi-Fi’s password in the data you copy from chrome://network#state. Look for the Passphrase field in your expanded Wi-Fi network’s JSON.

Alternative CAUB Hosting

If minies.pages.dev/caub/ is blocked, use one of these mirrors:
https://caub.vercel.app
https://caub.netlify.app
https://caub.pages.dev/
https://caub.onrender.com/  (unofficial)
Credits: Catakang#0987, Bypassi

Old / Alternative CAUB Method

If the main CAUB generator does not work, use the old version at:
https://minies.pages.dev/caub/old
The old method works differently: instead of selecting all text on the page, you expand each Wi-Fi entry individually and copy only the data within that specific Wi-Fi block. On the old CAUB website, click the + button to add a new input box for each Wi-Fi network’s data. Click the button to remove the last box if you added one by mistake.

CAUB Flags

CAUB Flags is an alternative method that marks a network as metered directly through the ChromeOS Settings UI using a hidden flag, without needing to generate or import an ONC file. This method is patched on ChromeOS 128+ with FWMP.
1

Enable the metered toggle flag

Go to chrome://flags#show-metered-toggle and enable it (it may already be enabled by default). Click Restart.
2

Open Wi-Fi settings

Go to SettingsWi-Fi.
3

Select the network

Click the network you want to mark as metered. If it is not visible in the main list, click Known networks — it will be there.
4

Enable Metered Network

Click Advanced and enable the Metered Network toggle.
Credits: Titanium Network

CAUB on Fentanyl

CAUB on Fentanyl is a more aggressive approach that completely removes the ChromeOS update engine from the filesystem, making it physically impossible for the system to check for or install updates. This method is not reversible without a recovery and requires chronos or root access with rootfs verification disabled. Requirements: chronos or root access (preferably root), rootfs verification disabled, pre-v117 for sudo in Crosh (or manual command entry / VT2 on later versions).
1

Open a shell

Open Crosh (Ctrl + Alt + T and type shell) or enter VT2 on post-v117 systems and log in to chronos.
2

Run the removal commands

Use the multi-line version for clarity:
sudo stop update-engine
sudo rm -rf /usr/sbin/update_engine
sudo rm -rf /usr/bin/update_engine_client
sudo rm -rf /sbin/chromeos-firmwareupdate
sudo rm -rf /opt/google/cr50/firmware/*
sudo sed -i "/etc/lsb-release" -e "s/google.com/gooole.com/g"
Or as a single line:
sudo stop update-engine && sudo rm -rf /usr/sbin/update_engine && sudo rm -rf /usr/bin/update_engine_client && sudo rm -rf /sbin/chromeos-firmwareupdate && sudo rm -rf /opt/google/cr50/firmware/* && sudo sed -i "/etc/lsb-rel" -e "s/google.com/gooole.com/g"
The cr50/firmware/* removal does not nuke your device. It removes staged CR50 firmware updates, preventing them from being flashed.
3

Reboot

Reboot the device. The update engine will no longer run.
Zeroing ROOT-B (optional — for maximum certainty):
This could damage your root partition. Be extremely careful. Run only if you are certain you want to prevent updates at the partition level.
root_dev=$(rootdev)
cleaned_dev="${root_dev//p[0-9]*/}"
sudo dd of=$(cleaned_dev)p4 if=/dev/zero bs=1M status=progress
sudo dd of=$(cleaned_dev)p5 if=/dev/zero bs=1M status=progress
Credits: katelyn / Titanium Network

DAUB (Depthcharge Automatic Update Blocking)

DAUB (Depthcharge Automatic Update Blocking) is an alternative update blocker that works by deleting the update partitions from the ChromeOS disk. Depthcharge (the ChromeOS bootloader) only requires one valid kernel partition to boot in verified mode — without the update partitions, update_engine fails completely. Additionally, depthcharge does not increment the kernel version counter (kernver) until both update partitions reflect the new version, meaning you avoid forced kernver bumps as well.
DAUB is highly inconsistent — there is approximately a 50/50 chance of bootlooping for no apparent reason. Recover the device before attempting DAUB to prevent TPM kernver issues from bricking it. Undoing DAUB requires a full recovery. Unlike CAUB, DAUB does not require Wi-Fi.
Requirements: A root shell (Sh1mmer, BadApple, or another root shell). The device path /dev/mmcblk0 may differ on some boards (e.g. /dev/mmcblk1 on grunt — check your board).
1

Run the cgpt command

cgpt add /dev/mmcblk0 -i 2 -P 10 -T 5 -S 1
2

Format the first partition

yes | mkfs.ext4 /dev/mmcblk0p1
3

Open fdisk and delete update partitions

fdisk /dev/mmcblk0
Inside the fdisk menu, run these commands in sequence:
d
4

d
5

w
DAUB will not be patched at the OS level since it is a partition-level operation. It also does not require Wi-Fi, unlike standard CAUB.
Credits: zeglol / Titanium Network

Build docs developers (and LLMs) love