Como saber se um sistema está sendo executado como um USB ao vivo da BASH

1

Estou trabalhando para criar uma imagem ISO que possa gravar em um dispositivo USB como um sistema ativo. Para instalar na unidade interna do sistema que inicializou o USB ao vivo, tenho um ícone na área de trabalho para iniciar o instalador.

Após a instalação, desejo remover o ícone. Para fazer isso, eu criaria um script que detectasse se o sistema estava sendo executado como um USB ativo ou se estava realmente instalado. Existe uma maneira de detectar isso da BASH?

Obrigado!

    
por Dork Flower 26.09.2018 / 00:11

2 respostas

3

Você pode examinar a entrada do sistema de arquivos raiz em /proc/mounts . Se você inicializar a partir do CD, provavelmente usará iso9660 como um sistema de arquivos e terá um dispositivo como /dev/sr0 .

Claro, você pode criar um arquivo em algum lugar como parte da instalação e usar a presença desse arquivo como um indicador.

    
por 26.09.2018 / 00:26
0

Descobri que você pode fazer lsblk | grep 'sr0' e, se achar que sr0 , é mais do que provável que esteja sendo executado como um live usb. Mesmo que seja realmente instalado com um live usb conectado, sr0 só aparece se o live usb for inicializado.

    
por 26.09.2018 / 15:01