Puppy 528 can't read DVD data disk made by Windows
Karl.
I tried inserting your code segment into /sbin/probepart and I did the first part.
I think I blew it because I did not delete any existing code and commented out some with semicolons.
Would it be possible for you to attach the modified /sbin/probepart file zipped up to a post here?
Just call me dumb. But I want to get it right and after having pmount fail to start and otherwise being unable to mount anything, I just want to get it right.
I did have the foresight to make a backup of my pupsave file before I tried it.
Also, I did nothing with your second code snipit. you show.
So again, if you could perchance attach that zipped file to a post, I would be most pleased and have enough CDs and DVDs of various formats to give that a good test.
Also, to answer the previous question on the udf format disk, I was wrong about using Nero.
It is actually a feature in Windows that allows one to use a DVD or CD as a hard drive with read/write/delete capabilities just like a hard drive.
It allows adding individual files to a CD or DVD.
And in that way, you could say it acts like a disk made "open session" in Puppy.
So in fact, I was reading the contents of a udf format disk that was open session in windows.
I tried inserting your code segment into /sbin/probepart and I did the first part.
I think I blew it because I did not delete any existing code and commented out some with semicolons.
Would it be possible for you to attach the modified /sbin/probepart file zipped up to a post here?
Just call me dumb. But I want to get it right and after having pmount fail to start and otherwise being unable to mount anything, I just want to get it right.
I did have the foresight to make a backup of my pupsave file before I tried it.
Also, I did nothing with your second code snipit. you show.
So again, if you could perchance attach that zipped file to a post, I would be most pleased and have enough CDs and DVDs of various formats to give that a good test.
Also, to answer the previous question on the udf format disk, I was wrong about using Nero.
It is actually a feature in Windows that allows one to use a DVD or CD as a hard drive with read/write/delete capabilities just like a hard drive.
It allows adding individual files to a CD or DVD.
And in that way, you could say it acts like a disk made "open session" in Puppy.
So in fact, I was reading the contents of a udf format disk that was open session in windows.
For PMOUNT code see the post below the probepart code post .
*
AND i have to say that the filtering line
#v408 v410 moved up...
VALIDPARTS="`echo "$PARTSINFO" | grep -i -E 'FAT|vfat|msdos|ntfs|minix|ext2|ext3|ext4|reiser|xfs|iso9660|udf'`"
also occurs in /sbin/pup_event_frontend_d
PROBEPART="`probepart -k | grep -i -E '\|FAT.*|\|ext4|\|ntfs|\|msdos|\|vfat|\|ext2|\|ext3|\|iso9660|\|xfs|\|reiser|\|udf'`"
and probably several times . I have put that into a function on the installation i am on now :
probepart_func() {
PROBEPART="`probepart -k | grep -i -E '\|FAT.*|\|ext4|\|ntfs|\|msdos|\|vfat|\|ext2|\|ext3|\|iso9660|\|xfs|\|reiser|\|udf'`"
}
I am working on getting Xorg-server-1.3.0 to work with Puppy 4 on my current machine so my focus is there for the moment .
[edit fixed srew from " \|udf| " to " |\|udf " in pup_event_frontend_d AND probepart code .. "|" at the very end of the line would not filter anything but grep everything .. /edit]
*
AND i have to say that the filtering line
#v408 v410 moved up...
VALIDPARTS="`echo "$PARTSINFO" | grep -i -E 'FAT|vfat|msdos|ntfs|minix|ext2|ext3|ext4|reiser|xfs|iso9660|udf'`"
also occurs in /sbin/pup_event_frontend_d
PROBEPART="`probepart -k | grep -i -E '\|FAT.*|\|ext4|\|ntfs|\|msdos|\|vfat|\|ext2|\|ext3|\|iso9660|\|xfs|\|reiser|\|udf'`"
and probably several times . I have put that into a function on the installation i am on now :
probepart_func() {
PROBEPART="`probepart -k | grep -i -E '\|FAT.*|\|ext4|\|ntfs|\|msdos|\|vfat|\|ext2|\|ext3|\|iso9660|\|xfs|\|reiser|\|udf'`"
}
I am working on getting Xorg-server-1.3.0 to work with Puppy 4 on my current machine so my focus is there for the moment .
[edit fixed srew from " \|udf| " to " |\|udf " in pup_event_frontend_d AND probepart code .. "|" at the very end of the line would not filter anything but grep everything .. /edit]
/sbin/pup_event_fromtend_d udf adjustment
As far as i can see it /sbin/pup_event_fromtend_d
has got three lines to append udf file system format recognition :
[ the video probs i have with Puppy 4 seems to be related to installing later /sbin/modprobe -V3.11.1 , which does not applies blacklist MODULE from modprobe.conf by default . modprobe -V3.6 seems to be patched to do this ... Had to insert" alias modprobe='modprobe -b' " everywhere (rc.sysinit,pup_event_backend_modprobe,xwin,xorgwizard ..) ]
has got three lines to append udf file system format recognition :
Code: Select all
#display an icon for each partition... w476 add ext4...
#[ ! $1 ] && PROBEPART="`probepart -k | grep -E '\|ext4\||\|ntfs\||\|msdos\||\|vfat\||\|ext2\||\|ext3\||\|iso9660\||\|xfs\||\|reiser'`"
[ ! $1 ] && PROBEPART="`probepart -k | grep -E '\|ext4\||\|ntfs\||\|msdos\||\|vfat\||\|ext2\||\|ext3\||\|iso9660\||\|xfs\||\|reiser|\|udf'`"
Code: Select all
#PROBEPART="`probepart -k | grep -E '\|ext4\||\|ntfs\||\|msdos\||\|vfat\||\|ext2\||\|ext3\||\|iso9660\||\|xfs\||\|reiser'`"
PROBEPART="`probepart -k | grep -E '\|ext4\||\|ntfs\||\|msdos\||\|vfat\||\|ext2\||\|ext3\||\|iso9660\||\|xfs\||\|reiser|\|udf'`"
DRVINFO="`echo "$PROBEPART" | grep "$drvPATTERN" | cut -f 1,2,3 -d '|' | tr '\n' ' '`"
Code: Select all
#show all drives on desktop... w476 add ext4...
#PROBEPART="`probepart -k | grep -E '\|ext4\||\|ntfs\||\|msdos\||\|vfat\||\|ext2\||\|ext3\||\|iso9660\||\|xfs\||\|reiser'`"
PROBEPART="`probepart -k | grep -E '\|ext4\||\|ntfs\||\|msdos\||\|vfat\||\|ext2\||\|ext3\||\|iso9660\||\|xfs\||\|reiser|\|udf'`"
Now i have a kernel running compiled with
DEBUG_BLOCK_EXT_DEVT
in kernel hacking section
which makes cat /proc/partitions look like
major minor #blocks name
259 0 156250000 sda
259 524288 7189056 sda1
259 262144 15358140 sda2
259 786432 15358140 sda3
259 131072 1 sda4
259 655360 1028128 sda5
259 393216 15358108 sda6
259 917504 15358108 sda7
259 65536 15358108 sda8
259 589824 15358108 sda9
259 327680 15358108 sda10
259 851968 40523931 sda11
259 196608 1955840 sdb
259 720896 1955406 sdb1
*
Therefore i had disktype command inserted into /sbin/probepart
AND for the udf issue the code looks like this :
disktype command looks like it does not spin the DVD drive forever like guess_fstype does .
DEBUG_BLOCK_EXT_DEVT
in kernel hacking section
which makes cat /proc/partitions look like
major minor #blocks name
259 0 156250000 sda
259 524288 7189056 sda1
259 262144 15358140 sda2
259 786432 15358140 sda3
259 131072 1 sda4
259 655360 1028128 sda5
259 393216 15358108 sda6
259 917504 15358108 sda7
259 65536 15358108 sda8
259 589824 15358108 sda9
259 327680 15358108 sda10
259 851968 40523931 sda11
259 196608 1955840 sdb
259 720896 1955406 sdb1
*
Therefore i had disktype command inserted into /sbin/probepart
AND for the udf issue the code looks like this :
Code: Select all
case $DEVICE in
hd*)
FSTYPE='unknown' ##+++2011_10_28
#[ "`cat /proc/ide/$DEVICE/media`" = "cdrom" ] && FSTYPE="iso9660"
if [ "`cat /proc/ide/$DEVICE/media`" = "cdrom" ];then
FSTYPE=`guess_fstype ONEDEV`;
[ ! "$FSTYPE" -o "$FSTYPE" = 'unknown' ] && FSTYPE="`disktype $ONEDEV | grep -i 'file system'|awk '{print $1}'|tr '[A-Z]' '[a-z]'`";
[ ! "$FSTYPE" ] && FSTYPE="iso9660"
fi
;;
scd*|sr*) #usb,sata,scsi cd/dvd drive.
#FSTYPE="iso9660"
FSTYPE=`guess_fstype ONEDEV`;
[ ! "$FSTYPE" -o "$FSTYPE" = 'unknown' ] && FSTYPE="`disktype $ONEDEV | grep -i 'file system'|awk '{print $1}'|tr '[A-Z]' '[a-z]'`";
[ ! "$FSTYPE" ] && FSTYPE="iso9660"
;;
esac
Simply substituting this code into /sbin/probepart in place of the corresponding code does not solve the problem for me. With this substitute code I do not get an icon for the sr0, if I boot with the dvd in the drive or if I insert the dvd after booting. Additionally, if I run pmount the usb drives are listed as optical drives.
I can still mount manually with
Code: Select all
case $DEVICE in
hd*)
#[ "`cat /proc/ide/$DEVICE/media`" = "cdrom" ] && FSTYPE="iso9660"
if [ "`cat /proc/ide/$DEVICE/media`" = "cdrom" ];then
FSTYPE=`guess_fstype $ONEDEV`;[ "$FSTYPE" = 'garage' ] && FSTYPE="iso9660";fi
;;
scd*|sr*) #usb,sata,scsi cd/dvd drive.
#FSTYPE="iso9660"
FSTYPE=`guess_fstype $ONEDEV`;[ "$FSTYPE" = 'garage' ] && FSTYPE="iso9660"
;;
esac
Code: Select all
mount /dev/sr0 /mnt/dvd
for i in `seq 1 1 $RANDOM`;do
echo "HIGHLY HIGHLY HIGHLY EXPERIMENTAL !!!!!"
done
ATTACHMENT : from my Macpup_Opera_2 full installation :
pmount,probepart,pup_event_frontend_d
drop into the appropriate dirs like /sbin,/usr/sbin
use find command to determine dir OR pfind
as usual : if your HW does not survive .... look for another !
I will attach the three files from other partitions the next days !
people mentioned in pup_event_frontend_d would roughly get the idea for the code
echo "HIGHLY HIGHLY HIGHLY EXPERIMENTAL !!!!!"
done
ATTACHMENT : from my Macpup_Opera_2 full installation :
pmount,probepart,pup_event_frontend_d
drop into the appropriate dirs like /sbin,/usr/sbin
use find command to determine dir OR pfind
as usual : if your HW does not survive .... look for another !
I will attach the three files from other partitions the next days !
people mentioned in pup_event_frontend_d would roughly get the idea for the code
- Attachments
-
- pup-udf-McpupO2-experimental.tar.gz
- (21.23 KiB) Downloaded 375 times
I use the guess_fstype binary in my customised pmount script, so that UDF ISOs work fine
[b][url=https://bit.ly/2KjtxoD]Pkg[/url], [url=https://bit.ly/2U6dzxV]mdsh[/url], [url=https://bit.ly/2G49OE8]Woofy[/url], [url=http://goo.gl/bzBU1]Akita[/url], [url=http://goo.gl/SO5ug]VLC-GTK[/url], [url=https://tiny.cc/c2hnfz]Search[/url][/b]
Now i have got the cause for the ever running DVD drive :
In /sbin/pup_event_frontend_d there is a line
[ "$ICONDESK" = "false" ] && continue #v405 see /etc/eventmanager
SO IF ICONDESK=false it does not mean there are no drive icons on the desktop but one single icon labeled " drives " .
The code line
[ "$ICONDESK" = "false" ] && continue
would prevent the execution of some code below that line that would poll the ZIP and CD drives every 4 seconds .
The CD drives would be polled by the 'probe_optical_func' AND " if CD not mounted " every 4 seconds
cddetect_quick -d/dev/${DRV_NAME} >/dev/null 2>&1 #very fast.
would check for CDROM inserted .
That had been the ^ culprit ^ .
I have reworked /usr/sbin/eventmanager AND changed HOTPLUGON to DESKDAEMON and added ZCDPOLL variable .
But I feel it would be pre alpha to be released because it needs also /sbin/pup_event_frontend_d to be adjusted for that .
When i come to one point , i get the idea for the next point ...
I have actually put the AUTOUNMOUNT into the POWERTIMEOUT part to check for possibility to unmount every minute not every 4 seconds [ and much more ] .
HAVE FUN !
In /sbin/pup_event_frontend_d there is a line
[ "$ICONDESK" = "false" ] && continue #v405 see /etc/eventmanager
SO IF ICONDESK=false it does not mean there are no drive icons on the desktop but one single icon labeled " drives " .
The code line
[ "$ICONDESK" = "false" ] && continue
would prevent the execution of some code below that line that would poll the ZIP and CD drives every 4 seconds .
The CD drives would be polled by the 'probe_optical_func' AND " if CD not mounted " every 4 seconds
cddetect_quick -d/dev/${DRV_NAME} >/dev/null 2>&1 #very fast.
would check for CDROM inserted .
That had been the ^ culprit ^ .
I have reworked /usr/sbin/eventmanager AND changed HOTPLUGON to DESKDAEMON and added ZCDPOLL variable .
But I feel it would be pre alpha to be released because it needs also /sbin/pup_event_frontend_d to be adjusted for that .
When i come to one point , i get the idea for the next point ...
I have actually put the AUTOUNMOUNT into the POWERTIMEOUT part to check for possibility to unmount every minute not every 4 seconds [ and much more ] .
HAVE FUN !
/usr/local/bin/drive_all udf recognition
Code: Select all
#oh, now have to analyse the media, decide what app to run...
#if [ "$ONEDRVNAME" = "sr0" -o "$ONEDRVNAME" = "sr1" ];then
if [ "`echo "$ONEDRVNAME" |grep '^sr[0-9]'`" ];then ###+++2012-01-20
srPATTERN='^/dev/'"$ONEDRVNAME"' '
if [ "`busybox mount | grep "$srPATTERN"`" = "" ];then
cddetect -q -d/dev/${ONEDRVNAME}
RETVAL=$?
case $RETVAL in
3) #iso file: normal data cd. iso9660
true
;;
8) # udf with .wma wav files [VCD: , ] 8 ##+++2012-01-20
FSTYPE='udf';;
1) #audio
ln -snf /dev/${ONEDRVNAME} /dev/cdrom
exec defaultmediaplayer cdda://
;;
5) #video dvd
ln -snf /dev/${ONEDRVNAME} /dev/dvd
exec defaultmediaplayer dvd://
;;
0) #failed to detect type.
#cddetect does not work properly for dvd's, try something else...
if [ "`dvd+rw-mediainfo /dev/sr0 | grep 'Mounted Media: .* DVD-ROM'`" != "" ];then
ln -snf /dev/${ONEDRVNAME} /dev/dvd
exec defaultmediaplayer dvd://
fi
;;
esac
fi
[ ! "$FSTYPE" ] && FSTYPE="iso9660"
fi