exFAT
Verfasst: Do 31. Jan 2019, 17:28
moin.
wird aktuell exFAT unterstützt?
so denn.
wird aktuell exFAT unterstützt?
so denn.
Code: Alles auswählen
From 470f776c692056c6484d469b54e154181b485117 Mon Sep 17 00:00:00 2001
From: Markus Volk <f_l_k@t-online.de>
Date: Fri, 1 Feb 2019 15:04:29 +0100
Subject: [PATCH] hdd_menu.cpp: allow fuse filesystems; avoid hardcoded paths
Signed-off-by: Markus Volk <f_l_k@t-online.de>
---
src/gui/hdd_menu.cpp | 31 +++++++++++++++++++++++++------
1 file changed, 25 insertions(+), 6 deletions(-)
diff --git a/src/gui/hdd_menu.cpp b/src/gui/hdd_menu.cpp
index a99069a..42658b7 100644
--- a/src/gui/hdd_menu.cpp
+++ b/src/gui/hdd_menu.cpp
@@ -88,14 +88,31 @@ const CMenuOptionChooser::keyval HDD_SLEEP_OPTIONS[HDD_SLEEP_OPTION_COUNT] =
{ 242, LOCALE_HDD_60MIN }
};
+std::string fsckext4 = find_executable("fsck.ext4");
+std::string mkfsext4 = find_executable("mkfs.ext4");
+std::string fsckext3 = find_executable("fsck.ext3");
+std::string mkfsext3 = find_executable("mkfs.ext3");
+std::string fsckext2 = find_executable("fsck.ext2");
+std::string mkfsext2 = find_executable("mkfs.ext2");
+std::string fsckvfat = find_executable("fsck.vfat");
+std::string mkfsvfat = find_executable("mkfs.vfat");
+std::string exfatfsck = find_executable("exfatfsck");
+std::string mkfsexfat = find_executable("mkfs.exfat");
+std::string ntfsfix = find_executable("ntfsfix");
+std::string mkfsntfs = find_executable("mkfs.ntfs");
+std::string xfsrepair = find_executable("xfs_repair");
+std::string mkfsxfs = find_executable("mkfs.xfs");
+
devtool_s CHDDMenuHandler::devtools[] = {
- { "ext4", "/sbin/fsck.ext4", "-C 1 -f -y", "/sbin/mkfs.ext4", "-m 0", false, false },
- { "ext3", "/sbin/fsck.ext3", "-C 1 -f -y", "/sbin/mkfs.ext3", "-m 0", false, false },
- { "ext2", "/sbin/fsck.ext2", "-C 1 -f -y", "/sbin/mkfs.ext2", "-m 0", false, false },
- { "vfat", "/sbin/fsck.vfat", "-a", "/sbin/mkfs.vfat", "", false, false },
- { "exfat", "/sbin/fsck.exfat", "", "/sbin/mkfs.exfat", "", false, false },
- { "xfs", "/sbin/xfs_repair", "", "/sbin/mkfs.xfs", "-f", false, false },
+ { "ext4", fsckext4, "-C 1 -f -y", mkfsext4, "-m 0", false, false },
+ { "ext3", fsckext3, "-C 1 -f -y", mkfsext3, "-m 0", false, false },
+ { "ext2", fsckext2, "-C 1 -f -y", mkfsext2, "-m 0", false, false },
+ { "vfat", fsckvfat, "-a", mkfsvfat, "", false, false },
+ { "exfat", exfatfsck, "", mkfsexfat, "", false, false },
+ { "ntfs", ntfsfix, "-b -d", mkfsntfs, "-f", false, false },
+ { "xfs", xfsrepair, "", mkfsxfs, "-f", false, false },
};
+
#define FS_MAX (sizeof(CHDDMenuHandler::devtools)/sizeof(devtool_s))
static int my_filter(const struct dirent * dent)
@@ -274,11 +291,13 @@ void CHDDMenuHandler::check_kernel_fs()
void CHDDMenuHandler::check_dev_tools()
{
for (unsigned i = 0; i < FS_MAX; i++) {
+#if 0
if (kernel_fs_list.find(devtools[i].fmt) == kernel_fs_list.end()) {
printf("%s: filesystem '%s' not supported by kernel\n",
__func__, devtools[i].fmt.c_str());
continue;
}
+#endif
if (!access(devtools[i].fsck.c_str(), X_OK))
devtools[i].fsck_supported = true;
if (!access(devtools[i].mkfs.c_str(), X_OK))
--
2.1.4
Ciao,Ohne den lässt Neutrino solche "bösen" Dateisysteme gar nicht zu.
hehe, als ob da nicht sowieso mit nem halben Bein im Knast steht... lol.Neu ist halt, dass man auf der sicheren Seite ist,
Das ist ein anderes Thema. Aber die Dinge, die einen teuer zu stehen kommen könnten, sollte man schon kennen.Don de Deckelwech hat geschrieben: edit: ok, "Knast" war jetzt zuviel des Guten (in diesem Falle des "Bösen"), mir ging es um den möglichen Mischmasch der verschiedenen OS-Lizenzen, keine Ahnung, ob das überhaupt noch jemand in Gänze im Blick hat...