dpkg-split.1 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228
  1. .\" Authors: Ian Jackson
  2. .TH dpkg\-split 1 "2011-07-04" "Debian Project" "dpkg utilities"
  3. .SH NAME
  4. dpkg\-split \- Debian package archive split/join tool
  5. .
  6. .SH SYNOPSIS
  7. .B dpkg\-split
  8. .RI [ option "...] " command
  9. .
  10. .SH DESCRIPTION
  11. .B dpkg\-split
  12. splits Debian binary package files into smaller parts and reassembles
  13. them again, to support the storage of large package files on small
  14. media such as floppy disks.
  15. It can be operated manually using the
  16. .BR \-\-split ", " \-\-join " and " \-\-info
  17. options.
  18. It also has an automatic mode, invoked using the
  19. .B \-\-auto
  20. option, where it maintains a queue of parts seen but not yet
  21. reassembled and reassembles a package file when it has seen all of its
  22. parts. The
  23. .BR \-\-listq " and " \-\-discard
  24. options allow the management of the queue.
  25. All splitting, joining and queueing operations produce informative
  26. messages on standard output; these may safely be ignored.
  27. .
  28. .SH COMMANDS
  29. .TP
  30. .BR \-s ", " \-\-split " \fIcomplete-archive\fP [\fIprefix\fP]"
  31. Splits a single Debian binary package into several parts.
  32. The parts are named
  33. .IB prefix . N of M .deb
  34. where
  35. .I N
  36. is the part number, starting at 1, and
  37. .I M
  38. is the total number of parts (both in decimal).
  39. If no
  40. .I prefix
  41. is supplied then the
  42. .I complete-archive
  43. filename is taken, including directory, with any trailing
  44. .B .deb
  45. removed.
  46. .TP
  47. .BR \-j ", " \-\-join " \fIpart\fP..."
  48. Joins the parts of a package file together, reassembling the original
  49. file as it was before it was split.
  50. The part files given as arguments must be all the parts of exactly the
  51. same original binary file. Each part must occur exactly once in the
  52. argument list, though the parts to not need to be listed in order.
  53. The parts must of course all have been generated with the same part
  54. size specified at split time, which means that they must usually have
  55. been generated by the same invocation of
  56. .BR "dpkg\-split \-\-split" .
  57. The parts' filenames are not significant for the reassembly process.
  58. By default the output file is called
  59. .IB package _ version _ arch .deb\fR.
  60. .TP
  61. .BR \-I ", " \-\-info " \fIpart\fP..."
  62. Prints information, in a human-readable format, about the part file(s)
  63. specified. Arguments which are not binary package parts produce a
  64. message saying so instead (but still on standard output).
  65. .TP
  66. .BR \-a ", " "\-\-auto \-o" " \fIcomplete-output part\fP"
  67. Automatically queue parts and reassemble a package if possible.
  68. The
  69. .I part
  70. specified is examined, and compared with other parts of the same
  71. package (if any) in the queue of packages file parts.
  72. If all parts of the package file of which
  73. .I part
  74. is a part are available then the package is reassembled and written to
  75. .I complete-output
  76. (which should not usually already exist, though this is not an
  77. error).
  78. If not then the
  79. .I part
  80. is copied into the queue and
  81. .I complete-output
  82. is not created.
  83. If
  84. .I part
  85. is not a split binary package part then
  86. .B dpkg\-split
  87. will exit with status \fB1\fP; if some other trouble occurs then it will
  88. exit with status \fB2\fP.
  89. The
  90. .BR \-\-output " or " \-o
  91. option must be supplied when using
  92. .BR \-\-auto .
  93. (If this were not mandatory the calling program would not know what
  94. output file to expect.)
  95. .TP
  96. .BR \-l ", " \-\-listq
  97. Lists the contents of the queue of packages to be reassembled.
  98. For each package file of which parts are in the queue the output gives
  99. the name of the package, the parts in the queue, and the total number
  100. of bytes stored in the queue.
  101. .TP
  102. .BR \-d ", " \-\-discard " [\fIpackage\fP...]"
  103. This discards parts from the queue of those waiting for the remaining
  104. parts of their packages.
  105. If no
  106. .I package
  107. is specified then the queue is cleared completely; if any are
  108. specified then only parts of the relevant package(s) are deleted.
  109. .TP
  110. .BR \-h ", " \-\-help
  111. Show the usage message and exit.
  112. .TP
  113. .BR \-\-version
  114. Show the version and exit.
  115. .
  116. .SH OPTIONS
  117. .TP
  118. .BI \-\-depotdir " directory"
  119. Specifies an alternative directory for the queue of parts awaiting
  120. automatic reassembly. The default is
  121. .BR /var/lib/dpkg .
  122. .TP
  123. .BR \-S ", " \-\-partsize " \fIkibibytes\fP"
  124. Specifies the maximum part size when splitting, in kibibytes (1024
  125. bytes). The default is 450 KiB.
  126. .TP
  127. .BR \-o ", " \-\-output " \fIcomplete-output\fP"
  128. Specifies the output file name for a reassembly.
  129. This overrides the default for a manual reassembly
  130. .RB ( \-\-join )
  131. and is mandatory for an automatic queue-or-reassemble
  132. .RB ( \-\-auto ).
  133. .TP
  134. .BR \-Q ", " \-\-npquiet
  135. When doing automatic queue-or-reassembly
  136. .B dpkg\-split
  137. usually prints a message if it is given a
  138. .I part
  139. that is not a binary package part. This option suppresses this
  140. message, to allow programs such as
  141. .B dpkg
  142. to cope with both split and unsplit packages without producing
  143. spurious messages.
  144. .TP
  145. .BR \-\-msdos
  146. Forces the output filenames generated by
  147. .B \-\-split
  148. to be msdos-compatible.
  149. This mangles the prefix - either the default derived from the input
  150. filename or the one supplied as an argument: alphanumerics are
  151. lowercased, plus signs are replaced by
  152. .BR x 's
  153. and all other characters are discarded.
  154. The result is then truncated as much as is necessary, and filenames of
  155. the form
  156. .IB "prefixN" of M .deb
  157. are generated.
  158. .
  159. .SH EXIT STATUS
  160. .TP
  161. .B 0
  162. The requested split, merge, or other command succeeded.
  163. .B \-\-info
  164. commands count as successful even if the files are not binary package
  165. parts.
  166. .TP
  167. .B 1
  168. Only occurs with
  169. .B \-\-auto
  170. and indicates that the
  171. .I part
  172. file was not a binary package part.
  173. .TP
  174. .B 2
  175. Some kind of trouble happened, such as a system
  176. call failure, a file that looked like a package part file but was
  177. corrupted, a usage error or some other problem.
  178. .
  179. .SH BUGS
  180. Full details of the packages in the queue are impossible to get
  181. without digging into the queue directory yourself.
  182. There is no easy way to test whether a file that may be a binary
  183. package part is one.
  184. .
  185. .SH FILES
  186. .TP
  187. .I /var/lib/dpkg/parts
  188. The default queue directory for part files awaiting automatic
  189. reassembly.
  190. The filenames used in this directory are in a format internal to
  191. .B dpkg\-split
  192. and are unlikely to be useful to other programs, and in any case the
  193. filename format should not be relied upon.
  194. .
  195. .SH "SEE ALSO"
  196. .BR deb (5),
  197. .BR deb\-control (5),
  198. .BR dpkg\-deb (1),
  199. .BR dpkg (1).
  200. .
  201. .SH AUTHOR
  202. Copyright \(co 1995-1996 Ian Jackson
  203. .sp
  204. This is free software; see the GNU General Public Licence version 2 or
  205. later for copying conditions. There is NO WARRANTY.