dossrv 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221
  1. .TH DOSSRV 4
  2. .SH NAME
  3. dossrv, 9660srv, a:, b:, c:, d:, 9fat:, dosmnt, eject \- DOS and ISO9660 file systems
  4. .SH SYNOPSIS
  5. .B dossrv
  6. [
  7. .B -rsv
  8. ] [
  9. .B -f
  10. .I file
  11. ] [
  12. .I service
  13. ]
  14. .PP
  15. .B 9660srv
  16. [
  17. .B -9Jsv
  18. ] [
  19. .B -c
  20. .I clusters
  21. ] [
  22. .B -f
  23. .I file
  24. ] [
  25. .I service
  26. ]
  27. .PP
  28. .B a:
  29. .PP
  30. .B b:
  31. .PP
  32. .B c:
  33. .PP
  34. .B 9fat:
  35. .PP
  36. .B dosmnt
  37. .I n
  38. .I mtpt
  39. .PP
  40. .B eject
  41. [
  42. .I n
  43. ]
  44. .SH DESCRIPTION
  45. .I Dossrv
  46. is a file server that interprets DOS file systems.
  47. A single instance of
  48. .I dossrv
  49. can provide access to multiple DOS disks simultaneously.
  50. .PP
  51. .I Dossrv
  52. posts a file descriptor named
  53. .I service
  54. (default
  55. .BR dos )
  56. in the
  57. .B /srv
  58. directory.
  59. To access the DOS file system on a device, use
  60. .B mount
  61. with the
  62. .I spec
  63. argument
  64. (see
  65. .IR bind (1))
  66. the name of the file holding raw DOS file system, typically the disk.
  67. If
  68. .I spec
  69. is undefined in the
  70. .BR mount ,
  71. .I dossrv
  72. will use
  73. .I file
  74. as the default name for the device holding the DOS system.
  75. .PP
  76. Normally
  77. .I dossrv
  78. creates a pipe to act as the communications channel between
  79. itself and its clients.
  80. The
  81. .B -s
  82. flag instructs
  83. .I dossrv
  84. to use its standard input and output instead.
  85. The kernels use this option if they are booting from a DOS disk.
  86. This flag also prevents the creation of an explicit service file in
  87. .BR /srv .
  88. .PP
  89. The
  90. .B -v
  91. flag causes verbose output for debugging, while
  92. the
  93. .B -r
  94. flag makes the file system read-only.
  95. .PP
  96. The shell script
  97. .I a:
  98. contains
  99. .IP
  100. .EX
  101. unmount /n/a: >[2] /dev/null
  102. mount -c /srv/dos /n/a: /dev/fd0disk
  103. .EE
  104. .LP
  105. and is therefore a shorthand for mounting a floppy disk in drive A.
  106. The scripts
  107. .I b:
  108. and
  109. .I dosmnt
  110. are similar,
  111. mounting the second floppy disk
  112. and the
  113. .IR n th
  114. non-floppy DOS partition,
  115. respectively.
  116. .I C:
  117. and
  118. .I d:
  119. call
  120. .I dosmnt
  121. in an attempt to name the drives in
  122. the same order that Microsoft operating systems do.
  123. .I 9fat:
  124. provides access to the FAT component of the Plan 9 partition (see
  125. .IR prep (8)).
  126. .PP
  127. The file attribute flags used by the DOS file system
  128. do not map directly to those used by Plan 9.
  129. Since there is no concept of user or group,
  130. permission changes via
  131. .B wstat
  132. (see
  133. .IR stat (2))
  134. will fail unless the same (read, write, execute) permissions
  135. are specified for user, group, and other.
  136. For example, removing write permission in Plan 9
  137. corresponds to setting the read-only
  138. attribute in the DOS file system.
  139. Most of the other DOS attributes
  140. are not accessible.
  141. .PP
  142. Setting the exclusive use flag (DMEXCL)
  143. in Plan 9 corresponds to setting the
  144. system use attribute in the DOS file system.
  145. Such files are not actually restricted to exclusive use,
  146. but do merit special treatment that
  147. helps in the creation of boot disks:
  148. when
  149. .I dossrv
  150. allocates a new block for such a file
  151. (caused, say, by a write that fills the file's
  152. last allocated block), it succeeds only if it can
  153. arrange for the file to be stored
  154. contiguously on disk.
  155. .PP
  156. Since other operating systems do not
  157. guarantee that system files are laid
  158. out contiguously, the DMAPPEND mode
  159. bit is set in file stat information
  160. only when the file is currently contiguous.
  161. Attempts to set the DMAPPEND mode bit
  162. explicitly will cause
  163. .I dossrv
  164. to try to make the file contiguous,
  165. succeeding only if this is possible.
  166. .PP
  167. .I 9660srv
  168. is similar to
  169. .I dossrv
  170. in specification, except that it interprets ISO9660 CD-ROM
  171. file systems instead of DOS file systems.
  172. Some CDs contain multiple directory trees describing
  173. the same set of files.
  174. .IR 9660srv 's
  175. first choice in such a case is a standard ISO9660 tree
  176. with Plan 9 system use fields;
  177. the second choice is a Microsoft ``Joliet'' tree, which
  178. allows long file names and Unicode characters;
  179. the third choice is a standard ISO9660 or High Sierra tree.
  180. The
  181. .B -9
  182. flag causes
  183. .I 9660srv
  184. to ignore the Plan 9 system use fields,
  185. while the
  186. .B -J
  187. flag causes it to
  188. ignore the Joliet tree.
  189. The
  190. .B -c
  191. option sets the size of the RAM cache to
  192. .I clusters
  193. clusters of 128KB.
  194. The default
  195. .I clusters
  196. is 16,
  197. but a value of 5600 will cache an entire CD incrementally.
  198. .PP
  199. If the floppy drive has an ejection motor,
  200. .I eject
  201. will spit out the floppy from drive
  202. .IR n ,
  203. default 0.
  204. .SH EXAMPLE
  205. Mount a floppy disk with a DOS file system on it.
  206. .IP
  207. .EX
  208. a:
  209. .EE
  210. .SH "SEE ALSO"
  211. .IR kfs (4)
  212. .SH SOURCE
  213. .B /sys/src/cmd/dossrv
  214. .br
  215. .B /sys/src/cmd/9660srv
  216. .br
  217. .B /rc/bin/eject
  218. .SH BUGS
  219. The overloading of the semantics of
  220. the DMEXCL and DMAPPEND
  221. bits can be confusing.