Manpages

名 前

ustat − フ ァ イ ル シ ス テ ム (file system) の 統 計 を 得 る

書 式

#include <sys/types.h>
#include <unistd.h>
/* libc[45] */
#include <ustat.h>
/* glibc2 */

int ustat(dev_t dev, struct ustat *ubuf);

説 明

ustat() は マ ウ ン ト (mount) さ れ た フ ァ イ ル シ ス テ ム の 情 報 を 返 す 。 dev は 調 べ る フ ァ イ ル シ ス テ ム を 含 ん で い る デ バ イ ス (device) の デ バ イ ス 番 号 。 ubuf は 以 下 の メ ン バ ー を 含 む ustat 構 造 体 へ の ポ イ ン タ ー :

daddr_t f_tfree; /* Total free blocks */
ino_t f_tinode; /* Number of free inodes */
char f_fname[6]; /* Filsys name */
char f_fpack[6]; /* Filsys pack name */ 後 の 二 つ の フ ィ ー ル ド f_fnamef_fpack は 実 装 さ れ て お ら ず 、 常 に ヌ ル バ イ ト ('\0') で 埋 め ら れ る 。

返 り 値

成 功 し た 場 合 に は ゼ ロ が 返 さ れ 、 ubuf が 指 す ustat 構 造 体 が 埋 め ら れ る 。 エ ラ ー の 場 合 は −1 が 返 さ れ 、 errno が 適 切 に 設 定 さ れ る 。

エ ラ ー

EFAULT

ubuf が ア ク セ ス 可 能 な 空 間 の 外 側 を 指 し て い る 。

EINVAL

dev が マ ウ ン ト さ れ た フ ァ イ ル シ ス テ ム を 含 む デ バ イ ス を 参 照 し て い な い 。

ENOSYS

dev で 参 照 さ れ る マ ウ ン ト さ れ た フ ァ イ ル シ ス テ ム が こ の 操 作 (operation) を サ ポ ー ト し て い な い か 、 Linux の バ ー ジ ョ ン が 1.3.16 以 前 で あ る 。

準 拠

SVr4.

注 意

ustat() は 推 奨 さ れ ず 、 互 換 性 の た め だ け に 提 供 さ れ る 。 新 し い プ ロ グ ラ ム は 全 て こ れ の 代 り に statfs(2) を 使 用 す る べ き で あ る 。

HP−UX に お け る 注 意
HP−UX 版 の 構 造 体 ustat に は 、 そ の 他 に フ ィ ー ル ド f_blksize が 存 在 す る が 、 他 で は 見 か け な い 。 HP−UX は 次 の よ う に 警 告 し て い る : フ ァ イ ル シ ス テ ム の 中 に は 、 解 放 さ れ て い る inode の 数 を 変 更 し な い も の も あ る 。 こ の よ う な フ ァ イ ル シ ス テ ム は 、 フ ィ ー ル ド f_tinode に −1 を 返 す 。 フ ァ イ ル シ ス テ ム の 中 に は 、 inode を 動 的 に 確 保 す る も の も あ る 。 こ の よ う な フ ァ イ ル シ ス テ ム は 、 現 在 解 放 さ れ て い る inode の 数 を 返 す 。

関 連 項 目

stat(2), statfs(2)

こ の 文 書 に つ い て

こ の man ペ ー ジ は Linux man−pages プ ロ ジ ェ ク ト の リ リ ー ス 3.79 の 一 部 で あ る 。 プ ロ ジ ェ ク ト の 説 明 と バ グ 報 告 に 関 す る 情 報 は http://www.kernel.org/doc/man−pages/ に 書 か れ て い る 。