NTFS

Материал из openSUSE.

Geeko NTFS означает New Technology File System, эта файловая система используется в некоторых версиях Windows® на платформе NT, например Windows®XP®.


Содержание


Раньше Linux поддерживал только чтение из NTFS. Недавно были выпущены драйверы, которые способны без проблем читать/писать в NTFS. Более детально описано здесь:


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


Установка поддержки записи в NTFS


Примечание: Для предотвращения повреждения файловой системы, NTFS разделы содержащие ошибки всегда будут монтироваться только для чтения.
Для их устранения необходимо загрузить Windows® и запустить программу восстановления файловой системы. Восстановление пока не представляется возможным из Linux.
Image:susemini.png
Version:
11.0
Для openSUSE 11.0, ntfs-3g установлен по умолчанию и и поддержка записи активирована только для пользователя root.


По умолчанию, только пользователь root может производить запись на разделы с файловой системой NTFS. Добавьте в /etc/fstab запись вида umask=0002 для активации записи обычным пользователям.

Например,

Здесь для fmask установлено значение 133, но fmask должен быть установлен в 113!
SATA или PATA (IDE) устройство
#Устройство   Точка монтирования  Файловая система  Параметры
/dev/sda1    /windows/C        ntfs-3g        user,users,gid=users,fmask=113,dmask=002,locale=en_US.UTF-8 0 0


Image:susemini.png
Version:
10.3
Для openSUSE 10.3, ntfs-3g установлен по умолчанию и поддержка записи активирована.


По умолчанию, только пользователь root может производить запись на разделы с файловой системой NTFS. Добавьте в /etc/fstab запись вида umask=0002 для активации записи обычным пользователям.

Например,

SATA или PATA (IDE) устройство
#Устройство   Точка монтирования  Файловая система  Параметры
/dev/sda1    /windows/C        ntfs-3g        user,users,gid=users,umask=0002,locale=en_US.UTF-8  0 0
Другие опции
#Устройство              Точка монтирования  Файловая система  Параметры
/dev/disk/by-label/win  /windows/C        ntfs-3g        user,users,gid=users,umask=0002,locale=en_US.UTF-8  0 0


Image:susemini.png
Version:
10.2
Для openSUSE 10.2.


Если вам нужно только просматривать файлы, то вам не нужно ничего делать, так как NTFS разделы по умолчанию доступны только для чтения во всех версиях SUSE Linux / openSUSE.

Для поддержки чтения/записи вам необходимо добавить следующие репозитории:

 zypper sa http://download.opensuse.org/repositories/filesystems/openSUSE_10.2/ Filesystems

Вы увидите следующий текст:

* Adding repository 'Filesystems'
Repository 'Filesystems' successfully added:
Enabled: Yes
Autorefresh: Yes
URL: http://download.opensuse.org/repositories/filesystems/openSUSE_10.2/

Установите следующие пакеты:

 fuse
 ntfs-3g

с помощью команды:

zypper in -c Filesystems ntfs-3g fuse

или откройте YaST Software Management и установите пакеты оттуда. Чтобы найти ntfs-3g используйте это название в качестве аргумента.

Монтирование NTFS разделов

Открыв доступ к файлу /etc/fstab, файловая система NTFS будет смонтирована автоматически во время загрузки. Убедитесь что директория точки монтирования (например, /Windows/C) существует. В большинстве случаев NTFS раздел это первый раздел первого жесткого диска:

PATA (IDE) интерфейс
#Device    Mountpoint  Filesystem  Parameters
/dev/hda1  /windows/C  ntfs-3g     user,users,gid=users,umask=0002  0 0

SATA интерфейс
#Device    Mountpoint  Filesystem  Parameters
/dev/sda1  /windows/C  ntfs-3g     user,users,gid=users,umask=0002  0 0
Другие варианты
#Device                 Mountpoint  Filesystem  Parameters
/dev/disk/by-label/win  /windows/C  ntfs-3g     user,users,gid=users,umask=0002  0 0

Перед тем как сохранится, убедитесь, что в параметрах (Parameters) нет команды "ro", иначе раздел будет подмонтирован только с возможностью чтения, даже если драйвер поддерживает запись.

Альтернативно, вы можете указать исходное устройство, используя ID диска (символические ссылки в /dev/disk/by-id/) или UUID файловых систем (/dev/disk/by-uuid/). by-label или by-id предпочтительнее перед /dev/sd* узлами, потому что они будут называться так же в то время как диск может быть назван, например, /dev/sdc вместо /dev/sda (буква, от которой зависит порядок, в котором они были подключены и/или распознаны).

Ручное монтирование

Если вы хотите смонтировать NTFS раздел вручную, используйте команду ntfs-3g, именуя разделы диска как NTFS. Например, эта команда монтирует NTFS раздел, который называется "windows" в каталог /mnt в режиме только для чтения:

ntfs-3g -o ro,gid=users,umask=0002 /dev/disk/by-label/windows /mnt

Эта последняя часть может быть так же выполнена командой:

su -c yast2 disk

Которая делает то же что и YaST -- Система -- Разметка

Больше информации по использованию ntfs-3g и команд umount для монтирования и размонтирования NTFS разделов, Вы увидите на man странице.

Когда дела обстоят не совсем гладко

При использовании ntfs-fuse для записи вы можете создать до 10 файлов в одном каталоге. Если вы хотите использовать ntfs разделы для нормальной работы (то есть создавать больше 10 файлов в одной директории), тогда найдите полный ntfs драйвер в форме ntfs-3g.

Если вы не можете найти пакет ntfs-3g в репозиториях Guru YaST, попробуйте поискать в suser-jengelh, или загружайте исходник на сайте ntfs-3g. Убедитесь что конфигурация fuse загружена (напр. выполните команду modprobe fuse) или если она не загружается при старте, добавьте ее к конфигурации системы: Используйте редактор YaST/System/sysconfig ; выберите System/Kernel/MODULES_LOADED_ON_BOOT; напишите на нем fuse и кликните кнопку Finish. Компоновка простая (./configure; make; make install). Опции монтирования очень похожи с исключениями в имени драйвера (ntfs-3g вместо ntfs-fuse).

Получено с http://ru.opensuse.org/NTFS