diff options
| author | Ansuel Smith | 2018-09-28 23:01:02 +0000 |
|---|---|---|
| committer | John Crispin | 2018-10-11 06:46:10 +0000 |
| commit | 29e53af0b91954ca6a13bdd1f0e67c939ccb8e6d (patch) | |
| tree | 8cacef8bae72eb3f4f618875fdd1a7c5baee50b5 | |
| parent | dd02dad332958575cc52e60c78ef10ef2b5aaced (diff) | |
| download | fstools-29e53af0b91954ca6a13bdd1f0e67c939ccb8e6d.tar.gz | |
fstools: add ntfs support
This adds ntfs support to block-mount
Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
| -rw-r--r-- | block.c | 9 |
1 files changed, 8 insertions, 1 deletions
@@ -711,6 +711,7 @@ static void check_filesystem(struct probe_info *pr) const char *f2fsck = "/usr/sbin/fsck.f2fs"; const char *dosfsck = "/usr/sbin/dosfsck"; const char *btrfsck = "/usr/bin/btrfsck"; + const char *ntfsck = "/usr/bin/ntfsfix"; const char *ckfs; /* UBIFS does not need stuff like fsck */ @@ -725,6 +726,8 @@ static void check_filesystem(struct probe_info *pr) ckfs = e2fsck; } else if (!strncmp(pr->type, "btrfs", 5)) { ckfs = btrfsck; + } else if (!strncmp(pr->type, "ntfs", 4)) { + ckfs = ntfsck; } else { ULOG_ERR("check_filesystem: %s is not supported\n", pr->type); return; @@ -743,6 +746,9 @@ static void check_filesystem(struct probe_info *pr) } else if(!strncmp(pr->type, "btrfs", 5)) { execl(ckfs, ckfs, "--repair", pr->dev, NULL); exit(-1); + } else if(!strncmp(pr->type, "ntfs", 4)) { + execl(ckfs, ckfs, "-b", pr->dev, NULL); + exit(-1); } else { execl(ckfs, ckfs, "-p", pr->dev, NULL); exit(-1); @@ -1437,8 +1443,9 @@ static int mount_extroot(char *cfg) if (strncmp(pr->type, "ext", 3) && strncmp(pr->type, "f2fs", 4) && strncmp(pr->type, "btrfs", 5) && + strncmp(pr->type, "ntfs", 4) && strncmp(pr->type, "ubifs", 5)) { - ULOG_ERR("extroot: unsupported filesystem %s, try ext4, f2fs, btrfs or ubifs\n", pr->type); + ULOG_ERR("extroot: unsupported filesystem %s, try ext4, f2fs, btrfs, ntfs or ubifs\n", pr->type); return -1; } |