hasse69 / rar2fs

FUSE file system for reading RAR archives
https://hasse69.github.io/rar2fs/
GNU General Public License v3.0
272 stars 25 forks source link

fuseiso on top of rar2fs fails to mount #154

Closed aziztcf closed 3 years ago

aziztcf commented 3 years ago

Hey, trying to mount a .iso that's inside rar files with fuseiso and getting the following errors

init: wrong standard identifier in volume descriptor 0, skipping.. init: wrong standard identifier in volume descriptor 1, skipping.. init: wrong standard identifier in volume descriptor 2, skipping.. init: wrong standard identifier in volume descriptor 3, skipping.. init: wrong standard identifier in volume descriptor 4, skipping.. init: wrong standard identifier in volume descriptor 5, skipping.. init: wrong standard identifier in volume descriptor 6, skipping.. init: wrong standard identifier in volume descriptor 7, skipping.. init: wrong standard identifier in volume descriptor 8, skipping.. init: wrong standard identifier in volume descriptor 9, skipping.. init: wrong standard identifier in volume descriptor 10, skipping.. init: wrong standard identifier in volume descriptor 11, skipping.. init: wrong standard identifier in volume descriptor 12, skipping.. init: wrong standard identifier in volume descriptor 13, skipping.. init: wrong standard identifier in volume descriptor 14, skipping.. init: wrong standard identifier in volume descriptor 15, skipping.. init: wrong standard identifier in volume descriptor 16, skipping.. init: wrong standard identifier in volume descriptor 17, exiting..

Are there some mount options i should try?

hasse69 commented 3 years ago

What kind of RAR archive is it, compressed or in "store" format (-m0)?

EDIT:

You can easily check what compression level is in effect by doing 'unrar lt' on you RAR file. Also I did a quick test of one of my .iso files (do not have that many) and used the -f flag to fuseiso.

$ fuseiso d/foobar.iso dd -f
MODE2 BIN image found (or CCD MODE2 image)
Data block size: 2352
System Identifier                 : APPLE COMPUTER, INC., TYPE: 0002
Volume Identifier                 : foobar
Volume Set Identifier             :
Publisher Identifier              :
Data Preparer Identifier          :
Application Identifier            : TOAST ISO 9660 BUILDER COPYRIGHT (C) 1997 ADAPTEC, INC. - HAVE A NICE DAY
Copyright File Identifier         :
Abstract File Identifier          :
Bibliographic File Identifier     :
Volume Creation Date and Time     : 1904010100000000
Volume Modification Date and Time : 1904010100000000
Volume Expiration Date and Time   :
Volume Effective Date and Time    :

Could be interesting to see what you get here.

aziztcf commented 3 years ago

Compression: RAR 1.5(v29) -m1 -md=256K

Guess the compression fucks up the volume descriptor set/terminators somehow?

hasse69 commented 3 years ago

There is no guarantee a compressed ISO image can be mounted like this. Due to how the RAR decompression algorithm works it very much depends on how it is accessed. Any random scattered reads are very likely to fail. As you could see in my case fuseiso had no issues mounting the image but if it is possible to actually read something is a different story. Perhaps the ISO format in your case is more complex than what I had in my example and that is why it fails. That was the reason it would be interesting to see the output from -f in your case.

aziztcf commented 3 years ago

Still failed with the same output

aziztcf commented 3 years ago

I'll dick around it with some more and see if I can get anything useful out of it

hasse69 commented 3 years ago

Sure. But do not hold your breath on this one :( As I said, in my example I could mount it successfully, but trying to read some random file from it resulted in

isofs_read_raw_block: can`t read full block, read only -1 bytes from offset 114326040, 2048 required; errno 5, message Input/output error
isofs_read_raw_block: huh? reading zeros beyond file end? someone want to save a penny?
isofs_read_raw_block: can`t read full block, read only -1 bytes from offset 114326040, 2048 required; errno 5, message Input/output error
isofs_read_raw_block: huh? reading zeros beyond file end? someone want to save a penny?
aziztcf commented 3 years ago

Well turns out my fuseiso is completely busted, not being able to mount any .iso files, always those same volume descriptor errors. Wonder if my permissions are borked or what.. Could swear it worked just a year or two ago on top of rar2fs too! Then again I this is not the pc I had back then so why would I assume anything "Just works" on Arch :)

So yeah I guess might as well close this one. I'll see if I can defuckulate fuseiso and give it another shot then,