I am developing a embedded product ...
Os dispositivos que executam o Linux embarcado normalmente possuem um kernel personalizado e um sistema de arquivos raiz personalizado. Normalmente, não vale a pena tentar adaptar uma distribuição Linux existente a um hardware personalizado e usar um sistema de arquivos de área de trabalho de uso geral para um aplicativo incorporado dedicado.
As ferramentas para criar sistemas de arquivos root e kernel Linux personalizados são o Buildroot e o Yocto.
Does a version of linux support something like this?
Uma "versão live do linux" é simplesmente um kernel Linux que inicializa com um ramdisk ou mais provavelmente um ramfs para o sistema de arquivos raiz. Eu vi (assim como construído) numerosos sistemas Linux embarcados que usam um ramfs ou ramdisk para seus rootfs.
IOW o que você propõe não é único ou novo; é um conceito bem usado que tem muitas variações de implementação.
A mídia de inicialização é sua e o que o hardware suporta.
IOW se você quiser inicializar o Linux com um initramfs de um HDD, então o único problema pode ser você aprender como criá-lo.
Dependendo do hardware que você usa, não pode haver nenhum novo código para desenvolver (além do seu aplicativo), e construir um kernel e rootfs seria uma questão de baixar, configurar e construir o código fonte existente.
A atualização de um sistema no campo é um tópico complexo e há muitas soluções. Os vários sistemas de pacotes usados pelas distribuições são tipicamente muito pesados / complexos para sistemas embarcados, especialmente aqueles que são baseados em flash NAND.