Based on kernel version 6.11
. Page generated on 2024-09-24 08:21 EST
.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 | ============== Packet writing ============== Getting started quick --------------------- - Select packet support in the block device section and UDF support in the file system section. - Compile and install kernel and modules, reboot. - You need the udftools package (pktsetup, mkudffs, cdrwtool). Download from https://github.com/pali/udftools - Grab a new CD-RW disc and format it (assuming CD-RW is hdc, substitute as appropriate):: # cdrwtool -d /dev/hdc -q - Setup your writer:: # pktsetup dev_name /dev/hdc - Now you can mount /dev/pktcdvd/dev_name and copy files to it. Enjoy:: # mount /dev/pktcdvd/dev_name /cdrom -t udf -o rw,noatime Packet writing for DVD-RW media ------------------------------- DVD-RW discs can be written to much like CD-RW discs if they are in the so called "restricted overwrite" mode. To put a disc in restricted overwrite mode, run:: # dvd+rw-format /dev/hdc You can then use the disc the same way you would use a CD-RW disc:: # pktsetup dev_name /dev/hdc # mount /dev/pktcdvd/dev_name /cdrom -t udf -o rw,noatime Packet writing for DVD+RW media ------------------------------- According to the DVD+RW specification, a drive supporting DVD+RW discs shall implement "true random writes with 2KB granularity", which means that it should be possible to put any filesystem with a block size >= 2KB on such a disc. For example, it should be possible to do:: # dvd+rw-format /dev/hdc (only needed if the disc has never been formatted) # mkudffs /dev/hdc # mount /dev/hdc /cdrom -t udf -o rw,noatime However, some drives don't follow the specification and expect the host to perform aligned writes at 32KB boundaries. Other drives do follow the specification, but suffer bad performance problems if the writes are not 32KB aligned. Both problems can be solved by using the pktcdvd driver, which always generates aligned writes:: # dvd+rw-format /dev/hdc # pktsetup dev_name /dev/hdc # mkudffs /dev/pktcdvd/dev_name # mount /dev/pktcdvd/dev_name /cdrom -t udf -o rw,noatime Packet writing for DVD-RAM media -------------------------------- DVD-RAM discs are random writable, so using the pktcdvd driver is not necessary. However, using the pktcdvd driver can improve performance in the same way it does for DVD+RW media. Notes ----- - CD-RW media can usually not be overwritten more than about 1000 times, so to avoid unnecessary wear on the media, you should always use the noatime mount option. - Defect management (ie automatic remapping of bad sectors) has not been implemented yet, so you are likely to get at least some filesystem corruption if the disc wears out. - Since the pktcdvd driver makes the disc appear as a regular block device with a 2KB block size, you can put any filesystem you like on the disc. For example, run:: # /sbin/mke2fs /dev/pktcdvd/dev_name to create an ext2 filesystem on the disc. Using the pktcdvd sysfs interface --------------------------------- Since Linux 2.6.20, the pktcdvd module has a sysfs interface and can be controlled by it. For example the "pktcdvd" tool uses this interface. (see http://tom.ist-im-web.de/linux/software/pktcdvd ) "pktcdvd" works similar to "pktsetup", e.g.:: # pktcdvd -a dev_name /dev/hdc # mkudffs /dev/pktcdvd/dev_name # mount -t udf -o rw,noatime /dev/pktcdvd/dev_name /dvdram # cp files /dvdram # umount /dvdram # pktcdvd -r dev_name For a description of the sysfs interface look into the file: Documentation/ABI/testing/sysfs-class-pktcdvd Using the pktcdvd debugfs interface ----------------------------------- To read pktcdvd device infos in human readable form, do:: # cat /sys/kernel/debug/pktcdvd/pktcdvd[0-7]/info For a description of the debugfs interface look into the file: Documentation/ABI/testing/debugfs-pktcdvd Links ----- See http://fy.chalmers.se/~appro/linux/DVD+RW/ for more information about DVD writing. |