/dev/sgxx é um dispositivo genérico SCSI, que permite enviar e receber comandos SCSI brutos. Quando você escreve no dispositivo, espera-se que você inicie a gravação com um cabeçalho SCSI, que define a operação que você deseja fazer.
Escrever dados aleatórios em um dispositivo sg é realmente uma má ideia. Você estará enviando comandos SCSI aleatórios, que podem nem mesmo existir (portanto, function not implemented ) e, além disso, fornecendo um comprimento de bytes aleatório para a operação, o que provavelmente resultará em cannot allocate memory . (Se você é realmente azarado, o comando aleatório pode fazer alguma coisa.)
Dependendo do dispositivo que você realmente conectou a /dev/sg11 , talvez seja interessante investigar o pacote sg3_utils ou algum driver de dispositivo SCSI mais específico, como st (unidades de fita).
Um dos utilitários utilitários que vem com o sg utils é sg_map , o que permite que você saiba qual dispositivo primário corresponde a um dispositivo sg. Em sistemas Linux não antigos, você também pode instalar o lsscsi , que fornece uma boa lista de dispositivos SCSI, novamente com o dispositivo / dev / sg e o dispositivo principal.
sg3_utils também inclui sg_dd , que é uma versão do dd que entende o protocolo SCSI de baixo nível. (Mas só use se souber o que está fazendo!)