tail head cat sleep
QR code linking to this page

Man page  — GETFSSTAT

명칭

getfsstat – mount 된 모든 파일 시스템의 리스트를 얻는다

내용

프로그램 라이브러리

Standard C Library (libc, -lc)

서식

#include <sys/param.h>
#include <sys/ucred.h>
#include <sys/mount.h>

int
getfsstat(struct statfs *buf, long bufsize, int flags);

해설

getfsstat() (은)는, mount 된 모든 파일 시스템에 관한 정보를 돌려줍니다. buf 하 다음과 같이 정의된다 statfs 구조체에의 포인터입니다.
typedef struct fsid { int32_t val[2]; } fsid_t; /* 파일 시스템 ID 타입 */

/* * 파일 시스템 통계 */

#define MFSNAMELEN 16   /* 파일 시스템의 타입명장, 눌을 포함한다 */ #define MNAMELEN 90   /* 돌려주어진 이름에 대한 버퍼의 길이 */

struct statfs { long f_spare2;           /* 플레이스홀더 */ long f_bsize;            /* 기본적인 파일 시스템의 블록 사이즈 */ long f_iosize;           /* 최적인 전송 블록 사이즈 */ long f_blocks;           /* 파일 시스템내의 합계 데이터 블록 */ long f_bfree;            /* 파일 시스템내의 미사용의 블록 */ long f_bavail;           /* 슈퍼 유저 이외의 유저가 이용할 수 있는 미사용의 블록 */ long f_files;            /* 파일 시스템내의 합계 파일 노드 */ long f_ffree;            /* 파일 시스템내의 미사용의 파일 노드 */ fsid_t f_fsid;             /* 파일 시스템 ID */ uid_t f_owner;            /* 파일 시스템을 mount 한 유저 */ int f_type;             /* 파일 시스템의 타입 (아래와 같이를 참조) */ int f_flags;            /* mount 플래그의 카피 */ long f_spare[2];         /* 후를 위한 margin */ char f_fstypename[MFSNAMELEN];/* 파일 시스템의 타입명 */ char f_mntonname[MNAMELEN];/* mount 된 디렉토리 */ char f_mntfromname[MNAMELEN];/* mount 된 파일 시스템 */ };

돌려주어질 가능성이 있는 플래그에는 다음의 것이 포함됩니다.
MNT_RDONLY 파일 시스템은 읽기 전용으로서 mount 되고 있습니다. 슈퍼 유저도 기록 할 수 없습니다.
MNT_NOEXEC 그 파일 시스템상의 파일을 실행할 수 없습니다.
MNT_NOSUID 실행될 때, 파일의 setuid 비트와 setgid 비트가 효과를 가지지 않습니다.
MNT_NODEV 파일 시스템내의 특수 파일은 열지 않습니다.
MNT_SYNCHRONOUS 파일 시스템에의 모든 입출력이 동기적으로 실행됩니다.
MNT_ASYNCHRONOUS
  파일 시스템 입출력이 동기적으로 실행되지 않습니다.
MNT_LOCAL 로컬에 있는 파일 시스템입니다.
MNT_QUOTA 파일 시스템상에서 쿼터가 유효하게 되어 있습니다.
MNT_ROOTFS 루트 파일 시스템인 것을 나타냅니다.
MNT_EXRDONLY 파일 시스템은 읽기 전용으로 export 되고 있습니다.
MNT_EXPORTED 파일 시스템은 읽기와 기록의 양쪽 모두에 대해 export 되고 있습니다.
MNT_DEFEXPORTED 파일 시스템은 어느 인터넷 호스트에도 읽기와 기록의 양쪽 모두에 대해 export 되고 있습니다.
MNT_EXPORTANON 파일 시스템은 모든 원격 접근을 익명 유저에게 MAP 합니다.
MNT_EXKERB 파일 시스템은 Kerberos uid 매핑으로 export 되고 있습니다.

특정의 파일 시스템에 대해 미정도리가 되는 필드는 -1 으로 설정됩니다. 버퍼는 fsstat 구조체의 배열로 묻을 수 있습니다. mount 된 각 파일 시스템에 대해 1 개(살)씩, 최고 bufsize 그리고 지정된 사이즈까지입니다.

buf (으)로서 NULL 가 지정되어 있는 경우, getfsstat() (은)는 mount 되고 있는 파일 시스템의 수만을 돌려줍니다.

통상, flags 에는 MNT_WAIT (을)를 지정해야 합니다. flags (으)로서 MNT_NOWAIT 하지만 지정되어 있는 경우, getfsstat() (은)는 각 파일 시스템으로부터의 갱신을 요구하지 않고 이용할 수 있는 정보를 돌려줍니다. 그 때문에, 정보가운데는 낡아지고 있는 것이 있겠지만, getfsstat() (은)는 응답할 수 없는 파일 시스템으로부터의 정보를 대기해 블록 할 것은 없습니다.

반환값

정상적으로 완료하면(자) fsstat 구조체의 수가 돌려주어집니다. 그렇지 않은 경우는 -1 이 돌려주어져 에러를 나타내기 위해서(때문에) 글로벌 변수 errno 하지만 설정됩니다.

에러

getfsstat() (은)는 이하의 1 개에서도 진정한 경우, 처리에 실패합니다.
[EFAULT]
  buf 하지만 무효인 주소를 가리키고 있습니다.
[EIO] 파일 시스템을 읽고 쓰기하고 있는 동안에 I/O (입출력) 에러가 발생했습니다.

관련 항목

statfs(2), fstab(5), mount(8)

역사

getfsstat() 함수는 BSD 4.4 그리고 처음 등장했습니다.

GETFSSTAT (2) May 25, 1995

tail head cat sleep
QR code linking to this page


Ben Bullock이 유닉스 매뉴얼 페이지에서 서비스에 대한 의견을 주시기 바랍니다. Privacy policy.

How's my programming? Call 1-800-DEV-NULL