인프런 커뮤니티 질문&답변

꾸기님의 프로필 이미지
꾸기

작성한 질문수

디지털포렌식 입문자를 위한 디지털포렌식 전문가 2급 실기 시험대비 강의(Encase/Autopsy)

[공통]FAT32 & NTFS BR 분석

강사님 확인차 용량 계산 질문이 있습니다.

해결된 질문

작성

·

216

0

  • 강사님 강의를 본 후, 다른분 문제를 추가로 풀다가 제가 강사님께 배운 기준으로 했을 때 답과 출제자 분의 답이 조금 달라서 질문 드립니다

  • 출제자 분이 낸 문제는 파일시스템 별(문제에는 NTFS와 FAT32 두가지 존재) 전체 용량 및 가용 용량을 구하는 문제였습니다
    1) NTFS의 전체 용량은 강사님이 설명해주셨던 기준으로 제가 기억했을 땐 파티션 총 용량이 (Byte Per Sector * Sector Count) - 4096
    2) FAT32는 (Byte Per Sector * Sector Count) - (4096 * 1024)
    - 위 방식으로 계산해야 파티션 총 용량이 구해지는 것으로 기억하고 있습니다만 이게 파일 시스템의 총용량을 구하는 것과 파티션의 총 용량을 구하는 것이 다를까요?...
    출제자 분이 문제에서 총 용량은 파일 시스템 유형 구분 없이 (Byte Per Sector * Sector Count)로 답을 바로 작성해버려서 확실히 하기 위해 질문 드립니다!

  • 그리고 추가적으로 가용 용량 구하는 방식은 해당 파티션의 Cluster Size * Cluster Count가 맞을까요?

답변 4

0

nstyxn님의 프로필 이미지
nstyxn
지식공유자

지금까지 전혀 생각지도 못한채로 잘못 알고 있던 부분을 꾸기님 덕분에 알수 있었기에 감사합니다. 꾸기님이 말씀안해주셨다면 계속 잘못 안 채로 안내를 할 뻔했거든요. 정말 감사드리고, 또 죄송합니다 ㅜ_ㅜ

꾸기님의 프로필 이미지
꾸기
질문자

아닙니다 강사님!
좋은 강의로 편하게 공부할 수 있어서 오히려 감사드립니다.
시험전에 발견된 것 만으로도 다행이라 생각해서 괜찮습니다!
감사합니다

0

nstyxn님의 프로필 이미지
nstyxn
지식공유자

안녕하세요 꾸기님!

우선 알려주신 내용 확인을 했으며, 문제(차이가) 있는 점을 확인했습니다.

제가 알려드렸던 FAT32 와 NTFS 파일시스템의 용량을 구하는 방법은

1) FAT32 = (총 섹터수 X 섹터당용량) - (4096 X 1024)

2) NTFS = (총 섹터수 X 섹터당용량) - 클러스터의 크기(일반적으로 4096)

입니다.

어제 말씀해주신 문제의 경우 용량을 구하는 접근 방식이 약간 다를뿐 큰 차이는 없는데

예를 들어서 제가 말씀드린 방법은

총섹터수와 섹터당 용량을 곱해서 전체 용량을 확인한 다음, 그중에서 예약되어있는 영역등 실제로 사용자가 사용할수 없는 공간을 빼서 실제 가용용량을 구하는 방식이었는데,

말씀해주신 문제의 경우에는 저런방법이 아닌 클러스터의 갯수와 클러스터의 크기를 곱하는 방법으로

조금더 간단하게 계산을 할수 있는 방법이며, 이러한 계산방법은 위에서 말씀드린 사용불가능한 예약영역등이 이미 제외된 상태이기때문에 단순히 곱하는 방법만으로 확인을 할수가 있습니다.

 

말그대로 답을 구하기 위한 방법이 여러가지인 그런 상황이라서 보시기에는 조금 헷갈리실수가 있었을것 같습니다만, 용량을 구하는 방법에서 중요한 점이 섹터수인지, 아니면 클러스터의 수인지로 다르게 계산했다는 점정도로 이해해주시면 될것 같아요.

 

우선 처음 접근하시는 입장에서는 클러스터로 가지고 계산하시는 방법이 훨씬 편하실것 같습니다.

FAT32와 NTFS 모두 아래의 계산방법으로 하시는것을 추천드립니다.

클러스터의 수(Total cluster = Cluster Count) X 클러스터의 크기(섹터당 클러스터의 수 X 섹터당 용량)

 

이와 별도로 제가 강의에서 알려드린 용량 구하는 방법에 문제가 있는 점을 확인했습니다.

NTFS는 문제가 없는데, FAT32의 경우 공식이 잘못되었다는 점을 확인하고 어제부터 여러 방법으로 하나하나 테스트를 해봤는데, 경우에 따라서 틀린 답이 나오는 것을 확인했거든요.

아직까지는 기존식에서 정확히 어떤 부분이 잘못되었는지 추적하는 단계이지만(쉽지는 않을것 같긴합니다)

테스트 결과 FAT32 볼륨의 용량을 구간별로 나누어봤을때 1구간에서는 정확한 답이 나왔지만, 2구간, 3구간 등으로 용량이 커질수록 실제 용량과 공식에 의해 확인한 용량간의 차이가 2x 단위로 벌어지는것을 확인했습니다. 이러한 원인은 FAT32의 특성에 따른 용량별 예약영역이 일정한 비율로 커지면서 발생하는것으로 추정을 하고 있는데, 어쨌든 기존에 제가 알려드렸던 FAT32 의 용량 계산방법인

FAT32 용량 = (총 섹터수 X 섹터당 용량) - (4096 X 1024)

라는 식이 잘못된 식이라는 결론이 났기때문에 (특히 4096 x 1024라는 부분은 고정이 아닌 구간별 변동된다는 결론)

이부분에 대해서 정정을 하고, 공지를 올려서 다른분들에게도 안내를 드리고자 합니다.

 

여담입니다만, 제가 처음 배울 때 저렇게 배운 이후로 지금까지 FAT32의 용량을 구할때면 문제가 없어서 저 공식이 잘못됐다는 생각을 한 번도 해 본 일이 없었는데 개인적으로도 매우 당황스럽고,

또 잘못된 내용을 지금까지 안내를 해드려서 면목이 없네요.

 

얘기가 조금 길었는데, 새소식을 통해서 모든분들께 안내드리겠지만

파일시스템의 용량을 구하는 방법은, 기존에 제가 안내해드렸던 방법은 무시하시고

클러스터의 수(Total cluster = Cluster Count) X 클러스터의 크기(섹터당 클러스터의 수 X 섹터당 용량)

NTFS이든, FAT32이든 파일시스템과 관련없이 위의 방법으로 사용하시는 것으로 기존 강의 내용을 정정하고자 합니다.

 

참고로 총 용량, 가용용량 등 약간은 혼재되어 사용되는 부분들이 있다보니 정리는 한번 더 하자면,

총용량 - 해당 볼륨의 전체 용량 (총 섹터수 X 섹터당 용량)

가용용량 - 해당 볼륨에서 예약영역등 사용자가 사용하지 못한 부분을 제외한 나머지 전체 용량
클러스터의 수(Cluster count or Total Cluster) X 클러스터의 크기(섹터당 용량 X 클러스터당 섹터수)

※ 가용용량은 새롭게 포맷한 상태의 볼륨을 기준으로 예약영역만을 제외하고 사용할수 있는 총 용량입니다

볼륨에 특정한 파일을 저장하면서 줄어드는 여유공간과는 다른 개념인데

예를 들어 16GB의 USB가 있고, 단일 파티션으로 포맷을 한 다음에 윈도우즈 탐색기에서 확인한

저장가능공간은 16GB 미만인데, 예약영역등 우리가 사용할 수 없는 공간을 제외한 실제 사용한 총

용량이 가용용량의 개념으로 이해하시면 되며, 만약 그 가용용량이 15.7GB라고 가정을 했을때

아무것도 저장하지 않았지만 우리가 사용할수 있는 용량을 15.7GB이고, 이 USB에

1GB의 압축파일을 저장했다고 가정했을때, 가용용량은 그대로 15.7GB 이며, 이때 달라지는건 여유공간

으로 15.7GB - 1GB = 14.7GB 로 변경이 됩니다.

가용용량에 대해서 꼭 기억해주세요~

 

 

다시 한번 혼란을 드려서 진심으로 죄송합니다 !

 

 

꾸기님의 프로필 이미지
꾸기
질문자

시험전에 확인할 수 있어서 다행이었습니다 ㅎㅎㅎ
빠른 확인 감사드립니다!

0

nstyxn님의 프로필 이미지
nstyxn
지식공유자

안녕하세요 꾸기님!

정확한 답변을 드리기 위해서, 말씀하신 문제 공개가 가능하실까요?

풀어보신 문제가 만약 유료강의의 일부라면 안되겠지만, 공개된 내용이라면 해당 문제의 URL이나

이미지 파일을 말씀해주시면 제가 받아서 보고 설명드리는게 가장 정확할것 같습니다!

이메일주소 : nstyxn@gmail.com 으로 부탁 한번 드리겠습니다.

 

그리고 용량에 대한 문제들이 (비슷한 다른 경우도 있습니다) 가끔 문제가 명확하지 않아서 헷갈리는 경우들이 있습니다. 실제 시험에서도 용량을 확인하라는 문제가 나왔는데, 이게 볼륨에 대한 용량을 묻는건지 불분명하거나, 가용용량을 쓰라는 경우에도 가용 용량이라는 말 자체가 혼재되어 쓰는 경우가 있다보니

해당 디스크 또는 볼륨의 전체 용량중 현재 사용중인 부분을 제외한 나머지 저장가능한 용량을 묻는것인지, 아니면 사용자가 저장한 데이터를 제외하고 해당 볼륨의 실제 사용가능한 전체 용량을 묻는것인지(예를 들면 16GB USB가 실제로 우리가 사용할수 있는 저장공간은 16GB보다 적은것 처럼) 조금 애매한 면이 있거든요.

그래서 출제자의 의도에 따라서 약간 달라지는 경우도 있긴한데, 이 부분은 의도를 정확하게 파악하는것이 중요하긴 합니다.(어떻게보면 용어가 명확하게 하나의 목적으로 사용되지 않고 혼재되어있다보니 그게 가장 문제이긴 하죠)

꾸기님의 프로필 이미지
꾸기
질문자

강사님 메일 보냈습니다!
회신 부탁드리겠습니다 감사합니다!

0

안녕하세요, 인프런 AI 인턴입니다.

꾸기님께서 질문하신 내용은 파일 시스템 별 총 용량 및 가용 용량을 계산하는 방법에 관한 것으로 이해됩니다. 이에 대해 기존 질문과 답변을 검토한 결과, 유사한 주제에 대해 설명한 내용이 있어 이를 참고하시면 도움이 될 것 같습니다.

관련된 내용은 “총용량 , 가용용량 계산“에서 확인하실 수 있으며 여기에서 섹터당 용량 및 클러스터의 크기를 기반으로 볼륨의 총 용량과 가용 용량을 계산하는 방법에 대해 설명하고 있습니다.

질문하신 내용에 대한 요약은 다음과 같습니다:

  • 볼륨의 총 용량 계산 방법은 파일 시스템에 따라 다소 차이가 있습니다:

    • FAT32: (총 섹터수 * 섹터당 용량) - (4096*1024).
    • NTFS: (총 섹터수 * 섹터당 용량) - (클러스터의 크기).
  • 볼륨의 가용 용량은 전체 용량에서 사용 중인 부분을 제외한 현재 사용 가능한 용량을 의미합니다. 이는 보통 파일 시스템 도구를 통해 확인할 수 있습니다. 가용 용량을 구하는 구체적인 방식은 툴에 따라 상이할 수 있으나, 일반적으로는 Free Cluster Count * 클러스터의 크기로 계산할 수 있습니다.

이와 관련된 좀 더 섬세한 부분, 특히 파일 시스템의 전체 용량과 파티션의 총 용량 구분에 대해서는 해당 파일 시스템의 세부적인 구조를 이해하시는 것이 중요합니다. 파티션의 총 용량을 계산할 때는 주로 해당 파티션(볼륨)에 할당된 섹터의 수와 섹터당 용량을 기반으로 계산하게 됩니다. 파일 시스템의 구조, 할당된 클러스터의 수, 클러스터당 섹터의 수 등 다양한 요소가 이 계산에 영향을 줄 수 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

꾸기님의 프로필 이미지
꾸기

작성한 질문수

질문하기