Portanto, parece que há apenas um atraso entre a execução de /home/pi/.config/lxsessions/LXDE-pi/autostart
e a montagem automática de quaisquer unidades, por isso modifiquei meu script bash para tentar encontrar o arquivo no primeiro minuto e, em seguida, recorrer a um padrão. Isso geralmente é acionado nos primeiros segundos, então não está muito sujo nem muito longo.
Eu acho que o motivo pelo qual chamar um URL específico funcionou, mas tentar encontrá-lo na inicialização não, é porque o atraso entre o lançamento do cromo e o sistema de arquivos que verifica as unidades montadas é quase o mesmo, então no momento lança, o URL dado ao cromo é válido. Considerando que ao fazer uma operação de localização, isso acontece muito mais rápido e retorna nulo antes que o sistema de arquivos possa montar unidades, portanto, o chrome é aberto com o URL padrão.
O seguinte código provavelmente poderia ser otimizado abrindo o padrão como a primeira ação e, em seguida, tentando encontrar o arquivo real, matando o chrome quando bem sucedido e relançando com o URL correto, mas por enquanto isso funciona:
#!/bin/bash
# $1 Defines the path that we will look in
# $2 Defines the name of the file we're looking for
# $3 Defines the path to a default file if not found
delayTime=1s
for i in {0..60}
do
path="$(find $1 -name $2 | head -n 1)"
if [ -f "$path" ];then
echo "content found at $path"
chromium-browser --incognito --kiosk $path
exit
else
echo "content was not found on attempt $i"
sleep $delayTime
fi
done
chromium-browser --incognito --kiosk $3
exit