> For the complete documentation index, see [llms.txt](https://open-rt.gitbook.io/open-surfacert/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://open-rt.gitbook.io/open-surfacert/surface-rt/linux/root-filesystem.md).

# Root Filesystem

The Root Filesystem contains all the necessary binaries your system needs to boot

After building a kernel you need a userspace which contains all the binaries you want in your system.\
Like echo, cat, ls, candy crush (o.O looking at you MS)

There are two ways to get these binaries\
[Option 1](/open-surfacert/surface-rt/linux/root-filesystem.md#option-1-build-your-own-root-filesystem): Build your own root filesystem with Buildroot or similar tools\
[Option 2](/open-surfacert/surface-rt/linux/root-filesystem.md#option-2-get-an-arm-distro): Get a premade root filesystem (distro)

## Option 1: Build your own Root Filesystem

| pro                 | contra                                       |
| ------------------- | -------------------------------------------- |
| Very small (few MB) | You need to install all packages by yourself |
| Boots very fast     | For advanced users                           |

## Option 2: Get an ARM Distro

| pro                              | contra               |
| -------------------------------- | -------------------- |
| Many packages preinstalled       | Large (up to few GB) |
| Community support                | Bloated              |
| Easy for beginners (except Arch) |                      |
