Just17Ummm, good stuff. Certainly put me on the right track.
Added two new mount points
[root@KDE32-test05 gert]# mkdir /za /zz
ISO file located here
/media/B-18/130108-pclinuxos-kde-2012.12.iso
Loop mounting
mount -o loop /media/B-18/130108-pclinuxos-kde-2012.12.iso /za
Just checking to make sure there is a squashfile on board
[root@KDE32-test05 gert]# ls -l /za
total 1370030
drwxr-xr-x 3 root root 2048 Dec 7 04:38 boot/
drwxr-xr-x 2 root root 8192 Dec 7 05:08 isolinux/
-rw-r--r-- 1 root root 1402900480 Dec 7 05:08 livecd.sqfs
[root@KDE32-test05 gert]# Loop mounted my ISO and successful.
Listing the files in
livecd.sqfs to a file which shows about 140,000 files
[root@KDE32-test05 gert]# unsquashfs -l /za/livecd.sqfs >>/home/gert/130115-isorepair.glk
In the listing there is one file:
squashfs-root/usr/lib/libDrakX/bootloader.pm
line 36501
So I know the file of interest is there, and I would like to just extract this one file. I was going so well but Ihave been unable to figure out how to
unsquashfs -f... no matter what combinations of options and positions from
man unsquash I get the same error, example here:
[root@KDE32-test05 gert]# unsquashfs -l /za/livecd.sqfs /squashfs-root/usr/lib/libDrakX/bootloader.pm
Could not open /za/livecd.sqfs/squashfs-root/usr/lib/libDrakX/bootloader.pm, because Not a directory
Sorry I am doing some educational digging here, trying to handle one file. I did notice you said just to unravel the
livecd.sqfs in a directory do the edit and squash again etc...
Have I misunderstood the
unsquashfs command, I am treating it a bit like zip file where you can extract/zip single files from the bunch. ?
Here are instructions I am focused on, the second line is giving me trouble.
[gert@KDE32-test05 ~]$ man unsquashfs
[gert@KDE32-test05 ~]$ unsquashfs --help
SYNTAX: unsquashfs [options] filesystem [directories or files to extract]
.....
...
-l (s) list filesystem, but don't unsquash
.....
-e[f] <extract file> list of directories or files to extract.
...........
....
One per line
Decompressors available:
gzip
xz
[gert@KDE32-test05 ~]$ man unsquashfs
Had to modify [*s] option above and here adding *, the expression seems to spook editor doing strike through to the end of topic. Interesting.
Added-1:Getting a bit further, with some trepidation I started the following ad I really did not want 140,000 files on this system.

[root@KDE642-test05 gert]# unsquashfs /za/livecd.sqfs /squashfs-root/usr/lib/libDrakX/bootloader.pm
Parallel unsquashfs: Using 2 processors
0 inodes (0 blocks) to write
created 0 files
created 1 directories
created 0 symlinks
created 0 devices
created 0 fifos
[root@KDE642-test05 gert]# ls -al
Found the directory: /squashfs-root but despite praying that the single file would be inside
[root@KDE642-test05 squashfs-root]# ls -al
total 8
drwxr-xr-x 2 root root 4096 Dec 7 04:36 ./
drwxr-xr-x 34 gert gert 4096 Jan 15 23:26 ../
[root@KDE642-test05 squashfs-root]#
Hmmmm, it is as if only one level was done
[root@KDE642-test05 squashfs-root]# unsquashfs -l /za/livecd.sqfs /usr/lib/libDrakX/bootloader.pm
Parallel unsquashfs: Using 2 processors
1 inodes (1 blocks) to write
squashfs-root
squashfs-root/usr
squashfs-root/usr/lib
squashfs-root/usr/lib/libDrakX
squashfs-root/usr/lib/libDrakX/bootloader.pm
[root@KDE642-test05 squashfs-root]#
This was only the listing, pheeeww, could not find the file

[root@KDE642-test05 squashfs-root]# unsquashfs /za/livecd.sqfs /usr/lib/libDrakX/bootloader.pm
Parallel unsquashfs: Using 2 processors
1 inodes (1 blocks) to write
[========================================================================/] 1/1 100%
created 1 files
created 4 directories
created 0 symlinks
created 0 devices
created 0 fifos
[root@KDE642-test05 squashfs-root]#