Para responder à pergunta atual:
Sim, um software pode gravar diretamente em um dispositivo, mas ao contrário do que você presume, isso não destrói um sistema de arquivos, pois o software também pode ser lido diretamente do sistema de arquivos. Se o software faz tudo certo, seria apenas como ler e escrever a maneira usual (indireta). Lembre-se que ele só precisa fazer o que seu sistema faz o tempo todo. Além disso, o software não precisa se preocupar com privilégios gerenciados pelo sistema de arquivos.
No entanto - e aí vem a boa mensagem - ler ou gravar diretamente requer acesso de leitura / gravação aos arquivos do dispositivo, por exemplo, /dev/sdb
. Esse acesso é concedido apenas ao superusuário.
Você mesmo pode tentar fazer isso inserindo
dd if=/dev/sda bs=32 count=1
em um terminal. /dev/sda
é o seu primeiro disco rígido, substitua-o por qualquer que seja o seu dispositivo USB (provavelmente /dev/sdb
) se você quiser testá-lo e não seu disco rígido.
Você receberá
dd: failed to open ‘/dev/sda’: Permission denied
como saída.
Se você fez isso com sudo ou como root, ele escreveria o primeiro byte de 32 de seu disco rígido / seu pendrive para o console.
No entanto, você deve estar ciente do fato de que usuários normais podem, de fato, montar dispositivos. Portanto, nenhum acesso direto ao dispositivo é necessário e um software mal-intencionado pode ler e gravar usando a maneira normal (indireta).
Você mesmo pode testar isso inserindo o comando
mount /dev/sdb1 /some/directory/already/in/place
onde /dev/sdb1
é a primeira partição do seu stick USB.