Blame view

Documentation/cdrom/packet-writing.txt 3.8 KB
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
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
  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 http://sourceforge.net/projects/linux-udf/
  
  - 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.
32694850a   Thomas Maier   [PATCH] pktcdvd: ...
91
92
  Using the pktcdvd sysfs interface
  ---------------------------------
83f3aa3dc   Thomas Maier   [PATCH] pktcdvd: ...
93
  Since Linux 2.6.20, the pktcdvd module has a sysfs interface
32694850a   Thomas Maier   [PATCH] pktcdvd: ...
94
  and can be controlled by it. For example the "pktcdvd" tool uses
0ea6e6112   Justin P. Mattock   Documentation: up...
95
  this interface. (see http://tom.ist-im-web.de/download/pktcdvd )
32694850a   Thomas Maier   [PATCH] pktcdvd: ...
96
97
98
99
100
101
102
103
104
105
106
107
  
  "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:
395cf9691   Paul Bolle   doc: fix broken r...
108
    Documentation/ABI/testing/sysfs-class-pktcdvd
32694850a   Thomas Maier   [PATCH] pktcdvd: ...
109
110
111
112
113
114
  
  
  Using the pktcdvd debugfs interface
  -----------------------------------
  
  To read pktcdvd device infos in human readable form, do:
156f5a780   GeunSik Lim   debugfs: Fix term...
115
  	# cat /sys/kernel/debug/pktcdvd/pktcdvd[0-7]/info
32694850a   Thomas Maier   [PATCH] pktcdvd: ...
116
117
118
119
  
  For a description of the debugfs interface look into the file:
  
    Documentation/ABI/testing/debugfs-pktcdvd
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
120
121
122
123
124
  Links
  -----
  
  See http://fy.chalmers.se/~appro/linux/DVD+RW/ for more information
  about DVD writing.