Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ mkdir(2) — NEWS-os 3.3

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

chmod(2)

stat(2)

umask(2)

MKDIR(2)  —  UNIX Programmer’s Manual

名称

mkdir − ディレクトリファイルを作成する

形式

mkdir(path, mode)
char ∗path;
int mode;

解説

mkdir は、 名前が path である新しいディレクトリファイルを 作成します。 新しいファイルのモードは mode を 用いて初期設定されます。 (モードの保護部分は、 プロセスのモードマスクによって修正されます (umask(2) 参照)。 )

ディレクトリの所有者IDは、 そのプロセスの有効ユーザIDにセットされます。 ディレクトリのグループIDは、 それが作成された親ディレクトリのグループIDにセットされます。

モードの下位 9ビットは、 そのプロセスのファイルモード作成マスクによって修正されます。 プロセスのファイルモード作成マスク内でセットされている すべてのビットはクリアされます。 umask(2) を 参照してください。

リターン値

リターン値 0 はコールの成功を示します。 リターン値 −1 はエラーを示し、 エラーコードが errno に入れられます。

エラー

次の場合には、 mkdir は失敗し、 ディレクトリは作成されません。

[ENOTDIR] パスプレフィックスの構成要素がディレクトリではないものがある。

[EINVAL] パス名に最上位ビットのセットされたキャラクタが含まれている。 (NEWS-OSでは起きません。)

[ENAMETOOLONG]
パス名の 1構成要素が 255 バイトを 超えている、 またはパス名全体が 1023 バイトを 超えている。

[ENOENT] パスプレフィックスの構成要素が存在していないものがある。

[EACCES] パスプレフィックスの構成要素についてサーチパーミッションが否定されている ものがある。

[ELOOP] パス名の処理で遭遇したシンボリックリンクの数が多すぎる。

[EPERM] 引数に最上位ビットのセットされたバイトが含まれている。 (NEWS-OSでは起きません。)

[EROFS] 指定されたファイルが読み取り専用のファイルシステム上にある。

[EEXIST] 指定されたファイルが既に存在している。

[ENOSPC] 新しいディレクトリのエントリを 入れるディレクトリのあるファイルシステムにスペースが残されていないために、 そのディレクトリを 拡張することができない。

[ENOSPC] その新しいディレクトリが収められるファイルシステムに スペースが残されていないために、 そのディレクトリを 作成することができない。

[ENOSPC] そのディレクトリが作成されるファイルシステムに、 フリーiノードがない。

[EDQUOT] その新しいディレクトリのエントリを 入れるディレクトリのあるファイルシステムで、 そのユーザのディスクブロックの割り当て量が使い果たされているために、 そのディレクトリを 拡張することができない。

[EDQUOT] その新しいディレクトリが収められるファイルシステムで、 そのユーザのディスクブロックの割り当て量が使い果たされているために、 そのディレクトリを 作成することができない。

[EDQUOT] そのディレクトリが作成されるファイルシステムで、 そのユーザのiノードの割り当て量が使い果たされている。

[EIO] ディレクトリエントリの作成中またはiノードの割り当て中に、 入出力エラーが発生した。

[EIO] ファイルシステムへの書き込みまたはファイルシステムからの読み取りを 行っている間に入出力エラーが発生した。

[EFAULT] path が、 そのプロセスの割り当てアドレススペースの外を 指している。

関連事項

chmod(2), stat(2), umask(2)

NEWS-OSRelease 3.3

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026