]> git.sur5r.net Git - bacula/docs/blob - docs/manual/dvd.tex
58ca5f7bd5ae7cc683f26bf7a4c0de147660439b
[bacula/docs] / docs / manual / dvd.tex
1 %%
2 %%
3
4 \section*{DVD Volumes}
5 \label{_DVDChapterStart}
6 \index[general]{DVD Volumes}
7 \index[general]{Writing DVDs}
8 \index[general]{DVD Writing}
9 \index[general]{Volumes!DVD}
10 \addcontentsline{toc}{section}{DVD Volumes}
11
12 Bacula allows you to specify that you want to write to DVD. However,
13 this feature is implemented only in version 1.37 or later.
14 You may in fact write to DVD+RW, DVD+R, DVD-R, or DVD-RW 
15 media. The actual process used by Bacula is to first write
16 the image to a spool directory, then when the Volume reaches
17 a certain size or,  at your option, at the end of a Job, Bacula
18 will transfer the image from the spool directory to the
19 DVD.  The actual work of transferring the image is done
20 by a script {\bf dvd-writepart}, and the heart of that
21 script is a program called {\bf growisofs} which allows
22 creating or adding to a DVD ISO filesystem. growisofs is
23 normally found in the {\bf dvd+rw-tools} package or rpm.
24 You must have it loaded on your system for DVD writing to
25 work.
26
27 The fact that Bacula cannot use the OS to write directly
28 to the DVD makes the whole process a bit more error prone than
29 writing to say a disk, but nevertheless, it does work if you
30 use some care to set it up properly.
31
32 The remainder of this chapter explains the various directives that you can
33 use to control the DVD writing.
34
35 \label{DVDdirectives}
36
37 \subsection*{DVD Specific SD Directives} 
38 \index[general]{Directives!DVD}
39 \index[general]{DVD Specific SD Directives }
40 \addcontentsline{toc}{subsection}{DVD Specific SD Directives}
41
42 The following directives are added to the Storage daemon's
43 Device resource.
44
45 \begin{description}
46
47 \item [Requires Mount = {\it Yes|No}]
48    \index[sd]{Requires Mount  }
49    You must set this directive to {\bf yes} for DVD-writers,  and to {\bf no} for
50    all other devices (tapes/files).  This directive indicates if the device
51    requires to be mounted to be read,  and if it must be written in a special way.
52    If it set, {\bf Mount Point},  {\bf Mount Command}, {\bf Unmount Command} and
53    {\bf Write Part Command}  directives must also be defined. 
54
55 \item [Mount Point = {\it directory}]
56    \index[sd]{Mount Point  }
57    Directory where the device can be mounted. 
58
59 \item [Mount Command = {\it name-string}]
60    \index[sd]{Mount Command  }
61    Command that must be executed to mount the device. Although the
62    device is written directly, the mount command is necessary in
63    order to determine the free space left on the DVD. Before the command is 
64    executed, \%a is replaced with the Archive Device, and \%m with the Mount 
65    Point.
66
67    Most frequently, you will define it as follows:  
68
69 \footnotesize
70 \begin{verbatim}
71   Mount Command = "/bin/mount -t iso9660 -o ro %a %m"
72 \end{verbatim}
73 \normalsize
74
75 \item [Unmount Command = {\it name-string}]
76    \index[sd]{Unmount Command  }
77    Command that must be executed to unmount the device. Before the command  is
78    executed, \%a is replaced with the Archive Device, and \%m with the  Mount
79    Point.
80
81    Most frequently, you will define it as follows:  
82
83 \footnotesize
84 \begin{verbatim}
85   Unmount Command = "/bin/umount %m"
86 \end{verbatim}
87 \normalsize
88
89 \item [Write Part Command = {\it name-string}]
90    \index[sd]{Write Part Command  }
91    Command that must be executed to write a part to the device. Before the 
92    command is executed, \%a is replaced with the Archive Device, \%m with the 
93    Mount Point, \%e is replaced with 1 if we are writing the first part,
94    and with 0 otherwise, and \%v with the current part filename.
95
96    For a DVD, you will most frequently specify the Bacula supplied  {\bf
97    dvd-writepart} script as follows:  
98
99 \footnotesize
100 \begin{verbatim}
101   Write Part Command = "/path/dvd-writepart %e %a %v"
102 \end{verbatim}
103 \normalsize
104
105   Where {\bf /path} is the path to your scripts install directory, and
106   dvd-writepart is the Bacula supplied script file.  
107   This command will already be present, but commented out,
108   in the default bacula-sd.conf file. To use it, simply remove
109   the comment (\#) symbol.
110
111
112 \item [Free Space Command = {\it name-string}]
113    \index[sd]{Free Space Command  }
114    Command that must be executed to check how much free space is left on the 
115    device. Before the command is executed,\%a is replaced with the Archive
116    Device, \%m with the Mount Point, \%e is replaced with 1 if we are writing
117    the first part, and with 0 otherwise, and \%v with the current part filename.
118
119    For a DVD, you will most frequently specify the Bacula supplied  {\bf
120    dvd-freespace} script as follows:  
121
122 \footnotesize
123 \begin{verbatim}
124   Free Space Command = "/path/dvd-freespace %a"
125 \end{verbatim}
126 \normalsize
127
128   Where {\bf /path} is the path to your scripts install directory, and
129   dvd-freespace is the Bacula supplied script file.
130   If you want to specify your own command, please look at the code in
131   dvd-freespace to see what output Bacula expects from this command.
132   This command will already be present, but commented out,
133   in the default bacula-sd.conf file. To use it, simply remove
134   the comment (\#) symbol.
135
136   If you do not set it, Bacula will expect there is always free space on the
137   device. 
138
139 \end{description}
140
141 In addition to the directives specified above, you must also
142 specify the other standard Device resource directives. Please see the
143 sample DVD Device resource in the default bacula-sd.conf file. Be sure
144 to specify the raw device name for {\bf Archive Device}. It should 
145 be a name such as {\bf /dev/cdrom} or {\bf /media/cdrecorder} or
146 {\bf /dev/dvd} depending on your system.  It will not be a name such
147 as {\bf /mnt/cdrom}.
148
149
150 \subsection*{DVD Specific Director Directives} 
151 \index[general]{Directives!DVD}
152 \index[general]{DVD Specific Director Directives }
153 \addcontentsline{toc}{subsection}{DVD Specific Director Directives}
154
155 The following directives are added to the Director's Job resource.
156     
157 \label{WritePartAfterJob}
158 \begin{description}
159 \item [Write Part After Job = \lt{}yes|no\gt{}]
160    \index[dir]{Write Part After Job }
161    If this directive is set to {\bf yes} (default {\bf no}), the
162    Volume written to a temporary spool file for the current Job will
163    be written to the DVD as a new part file
164    will be created after the job is finished.  
165
166    It should be set to {\bf yes} when writing to devices that require a mount
167    (for example DVD), so you are sure that the current part, containing
168    this job's data, is written to the device, and that no data is left in
169    the temporary file on the hard disk.  However, on some media, like DVD+R
170    and DVD-R, a lot of space (about 10Mb) is lost everytime a part is
171    written.  So, if you run several jobs each after another, you could set
172    this directive to {\bf no} for all jobs, except the last one, to avoid
173    wasting too much space, but to ensure that the data is written to the
174    medium when all jobs are finished.
175
176    It is ignored with tape and FIFO devices.  
177 \end{description}
178
179
180
181 \label{DVDpoints}
182 \subsection*{Other Points}
183 \index[general]{Points!Other }
184 \index[general]{Other Points }
185 \addcontentsline{toc}{subsection}{Other Points}
186
187 \begin{itemize}
188 \item DVD+RW supports only about 1000 overwrites. Every time you
189    mount the filesystem read/write will count as one write. This can
190    add up quickly, so it is best to mount your DVD+RW filesystem read-only.
191    Bacula does not need the DVD to be mounted read-write, since it uses
192    the raw device for writing.
193 \item Reformatting DVD+RW 10-20 times can apparently make the medium 
194    unusable. Normally you should not have to format or reformat
195    DVD+RW media. If it is necessary, current versions of growisofs will
196    do so automatically.
197 \item I had several problems writing to DVD-RWs (this does NOT concern DVD+RW),
198   because these media have two writing-modes: {\bf Incremental Sequential} and
199   {\bf Restricted Overwrite}. Depending on your device and the media you use,
200   one of these modes may not work correctly (e.g. {\bf Incremental Sequential} does
201   not work with my NEC DVD-writer and Verbatim DVD-RW).
202
203   To retrieve the current mode of a DVD-RW, run:
204 \begin{verbatim}
205   dvd+rw-mediainfo /dev/xxx
206 \end{verbatim}
207   where you replace xxx with your DVD device name.
208
209   {\bf Mounted Media} line should give you the information.
210
211   To set the device to {\bf Restricted Overwrite} mode, run:
212 \begin{verbatim}
213   dvd+rw-format /dev/xxx
214 \end{verbatim}
215   If you want to set it back to the default {\bf Incremental Sequential} mode, run:
216 \begin{verbatim}
217   dvd+rw-format -blank /dev/xxx
218 \end{verbatim}
219
220 \item Bacula only accepts to write to blank DVDs. To quick blank a DVD+/-RW, run
221   this command:
222 \begin{verbatim}
223   dd if=/dev/zero bs=1024 count=512 | growisofs -Z /dev/xxx=/dev/fd/0
224 \end{verbatim}
225   Then, try to mount the device, if it cannot be mounted, it will be considered
226   as blank by Bacula, if it can be mounted, try a full blank (see below).
227
228 \item If you wish to blank completely a DVD+/-RW, use the following:
229 \begin{verbatim}
230   growisofs -Z /dev/xxx=/dev/zero
231 \end{verbatim}
232   where you replace xxx with your DVD device name. However, note that this
233   blanks the whole DVD, which takes quite a long time (16 minutes on mine).
234 \item DVD+RW and DVD-RW support only about 1000 overwrites (i.e. don't use the
235 same medium for years if you don't want to have problems...).
236
237 \item For more informations about DVD writing, please look at the
238 \elink{dvd+rw-tools homepage}{http://fy.chalmers.se/~appro/linux/DVD+RW/}.
239 \end{itemize}