Install Proxmox to boot from eMMC?

Feitz

New Member
Nov 7, 2024
5
0
1
Hello,
I am relatively new to Proxmox and so far installed on a small Futro S740.
Now I bought a UGreen DXP2800 (1x eMMC, 2x NVME, 2x 3.5" SATA) and would want to use the eMMC as the Proxmox boot drive.

I couldn't find much in the forum so I am opening a new post.

Part one to solve would probably be to install on an eMMC at all, and part two would be to reduce writes to that drive since it probably has a far lesser lifespan than an ordinary NVME drive.

Thanks for your input, Claus
 
Hello @Feitz and welcome to the Proxmox Community.

Now I bought a UGreen DXP2800 (1x eMMC, 2x NVME, 2x 3.5" SATA) and would want to use the eMMC as the Proxmox boot drive.
Part one to solve would probably be to install on an eMMC at all, and part two would be to reduce writes to that drive since it probably has a far lesser lifespan than an ordinary NVME drive.

We always recommend using enterprise hardware for Proxmox. The OS is very write-intensive and a lot will be logged. Therefore, an eMMC will not be very long-lived. Also, you have no redundancy like with a ZFS raid1.
 
Also, you have no redundancy like with a ZFS raid1.
Thank you for your quick answer. That directly leads to the next question: If I set up Proxmox on two NVMEs with ZFS and share storage to a VM that uses BTFS as a file system would this work?
With Proxmox on the eMMC I could pass the disks directly to the guest os and use BTRFS there natively inside the VM.

If the VM runs on a ZFS pool I have duplicate checksums and overhead, which doesn't sound right...

Thanks again, Claus
 
Yes, BTRFS would work in a VM too. But the question is why would you want to use BTRFS in a VM?
What do you hope to achieve by doing this? What is your goal?
 
What do you hope to achieve by doing this?

Since I'm not too familiar with ZFS yet I could use the BTRFS tools provided within the VM (data scrubbing etc.) to verify data integrity. But running it on top of ZFS doesn't seem right, so how would I monitor data integrity on the underlying Proxmox ZFS pool? Any easy-to-use graphical tools?
I wouldn't want to run into a situation where I have an issue with ZFS and don't know how to handle it...
 
Should there be an error in ZFS, e.g. a device failure, too many read or write errors, an info mail is automatically sent to the email address stored under the root account. This works better with the integrated notification system. ZFS and BTRFS are both file systems that should be used on a physical machine and usually have no advantage in virtual machines. I have been using CheckMK to monitor Proxmox and ZFS for years. The system also has an API connection to Proxmox. This works very well and is also very reliable.
 
  • Like
Reactions: Feitz and mariol
If you are a bit adventurous and can live with an eMMC size of less than 32GB (which should be possible for OS-only in compressed mode), then the key-word "enahanced user area" or rather "pSLC"(pseudo-slc")-mode might be of interest.
See here for example:
https://www.embeddedartists.com/wp-content/uploads/2020/04/Working_with_eMMC.pdf

With that, you basically switch part (or the whole size) to operate in 1-bit per cell mode. Which makes the eMMC withstand a lot more.
However, you have to keep in mind this means:
- On a MLC (2-bit per cell) eMMC, this will result in half the available space for the pSLC area.
- On a TLC (3-bit per cell) eMMC, this will result in one third the available space for the pSLC area.
- On a QLC (4-bit per cell) eMMC, this will result in one fourth the available space for the pSLC area.

And some eMMC manufacturers block the mode-switch, after a certain amount of writes have already been performed. It all depends.
As said, it can be done for a whole drive, but also just for certain partitions.
See the key-word "GPP" here:
https://pengutronix.de/en/blog/2020-10-15-anpassen-einer-emmc.html

Edit:
BIG FAT WARNING!
The mentioned steps are all One-Time-programmable. So no room for error, should you decide to try it.
 
Last edited:
  • Like
Reactions: Feitz
BIG FAT WARNING!
The mentioned steps are all One-Time-programmable. So no room for error, should you decide to try it.
Thank you, that sounds interesting. I wouldn't mind shredding the eMMC, since otherwise I wouldn't be using it anyway.
 
Thank you, that sounds interesting. I wouldn't mind shredding the eMMC, since otherwise I wouldn't be using it anyway.

The easiest probably would be to reformat the whole eMMC as one big single pSLC space.
So, no separate areas with different configs, but everything in pSLC.

As you might have seen in the linked documents, the eMMC can already tell you, what the resulting "Max Enhanced Area Size" would be.
If we assume that your eMMC is a MLC-flash based type, and that it can actually be reconfigured, then the possibly resulting 16GB of pSLC-space with (for example) BTRFS with enabled compression, should be easily enough for a basic Proxmox install.
 
  • Like
Reactions: Feitz