Автоматическое монтирование раздела NTFS во FreeBSD во время загрузки

Я ищу способ смонтировать жесткий диск NTFS на FreeBSD 6.2 в режиме чтения/записи.

Поискав в Google, я обнаружил, что NTFS-3G может помочь.

Используя NTFS-3G, нет проблем, когда я пытаюсь смонтировать/размонтировать NTFS вручную:

монтирование: ntfs-3g /dev/ad1s1 /home/admin/data -o uid=1002,

or

размонтировать: размонтировать /домашний/админ/данные

Но у меня проблема, когда я пытаюсь автоматически смонтировать жесткий диск ntfs во время загрузки.

Я пытался:

  • добавление fstab: /dev/ad1s1 /home/admin/data ntfs-3g uid=1002 0 0
  • создайте скрипт, который автоматически монтирует раздел ntfs при запуске в каталоге /usr/local/etc/rc.d/.

Но это все еще не удалось. Скрипт хорошо работает, когда выполняется вручную.

Кто-нибудь знает альтернативный метод/решение для доступа на чтение/запись NTFS на FreeBSD 6.2?

Спасибо.


person Community    schedule 26.09.2008    source источник
comment
Это не связано с программированием, но я уберу свой отрицательный голос, если вы, по крайней мере, больше ориентируетесь на написание сценариев, а не на монтирование диска.   -  person Gilligan    schedule 26.09.2008
comment
Похоже, он хочет смонтировать мне диск программно.   -  person Ed S.    schedule 26.09.2008
comment
Да и в заголовке это не очень понятно.   -  person Gilligan    schedule 26.09.2008


Ответы (2)


На каком уровне работал ваш скрипт? Это был S99 или ниже?

Похоже, либо есть зависимость, которая не загружается во время монтирования, либо пользователь, который пытается монтировать с помощью скрипта, не может добиться успеха.

В ваш скрипт я предлагаю добавить sudo, чтобы убедиться, что монтирование выполняется от root:

/sbin/sudo /sbin/mount ntfs-3g /dev/ad1s1 /home/admin/data -o uid=1002, etc

Поменяйте местами sbin, где бы ни находились двоичные файлы.

person Paul Hargreaves    schedule 26.09.2008

После некоторых способов, которые я пробовал раньше. Последнее, я попытался добавить поддержку ntfs-3g, изменив скрипт монтирования на mount.c Вот так:

use_mountprog (const char *vfstype)

{

    /* XXX: We need to get away from implementing external mount
     *      programs for every filesystem, and move towards having
     *      each filesystem properly implement the nmount() system call.
     */

    unsigned int i;
    const char *fs[] = {
    "cd9660", "mfs", "msdosfs", "nfs", "nfs4", "ntfs",
    "nwfs", "nullfs", "portalfs", "smbfs", "udf", "unionfs",
    "ntfs-3g"
    NULL
    };

    for (i = 0; fs[i] != NULL; ++i) {
            if (strcmp(vfstype, fs[i]) == 0)
                    return (1);
    }

    return (0);

}

Перекомпилируйте программу монтирования, и она работает!

Спасибо...

person Community    schedule 29.09.2008