Where could this file have come from?
Você está pedindo especulação pura aqui, mas apenas um caminho possível é a corrupção do sistema de arquivos ou do fluxo de dados do terminal.
Um exemplo de corrupção do sistema de arquivos é que o bloco do disco onde o nome do arquivo está armazenado está de alguma forma corrompido, mas de tal forma que todas as suas somas de verificação são compatíveis. (Sem essa última provisão, o sistema de arquivos simplesmente se recusaria a recuperar os dados corrompidos.) Isso pode acontecer devido a RAM ruim, um disco rígido com falha, cabeamento desonesto, raios cósmicos ...
Um exemplo de corrupção de fluxo de dados de terminal é quando se usa uma linha serial RS-232 (ou algo que o emula) ou um dos protocolos relativamente tolerantes contemporâneos ao reinado de RS-232, como Zmodem .
O Zmodem ainda é conveniente nos dias de SSH e scp
porque ele oculta os dados do arquivo por meio da conexão que você já possui; você não precisa, de alguma forma, alternar a conexão SSH para o modo SCP ou estabelecer uma conexão SCP separada. O lrzsz
package funciona naturalmente com as linhas de comando SSH e Unix.
O Zmodem-over-SSH é especialmente conveniente quando o SSH é inserido através de uma cadeia de dois ou mais hosts, mas existe uma armadilha. Se você usar as opções padrão rz
para tentar Zmodem um arquivo binário através do link, é provável que alguma seqüência de bytes no arquivo seja vista como um seqüência de escape ou caractere de controle pelo host SSH intermediário que não percebe que é retransmitindo uma transferência Zmodem, fazendo com que ela interpretasse mal o fluxo de dados, corrompendo a transferência do Zmodem. (A correção, aliás, é usar rz -e
para forçar o escape de caracteres de controle.)
Quando algo assim acontece, o fluxo de dados em andamento está sendo mal interpretado, de modo que, de repente, uma transferência de dados pode se transformar em comandos para o shell e se algo nesse fluxo de comando corresponder a um comando real (por exemplo, cat > h34ijth34u8934
) o shell cria um arquivo com um nome de lixo. No que diz respeito ao shell, você pediu para fazer isso. O shell não sabe que a origem do nome do arquivo "digitado" é um arquivo de spewing do programa sz
remoto depois que o programa local rz
em que estava falando morreu.
(Sim, isso realmente aconteceu comigo várias vezes.)
Is this something I should worry about?
Depende de como isso aconteceu, o que novamente exige especulação.