I do have a small problem here. There is a disk image I've got as a backup where I was trying to extract the data files from. The actual task is complete, I've copied the files via DFSee (www.dfsee.com). However, what baffles me is that I can't mount the partitions in my linux system. This -- mountable partitions -- is the way I would have preferred over DFSee.
The original diskimage originates from a laptop running ArcaOS (aka OS/2) and consists of several partitions. I've extracted the partitions to separate files (2 GB to 100 GB). Then I installed jfsutils and did a "fsck.jfs -n ./arcaos-d.img", no errors, filesystems are clean. Next step is to mount them: "sudo mount -t jfs -o loop,ro,iocharset=utf8 ./arcos-d.img /mnt/t/", this fails with "mount: /mnt/t: wrong fs type, bad option, bad superblock on /dev/loop0, missing codepage or helper program, or other error." Not very helpfull. Modules for loop and jfs are loaded, so I tried to figure out via strace. This shows that mount looks for different incarnations of a jfs helper program, does not find any (jfsuntils doesn't contain one) and then calls the kernel. Which fails with EINVAL.
My system is still running Debian Buster amd64. I've googled but did not find anything besides that mounting should work. The only difference to the google results is that I'm using images. Could this be the cause for EINVAL? Or is there something else I've overlooked?
Best regards,
Solon
Code: Select all
...
openat(AT_FDCWD, "/home/no-bkp/arcos-d.img", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/dev/loop0", O_RDONLY|O_CLOEXEC) = 4
ioctl(4, LOOP_SET_FD, 3) = 0
ioctl(4, LOOP_SET_STATUS64, {lo_offset=0, lo_number=0, lo_flags=LO_FLAGS_READ_ONLY|LO_FLAGS_AUTOCLEAR, lo_file_name="/home/no-bkp/arcos-d.img", ...}) = 0
close(3) = 0
stat("/dev/loop0", {st_mode=S_IFBLK|0660, st_rdev=makedev(0x7, 0), ...}) = 0
openat(AT_FDCWD, "/sys/dev/block/7:0", O_RDONLY|O_CLOEXEC) = 3
openat(3, "loop/autoclear", O_RDONLY|O_CLOEXEC) = 5
fcntl(5, F_GETFL) = 0x8000 (flags O_RDONLY|O_LARGEFILE)
fstat(5, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(5, "1\n", 4096) = 2
close(5) = 0
close(3)
stat("/sbin/mount.jfs", 0x7ffe329ec970) = -1 ENOENT (No such file or directory)
stat("/sbin/fs.d/mount.jfs", 0x7ffe329ec970) = -1 ENOENT (No such file or directory)
stat("/sbin/fs/mount.jfs", 0x7ffe329ec970) = -1 ENOENT (No such file or directory)
lstat("/run/mount/utab", {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
stat("/run/mount/utab", {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
geteuid() = 0
getegid() = 0
getuid() = 0
getgid() = 0
access("/run/mount/utab", R_OK|W_OK) = 0
mount("/dev/loop0", "/mnt/t", "jfs", MS_RDONLY, "iocharset=utf8") = -1 EINVAL (Invalid argument)
openat(AT_FDCWD, "/usr/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=2995, ...}) = 0
read(3, "# Locale name alias data base.\n#"..., 4096) = 2995
read(3, "", 4096) = 0
close(3) = 0
openat(AT_FDCWD, "/usr/share/locale/en_GB.UTF-8/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/share/locale/en_GB.utf8/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/share/locale/en_GB/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/share/locale/en.UTF-8/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/share/locale/en.utf8/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/share/locale/en/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
write(2, "mount: ", 7mount: ) = 7
write(2, "/mnt/t: wrong fs type, bad optio"..., 116/mnt/t: wrong fs type, bad option, bad superblock on /dev/loop0, missing codepage or helper program, or other error.) = 116
write(2, "\n", 1
) = 1
close(4) = 0
close(1) = 0
close(2) = 0
exit_group(32) = ?
+++ exited with 32 +++