Não, o nome é arbitrário, você não pode assumir nada com base nisso. No entanto, a sessão ao vivo tem algumas peculiaridades, como:
$df -h | grep -w /
/cow 2.0G 42M 1.9G 3% /
Como você pode ver, o dispositivo especial /cow está montado em / . Eu não tenho certeza de quão portátil isso é, eu duvido que seja o mesmo para Linux não Ubuntu e também pode mudar em versões futuras, mas desde que não seja um dispositivo real em /dev você pode testar isso com muita facilidade:
df | grep -w / | grep -q 'cow' && echo "Live session" || echo "Normal install"
Explicação:
-
df: sistemas de arquivos montados em impressão -
grep -w /: imprime apenas a linha que mostra o que está montado em/. A opção-wcorresponde apenas a palavras inteiras, de modo que apenas/e não, por exemplo,/home, serão impressas. -
grep -q cow: O -q suprime a saída,grepsairá com status > 0 (erro) secownão foi encontrado e0(correto) se foi. -
&& echo "Live session" : PrintSessão ao vivoif thegrep 'foi bem-sucedida -
|| echo "Normal install": Else, imprimirNormal install.
EDITAR PELO OP
No final, aqui está a solução que implementei no meu script, se for útil:
#!/bin/bash
if [ ! $(df | grep -w / | grep -q '/cow') ]; then
printf "This script must be run from a live session.\n"
exit 1
fi