Portál AbcLinuxu, 12. května 2025 18:14
#~/bin/bash echo "Universal CD/DVD burner" if [ "$3" = "" ] ; then echo "Usage vmburn <> <> <>" echo "Example: vmburn ATAPI:0,0,0 /dev/cdrom myfile.tar.gz" exit 1 fi # Temporary iso file used for CD burning ISOFILE=/home/backup/temp.iso echo "Detecting media type" scsi_adr=$1 media_family="unknown-family" media_type="unknown-type" # Try CD Media first infotext=$(cdrecord dev=$scsi_adr -atip 2>&1) if echo "$infotext" | grep '^ Is erasable' >/dev/null 2>&1 then media_type="CD-RW" media_family="CD" elif echo "$infotext" | grep '^ Is not erasable' >/dev/null 2>&1 then media_type="CD-R" media_family="CD" fi # Now try DVD media infotext=$(dvd+rw-mediainfo /dev/cdrom | grep "Media Book Type") if echo "$infotext" | grep "DVD-R book" >/dev/null 2>&1 then # not tested media_type="DVD-R" media_family="DVD" elif echo "$infotext" | grep "DVD+R book" >/dev/null 2>&1 then # not tested media_type="DVD+R" media_family="DVD" elif echo "$infotext" | grep "DVD+RW book" >/dev/null 2>&1 then # not tested media_type="DVD+RW" media_family="DVD" elif echo "$infotext" | grep "DVD-R book" >/dev/null 2>&1 then # not tested media_type="DVD-R" media_family="DVD" fi echo "Detected media family : $media_family" echo "Detected media type : $media_type" if [ "${media_family}" = "CD" ] ; then # use cdrecord to burn the CD echo "Making ISO Image" MSINFO=`cdrecord dev=$1 -msinfo 2> /dev/null` if [ "${MSINFO}" = "" ] ; then echo "Creating first session on an empty CD" mkisofs -o ${ISOFILE} -J -R $3 else echo "Appending session to multisession CD" mkisofs -o ${ISOFILE} -J -R -C ${MSINFO} -M ATAPI:0,0,0 $3 fi cdrecord -multi -data -tao speed=4 dev=ATAPI:0,0,0 ${ISOFILE} rm ${ISOFILE} fi if [ "${media_family}" = "DVD" ] ; then # use growisofs to burn the DVD growisofs -M $2 -R -J $3 if [ "$?" != "0" ] ; then growisofs -Z $2 -R -J $3 fi fi
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.