Check out the other answer for Intel/AMD chromebooks.
Installing ubuntu on arm laptops is usually not easy, and the GPU drivers are unavailable in most cases (so, the performance is not great unless you use XFCE/LXDE/LxQt). You can just use Linux (Debian) environment in ChromeOS if you just need a few Linux apps (e.g. VS Code).
However, if you want to dual boot Ubuntu with ChromeOS (or replace ChromeOS with Ubuntu), feel free to read the rest of the answer.
Ubuntu does not officially support ARM Chromebooks, but you can still install Ubuntu using an unofficial project.

Source: https://github.com/hexdump0815/linux-mainline-on-arm-chromebooks/
First, find out your Chromebook model number, and ensure that your device is supported
The following tutorial for enabling USB booting is based on the PostMarketOS wiki.
First, enable developer mode to enable USB booting.
- Turn off the device.
- Press esc + Refresh + Power.
- Press Ctrl + D.
- Confirm switch to developer mode.
- After that you have to press Ctrl + D to boot from internal storage.
Now, enable booting from external storage.
- Boot into Chrome OS.
- Open console: Ctrl + Alt + T.
- Enter
shell in console.
- Enter
sudo crossystem dev_boot_usb=1 dev_boot_signed_only=0 in shell.
If this throws errors regarding flags preventing sudo like
sudo: The "no new privileges" flag is set, which prevents sudo from running as root.
sudo: If sudo is running in a container, you may need to adjust the container configuration to disable the flag.
Please follow these steps:
- Press
Ctrl + Alt + Refresh/F3 to open VT2 (full screen terminal)
- log in as
chronos (default no password)
- Enter
sudo crossystem dev_boot_usb=1 dev_boot_signed_only=0
After that you can boot from external storage (SD or USB) with Ctrl + U just when the computer boots. (see next section).
Installing Ubuntu (on an external USB drive/microSD card)
There is an unofficial project which brings Ubuntu and Debian support to a few ARM Chromebooks. However, since the ARM chromebooks have limited GPU support, usually Ubuntu and Debian are very slow.
Download the appropriate preinstalled image for your Chromebook (for Lenevo 100e, it is OAK) from here
E.g., you can download a jammy (ubuntu 22.04) image from here. Now, flash the image to a USB drive using Balena Etcher.
Now, plug in the pendrive, start the computer, and press ctrl + U to boot Ubuntu.
Ubuntu is preinstalled, and it will ask you a username and password.
Done!
For better performance, use a high quality microSD card or an SSD via USB.
You can also check out PostMarketOS instead of Ubuntu/Debian. It has out of the box support for most ARM Chromebooks, and offers pre-built images with appropriate drivers configured (however, GPU drivers are still unavailable for most ARM chromebooks).
Installing Ubuntu on internal eMMC storage
Once you are satisfied that everything you need works when you run Ubuntu from the USB drive, you can clone the installation to the internal drive as described in How to install Ubuntu on the internal storage of an ARM Chromebook?. (Also see this). The computer will run much faster than the performance obtained by running from external media (USB drive/card).
Tips and Tricks:
- Here are some tunings to make Firefox run faster on low-end ARM Chromebooks.
- Here are some tweaks to make firefox scrolling work properly in a touch screen chromebook.
- See this tutorial for rotating touchscreen input in your convertible Chromebook/tablet.