1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227
|
.\" Hey Emacs! This file is -*- nroff -*- source.
.\"
.\" This manpage is Copyright (C) 1992 Drew Eckhardt;
.\" 1993 Michael Haardt
.\" 1993,1994 Ian Jackson.
.\" You may distribute it under the terms of the GNU General
.\" Public License. It comes with NO WARRANTY.
.\"
.\" Modified 1996-08-18 by urs
.\" Modified 2003-04-23 by Michael Kerrisk
.\" Modified 2004-06-23 by Michael Kerrisk <mtk.manpages@gmail.com>
.\"
.\"
.\" Japanese Version Copyright (c) 1997 SUTO, Mitsuaki
.\" all rights reserved.
.\" Translated 1997-06-26, SUTO, Mitsuaki <suto@av.crl.sony.co.jp>
.\" Updated & Modified 1999-03-01, NAKANO Takeo <nakano@apm.seikei.ac.jp>
.\" Updated & Modified 2001-06-04, Yuichi SATO <ysato@h4.dion.ne.jp>
.\" Updated & Modified 2003-07-26, Yuichi SATO <ysato444@yahoo.co.jp>
.\" Updated & Modified 2004-12-31, Yuichi SATO
.\" Updated 2005-09-06, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
.\"
.\"WORD: node Ρ
.\"WORD: permission °
.\"WORD: resolve (ѥ̾) 褹
.\"
.TH MKNOD 2 2007-07-26 "Linux" "Linux Programmer's Manual"
.SH ̾
mknod \- üե̾Υե
.SH
.nf
.B #include <sys/types.h>
.B #include <sys/stat.h>
.B #include <fcntl.h>
.B #include <unistd.h>
.sp
.BI "int mknod(const char *" pathname ", mode_t " mode ", dev_t " dev );
.fi
.sp
.in -4n
glibc εǽޥ
.RB ( feature_test_macros (7)
):
.in
.sp
.BR mknod ():
_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\ >=\ 500
.SH
ƥॳ
.BR mknod ()
.I pathname
Ȥ̾Υե륷ƥࡦΡ
(ե롢ǥХڥե롢̾դѥ)
°
.I mode
.I dev
λˤäƺ롣
.I mode
ˤϡΡɤε° (permission) ȥפꤹ롣
.I mode
λϰʲˤե륿פΤ 1 Ĥȡ
°ȹ礻 (ӥåȤȤ OR ) ǹԤ
°̤̾ꡢץ
.I umask
ˤäƽ졢줿Ρɤε°
.I "(mode & ~umask)"
Ȥʤ롣
ե륿פˤ
.BR S_IFREG ,
.BR S_IFCHR ,
.BR S_IFBLK ,
.BR S_IFIFO ,
.B S_IFSOCK
.\" (S_IFSOCK Linux 1.2.4 ¸ߤ)
Τ줫ꤷʤФʤʤ
줾ˡ̾Υե (ΥեȤƺ)
饯ڥե롦֥åڥե롦
FIFO (̾դѥ)Unix ɥᥤåȤǤ
(ե륿 0
.B S_IFREG
ƱǤ)
ե륿פ
.B S_IFCHR
ޤ
.B S_IFBLK
ΤȤ
.I dev
ˤϺǥХڥեΥ㡼ֹ
ޥʡֹꤹ롣ʳξ
.I dev
̵뤵롣
.I pathname
¸ߤ硢ޤϥܥåξ硢
θƤӽФ
.B EEXIST
顼ǼԤ롣
줿ΡɤνͭԤϥץμ¸桼 ID ˥åȤ롣
˺줿Ρɤݻ
ƥǥ쥯ȥ set-group-ID ӥåȤåȤƤꡢ
ե륷ƥब BSD Υ롼ץޥƥˤä
ޥȤƤˤϡΡɤΥ롼ͭϿƥǥ쥯ȥ
롼ͭѾ (ƥǥ쥯ȥƱˤʤ)
ޤǤʤäνͭ롼פϥץμ¸롼 ID Ȥʤ롣
.SH ֤
.BR mknod ()
0 Ԥ \-1 ֤
(Ԥ
.I errno
顼ƤˤäƥåȤ)
.SH 顼
.TP
.B EACCES
ץƥǥ쥯ȥؤνߵĤʤ
⤷ϥѥ̾
.I pathname
Υǥ쥯ȥʬΤɤ줫˸°̵
.RB ( path_resolution (7)
⻲Ȥ뤳)
.TP
.B EEXIST
.I pathname
¸ߤ롣
.TP
.B EFAULT
.I pathname
ΥץΥǽʥɥ쥹֤γؤƤ롣
.TP
.B EINVAL
.I mode
̾Υե롦ǥХڥե롦FIFOåȰʳ
褦˥åȤƤ롣
.TP
.B ELOOP
ѥ̾
.I pathname
褹ȤˡޤޤƤ륷ܥå¿
.TP
.B ENAMETOOLONG
.I pathname
Ĺ롣
.TP
.B ENOENT
.I pathname
ǻꤵƤǥ쥯ȥ꤬¸ߤʤ
ޤϥ̵ܥåǤ롣
.TP
.B ENOMEM
ʬʥ̵꤬ͥ
.TP
.B ENOSPC
.I pathname
ΤǥХ˿˥Ρɤ̵
.TP
.B ENOTDIR
.I pathname
Υǥ쥯ȥǤºݤˤϥǥ쥯ȥǤʤ
.TP
.B EPERM
.I mode
̾Υե롦FIFO (̾դѥ)Unix ɥᥤåȰʳ
褦˥åȤƤ뤬¹ԼԤø
(Linux Ǥ
.B CAP_MKNOD
ѥӥƥ (capability)) äƤʤ
.\" Unix ɥᥤåȤ̾եФ mknod() Ԥȡ
.\" Linux 2.2 Ǥ EPERM ֤Ǥ롣
.\" Linux 2.4 ʹߤǤøäƤʤƤ⤳Υե
.\" Τ mknod() Ѥ뤳ȤǤ롣
ޤ
.I pathname
ݻե륷ƥबꤵ줿ΡɷݡȤƤʤ
.TP
.B EROFS
.I pathname
ɤ߽Фѥե륷ƥΥեؤƤ롣
.SH
SVr4, 4.4BSD, POSIX.1-2001 (⻲).
.\" Linux μ SVr4 μȰۤʤꡢѥפκˤ root ¤פǤ롣
.\" ޤ EMULTIHOP ENOLINK EINTR Υ顼ˤĤƤϵҤƤʤ
.SH
POSIX.1-2001 ǤϼΤ褦˽Ƥ롧
.RB mknod ()
ͣΰܿΤˡϡFIFO ڥե뤳ȤǤ롣
.I mode
.B S_IFIFO
ǤϤʤ硢ޤ
.I dev
0 ǤϤʤ硢
.BR mknod ()
εưϵꤵƤʤ
ʤ顢ߤǤϤŪΤ
.BR mknod ()
Ѥ٤ǤϤʤŪΤ̤줿ؿǤ
.BR mkfifo ()
Ѥ٤Ǥ롣
Linux Ǥϡǥ쥯ȥ뤿
θƤӽФѤ뤳ȤϤǤʤ
ǥ쥯ȥ
.BR mkdir (2)
Ǻ٤Ǥ롣
.\" Unix ɥᥤåȤ socket(2) bind(2) Ǻ٤Ǥ롣
NFS ¸Ƥץȥˤ¿¸ߤ
ΤĤ
.BR mknod ()
˱ƶͿ롣
.SH Ϣ
.BR fcntl (2),
.BR mkdir (2),
.BR mknodat (2),
.BR mount (2),
.BR socket (2),
.BR stat (2),
.BR umask (2),
.BR unlink (2),
.BR mkfifo (3),
.BR path_resolution (7)
|