GParted처럼 사용자가 원하는 파일 시스템으로 디스크를 포맷할 수 있는 방법이 필요합니다. 우리는 NTFS, EXT4, XFS, JFS를 사용하는 장치를 보유하고 있기 때문에 주로 이러한 장치에 관심이 있습니다.
지원 콘텐츠 목록만 있으면 됩니다.
GParted는 다음과 같은 사용 가능한 콘텐츠 목록을 제공합니다.
그러나 유사한 목록을 얻는 방법을 알 수 없습니다.
이 명령은 cat /proc/filesystems
다음과 같은 출력을 제공합니다.
nodev sysfs
nodev rootfs
nodev ramfs
nodev bdev
nodev proc
nodev cgroup
nodev cpuset
nodev tmpfs
nodev devtmpfs
nodev debugfs
nodev securityfs
nodev sockfs
nodev pipefs
nodev anon_inodefs
nodev configfs
nodev devpts
nodev hugetlbfs
nodev autofs
nodev pstore
nodev mqueue
nodev selinuxfs
xfs
nodev rpc_pipefs
nodev nfsd
nodev binfmt_misc
fuseblk
nodev fuse
nodev fusectl
btrfs
jfs
ext3
ext2
ext4
그러나 이 목록에서는 NTFS가 지원된다는 사실을 명확하게 알 수 없습니다. 다른 이름의 모듈에 포함되어 있습니까? 또한 명령이 전체 목록을 제공하지 않는다는 것도 배웠습니다.
ls -l /lib/modules/$(uname -r)/kernel/fs
그런 다음 다음 출력을 제공하는 명령을 시도했습니다.
total 52
drwxr-xr-x. 2 root root 18 Mar 7 2017 9p
-rw-r--r--. 1 root root 21853 Mar 2 2017 binfmt_misc.ko
drwxr-xr-x. 2 root root 21 Mar 7 2017 btrfs
drwxr-xr-x. 2 root root 26 Mar 7 2017 cachefiles
drwxr-xr-x. 2 root root 20 Mar 7 2017 ceph
drwxr-xr-x. 2 root root 20 Mar 7 2017 cifs
drwxr-xr-x. 2 root root 22 Mar 7 2017 cramfs
drwxr-xr-x. 2 root root 19 Mar 7 2017 dlm
drwxr-xr-x. 2 root root 24 Mar 7 2017 ecryptfs
drwxr-xr-x. 2 root root 22 Mar 7 2017 exofs
drwxr-xr-x. 2 root root 20 Mar 7 2017 ext4
drwxr-xr-x. 2 root root 48 Mar 7 2017 fat
drwxr-xr-x. 2 root root 23 Mar 7 2017 fscache
drwxr-xr-x. 2 root root 34 Mar 7 2017 fuse
drwxr-xr-x. 2 root root 20 Mar 7 2017 gfs2
drwxr-xr-x. 2 root root 21 Mar 7 2017 isofs
drwxr-xr-x. 2 root root 20 Mar 7 2017 jbd2
drwxr-xr-x. 2 root root 19 Mar 7 2017 jfs
drwxr-xr-x. 2 root root 21 Mar 7 2017 lockd
-rw-r--r--. 1 root root 19629 Mar 2 2017 mbcache.ko
drwxr-xr-x. 6 root root 4096 Mar 7 2017 nfs
drwxr-xr-x. 2 root root 38 Mar 7 2017 nfs_common
drwxr-xr-x. 2 root root 20 Mar 7 2017 nfsd
drwxr-xr-x. 2 root root 4096 Mar 7 2017 nls
drwxr-xr-x. 2 root root 23 Mar 7 2017 overlayfs
drwxr-xr-x. 2 root root 23 Mar 7 2017 pstore
drwxr-xr-x. 2 root root 24 Mar 7 2017 reiserfs
drwxr-xr-x. 2 root root 24 Mar 7 2017 squashfs
drwxr-xr-x. 2 root root 19 Mar 7 2017 udf
drwxr-xr-x. 2 root root 19 Mar 7 2017 xfs
다시 말하지만, 시스템이 NTFS를 지원한다는 것이 나에게는 분명하지 않습니다.
현재 CentOS를 사용하고 있지만(NTFS는 기본적으로 지원되지 않지만 설치 ntfs-3g
및 추가를 통해 ntfsprogs
) 지원되는 파일 시스템 목록을 생성하려면 크로스 플랫폼 솔루션이 필요합니다. 주로 CentOS, Ubuntu 및 Raspbian에 적용 가능합니다.
답변1
첫째, GParted가 기본 시스템에서 파일 시스템 목록을 검색한다고 가정하지 않습니다. 이는 단지 공통 파일 시스템의 하드코딩된 목록일 수도 있습니다.
즉, ntfs 지원을 감지하는 가장 간단하고 (아마도!) 크로스 플랫폼 방법은 mount.ntfs 바이너리를 찾는 것입니다. RedHat(및 CentOS)용 ntfs-3g 패키지는 이를 /usr/sbin에 넣습니다.
그러나 이는 모든 파일 시스템 유형에 적용되지 않습니다. 예를 들어 mount.ext4가 없습니다.
/usr/sbin/mkfs.* 를 찾아볼 수도 있습니다. 이는 더 완전할 수 있습니다(그리고 파티션을 포맷하는 데 사용한 것이기 때문에 더 흥미로울 수도 있습니다).
그러나 이러한 파일의 위치는 배포판에 따라 다를 수 있으며 일부는 /sbin에 넣을 수도 있고 /usr/local/sbin에서도 찾을 수도 있습니다. 특히 NTFS 지원이 소스에서 컴파일된 경우 더욱 그렇습니다. 해당 /bin 디렉토리에서도 찾을 수 있습니다.