Print this page
11622 clean up rarer mandoc lint warnings
Split |
Close |
Expand all |
Collapse all |
--- old/usr/src/man/man7fs/pcfs.7fs.man.txt
+++ new/usr/src/man/man7fs/pcfs.7fs.man.txt
1 1 PCFS(7FS) File Systems PCFS(7FS)
2 2
3 3
4 4
5 5 NAME
6 6 pcfs - FAT formatted file system
7 7
8 8 SYNOPSIS
9 9 #include <sys/param.h>
10 10 #include <sys/mount.h>
11 11 #include <sys/fs/pc_fs.h>
12 12
13 13 int mount(const char *spec,
14 14 const char * dir, int mflag,
15 15 "pcfs", NULL, 0, char *optptr,
16 16 int optlen);
17 17
18 18
19 19 DESCRIPTION
20 20 pcfs is a file system type that enables direct access to files on FAT
21 21 formatted disks from within the SunOS operating system.
22 22
23 23
24 24 Once mounted, pcfs provides standard SunOS file operations and
25 25 semantics. Using pcfs, you can create, delete, read, and write files
26 26 on a FAT formatted disk. You can also create and delete directories and
27 27 list files in a directory.
28 28
29 29
30 30 pcfs supports FAT12 (floppies) and FAT16 and FAT32 file systems.
31 31
32 32
33 33 pcfs file systems can be force umounted using the -f argument to
34 34 umount(1M).
35 35
36 36
37 37 The pcfs file system contained on the block special file identified by
38 38 spec is mounted on the directory identified by dir. spec and dir are
39 39 pointers to pathnames. mflag specifies the mount options. The MS_DATA
40 40 bit in mflag must be set. Mount options can be passed to pcfs using
41 41 the optptr and optlen arguments. See mount_pcfs(1M) for a list of
42 42 mount options supported by pcfs.
43 43
44 44
45 45 Because FAT formatted media can record file timestamps between January
46 46 1st 1980 and December 31st 2127, it's not possible to fully represent
47 47 UNIX time_t in pcfs for 32 bit or 64 bit programs. In particular, if
48 48 post-2038 timestamps are present on a FAT formatted medium and pcfs
49 49 returns these, 32bit applications may unexpectedly fail with EOVERFLOW
50 50 errors. To prevent this, the default behaviour of pcfs has been
51 51 modified to clamp post-2038 timestamps to the latest possible value for
52 52 a 32bit time_t, which is January 19th 2038, 03:14:06 UTC when setting
53 53 and retrieving file timestamps. You can override this behavior using
54 54 the noclamptime mount option, as described in mount_pcfs(1M).
55 55
56 56
57 57 Timestamps on FAT formatted media are recorded in local time. If the
58 58 recording and receiving systems use different timezones, the
59 59 representation of timestamps shown on the two systems for the same
60 60 medium might vary. To correct this, pcfs provides a timezone mount
61 61 option to force interpretation of timestamps as read from a FAT
62 62 formatted medium in a given timezone (that of the recorder). By
63 63 default, the local timezone of the receiver is used. See
64 64 mount_pcfs(1M) for details.
65 65
66 66
67 67 The root directory of a FAT formatted medium has no timestamps and pcfs
68 68 returns the time when the mount was done as timestamp for the root of
69 69 the filesystem.
70 70
71 71
72 72 The FAT filesystem doesn't support multiple links. As a result, the
73 73 link count for all files and directories in pcfs is hard-coded as "1."
74 74
75 75 Mounting File Systems
76 76 Use the following command to mount pcfs from diskette:
77 77
78 78 mount -F pcfs device-special directory-name
79 79
80 80
81 81
82 82
83 83 You can use:
84 84
85 85 mount directory-name
86 86
87 87
88 88
89 89
90 90 if the following line is in your /etc/vfstab file:
91 91
92 92 device-special - directory-namepcfs - no rw
93 93
94 94
95 95
96 96 Use the following command to mount pcfs from non-diskette media:
97 97
98 98 mount -F pcfs device-special:logical-drive directory-name
99 99
100 100
101 101
102 102
103 103 You can use:
104 104
105 105 mount directory-name
106 106
107 107
108 108
109 109
110 110 if the following line is in your /etc/vfstab file:
111 111
112 112 device-special:logical_drive - directory-name pcfs - no rw
113 113
114 114
115 115
116 116 device-special specifies the special block device file for the diskette
117 117 (/dev/disketteN) or the entire hard disk (/dev/dsk/cNtNdNp0 for a SCSI
118 118 disk, and /dev/dsk/cNdNp0 for IDE disks) or the PCMCIA pseudo-floppy
119 119 memory card (/dev/dsk/cNtNdNsN).
120 120
121 121
122 122 logical-drive specifies either the DOS logical drive letter (c through
123 123 z) or a drive number (1 through 24). Drive letter c is equivalent to
124 124 drive number 1 and represents the Primary DOS partition on the disk;
125 125 drive letters d through z are equivalent to drive numbers 2 through 24,
126 126 and represent DOS drives within the Extended FAT partition. Note that
127 127 device-special and logical-drive must be separated by a colon.
128 128
129 129
130 130 directory-name specifies the location where the file system is mounted.
131 131
132 132
133 133 For example, to mount the Primary DOS partition from a SCSI hard disk,
134 134 use:
135 135
136 136 mount -F pcfs /dev/dsk/cNtNdNp0:c /pcfs/c
137 137
138 138
139 139
140 140
141 141 To mount the first logical drive in the Extended DOS partition from an
142 142 IDE hard disk, use:
143 143
144 144 mount -F pcfs /dev/dsk/cNdNp0:d /pcfs/d
145 145
146 146
147 147
148 148
149 149 To mount a DOS diskette in the first floppy drive when volume
150 150 management is not running use:
151 151
152 152 mount -F pcfs /dev/diskette /pcfs/a
153 153
154 154
155 155
156 156
157 157 If Volume Management is running, run volcheck(1) to automatically mount
158 158 the floppy and some removable disks.
159 159
160 160
161 161 To mount a PCMCIA pseudo-floppy memory card, with Volume Management not
162 162 running (or not managing the PCMCIA media), use:
163 163
164 164 mount -F pcfs /dev/dsk/cNtNdNsN /pcfs
165 165
166 166
167 167
168 168 Conventions
169 169 Files and directories created through pcfs must comply with either the
170 170 FAT short file name convention or the long file name convention
171 171 introduced with Windows 95. The FAT short file name convention is of
172 172 the form filename[.ext], where filename generally consists of from one
173 173 to eight upper-case characters, while the optional ext consists of from
174 174 one to three upper-case characters.
175 175
176 176
177 177 The long file name convention is much closer to Solaris file names. A
178 178 long file name can consist of any characters valid in a short file
179 179 name, lowercase letters, non-leading spaces, the characters +,;=[], any
180 180 number of periods, and can be up to 255 characters long. Long file
181 181 names have an associated short file name for systems that do not
182 182 support long file names (including earlier releases of Solaris). The
183 183 short file name is not visible if the system recognizes long file
184 184 names. pcfs generates a unique short name automatically when creating a
185 185 long file name.
186 186
187 187
188 188 Given a long file name such as This is a really long filename.TXT, the
189 189 short file name will generally be of the form THISIS~N.TXT, where N is
190 190 a number. The long file name will probably get the short name
191 191 THISIS~1.TXT, or THISIS~2.TXT if THISIS~1.TXT already exits (or
192 192 THISIS~3.TXT if both exist, and so forth). If you use pcfs file systems
193 193 on systems that do not support long file names, you may want to
194 194 continue following the short file name conventions. See EXAMPLES.
195 195
196 196
197 197 When creating a file name, pcfs creates a short file name if it fits
198 198 the FAT short file name format, otherwise it creates a long file name.
199 199 This is because long file names take more directory space. Because the
200 200 root directory of a pcfs file system is fixed size, long file names in
201 201 the root directory should be avoided if possible.
202 202
203 203
204 204 When displaying file names, pcfs shows them exactly as they are on the
205 205 media. This means that short names are displayed as uppercase and long
206 206 file names retain their case. Earlier versions of pcfs folded all names
207 207 to lowercase, which can be forced with the PCFS_MNT_FOLDCASE mount
208 208 option. All file name searches within pcfs, however, are treated as if
209 209 they were uppercase, so readme.txt and ReAdMe.TxT refer to the same
210 210 file.
211 211
212 212
213 213 To format a diskette or a PCMCIA pseudo-floppy memory card in FAT
214 214 format in the SunOS system, use either the fdformat -d or the DOS
215 215 FORMAT command.
216 216
217 217 Boot Partitions
218 218 On x86 systems, hard drives may contain an fdisk partition reserved for
219 219 the Solaris boot utilities. These partitions are special instances of
220 220 pcfs. You can mount an x86 boot partition with the command:
221 221
222 222 mount -F pcfs device-special:boot directory-name
223 223
224 224
225 225
226 226
227 227 or you can use:
228 228
229 229 mount directory-name
230 230
231 231
232 232
233 233
234 234 if the following line is in your /etc/vfstab file:
235 235
236 236 device-special:boot - directory-name pcfs - no rw
237 237
238 238
239 239
240 240
241 241 device-special specifies the special block device file for the entire
242 242 hard disk (/dev/dsk/cNtNdNp0)
243 243
244 244
245 245 directory-name specifies the location where the file system is mounted.
246 246
247 247
248 248 All files on a boot partition are owned by super-user. Only the super-
249 249 user may create, delete, or modify files on a boot partition.
250 250
251 251 EXAMPLES
252 252 Example 1 Sample Displays of File Names
253 253
254 254
255 255 If you copy a file financial.data from a UNIX file system to pcfs, it
256 256 displays as financial.data in pcfs, but may show up as FINANC~1.DAT in
257 257 systems that do not support long file names.
258 258
259 259
260 260
261 261 The following are legal long file names. They are also illegal short
262 262 file names:
263 263
264 264 test.sh.orig
265 265 data+
266 266 .login
267 267
268 268
269 269 Other systems that do not support long file names may see:
270 270
271 271 TESTSH~1.ORI
272 272 DATA~1
273 273 LOGIN~1
274 274
275 275
276 276 The short file name is generated from the initial characters of the
277 277 long file name, so differentiate names in the first few characters. For
278 278 example, these names:
279 279
280 280 WorkReport.January.Data
281 281 WorkReport.February.Data
282 282 WorkReport.March.Data
283 283
284 284
285 285 result in these short names, which are not distinguishable:
286 286
287 287 WORKRE~1.DAT
288 288 WORKRE~2.DAT
289 289 WORKRE~13.DAT
290 290
291 291
292 292 These names, however:
293 293
294 294 January.WorkReport.Data
295 295 February.WorkReport.Data
296 296 March.WorkReport.Data
297 297
298 298
299 299 result in the more descriptive short names:
300 300
301 301 JANUAR~1.DAT
302 302 FEBRUA~1.DAT
303 303 MARCHW~1.DAT
304 304
305 305 FILES
306 306 /usr/lib/fs/pcfs/mount
307 307 pcfs mount command
308 308
309 309
310 310 /usr/kernel/fs/pcfs
311 311 32-bit kernel module
312 312
313 313
314 314 ENVIRONMENT VARIABLES
315 315 See environ(5) for descriptions of the following environment variables
316 316 for the current locale setting: LANG, LC_ALL, LC_CTYPE, and LC_COLLATE.
317 317
318 318 SEE ALSO
319 319 chgrp(1), chown(1), dos2unix(1), eject(1), fdformat(1), unix2dos(1),
320 320 volcheck(1), mount(1M), mount_pcfs(1M), umount(1M), ctime(3C),
321 321 vfstab(4), environ(5), pcmem(7D)
322 322
323 323 WARNINGS
324 324 Do not physically eject a FAT floppy while the device is mounted as
325 325 pcfs. If Volume Management is managing a device, use the eject(1)
326 326 command before physically removing media.
327 327
328 328
329 329 When mounting pcfs on a hard disk, make sure the first block on that
330 330 device contains a valid fdisk partition table.
331 331
332 332
333 333 Because pcfs has no provision for handling owner-IDs or group-IDs on
334 334 files, chown(1) or chgrp(1) may generate various errors. This is a
335 335 limitation of pcfs, but it should not cause problems other than error
336 336 messages.
337 337
338 338 NOTES
339 339 Only the following characters are allowed in pcfs short file names and
340 340 extensions:
341 341 0-9
342 342 A-Z
343 343 $#&@!%()-{}<>`_^~|'
344 344
345 345
346 346 SunOS and FAT use different character sets and have different
347 347 requirements for the text file format. Use the dos2unix(1) and
348 348 unix2dos(1) commands to convert files between them.
349 349
350 350
351 351 pcfs offers a convenient transportation vehicle for files between Sun
352 352 workstations and PCs. Because the FAT disk format was designed for use
353 353 under DOS, it does not operate efficiently under the SunOS system and
354 354 should not be used as the format for a regular local storage. Instead,
355 355 use ufs for local storage within the SunOS system.
356 356
357 357
358 358 Although long file names can contain spaces (just as in UNIX file
359 359 names), some utilities may be confused by them.
360 360
361 361
362 362 This implementation of pcfs conforms to the behavior exhibited by
363 363 Windows 95 version 4.00.950.
364 364
365 365
366 366 When pcfs encounters long file names with non-ASCII characters, it
367 367 converts such long file names in Unicode scalar values into UTF-8
368 368 encoded filenames so that they are legible and usable with any of
369 369 Solaris UTF-8 locales. In the same context, when new file names with
370 370 non-ASCII characters are created, pcfs expects that such file names are
371 371 in UTF-8. This feature increases the interoperability of pcfs on
372 372 Solaris with other operating systems.
373 373
374 374 BUGS
375 375 pcfs should handle the disk change condition in the same way that DOS
376 376 does, so you do not need to unmount the file system to change floppies.
377 377
378 378
379 379
380 380 November 6, 2007 PCFS(7FS)
↓ open down ↓ |
380 lines elided |
↑ open up ↑ |
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX