Como excluir um arquivo no formato QNX4 quando um cartão CF é montado como somente leitura no Linux?

1

Recentemente, o dispositivo DMA do nosso laboratório está quebrado e o problema suspeito está no cartão CF que está no QNX4 formato. Desejo excluir um arquivo chamado 'calforce.dat' e recriá-lo calibrando o dispositivo.

Eu montei o cartão CF no meu dispositivo e obtive este resultado:

famer@iphyer:~$ sudo mount -t qnx4 /dev/sdb1 /mnt/
[sudo] password for famer: 
mount: warning: /mnt/ seems to be mounted read-only.
famer@iphyer:~$ cd /mnt
famer@iphyer:/mnt$ ls
bin           calfreq.dat  dma           dmasav.dat  fit2.dat      qgui
caldyn.dat    calraw.dat   dma21cfr.dat  dmausr.dat  lib           sbin
calfgen.dat   calres.dat   dmaclamp.dat  etc         license.dat   test_enu.str
calfgres.dat  calrpt.txt   dmaid.dat     exit_case   loader        usr
calforce.dat  devi-ads     dmamfg.dat    fit1.dat    loader_image

Desejo excluir o arquivo 'calforce.dat', mas todos os comandos, como escrita e exclusão, foram negados pelo sistema somente leitura.

Comandos como:

famer@iphyer:/mnt$ sudo mount -o remount,rw /dev/sdb1
[sudo] password for famer: 
mount: warning: /mnt seems to be mounted read-only.

não dê nenhum resultado.

Como posso resolver isso?

Ou, como alternativa, posso copiar os arquivos do cartão CF para o novo cartão CF. Preciso formatar um novo cartão antes de poder usá-lo? Posso simplesmente usar algo como o GPart ou o fdisk para perceber isso?

=============================================== =========================== Abaixo está o que eu segui a sugestão de Gilles abaixo é o que o log do kernel desde que eu insiro o cartão CF.

Dec 15 12:51:13 MG kernel: [ 1477.242018] usb 1-1.1: new high-speed USB device number 3 using ehci-pci
Dec 15 12:51:13 MG kernel: [ 1477.349093] usb 1-1.1: New USB device found, idVendor=0bda, idProduct=0158
Dec 15 12:51:13 MG kernel: [ 1477.349099] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Dec 15 12:51:13 MG kernel: [ 1477.349102] usb 1-1.1: Product: USB2.0-CRW
Dec 15 12:51:13 MG kernel: [ 1477.349105] usb 1-1.1: Manufacturer: Generic
Dec 15 12:51:13 MG kernel: [ 1477.349107] usb 1-1.1: SerialNumber: 20060413092100000
Dec 15 12:51:14 MG kernel: [ 1477.787682] usbcore: registered new interface driver usb-storage
Dec 15 12:51:14 MG kernel: [ 1477.816933] ums-realtek 1-1.1:1.0: USB Mass Storage device detected
Dec 15 12:51:14 MG kernel: [ 1477.818979] scsi6 : usb-storage 1-1.1:1.0
Dec 15 12:51:14 MG kernel: [ 1477.819043] usbcore: registered new interface driver ums-realtek
Dec 15 12:51:15 MG kernel: [ 1478.830020] scsi 6:0:0:0: Direct-Access     Generic- Multi-Card       1.00 PQ: 0 ANSI: 0 CCS
Dec 15 12:51:15 MG kernel: [ 1478.831859] sd 6:0:0:0: Attached scsi generic sg2 type 0
Dec 15 12:51:16 MG kernel: [ 1479.669070] sd 6:0:0:0: [sdb] 264096 512-byte logical blocks: (135 MB/128 MiB)
Dec 15 12:51:16 MG kernel: [ 1479.670566] sd 6:0:0:0: [sdb] Write Protect is off
Dec 15 12:51:16 MG kernel: [ 1479.670572] sd 6:0:0:0: [sdb] Mode Sense: 03 00 00 00
Dec 15 12:51:16 MG kernel: [ 1479.672012] sd 6:0:0:0: [sdb] No Caching mode page found
Dec 15 12:51:16 MG kernel: [ 1479.672016] sd 6:0:0:0: [sdb] Assuming drive cache: write through
Dec 15 12:51:16 MG kernel: [ 1479.678399] sd 6:0:0:0: [sdb] No Caching mode page found
Dec 15 12:51:16 MG kernel: [ 1479.678404] sd 6:0:0:0: [sdb] Assuming drive cache: write through
Dec 15 12:51:16 MG kernel: [ 1479.679767]  sdb: sdb1
Dec 15 12:51:16 MG kernel: [ 1479.683276] sd 6:0:0:0: [sdb] No Caching mode page found
Dec 15 12:51:16 MG kernel: [ 1479.683290] sd 6:0:0:0: [sdb] Assuming drive cache: write through
Dec 15 12:51:16 MG kernel: [ 1479.683292] sd 6:0:0:0: [sdb] Attached SCSI removable disk
Dec 15 12:52:17 MG kernel: [ 1541.078472] QNX4 filesystem 0.2.3 registered.

Isso ajuda?

    
por sikisis 14.12.2014 / 09:48

1 resposta

2

A partir do Linux 3.18, o driver do sistema de arquivos QNX4 suporta apenas leitura. (Fonte: a fonte ). Idem com QNX6.

Existe um driver alternativo com suporte parcial de leitura / gravação , mas não é mantido há vários anos; você provavelmente terá que executar um kernel antigo ou ajustar o código para compilá-lo em um kernel recente.

Como alternativa, o QNX suporta a leitura de sistemas de arquivos ext2 (não tenho certeza sobre o ext4), então você pode tentar fazer uma cópia do cartão CF formatado como ext2. Isso pode ou não ser suportado no seu dispositivo.

Como alternativa, execute o QNX em uma máquina virtual para atualizar o conteúdo do cartão CF.

    
por 14.12.2014 / 22:04