MKFS.1
上传用户:datang2001
上传日期:2007-02-01
资源大小:53269k
文件大小:3k
源码类别:

操作系统开发

开发平台:

C/C++

  1. .TH MKFS 1
  2. .SH NAME
  3. mkfs - make a file system
  4. .SH SYNOPSIS
  5. fBmkfs fR[fB-LdotfR] [fB-i fIinodesfR] [fB-b fIblocksfR] fIspecial fIprototypefR
  6. .br
  7. .de FL
  8. .TP
  9. \fB\$1\fR
  10. \$2
  11. ..
  12. .de EX
  13. .TP 20
  14. \fB\$1\fR
  15. # \$2
  16. ..
  17. .SH OPTIONS
  18. .FL "-L" "Make a listing on standard output"
  19. .FL "-d" "Use mod time of fImkfsfR binary for all files"
  20. .FL "-o" "Use a drive other than 0 or 1 (safety precaution)"
  21. .FL "-t" "Do not test if file system fits on the medium"
  22. .FL "-1" "Make a version 1 file system (for backward compatibility)"
  23. .FL "-i" "Number of i-nodes (files)"
  24. .FL "-b" "Filesystem size"
  25. .SH EXAMPLES
  26. .EX "mkfs /dev/fd1 proto" "Make a file system on fI/dev/fd1fR"
  27. .EX "mkfs -b 360 /dev/fd1" "Make empty 360 block file system"
  28. .EX "mkfs /dev/fd1 360" "Alternate way to specify the size"
  29. .SH DESCRIPTION
  30. .PP
  31. .I Mkfs
  32. builds a file system and copies specified files to it.
  33. The prototype file tells which directories and files to copy to it.
  34. If the prototype file cannot be opened, and its name is just a string of
  35. digits, an empty file system will be made with the specified number of
  36. blocks.
  37. A sample prototype file follows.
  38. The text following the fI#fR sign in the example below is comment.
  39. In real prototype files, comments are not allowed.
  40. .PP
  41. .nf
  42. .ta 0.20i 0.70i 1.10i 3i 3.5i 4i
  43. boot # boot block file (ignored)
  44. 360 63 # blocks and i-nodes
  45. d--755 1 1 # root directory
  46.    bin d--755 |2 1 # bin dir: mode (755), uid (2), gid (1)
  47. sh |---755 2 1 /user/bin/shell # shell has mode fIrwxr-xr-xfP
  48. mv -u-755 2 1 /user/bin/mv # u = SETUID bit
  49. login -ug755 2 1 /user/bin/login # SETUID and SETGID
  50.    $ # end of fI/binfP
  51.    dev d--755 2 1 # special files: tty (char), fd0 (block)
  52. tty c--777 2 1 4 0 # uid=2, gid=1, major=4, minor=0
  53. fd0 b--644 2 1 2 0 360 # uid, gid, major, minor, blocks
  54.    $ # end of fI/devfP
  55.    user d--755 12 1 # user dir: mode (755), uid (12), gid (1)
  56. ast d--755 12 1 # fI/user/astfP
  57. $ # fI/user/astfP is empty
  58.    $ # end of fI/userfP
  59. $ # end of root directory
  60. .PP
  61. .fi
  62. The first entry on each line (except the first 3 and the $ lines, which
  63. terminate directories) is the name the file or directory will get on the
  64. new file system.  
  65. Next comes its mode, with the first character being
  66. fB-dbcfR for regular files, directories, block special files and character 
  67. special files, respectively.
  68. The next two characters are used to specify the SETUID and SETGID bits, as
  69. shown above.
  70. The last three characters of the mode are the 
  71. .I rwx
  72. protection bits.
  73. .PP
  74. Following the mode are the uid and gid.
  75. For special files, the major and minor devices are needed.
  76. The size in blocks must also be specified for block special files (the
  77. s-2MINIXs+2
  78. block size is 1K; this can only be changed by changing
  79. .I BLOCK_SIZE
  80. and then recompiling the operating system).
  81. .PP
  82. The maximum size of a file system is 1 Gb for a version 2 file system,
  83. and 64 Mb for a version 1 file system.  Alas the 8086
  84. .I fsck
  85. runs out of memory on a V2 file system larger than 128 Mb, so for the 8086
  86. version of
  87. s-2MINIXs+2
  88. you have to limit yourself to file systems of that size.
  89. .SH "SEE ALSO"
  90. .BR mkproto (1),
  91. .BR fsck (1),
  92. .BR mount (1).