Мы — долго запрягаем, быстро ездим, и сильно тормозим.
www.lissyara.su —> статьи —> FreeBSD —> Файловая система —> fusefs-ntfs

fusefs-ntfs

Автор: gx_ua.


% uname -r
7.2-RELEASE

Установка:

% whereis fusefs-ntfs
fusefs-ntfs: /usr/ports/sysutils/fusefs-ntfs


% cd /usr/ports/sysutils/fusefs-ntfs && make clean config install clean
Options for fusefs-ntfs 2009.4.4
[X] LOCK   Lock the device when mounting (avoids access)
[X] UBLIO  Enable user space cache for improved speed

LOCK  - блокировать доступ к устройству, когда производится монтирование
UBLIO  - включить кэш для для улучшения скорости доступа
Смотрим переменную rcvar:

% /usr/local/etc/rc.d/fusefs rcvar
# fusefs
fusefs_enable=NO

Добавляем fusefs в автозагрузку:
% echo 'fusefs_enable=YES' >> /etc/rc.conf

Старт(загрузка модуля fuse.ko ):
% /usr/local/etc/rc.d/fusefs start

Можно загрузить модуль вручную:
% kldload /usr/local/modules/fuse.ko

Проверить наличие модуля:
% kldstat | grep fuse.ko
11    1 0xc935c000 e000     fuse.ko

Посмотреть на каком разделе Windows XP(NTFS)
% fdisk /dev/ad4

Синтаксис:
ntfs-3g [-o option[,...]] устройство точка_монтирования
mount -t ntfs-3g [-o option[,...]] устройство точка_монтирования

Пробуем смонтировать раздел с виндовс(проверьте наличие /windows):
% mount_ntfs-3g /dev/ad4s2 /windows

По-умолчанию владельцем файлов и директорий являются пользователь и группа, который выполнял
монтирование и каждый имееет права на чтение, запись, выполнение файлов(rwxrwxrwx)
и права на каталоги(drwxrwxrwx).Если вы хотите изменить права и владельца на создаваемые файлы изпользуйте
uid и/или gid опции вместе с umask, или fmask и dmask.
Пользователи Windows имеют полный доступ к файлам созданным с помощью ntfs-3g.

Посмотреть смонтированные разделы
% mount
/dev/ad4s1a on / (ufs, local)
devfs on /dev (devfs, local)
/dev/ad4s1f on /tmp (ufs, local, soft-updates)
/dev/ad4s1d on /usr (ufs, local, soft-updates, acls)
/dev/ad4s1e on /var (ufs, local, soft-updates)
procfs on /proc (procfs, local)
linprocfs on /usr/compat/linux/proc (linprocfs, local)
/dev/md0 on /tmp (ufs, local)
/dev/fuse0 on /windows (fusefs, local, synchronous)

Популярные опции при монтировании:
noatime - отключить "отпечаток" времени доступа atime inodе, в котором
отображается время последнего доступа к файлу. Если диск испытывает высокую нагрузку используйте
данный параметр
locale=value - указываем locale.Ваша системная locale должна совпадать с
той с которой монтируете locale=value. В таком случае будет коректно отображаться кириллица
rw - режим чтение/запись
ro - режим только-чтение
umask=value - права доступа, которые будут у "свежесозданного" файла
и каталога. Устанавливается в восьмеричной системе счисления. По-умолчанию 0.
fmask=value - тоже что и umask, но только для файлов. По-умолчанию 0.
dmask=value - тоже что и umask, но только для каталогов. По-умолчанию 0.
uid=value and gid=value - установить User ID -
владелец файлов, Group ID - определяет группу допущенных. UID и GID пользователя
можно посмотреть, например с помощью pw:
% pw usershow gx1
gx1:*:1001:0::0:0:gx1:/home/gx1:/bin/csh
1001 - UID
0 - GID - wheel

Использование /etc/fstab - таблицы ФС для монтирования:

При  ntfs-3g обязательно использовать опцию late:

# Device     Mountpoint   FStype  Options                           Dump  Pass#
/dev/ad4s2   /windows     ntfs-3g rw,locale=ru_RU.UTF-8,noauto,late  0      0

Dump - утилитой dump(8) снимать специальные архивные копии для ФС. 0 - не снимать.
Pass - порядок проверки fsck. 0 - файловую системы не нужно проверять

Если у вас произошла ошибка при монтировании, та что ниже:
% mount /windows
mount: /dev/ad4s2 : Operation not supported by device

воспользуемся опцией mountprog=<program> и заменим ntfs-3g на ntfs в /etc/fstab:
 /dev/ad4s2              /windows        ntfs    rw,locale=ru_RU.UTF-8,
noatime,noauto,mountprog=/usr/local/bin/ntfs-3g  0       0

Спасибо Siddha.

Другой вариант::
% mv /sbin/mount_ntfs /sbin/mount_ntfs-kern
% ln -s /usr/sbin/mount_ntfs-3g /usr/sbin/mount_ntfs

Исправляем /etc/fstab(вместо ntfs-3g ставим ntfs):
/dev/ad4s2  /windows        ntfs    rw,locale=ru_RU.UTF-8,noauto   0       0

noauto  - не монтировать автоматически при загрузке ОС.
теперь должно быть без ошибок:
% mount /windows 

либо уберите опцию noauto и смонтируйте все что есть в /etc/fstab:
% mount -av
/dev/ad4s1a on / (ufs, local, fsid caa484494abbbc54)
/dev/fuse0 on /windows (fusefs, local, synchronous, fsid 08ff000909000000)

или если использовали опцию late(опция указывает на то что раздел не будет смонтирован при mount -a, а только при mount -al ):
% mount -avl

Размонтировать(форсировано)
% umount -f /windows


Смонтируем вручную с umask=002 и UID=1001(gx1) и GID=0(wheel):
% mount_ntfs-3g -o rw,locale=ru_RU.UTF-8,umask=002,uid=1001,gid=0 \
/dev/ad4s2 /windows
% cd /windows/
% mkdir -p /windows/TEST/TEST-NTFS
% :> /windows/TEST/TEST-NTFS/test-ntfs
% ls -ld /windows/TEST/TEST-NTFS
drwxrwxr-x  1 gx1  wheel  0 13 ноя 17:42 /windows/TEST/TEST-NTFS/
% ls -l /windows/TEST/TEST-NTFS/test-ntfs
-rwxrwxr-x  1 gx1  wheel  0 13 ноя 17:42 /windows/TEST/TEST-NTFS/test-ntfs*

Хм...,на директорию правильно, а на файл должно быть -rw-rw-r--.
Ну да ладно.

Локальная документация:
file:///usr/local/share/doc/ntfs-3g/README.FreeBSD

Дополнительные ссылки:
http://www.tuxera.com/community/
http://wiki.slavka.kiev.ua/index.php/Tools/mountntfs

NTFS-3G site: http://ntfs-3g.org/
FUSE site: http://fuse.sourceforge.net/
fuse4bsd site: http://fuse4bsd.creo.hu/



размещено: 2009-11-13,
последнее обновление: 2009-11-16,
автор: gx_ua


leov-001, 2009-11-13 в 10:49:27

Не получается установить, выдает такую ошибку.

>uname -a
FreeBSD u5020.e66.ru 7.2-RELEASE-p4 FreeBSD 7.2-RELEASE-p4 #0: Fri Oct  2 12:21:39 UTC 2009     root@i386-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC  i386

===>  Installing for fusefs-ntfs-2009.4.4
===>   fusefs-ntfs-2009.4.4 depends on file: /usr/local/modules/fuse.ko - not found
===>    Verifying install for /usr/local/modules/fuse.ko in /usr/ports/sysutils/fusefs-kmod
===>  Building for fusefs-kmod-0.3.9.p1.20080208_6
===> fuse_module (all)
Warning: Object directory not changed from original /usr/ports/sysutils/fusefs-kmod/work/fuse4bsd-498acaef33b0/fuse_module
===> mount_fusefs (all)
Warning: Object directory not changed from original /usr/ports/sysutils/fusefs-kmod/work/fuse4bsd-498acaef33b0/mount_fusefs
mkdir -p ./plaintext_out
env RUBYLIB=./lib RUBYPATH=./lib ruby -S deplate -x -D manual -f plain -d /usr/ports/sysutils/fusefs-kmod/work/fuse4bsd-498acaef33b0/doc/plaintext_out doc.dpl
env: ruby: No such file or directory
*** Error code 127

Stop in /usr/ports/sysutils/fusefs-kmod/work/fuse4bsd-498acaef33b0/doc.
*** Error code 1

Stop in /usr/ports/sysutils/fusefs-kmod.
*** Error code 1

Stop in /usr/ports/sysutils/fusefs-kmod.
*** Error code 1

Stop in /usr/ports/sysutils/fusefs-ntfs.
*** Error code 1

Stop in /usr/ports/sysutils/fusefs-ntfs.

zersh, 2009-11-13 в 13:05:15

7.2-RELEASE FreeBSD 7.2-RELEASE #0: Thu Jul 16 17:24:36 MSD 2009

Собрался без ошибок. Спасибо за мануал!

gonzo111, 2009-11-13 в 15:22:37

если уж в статье описываются эллементарные вещи для начинающих, то неплохо было бы  

1) указать, что вообще то, надо прописать в rc.conf автозапуск, чтоб не было всяких там kldload

2)что именно прописать в fstab , в частности локаль тоже в опциях не забывать выставить

3) подумать над вопросом автомаунта внешнего USB винта/флехи с ntfs внутри ( например,написать лишнее в fstab а потом mount -a, ну или скриптом из dmesg выхватывать имя  нового девайса)

gx, 2009-11-13 в 15:43:36

gonzo111 ок, допишу

Pinger, 2009-11-13 в 16:36:10

Спасибо за ман, помог!

Dominator, 2009-11-14 в 15:30:49

leov-001,

cd /usr/ports/sysutils/fusefs-ntfs
make deinstall
make install

Siddha, 2009-11-15 в 14:02:16

Мой рабочий вариант с автомонтированием при старте из fstab

/etc/rc.conf
fusefs_enable="YES"

/etc/
/dev/ad4s1    /mnt/print ntfs rw,late,mountprog=/usr/local/bin/ntfs-3g,locale=ru_RU.UTF-8 0 0

и никаких бубнов, все как часы.

gx, 2009-11-15 в 14:53:08

Siddha, спасибо.
так действительно удобнее.

vix, 2009-11-22 в 17:00:47

У мну кернел-паник, при копировании на ntfs раздел.
3 раза пытался скопировать... =)
Ну его нафиг =)

P.S.
ОС = FreeBSD 8.0-RC1

gx, 2009-12-04 в 3:31:57

у мну нормально,
правда 8.0-Release

adre, 2009-12-08 в 18:26:46

Не смущайся опиши мульку для hald! чтоб весело жилось в kde =)

Shurup, 2010-01-29 в 17:17:52

аналогично, в корку фряха вылетает при записи на нтфс. притом если копировать мс-шкой с диска на диск нормуль, но если по сетке кирдык и паника. 8.0-Release

Dusya, 2010-07-27 в 15:14:09

Аналогично.
Фря падает в корку.

с трудом слил пару файлов и отказался от этой хрени насовсем.

Александр, 2010-11-23 в 11:21:31

Спасибо за статью, очень помогла, в панику действительно падает на FreeBSD 8.X, но только в связке с samba34, в нете нашел что это лечится патчем к fuse-kmod.

Dmitry, 2013-08-28 в 23:10:32

Проблема в fuse. создатели trycrypt с..т кирпичами по этому поводу. дело не в ntfs-3g. свинтил на Slackware. freeBSD рождена для узких задач.



 

  Этот информационный блок появился по той простой причине, что многие считают нормальным, брать чужую информацию не уведомляя автора (что не так страшно), и не оставляя линк на оригинал и автора — что более существенно. Я не против распространения информации — только за. Только условие простое — извольте подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой, незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
  Если соизволите поставить автора в известность — то вообще почёт вам и уважение.

© lissyara 2006-10-24 08:47 MSK

Время генерации страницы 0.0405 секунд
Из них PHP: 28%; SQL: 72%; Число SQL-запросов: 77 шт.
Исходный размер: 37274; Сжатая: 8674