FreeBSD + NTFS
Драйвер NTFS в ядре FreeBSD может монтировать разделы, только в режиме чтения, но в портах есть поддержка ntfs через fusefs, которая и позволяет монтировать разделы в режиме записи.
Устанавливаем:
cd /usr/ports/sysutils/fusefs-ntfs make install clean |
Установке предшествует конфигурационный диалог:
1. Lock the device when mounting (avoids access) — блокирует доступ к устройству, пока производится монтирование
2. Enable user space cache for improved speed — позволяет использовать кеш для увеличения скорости доступа
Ставим галочки на обоих пунктах.
После того как сборка и инсталяция окончена, необходимо разрешить запуск fuse, добавим в /etc/rc.conf, такую строку:
fusefs_enable="YES" |
Запустим FUSE (на самом деле осуществялется загрузка модуля ядра):
/usr/local/etc/rc.d/fusefs start |
Теперь можно попытаться примонтировать раздел. Для начала с помощью sysinstall выясним какой же раздел у нас ntfs. В моем случае это ad10s1. Монтируем его:
mount_ntfs-3g /dev/ad10s1 /mnt |
Проверяем, запустив команду mount:
mount /dev/ad4s1a on / (ufs, local) devfs on /dev (devfs, local) /dev/ad4s1e on /usr (ufs, local, soft-updates) /dev/ad4s1d on /var (ufs, local, soft-updates) devfs on /var/named/dev (devfs, local) /dev/fuse0 on /mnt (fusefs, local, synchronous) |
Последняя строка и есть наш примонтированный раздел.
Для того, что бы упростить монтирование, можно прописать строку для монтирования в fstab, к сожелению, сделать автоматическим монтирование нельзя, модуль fuse.ko загружается уже после автомонтирования из /etc/fstab, поэтому раздел придется пометить noauto.
Для FreeBSD 6.X в файл /etc/fstab надо внести такую строку:
/dev/ad10s1 /mnt ntfs-3g rw,noauto 0 0 |
Для FreeBSD 7.0 все становится несколько сложнее, поскольку список поддерживаемы файловых систем вкомпилен в код mount. Можно изменить исходник mount, а можно просто подменить mount_ntfs на mount_ntfs-3g.
Так и сделаем:
#Переименуем mount_ntfs в mount_ntfs-kern mv /sbin/mount_ntfs /sbin/mount_ntfs-kern #Ставим симлинк ln -s /usr/sbin/mount_ntfs-3g /usr/sbin/mount_ntfs |
Теперь, поправим /etc/fstab:
/dev/ad10s1 /mnt ntfs rw,noauto 0 0 |
После этих настроек монтировать раздел можно так:
mount /mnt |
На этом настройка закончена.
By Александр, 13.02.2009 @ 18:22
В примере допиши, что перед тем как выполнить mount_ntfs-3g /dev/ad10s1 /mnt, нужно модуль подгрузить fuse
By hilik, 14.02.2009 @ 23:44
Спасибо Александр, исправил.
By mak_v_, 07.04.2009 @ 00:21
Огромное спасибо, статья оч.помогла
By Lera, 18.04.2009 @ 15:11
Еще бы продолжение по поводу монтирования с локалями, что бы видеть русские буки на НТФС разделе!?
By hilik, 19.04.2009 @ 12:25
Нет у меня сейчас диска с NTFS, что бы разобраться с русскими буквами. Появится, обязательно разберусь.
By iam_numlock, 22.04.2009 @ 15:11
по поводу монтирования NTFS с локалями
ntfs-3g /dev/ad10s5 /mnt/e -o locale=ru_RU.UTF-8
By фосса, 16.05.2009 @ 13:18
Кстати, автомонтирование тоже можно замечательно сделать.
Копируем fuse.ko (он лежит в /usr/local/modules) в /boot/modules, добавляем fuse_load=»YES» в /boot/loader.conf, перезагружаемся и всё будет мжвячно }=
By orbital, 26.04.2010 @ 14:42
сделал всё как написано, но
[root@inter /usr/local/etc/rc.d]# mount_ntfs-3g /dev/da0s1 /mnt
ntfs_attr_pread_i: ntfs_pread failed: No such file or directory
Failed to read $AttrDef, unexpected length (-1 != 2560).
Failed to mount ‘/dev/da0s1’: Input/output error
NTFS is either inconsistent, or there is a hardware fault, or it’s a
SoftRAID/FakeRAID hardware. In the first case run chkdsk /f on Windows
then reboot into Windows twice. The usage of the /f parameter is very
important! If the device is a SoftRAID/FakeRAID then first activate
it and mount a different device under the /dev/mapper/ directory, (e.g.
/dev/mapper/nvidia_eahaabcc1). Please see the ‘dmraid’ documentation
for more details.
[root@inter /usr/local/etc/rc.d]#