NEWFS_MSDOS(8)

명칭
newfs_msdos - 신규의 MS-DOS (FAT) 파일 시스템을 작성한다

서식
newfs_msdos [-N] [-B boot] [-F FAT-type] [-I volid] [-L label] [-O OEM] [-S sector-size] [-a FAT-size] [-b block-size] [-c cluster-size] [-e dirents] [-f format] [-h heads] [-i info] [-k backup] [-m media] [-n FATs] [-o hidden] [-r reserved] [-s total] [-u track-size] special [disktype]

해설
newfs_msdos 유틸리티는, FAT12, FAT16, FAT32 의 몇개의 파일 시스템을, 디바이스 special 위에 작성합니다. 이 때, 필요하면 disktab(5) 의 disktype (을)를 사용해, 지오메트리를 결정합니다.

옵션을 이하에 나타냅니다:

-N  파일 시스템을 작성하지 않습니다: 파라미터를 표시할 뿐입니다.

-B boot
    bootstrap를 파일로부터 취득합니다.

-F FAT-type
    FAT 타입 (12, 16, 32 의 언젠가).

-I volid
    볼륨 ID.

-L label
    볼륨 레벨 (11 캐릭터까지). label를 구성하는 캐릭터는, 통상의 DOS (8+3) 파일명에 용서되는 캐릭터에만 할 필요가 있습니다.

-O OEM
    OEM 캐릭터 라인 (8 캐릭터까지). 디폴트는 "BSD 4.4" 입니다.

-S sector-size
    섹터 근처의 바이트수. 받아들이는 값은, 128 에서 32768 까지의, 2 말하고 나무승입니다.

-a FAT-size
    FAT 근처의 섹터수.

-b block-size
    파일 시스템의 블록 사이즈 (클러스터 근처의 바이트수). 이 값은, 받아들이고 가능한 클러스터 근처의 섹터수 (후술)에, 분해 가능한 필요가 있습니다.

-c cluster-size
    클러스터 근처의 섹터수. 받아들이는 값은, 1 에서 128 까지의, 2 말하고 나무승입니다.

-e dirents
    루트 디렉토리의 엔트리수 (FAT12 와 FAT16 마셔).

-f format
    표준 (floppy disk) 포맷을 지정합니다. 표준 포맷은, (각각 킬로바이트에서의 용량으로 표현해) 160, 180, 320, 360, 640, 720, 1200, 1232, 1440, 2880 의 머지않아인가입니다.

-h heads
    드라이브의 헤드수.

-i info
    파일 시스템 정보 섹터의 위치 (FAT32 마셔). 값 0xffff 는, 정보 섹터가 없는 일을 의미합니다.

-k backup
    백업 boot sector의 위치 (FAT32 마셔). 값 0xffff 는, 백업 섹터가 없는 일을 의미합니다.

-m media
    미디어 기술자 (받아들이는 값은, 0xf0 에서 0xff 까지).

-n FATs
    FAT 수. 받아들이는 값은 1 에서 16 까지로, 양단을 포함합니다. 디폴트는 2 입니다.

-o hidden
    은폐 섹터의 수.

-r reserved
    예약 섹터의 수.

-s total
    파일 시스템 사이즈.

-u track-size
    트럭 근처의 섹터수.

주
FAT 파일 시스템 파라미터는, 실제의 파일 시스템의 전에 있는 「예약」섹터의 초의, 「boot sector의 BPB (BIOS 파라미터 블록)」에 놓여집니다. 참조를 위해서(때문에), 이 구조를 이하에 나타냅니다.

    struct bsbpb {
        u_int16_t	bps;		/* [-S] 섹터 근처의 바이트수 */
        u_int8_t	spc;		/* [-c] 클러스터 근처의 섹터수 */
        u_int16_t	res;		/* [-r] 예약 섹터수 */
        u_int8_t	nft;		/* [-n] FAT 수 */
        u_int16_t	rde;		/* [-e] 루트 디렉토리의 엔트리수 */
        u_int16_t	sec;		/* [-s] 총섹터수 */
        u_int8_t	mid;		/* [-m] 미디어 기술자 */
        u_int16_t	spf;		/* [-a] FAT 근처의 섹터수 */
        u_int16_t	spt;		/* [-u] 트럭 근처의 섹터수 */
        u_int16_t	hds;		/* [-h] 드라이브 헤드수 */
        u_int32_t	hid;		/* [-o] 은폐 섹터수 */
        u_int32_t	bsec;		/* [-s] 빅총섹터수 */
    };
    /* FAT32 확장 */
    struct bsxbpb {
        u_int32_t	bspf;		/* [-a] FAT 근처의 빅 섹터수 */
        u_int16_t	xflg;		/* 제어 플래그 */
        u_int16_t	vers;		/* 파일 시스템 버젼 */
        u_int32_t	rdcl;		/* 루트 디렉토리의 개시 클러스터 */
        u_int16_t	infs;		/* [-i] 파일 시스템의 정보 섹터 */
        u_int16_t	bkbs;		/* [-k] 백업 boot sector */
    };

사용예

    newfs_msdos /dev/ad0s1

디폴트 패러미터를 사용해, /dev/ad0s1 에 파일 시스템을 작성합니다.

    newfs_msdos -f 1440 -L foo fd0

표준 1.44M 파일 시스템을, 볼륨 레벨 "foo" 에서, /dev/fd0 에 작성합니다.

관련 항목
disktab(5), disklabel(8), fdisk(8), newfs(8)

진단
종료 상태는, 성공시에는 0 에, 에러시에는 1 이 됩니다.

역사
newfs_msdos 유틸리티는, 최초로 FreeBSD 3.0 에 등장했습니다.

저자
Robert Nordier <rnordier@FreeBSD.org>