FAT 파일 시스템 및 Linux

FAT filesystem and Linux

Linux 에는, FAT(파일 할당 테이블) 파일 시스템 형식용의 몇개의 파일 시스템 드라이버가 있습니다.이들은 일반적으로 에서 사용되는 이름으로 알려져 있습니다.mount명령어 msdos, vfat [1][2]umsdos를 사용하여 커널의 특정 드라이버를 호출합니다.

이력 및 지원

RedHat, SuSE 및 Debian을 포함한 대부분의 주요 Linux 배포판에서는 FAT 디스크 볼륨에 Linux를 설치할 수 있도록 umsdos를 사용하지 않습니다.다만,[3] 몇개의 분포가 있습니다.여기에는 다음과 같은 배포판이 포함됩니다.C:\PHATDOS에서 ZIP 파일의 압축을 풀고 명령어를 실행하여 부팅합니다.COM 스크립트 이름LINUX.BAT[citation needed] ZipSlack 입니다.[4]

UMSDOS 프로젝트는 Jacques Gelinas에 의해 1992년에 시작되어 1994년 1월에 패치로서 인터넷에 제공되었습니다.커널 1.1.36부터 표준 배포판에 [citation needed]포함되었습니다. UMSDOS는 [5]유지보수가 부족하여 Linux 2.6.11 커널에서 제거되었습니다.UVFAT는 UMSDOS의 확장 기능으로 Windows 데이터 구조를 긴 파일 이름으로 사용하기 위해 출시 [6]전에 단종되었습니다.2.4.x [citation needed]커널로 동작합니다.

UMSDOS를 사용한 이전 Linux 디스트리뷰션은 MuLinux,[7] MonkeyLinux[8] [9]및 Winlinux 2000입니다.

기능 비교

Linux 파일 시스템 드라이버는 모두 FAT12, FAT16FAT32의 세 가지 FAT 유형을 지원합니다.다른 점은 원래 FAT 파일 시스템 형식의 8.3 파일 이름 구조를 넘어 긴 파일 이름을 지원하는 것과 파일 권한 [1]등의 FAT 파일 시스템 형식에는 표준으로 존재하지 않는 Unix 파일 의미론을 제공하는 것입니다.파일 시스템 드라이버는 서로 배타적입니다.한 번에 하나의 디스크 볼륨만 마운트할 수 있습니다.따라서 이들 중 선택할 수 있는 것은 지원되는 파일 이름과 Unix 의미론 및 디스크 [10]볼륨의 사용 방법에 따라 결정됩니다.

메시지

msdos 파일 시스템 드라이버는 추가 UNIX 파일 의미론 및 긴 파일 이름 지원을 제공하지 않습니다.이 드라이버를 사용하여 FAT 디스크 파일 시스템을 마운트하면 8.3 파일 이름만 표시되며 긴 파일 이름은 액세스할 수 없으며 디스크 볼륨 상의 긴 파일 이름 데이터 구조도 유지되지 않습니다.vfat 파일 시스템 드라이버는 Microsoft 윈도우즈가 FAT 형식 볼륨에서 VFAT 긴 파일 이름을 지원하는 것과 동일한 디스크 데이터 구조를 사용하여 긴 파일 이름을 지원하지만 추가 Unix 파일 의미론을 지원하지 않습니다.umsdos 파일 시스템 드라이버는 긴 파일 이름 지원과 추가 Unix 파일 의미론을 제공합니다.그러나 리눅스 [1][2][10][11]이외의 운영 체제에서는 파일 시스템 드라이버에 의해 인식되지 않는 온디스크 데이터 구조를 사용합니다.

옴스도스

이 세 가지 중 umsdos의 주요 장점은 완전한 Unix 파일 시멘틱스를 제공한다는 것입니다.따라서 Linux를 설치하고 FAT 디스크 볼륨에서 실행하는 것이 바람직한 상황에서 사용할 수 있습니다. FAT 디스크 볼륨에서는 이러한 시멘틱스를 사용할 수 있습니다.그러나 이러한 디스크 볼륨에 설치되어 이러한 디스크 볼륨에서 실행되는 Linux는 예를 들어 ext2 파일 시스템 [1][12]형식으로 포맷된 디스크 볼륨에 설치되어 실행되는 Linux보다 속도가 느립니다.게다가 Windows 를 실행하고 있는 상태에서 Linux 를 실행하고 있을 때마다 정기적으로 유틸리티 프로그램을 실행하지 않는 한, Windows 가 디스크상의 파일이나 디렉토리를 변경하면,[4] Linux 로 액세스 할 수 없는 파일에 관한 에러 메세지가 표시됩니다.

비지방

vfat은 완전한 Unix 파일 의미론이 부족하고 FAT 디스크 볼륨에 Linux를 설치하여 FAT 디스크 볼륨에서 실행할 수 있는 기능은 없지만 Linux와 Windows와 같은 다른 운영 체제 간에 FAT 디스크 볼륨의 데이터를 단순히 공유할 때 앞서 언급한 umsdos의 단점은 없습니다.이 데이터 구조는 윈도우즈에서 VFAT 긴 파일 이름에 사용하는 것과 동일하며 윈도우즈 및 Linux 데이터 구조의 분리를 방지하기 위해 동기화 유틸리티를 실행할 필요가 없습니다.따라서 [1][10][4]대부분의 경우 Linux의 FAT 파일 시스템 드라이버 중 가장 적합합니다.

FS 드라이버 긴 파일 이름 UNIX 파일 의미론 댓글
메시지 아니요. 아니요. 8.3 파일 이름만
비지방 네. 아니요. 윈도우즈에서 사용하는 것과 동일한 데이터 구조 사용
옴스도스 네. 네. Linux 호스트 가능.OS 전환 시 유지보수가 필요할 수 있음

공통점

앞에서 설명한 바와 같이 모든 Linux 파일 시스템 드라이버는 12비트, 16비트 및 32비트의 3가지 파일 할당 테이블 크기를 모두 지원합니다.이들 모두가 지원하는 기타 공통 기능으로는 다양한 Linux 마운트 옵션(로 지정)이 있습니다.-o옵션mount명령어):[10][3]

uid그리고.gid
이 두 가지 옵션은 파일 시스템 드라이버에 대해 볼륨 내의 모든 파일에 대해 (umsdos의 경우 기본) 소유자 사용자 ID 및 그룹 ID를 단일 지정된 값으로 설정하도록 지시합니다.두 ID는 모두 수치로 지정됩니다( 참조)./etc/passwd예를 들어 모든 파일 및 디렉토리가 소유자 ID 745 및 그룹 ID 15를 가지도록 vfat 파일 시스템 드라이버에 지정하려면mount명령어는 다음과 같이 호출됩니다.mount -t vfat -o uid=745,gid=15.[10][3]리눅스 파일 시스템 드라이버 현재 통합하 FAT12/FAT16/FAT32 볼륨에file/directory는 암호와 FAT12/FAT16 볼륨에 DR-DOS, PalmDOS, 소설 등read/write/delete/execute 권리로 디지털 연구 가족의 다양한 운영 체제에서 구현된 경우에 다중 사용자의world/group/owner 액세스 권한을 지원하지 않는다.나는 도스,OpenDOS, FlexOS, 동시 DOS, 멀티 사용자 DOS, 시스템 매니저 및 REAL/32.
umask
이 옵션은 볼륨의 모든 파일에 글로벌하게 적용되도록 umask를 설정합니다.예를 들어 vfat 파일 시스템 드라이버에 대해 "그룹" 또는 "기타" 액세스를 허용하지 않도록 지정하려면mount명령어는 다음과 같이 호출됩니다.mount -t vfat -o umask=077를 클릭합니다.[10][3]
conv
옵션은 파일 내용 변환 의미를 지정합니다.파일 시스템 드라이버는 파일 읽기 및 쓰기에 따라 LF 종료와 CRLF 종료 간에 파일의 새 줄 규칙을 즉시 변환할 수 있습니다.기본적으로는 이 변환은 완전히 비활성화되어 있습니다.파일 시스템 드라이버는 파일 이름 확장자 부분에 따라 변환하는 파일 또는 모든 파일에 대해 글로벌하게 변환하는 파일을 자동 검출하여 일부 파일에 대해 변환을 수행할 수 있습니다.이들 3가지 변환레벨은 다음과 같이 지정됩니다.conv=b("인쇄"의 경우),conv=a('자동 검출'의 경우) 및conv=t('텍스트'의 경우), 각각.후자의 두 가지 옵션은 텍스트가 아닌 파일 데이터가 손상될 수 있는 고유한 위험을 수반합니다.디폴트로는 [10][3]전혀 변환되지 않습니다.

옴스도스

data 구조

umsdos FAT 파일시스템 드라이버는 Unix 파일시멘틱스에 관한 모든 추가 정보를 다른 FAT 파일시스템 드라이버에 저장합니다.이것은, 이름 붙여진 각 디렉토리와 서브 디렉토리의 통상적인 파일인 것처럼 보입니다.--LINUX-.---를 클릭합니다.[1][10][4][3][13]

이 파일이 특정 디렉토리에 존재하지 않는 경우, 따라서 기본적으로는 umsdos 파일 시스템 드라이버는 디렉토리에 대해 msdos 파일 시스템 드라이버와 동일한 의미론을 제공합니다. 8.3 파일 이름만 제공하고 추가 UNIX 파일 의미론은 없습니다.umsdos 드라이버의 추가 기능을 유효하게 하려면 , 그 파일을 디렉토리에 작성해, 그 내부 데이터를 디렉토리에 있는 기존의 엔트리의 통상의 FAT 데이터와 동기 할 필요가 있습니다.이 작업은 다음과 같은 도구를 사용하여 수행됩니다.umssync를 클릭합니다.[1][10][4]

유틸리티 프로그램은 디스크볼륨의 모든 디렉토리에 걸쳐 실행됩니다.이 유틸리티 프로그램은, Windows 의 실행에서 Linux 의 실행으로 전환될 때마다, Windows 의 파일이나 디렉토리의 변경을, 그 변경 내용을, 디스크볼륨내의 프라이빗 데이터 구조에 짜넣기 위해서 실행됩니다.--LINUX-.---파일. 디폴트로는umssync툴 작성--LINUX-.---디렉토리의 파일이 존재하지 않는 경우, 디스크 볼륨의 모든 디렉토리에 파일이 생성됩니다.Windows 와 Linux 를 전환할 때는, 이 동작이 바람직하다고는 생각되지 않습니다.따라서 호출 시 정상 작동 모드umssyncWindows에서 Linux로 전환한 후(일반적으로 스타트업 스크립트에서 Linux 부팅 시 툴을 실행하여 실행)는 다음 명령을 사용합니다.-c명령어에 대한 옵션.이 옵션을 사용하면 새로운 명령어의 작성이 방지됩니다.--LINUX-.---파일을 [1][10][4]아직 소유하지 않은 디렉토리의 파일.

FAT에 Linux 설치

앞서 설명한 바와 같이 umsdos에서는 FAT 포맷 디스크 볼륨에 Linux를 설치한 후 부트스트랩하여 실행할 수 있습니다.이 방법의 장점은 하드 디스크를 다시 분할할 필요 없이 DOS가 이미 설치된 시스템에서 리눅스를 사용할 수 있다는 것입니다.이러한 시나리오에서는 Linux는 볼륨 부트 레코드에서 직접 부트스트랩되지 않습니다.대신 DOS를 먼저 부트스트랩하고 loadlin 또는 linld를 사용하여 [4]DOS에서 Linux를 부트스트랩합니다.

이러한 설치에서는 Linux 루트 디렉토리가 DOS 부트볼륨 루트 디렉토리의 서브디렉토리가 되는 것이 관례는 다음과 같습니다.C:\LINUX다양한 Linux 최상위 디렉토리는 DOS에 대해 다음과 같은 디렉토리입니다.C:\LINUX\ETC(용)/etc),C:\LINUX\BIN(용)/bin),C:\LINUX\LIB(용)/lib) 등입니다.umsdos 파일 시스템 드라이버는 자동으로 다음 파일을 추가합니다.C:\LINUX\모든 경로명으로 이동합니다.Linux 루트 디렉토리의 위치는 처음에 umsdos 파일 시스템 드라이버에 옵션 경유로 제공됩니다.loadlin명령어를 입력합니다.예를 들어,loadlin다음과 같은 명령줄을 사용하여 호출됩니다.loadlin c:\linux\boot\vmlinuz rw root=c:\linux를 클릭합니다.[4][13]

우선, 이러한 디렉토리에 Linux 를 인스톨 하려면 , 아카이브의 파일을 그 디렉토리와 그 서브 디렉토리에 언팩 하는 것만으로 끝납니다.이러한 설치에서는 일반적으로 Linux용 스왑 파티션이 아닌 스왑 파일을 사용해야 하지만 이는 하드 디스크를 다시 분할하지 않고 [4]umsdos 파일 시스템 드라이버와 관련이 없습니다.

커널 지원 없이 FAT 포맷된 볼륨에 액세스

커널 내의 파일 시스템 드라이버는 FAT 포맷된 볼륨의 파일 및 디렉토리에 정상적으로 액세스할 수 있지만, 커널 드라이버 지원 없이도 mtools 유틸리티 스위트를 구성하는 유틸리티 프로그램을 사용하여 액세스할 수도 있습니다.vFAT 파일 시스템 드라이버와 마찬가지로 mountlo는 Microsoft 윈도우즈에서 [3][14][15]사용하는 것과 동일한 디스크 데이터 구조를 사용하여 긴 파일 이름을 지원합니다.

또는 FatFuse, FuseFat 또는 mountlo [16]중 하나의 FUSE 파일 시스템 드라이버를 사용할 수 있습니다.

POSIX 오버레이 파일 시스템

UMSDOS와 동등한 최신 제품은 POSIX Overlay Filesystem(POSIX Overlay Filesystem, POSIXovl)입니다.FUSE로 [17]동작합니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ a b c d e f g h Stanfield, Vicki; Smith, Roderick W. (2002). Linux system administration. Craig Hunt Linux library (2nd ed.). John Wiley and Sons. p. 166. ISBN 978-0-7821-4138-2.
  2. ^ a b Ward, Brian (2004). How Linux works: what every superuser should know. No Starch Press Series. No Starch Press. p. 41. ISBN 978-1-59327-035-3.
  3. ^ a b c d e f g Smith, Roderick W. (2000). The multi-boot configuration handbook. Handbook Series. Que Publishing. pp. 256, 341–342. ISBN 978-0-7897-2283-6.
  4. ^ a b c d e f g h i McCune, Mike (2001). Integrating Linux and Windows. Open source technology series. Prentice Hall PTR. pp. 7–9. ISBN 978-0-13-030670-8.
  5. ^ "Summary of changes from v2.6.10 to v2.6.11". www.kernel.org. Retrieved 2017-11-15.
  6. ^ "UMSDOS filesystem: UVFAT support". linux.voyager.hr. Retrieved 2015-07-16.
  7. ^ MuLinux 프로젝트
  8. ^ Monkey Linux 설명
  9. ^ Linux/Windows 콤보:이러한 리소스를 사용하여 작업을 수행합니다.
  10. ^ a b c d e f g h i j Roderick W. Smith (2005). Linux in a Windows world. O'Reilly Media, Inc. p. 449. ISBN 0-596-00758-2.
  11. ^ Negus, Christopher (2007). Linux bible: boot up to Ubuntu, Fedora, KNOPPIX, Debian, SUSE, and 11 other distributions. Bible Series. John Wiley and Sons. pp. 159. ISBN 978-0-470-08279-9.
  12. ^ Strobel, Stefan; Elling, Volker (1997). Linux, unleashing the workstation in your PC. The Complete Linux Kit, Rainer Maurer (3rd ed.). Springer. p. 43. ISBN 978-0-387-94880-5.
  13. ^ a b Danesh, Arman (2002). Making Linux work: essential tips & techniques. 1001 Tips Series. Cengage Learning. pp. 19. ISBN 978-1-884133-78-7.
  14. ^ Rajagopal, Raj (2000). Multi-operating system networking: living with Unix, Netware, and NT. Auerbach Best Practices Series. CRC Press. pp. 25–21. ISBN 978-0-8493-9831-5.
  15. ^ Welsh, Matt (2003). Running Linux. Essential Guide to Linux (4th ed.). O'Reilly Media, Inc. p. 405. ISBN 978-0-596-00272-5.
  16. ^ "FUSE: NonNativeFileSystems". Archived from the original on 2015-09-15.
  17. ^ "POSIX Overlay Filesystem".

추가 정보