CCDCONFIG(8)

명칭
ccdconfig - 결합 디스크 드라이버용 설정 유틸리티

서식
ccdconfig [-cv] ccd ileave [flags] dev [file ...] ccdconfig -C [-v] [-f config_file] ccdconfig -u [-v] ccd [file ...] ccdconfig -U [-v] [-f config_file] ccdconfig -g [ccd [...]]

해설
ccdconfig 유틸리티는, 결합 디스크 디바이스 (concatenated disk device 즉 ccd)의 동적인 설정 및 해제를 실시하는 경우에 사용합니다. ccd 의 상세한 것에 대하여는, ccd(4) (을)를 참조해 주세요.

이하의 옵션을 사용할 수 있습니다.

-c  ccd 의 설정을 실시합니다. ccdconfig 의 디폴트의 동작입니다.

-C  설정 파일에 쓰여져 있는 모든 디바이스의 설정을 실시합니다.

-f config_file
    모든 디바이스의 설정 혹은 해제를 실시할 때에, 디폴트의 /etc/ccd.conf (이)가 아니고, config_file (으)로부터 설정 정보를 읽어들입니다.

-g  ccd 의 설정 파일로서 사용할 수 있는 형식에서, 현재의 ccd 의 설정을 출력합니다. 인수가 지정되어 있지 않으면, 설정되어 있는 모든 ccd 에 대해 출력합니다. 인수가 지정되어 있으면, 지정된 ccd 에 대한 보고 출력합니다.

-u  ccd 의 설정을 해제합니다.

-U  ccd 설정 파일에 쓰여져 있는 모든 ccd 디바이스의 설정을 해제합니다.

-v  보다 장황한 출력을 실시합니다.

ccd 는, 명령 행해 ccd 설정 파일에서, ccd 의 이름, 인타리브 팩터, ccd 설정 플래그, 하나 이상의 디바이스의 리스트의 정보에 의해 정의됩니다. 플래그는, 십진수, 십육진수, 콤마로 단락지어진 이름의 리스트, “none” 의 어느쪽이든으로 나타낼 수가 있습니다. 플래그에는 이하의 물건이 있습니다.

    CCDF_SWAP		 0x01	 dmmax 단위로 인타리브
    CCDF_UNIFORM	 0x02	 디스크간에 균일한 인타리브
    CCDF_MIRROR	 0x04	 데이터의 미러링을
    CCDF_PARITY	 0x08	 패리티 검사를 실시합니다 (현재 상태로서는 사용 불가)

설정 파일의 포맷은, 명령행으로부터 지정하는 경우와 동일한 형식이 됩니다. 명령행으로부터 지정하는 경우도, 설정 파일로부터 지정하는 경우도, flags 인수는 옵션입니다.

    #
    # /etc/ccd.conf
    # Configuration file for concatenated disk devices
    #

    # ccd           ileave  flags   component devices
    ccd0            16      none    /dev/da2e /dev/da3e

원가요소의 디바이스는, 파티션 타입이 FS_BSDFFS (disklabel(8) 그럼 “4.2BSD” (이)라고 표시됩니다)인 것이 필요합니다.

사용예
ccdconfig 의 예를 몇개인가 이하에 나타냅니다. ccdconfig 에게 건네지는 인수는, /etc/ccd.conf 설정 파일에 쓸 수 있는 것과 정말로 같은 것입니다. 1 번째의 예는, 4 디스크의 스트라이프를 4 SCSI 디스크 패티션으로부터 작성합니다. 스트라이프는 64 세크타인타리프를 사용합니다. 2 번째의 예는, 복잡한 스트라이프/밀러의 편성의 예입니다. 이것은, da2e 와 da3e 의 2 디스크 스트라이프를, da4e 와 da5e 의 2 디스크 스트라이프에 밀러 하면(자), 해석합니다. 마지막 예는, 단순한 밀러입니다. /dev/da2e 는 /dev/da4e 에 밀러 되어 ccd0 에 할당할 수 있습니다.

    # ccdconfig ccd0 64 none /dev/da2e /dev/da3e /dev/da4e /dev/da5e
    # ccdconfig ccd0 128 CCDF_MIRROR /dev/da2e /dev/da3e /dev/da4e /dev/da5e
    # ccdconfig ccd0 128 CCDF_MIRROR /dev/da2e /dev/da4e

신규 ccd 디스크를 작성할 때, 일반적으로는 다른 일로 앞서 disklabel (을)를 하고 싶을 것입니다. 최초의 label를 작성한 후는, 이것을 편집해, 추가 파티션을 추가 가능합니다. label 자신은, ccd 디스크의 최초의 16 섹터를 차지합니다. 파일 시스템을 newfs 로 작성할 뿐(만큼)이라면, newfs 가 label 영역을 날리기 때문에, 걱정할 것은 없습니다. 그러나, ccd 파티션으로부터 또는 ccd 파티션앞에 dd 할 생각이라면, 일반적으로는, 파티션을 작성해 label 데이터과 겹쳐지지 않게 하는 것이 좋은 생각입니다. 예를 들면, 10000 섹터의 ccd 디스크가 있는 경우, 오프셋(offset) 16 크기 9984 의 파티션 'd'를 작성하겠지요.

    # disklabel -r -w ccd0c auto
    # disklabel -e ccd0c

ccd 디스크에 대한 disklabel 처리는 1 번의 기회입니다. 다른 디바이스와 달리, disklabel 실행시에는, ccd 는 파티션 'c'를 지정하도록(듯이) 요구하고 있습니다. 머신을 리부트해 ccd 디스크를 재구성하는 경우, 이전 작성한 디스크 label가 남아 있기 (위해)때문에 재작성은 불필요합니다. ccd 파라미터의 변경에는 주의해 주세요. 인타리브, 플래그, ccd 디스크를 구성하는 디바이스 리스트를 바꾸면(자), 통상, ccd 디스크상에 있던 데이터를 부수어 버립니다. 이렇게 되어 버렸을 경우, ccd 디스크를 (재) 초기화하기 전에 label를 재초기화하는 것은, 통상 좋은 생각입니다.

회복
ccd 디스크상의 에러는, 미러링 옵션을 사용하고 있지 않는 한, 통상은 회복 불가능합니다. 그러나, 미러링에는 그것 자신의 위험성이 있습니다. 이것은, 모든 섹터의 양쪽 모두의 카피가 동일한 것을 가정하고 있는 것입니다. 이 가정은, 기입 에러가 발생하는지, 어느 쪽인가의 밀러를 교환할 때까지는, 성립됩니다. 이것은, 빈자의 미러링 실장인 것입니다. 디스크 에러-가 발생하기 시작하면(자), ccd 디스크의 백업을 취해, 망가진 하드웨어를 교환해, ccd 디스크를 재작성 가능한 한계는, 이 실장은 충분히 잘 일합니다. 더 이상을 바란다면, 외부 하드웨어 RAID SCSI 박스나, dpt 콘트롤러등의 RAID 콘트롤러나, vinum 등의 소프트웨어 RAID 시스템을 검토해야 합니다.

관련 파일
/etc/ccd.conf
    디폴트의 ccd 설정 파일

관련 항목
ccd(4), rc(8), vinum(8)

역사
ccdconfig 유틸리티는 NetBSD 1.0a (으)로부터 등장했습니다.