Rechercher une page de manuel
statfs
Langue: ja
Version: 2004-06-23 (openSuse - 09/10/07)
Section: 2 (Appels système)
̾Á°
statfs, fstatfs - ¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¤ÎÅý·×¤òÆÀ¤ë½ñ¼°
#include <sys/vfs.h> /* ¤Þ¤¿¤Ï <sys/statfs.h> */int statfs(const char *path, struct statfs *buf);
int fstatfs(int fd, struct statfs *buf);
½ñ¼°
´Ø¿ô statfs() ¤Ï¥Þ¥¦¥ó¥È¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¤Ë¤Ä¤¤¤Æ¤Î¾ðÊó¤òÊÖ¤¹¡£ path ¤Ï¥Þ¥¦¥ó¥È¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¤Ë¤¢¤ë¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹Ì¾¤Ç¤¢¤ë¡£ buf ¤Ï statfs ¹½Â¤ÂΤؤΥݥ¤¥ó¥¿¡¼¤Ç¡¢¤ª¤è¤½°Ê²¼¤Î¤è¤¦¤ËÄêµÁ¤µ¤ì¤ë:-
struct statfs { long f_type; /* ¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Î·¿ (²¼µ»²¾È) */ long f_bsize; /* ºÇŬ¤Ê¥Ö¥í¥Ã¥¯¥µ¥¤¥º */ long f_blocks; /* ¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤ÎÁí¥Ç¡¼¥¿¥Ö¥í¥Ã¥¯¿ô */ long f_bfree; /* ¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Î¶õ¤¥Ö¥í¥Ã¥¯¿ô */ long f_bavail; /* È󥹡¼¥Ñ¡¼¥æ¡¼¥¶¤¬»ÈÍѲÄǽ¤Ê¶õ¤¥Ö¥í¥Ã¥¯¿ô */ long f_files; /* ¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤ÎÁí¥Õ¥¡¥¤¥ë¥Î¡¼¥É¿ô */ long f_ffree; /* ¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Î¶õ¤¥Õ¥¡¥¤¥ë¥Î¡¼¥É¿ô */ fsid_t f_fsid; /* ¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Î ID */ long f_namelen; /* ¥Õ¥¡¥¤¥ë̾¤ÎºÇÂçĹ */ }; ¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¤Î·¿: ADFS_SUPER_MAGIC 0xadf5 AFFS_SUPER_MAGIC 0xADFF BEFS_SUPER_MAGIC 0x42465331 BFS_MAGIC 0x1BADFACE CIFS_MAGIC_NUMBER 0xFF534D42 CODA_SUPER_MAGIC 0x73757245 COH_SUPER_MAGIC 0x012FF7B7 CRAMFS_MAGIC 0x28cd3d45 DEVFS_SUPER_MAGIC 0x1373 EFS_SUPER_MAGIC 0x00414A53 EXT_SUPER_MAGIC 0x137D EXT2_OLD_SUPER_MAGIC 0xEF51 EXT2_SUPER_MAGIC 0xEF53 EXT3_SUPER_MAGIC 0xEF53 HFS_SUPER_MAGIC 0x4244 HPFS_SUPER_MAGIC 0xF995E849 HUGETLBFS_MAGIC 0x958458f6 ISOFS_SUPER_MAGIC 0x9660 JFFS2_SUPER_MAGIC 0x72b6 JFS_SUPER_MAGIC 0x3153464a MINIX_SUPER_MAGIC 0x137F /* ¥ª¥ê¥¸¥Ê¥ë¤Î minix */ MINIX_SUPER_MAGIC2 0x138F /* 30 ʸ»ú¥Õ¥¡¥¤¥ë̾¤Î minix */ MINIX2_SUPER_MAGIC 0x2468 /* minix V2 */ MINIX2_SUPER_MAGIC2 0x2478 /* minix V2, 30 ʸ»ú¥Õ¥¡¥¤¥ë̾ */ MSDOS_SUPER_MAGIC 0x4d44 NCP_SUPER_MAGIC 0x564c NFS_SUPER_MAGIC 0x6969 NTFS_SB_MAGIC 0x5346544e OPENPROM_SUPER_MAGIC 0x9fa1 PROC_SUPER_MAGIC 0x9fa0 QNX4_SUPER_MAGIC 0x002f REISERFS_SUPER_MAGIC 0x52654973 ROMFS_MAGIC 0x7275 SMB_SUPER_MAGIC 0x517B SYSV2_SUPER_MAGIC 0x012FF7B6 SYSV4_SUPER_MAGIC 0x012FF7B5 TMPFS_MAGIC 0x01021994 UDF_SUPER_MAGIC 0x15013346 UFS_MAGIC 0x00011954 USBDEVICE_SUPER_MAGIC 0x9fa2 VXFS_SUPER_MAGIC 0xa501FCF5 XENIX_SUPER_MAGIC 0x012FF7B4 XFS_SUPER_MAGIC 0x58465342 _XIAFS_SUPER_MAGIC 0x012FD16D
f_fsid ¤Ë¤É¤ó¤ÊÃͤ¬Æþ¤ë¤Ù¤¤Ê¤Î¤«¤Ïï¤âÃΤé¤Ê¤¤ (⤷¡¢²¼µ¤ò»²¾È)¡£
¤½¤ì¤¾¤ì¤Î¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¤Ë¤ª¤¤¤Æ̤ÄêµÁ¤Î¥Õ¥£¡¼¥ë¥É¤Ë¤Ï 0 ¤¬ ÀßÄꤵ¤ì¤ë¡£ fstatfs() ¤Ï¥Ç¥£¥¹¥¯¥ê¥×¥¿¡¼ fd ¤Ë¤è¤Ã¤Æ»²¾È¤µ¤ì¤ë¥ª¡¼¥×¥ó¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤Ë¤Ä¤¤¤Æ¡¢Æ±¤¸¾ðÊó¤òÊÖ¤¹¡£
ÊÖ¤êÃÍ
À®¸ù¤¹¤ì¤Ð 0 ¤¬ÊÖ¤µ¤ì¤ë¡£¥¨¥é¡¼¤Î¾ì¹ç¤Ï -1 ¤¬ÊÖ¤µ¤ì¡¢ errno ¤¬Å¬ÀÚ¤ËÀßÄꤵ¤ì¤ë¡£¥¨¥é¡¼
- EACCES
- (statfs() ¤Î¾ì¹ç) path ¤Î¥Ç¥£¥ì¥¯¥È¥êÉôʬ¤Ë¸¡º÷µö²Ä¤¬Í¿¤¨¤é¤ì¤Æ¤¤¤Ê¤¤ (path_resolution(7) ¤â»²¾È¤¹¤ë¤³¤È)¡£
- EBADF
- (fstatfs() ¤Î¾ì¹ç) fd ¤Ï͸ú¤Ê¥ª¡¼¥×¥ó¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¡¦¥Ç¥£¥¹¥¯¥ê¥×¥¿¡¼¤Ç¤Ï¤Ê¤¤¡£
- EFAULT
- buf ¤Þ¤¿¤Ï path ¤¬ÉÔÀµ¤Ê¥¢¥É¥ì¥¹¤ò»Ø¤·¤Æ¤¤¤ë¡£
- EINTR
- ¤³¤Î¸Æ¤Ó½Ð¤·¤¬¥·¥°¥Ê¥ë¤ÇÃæÃǤµ¤ì¤¿¡£
- EIO
- ¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¤ÎÆɤ߹þ¤ß¤Î´Ö¤Ë I/O ¥¨¥é¡¼¤¬È¯À¸¤·¤¿¡£
- ELOOP
- (statfs() ¤Î¾ì¹ç) path ¤ò²ò·è¤¹¤ë¤Î¤Ëé¤ë¤Ù¤¥·¥ó¥Ü¥ê¥Ã¥¯¡¦¥ê¥ó¥¯¤¬Â¿¤¹¤®¤ë¡£
- ENAMETOOLONG
- (statfs() ¤Î¾ì¹ç) path ¤¬Ä¹²á¤®¤ë¡£
- ENOENT
- (statfs() ¤Î¾ì¹ç) path ¤Ë¤è¤Ã¤Æ»²¾È¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Ê¤¤¡£
- ENOMEM
- ¥«¡¼¥Í¥ë¤Ë½½Ê¬¤Ê¥á¥â¥ê¤¬¤Ê¤¤¡£
- ENOSYS
- ¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¤¬¤³¤Î¸Æ¤Ó½Ð¤·¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Ê¤¤¡£
- ENOTDIR
- (statfs() ¤Î¾ì¹ç) path ¤Î¥Ç¥£¥ì¥¯¥È¥êÉôʬ¤¬¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤Ê¤¤¡£
- EOVERFLOW
- Ãͤ¬Â礲᤮¤ë¤¿¤á¡¢ÊÖ¤êÃͤι½Â¤ÂΤÇɽ¸½¤Ç¤¤Ê¤¤¡£
½àµò
Linux ¸ÇͤǤ¢¤ë¡£ Linux ¤Î statfs() ¤Ï 4.4BSD ¤Î¤â¤Î¤Ë±Æ¶Á¤ò¼õ¤±¤Æ¤¤¤ë¡£ (¤·¤«¤·Æ±¤¸¹½Â¤ÂΤò»ÈÍѤ·¤Æ¤¤¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤)Ãí°Õ
¤³¤Î¥é¥¤¥Ö¥é¥ê¥³¡¼¥ë¤ò¥µ¥Ý¡¼¥È¤¹¤ë¤¿¤á¡¢ ¥«¡¼¥Í¥ë¤Ë¤Ï¥·¥¹¥Æ¥à¥³¡¼¥ë statfs(), fstatfs(), statfs64(), fstatfs64() ¤¬¤¢¤ë¡£<sys/vfs.h> ¤·¤«»ý¤¿¤Ê¤¤¥·¥¹¥Æ¥à¤â¤¢¤ê¡¢ <sys/statfs.h> ¤â»ý¤Ã¤Æ¤¤¤ë¥·¥¹¥Æ¥à¤â¤¢¤ë¡£ Á°¼Ô¤Ï¸å¼Ô¤ò¥¤¥ó¥¯¥ë¡¼¥É¤¹¤ë¤Î¤Ç¡¢ Á°¼Ô¤ò¥¤¥ó¥¯¥ë¡¼¥É¤¹¤ë¤Î¤¬Îɤ¤¤È¹Í¤¨¤é¤ì¤ë¡£
LSB ¤Ç¤Ï¥é¥¤¥Ö¥é¥ê¥³¡¼¥ë statfs(), fstatfs() ¤òÈó¿ä¾©¤È¤·¤Æ¡¢Âå¤ï¤ê¤Ë statvfs(2), fstatvfs(2) ¤ò»È¤¦¤è¤¦¤Ë»Ø¼¨¤·¤Æ¤¤¤ë¡£
f_fsid ¥Õ¥£¡¼¥ë¥É
Solaris, Irix, POSIX ¤Ë¤Ï¥·¥¹¥Æ¥à¥³¡¼¥ë statvfs(2) ¤¬¤¢¤ê¡¢ struct statvfs ¤òÊÖ¤¹ (<sys/statvfs.h> ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë)¡£ ¤³¤Î¹½Â¤ÂΤˤϡ¢ unsigned long f_fsid ¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¡£ Linux, SunOS, HP-UX, 4.4BSD ¤Ë¤Ï¥·¥¹¥Æ¥à¥³¡¼¥ë statfs() ¤¬¤¢¤ê¡¢ struct statfs ¤òÊÖ¤¹ (<sys/vfs.h> ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë)¡£ ¤³¤Î¹½Â¤ÂÎ¤Ë¤Ï fsid_t f_fsid, ¤¬´Þ¤Þ¤ì¤Æ¤ª¤ê¡¢ fsid_t ¤Ï struct { int val[2]; } ¤ÈÄêµÁ¤µ¤ì¤Æ¤¤¤ë¡£ FreeBSD ¤Ç¤âƱ¤¸¤Ç¤¢¤ë¤¬¡¢¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë <sys/mount.h> ¤ò»È¤¦¡£f_fsid ¤Ï¤¢¤ë¥é¥ó¥À¥à¤ÊÃͤò»ý¤Á¡¢ (f_fsid,ino) ¤È¤¤¤¦ 1 ÁȤÎÃͤǥե¡¥¤¥ë¤ò°ì°Õ¤Ë·èÄê¤Ç¤¤ë¤è¤¦¤Ë¤¹¤ë¡¢ ¤È¤¤¤¦¤Î¤¬´ðËÜŪ¤Ê¹Í¤¨Êý¤Ç¤¢¤ë¡£ ¤¤¤¯¤Ä¤«¤Î OS ¤Ç¤Ï¡¢¥Ç¥Ð¥¤¥¹ÈÖ¹æ (¤ÎÊѼï) ¤ò»È¤Ã¤¿¤ê¡¢ ¥Ç¥Ð¥¤¥¹ÈÖ¹æ¤È¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¥¿¥¤¥×¤òÁȤ߹ç¤ï¤»¤Æ»È¤Ã¤¿¤ê¤·¤Æ¤¤¤ë¡£ OS ¤ÎÃæ¤Ë¤Ï f_fsid ¥Õ¥£¡¼¥ë¥É¤Î¼èÆÀ¤ò¥¹¡¼¥Ñ¡¼¥æ¡¼¥¶¤Ë¸ÂÄꤷ¤Æ¤¤¤ë¤â¤Î¤â¤¢¤ë (ÈóÆø¢¥æ¡¼¥¶¤¬¼èÆÀ¤¹¤ë¤È 0 ¤È¤Ê¤ë)¡£ NFS ¤Ç¥¨¥¯¥¹¥Ý¡¼¥È¤µ¤ì¤ë¾ì¹ç¡¢ ¤³¤Î¥Õ¥£¡¼¥ë¥É¤¬¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¤Î¥Õ¥¡¥¤¥ë¥Ï¥ó¥É¥ë¤Ç»È¤ï¤ì¤Æ¤ª¤ê¡¢ ¤³¤ÎÃͤòÄ󶡤¹¤ë¤È¥»¥¥å¥ê¥Æ¥£¾å¤ÎÌäÂ꤬¤¢¤ë¡£
¤¤¤¯¤Ä¤«¤Î OS ¤Ç¤Ï¡¢ fsid ¤ò sysfs() ¥·¥¹¥Æ¥à¥³¡¼¥ë¤ÎÂè 2 °ú¤¿ô¤È¤·¤Æ»ÈÍѤǤ¤ë¡£
´ØÏ¢¹àÌÜ
stat(2), statvfs(2), path_resolution(7)Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre