2

NTFS ハードディスクを FreeBSD 6.2 に読み取り/書き込みモードでマウントする方法を探しています。

Google で検索したところ、NTFS-3G が役立つことがわかりました。

NTFS-3G を使用すると、NTFS を手動でマウント/アンマウントしようとしても問題はありません。

マウント: ntfs-3g /dev/ad1s1 /home/admin/data -o uid=1002,

また

umount: umount /home/admin/data

しかし、起動時に ntfs ハードディスクを自動的にマウントしようとすると問題が発生します。

私が試してみました:

  • fstab を追加: /dev/ad1s1 /home/admin/data ntfs-3g uid=1002 0 0
  • /usr/local/etc/rc.d/ ディレクトリに、起動時に ntfs パーティションを自動的にマウントするスクリプトを作成します。

しかし、それはまだ失敗しています。このスクリプトは、手動で実行するとうまく機能します。

FreeBSD 6.2でNTFSに読み取り/書き込みアクセスするための代替方法/ソリューションを知っている人はいますか?

ありがとう。

4

2 に答える 2

1

スクリプトはどのレベルで実行されましたか? それはS99以下でしたか?

マウント時にロードされていない依存関係があるか、スクリプトを使用してマウントしようとしているユーザーが成功できないようです。

あなたのスクリプトでは、sudo を追加して、マウントがルートによって実行されていることを確認することをお勧めします。

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

バイナリがどこにあるかに応じて sbin を交換します。

于 2008-09-26T06:36:23.813 に答える
1

いくつかの方法の後、私は前に試しました。最後に、mount.c のマウント スクリプトを次のように変更して、ntfs-3g のサポートを追加しようとしました。

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);

}

マウント プログラムを再コンパイルすると、動作します。

ありがとう...

于 2008-09-29T07:29:04.900 に答える