copy no Linux não funciona como esperado com arquivos bootrom

1

Eu tenho um arquivo bootrom (arquivo binário) que eu copio em um drive USB (para inicializar um alvo) usando o Linux cp (eu também tentei com o dd). O arquivo é copiado para a primeira partição formatada com FAT16 (requisito de bootrom):

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1   *          63     3037859     1518898+   6  FAT16
/dev/sdc2         3037860    30361589    13661865    c  W95 FAT32 (LBA)

Quando eu tento inicializar o alvo, o bootrom está carregando (eu sei disso porque há alguns caracteres impressos durante essa fase), mas ele simplesmente trava. Esse problema não ocorre se eu copiar o arquivo de um host do Windows. O conteúdo do arquivo não muda, quer eu o copie do Linux ou do Windows, é exatamente o mesmo. Eu observei que isso também ocorre se eu renomear um arquivo de trabalho na unidade USB.

Eu não acho que isso seja um problema em relação à minha instalação do Linux, porque eu também tentei isso em um host Linux diferente.

Eu apreciarei qualquer ideia que alguém possa ter. Se você precisar de mais detalhes, por favor, sinta-se à vontade para perguntar nos comentários!

Host OS: Linux Mint 17.3 Cinnamon 64-bit
Kernel : 3.19.0-32-generic

EDIT : Eu encontrei uma maneira de fazer isso funcionar usando mcopy .

Eu adicionei a seguinte linha em /etc/mtools.conf:

drive u: file="/dev/sdc1"

No entanto, quando tento fazer o seguinte:

$ mcopy bootrom.bin u:bootrom.sys
# for some reasons I get the following error:
Can't open /dev/sdc1: Permission denied
Cannot initialize 'U:'
Bad target u:bootrom.sys
# with sudo:
$ sudo mcopy bootrom.bin u:bootrom.sys
Cannot initialize 'U:'
Bad target u:bootrom.sys

Então, continuei com a seguinte solução alternativa que parece funcionar:

$ copy bootrom <mount_point>/file
$ cd 
$ mcopy file bootrom.sys
    
por Iulian Paun 20.02.2017 / 11:37

0 respostas