파일 시스템 관련해서 일을 하고 있습니다.
저희가 만든 파일시스템의 슈퍼 블럭에서
배드 블럭이 발생했을때 백업된 슈퍼 블럭을 찾기위해서
block size 를 알고 싶은데 block size 를 알 수 있는
방법이 있나요?
$ man 2 statfs
<어떠한 역경에도 굴하지 않는 '하양 지훈'>
#include <com.h> <C2H5OH.h> <woman.h> do { if (com) hacking(); if (money) drinking(); if (women) loving(); } while (1);
다만 여기에서 알려주는건 optimal blocksize 이네요. 2048bytes 로 포맷하고 돌려봐도 4096bytes 로 나오네요 page 크기와 같은 값이 최적의 block size 이 기때문에 4096bytes 를 return 하는 것 같습니다. 좋은 답변 감사드립니다.
Dig it.
statfs() 시스템 콜은 단지 파일 시스템의 super_operations 에 등록된 statfs() 함수를 호출해서 결과값을 돌려줄 뿐입니다. 실제 파일 시스템의 statfs() 구현쪽을 살펴보시기 바랍니다.
blockdev --getbsz /dev/foo
위의 명령어는 file system의 block size가 아닌 원래 block device의 block size를 얻습니다. 원하시는게 이것인지 모르겠군요. ^^
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
[code:1]$ man 2 statfs[/code:1] <
$ man 2 statfs
<어떠한 역경에도 굴하지 않는 '하양 지훈'>
#include <com.h> <C2H5OH.h> <woman.h>
do { if (com) hacking(); if (money) drinking(); if (women) loving(); } while (1);
답변 주셔서 감사합니다.
다만 여기에서 알려주는건 optimal blocksize 이네요. 2048bytes 로 포맷하고 돌려봐도 4096bytes 로 나오네요 page 크기와 같은 값이 최적의 block size 이 기때문에 4096bytes 를 return 하는 것 같습니다. 좋은 답변 감사드립니다.
Dig it.
statfs
statfs() 시스템 콜은 단지 파일 시스템의 super_operations 에 등록된 statfs() 함수를 호출해서 결과값을 돌려줄 뿐입니다.
실제 파일 시스템의 statfs() 구현쪽을 살펴보시기 바랍니다.
[code:1]blockdev --getbsz /dev/foo[/code
blockdev --getbsz /dev/foo
위의 명령어는 file system의 block size가 아닌
원래 block device의 block size를 얻습니다.
원하시는게 이것인지 모르겠군요. ^^
댓글 달기