NTFS-3G (Русский)

NTFS-3G — свободная реализация файловой системы NTFS с поддержкой записи и чтения данных. Для упрощения разработки и обеспечения лучшей переносимости NTFS-3G использует драйвер файловой системы FUSE.

Состояние перевода: На этой странице представлен перевод статьи NTFS-3G. Дата последней синхронизации: 22 февраля 2022. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Установка

Установите пакет ntfs-3g.

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

Вручную примонтировать раздел с NTFS можно двумя способами. Традиционный:

# mount /dev/раздел-с-NTFS /точка/монтирования

При этом тип файловой системы (в данном случае ntfs-3g) явно сообщать необязательно. По умолчанию команда mount будет использовать программу /usr/bin/mount.ntfs, которая является символической ссылкой на /usr/bin/ntfs-3g и появляется после установки пакета ntfs-3g.

Второй способ — напрямую вызвать ntfs-3g:

# ntfs-3g /dev/раздел-с-NTFS /точка/монтирования

Список доступных опций описан в ntfs-3g(8).

Форматирование

Важно: Дважды перепроверьте правильность пути устройства.
# mkfs.ntfs -Q -L меткаДиска /dev/sdXY

Настройка

Можно настроить автоматическое монтирование разделов NTFS, или заранее указать параметры монтирования и делать это вручную в удобное для вас время. Настройки задаются в файле fstab или с помощью правил udev.

Стандартные настройки

При использовании стандартных настроек разделы с NTFS будут монтироваться при загрузке системы. При использовании этого метода если родительская папка, в которую монтируется раздел, имеет соответствующие права доступа (например, /run/media/<пользователь>/), то пользователь или группа смогут выполнять чтение и запись в этом разделе.

Linux-совместимые права доступа

Как правило, права доступа в Linux устанавливаются как 755 для директорий и 644 для файлов. Если вы часто используете NTFS-раздел, рекомендуется использовать эти права доступа и на нём. Следующий пример показывает, как можно присвоить такие права разделу для работы с ним из-под непривилегированного пользователя:

# Монтировать системный раздел Windows с Linux-совместимыми правами доступа, т. е. 755 для директорий (dmask=022) и 644 для файлов (fmask=133)
/dev/NTFS-раздел  /mnt/windows  ntfs-3g uid=userid,gid=groupid,dmask=022,fmask=133 0 0

Если права доступа Windows тоже имеют значение для вас, можно использовать команду ntfsusermap(8) для сопоставления пользователей Windows с пользователями Linux. ntfs-3g обработает перевод этих разрешений.

Разрешение доступа пользователю/группе

Через файл можно передать драйверу ntfs-3g и другие параметры монтирования, например разрешить доступ на чтение данных определённому пользователю или группе. Чтобы дать доступ к разделу пользователям, входящим в группу groupid, можно использовать следующие параметры:

/dev/NTFS-раздел  /mnt/windows  ntfs-3g   gid=groupid,umask=0022    0       0

В этом случае запись данных на раздел будет возможна только для пользователя root. Чтобы разрешить запись от имени непривилегированных пользователей, нужно указать, кому из них следует дать такой доступ. Для этого используйте параметр с именем пользователя:

/dev/NTFS-раздел  /mnt/windows  ntfs-3g   uid=userid,gid=groupid,umask=0022    0       0

Если у вас однопользовательская система, для большего удобства можно дать себе полный доступ к разделу:

/dev/NTFS-раздел  /mnt/windows  ntfs-3g   uid=userid,gid=groupid    0       0

Основные параметры NTFS-3G

В большей части случаев для работы должно хватить параметров, описанных выше. Далее описываются параметры, общие для многих файловых систем Linux. Полный список параметров конфигурации ntfs-3g можно посмотреть в .

umask
umask — команда командного интерпретатора, позволяющая автоматически присваивать нужные права доступа при создании новых файлов. Стандартные значения umask в Arch Linux для root и обычных пользователей — 0022. При этом новые директории получают права 755, а новые файлы — 644. Дополнительную информацию о umask можно найти здесь.
fmask и dmask
Похожи на , но задают права доступа к файлам и директориям отдельно.
noauto
Если установлен параметр , соответствующий раздел не будет монтироваться автоматически при загрузке системы.
uid
Идентификационный номер пользователя. Позволяет дать полный доступ к разделу определённому пользователю. Идентификатор пользователя можно определить с помощью команды .

Следующая опция специфична для ntfs-3g:

windows_names
запрещает создание файлов, каталогов и расширенных атрибутов с именами, которые запрещены в windows.

Монтирование разделов от имени обычного пользователя

По умолчанию, ntfs-3g требует права суперпользователя для монтирования файловой системы, если он является блочным устройством, даже если добавить параметр в (с причинами можно ознакомиться в ntfs-3g-faq).

Для неблочных файлов, таких как обычные образы дисков, ntfs-3g в командной строке должен работать из коробки с правами обычного пользователя, поскольку базовые вызовы FUSE перенаправляются на setuid-root fusermount, когда прямое взаимодействие с ядром недоступно.

Изменение размера раздела NTFS

Некоторые пользователи с установленной системой Windows хотели бы оставить её при установке Arch Linux. Часто для того, чтобы освободить место на диске под установку Arch Linux, возникает необходимость изменить размер системного раздела, на котором установлена Windows. Эту задачу можно выполнить одним из двух способов:

  1. Воспользоваться встроенным в Windows средством управления разделами. Для его запуска нажмите Win+R, введите в появившееся окно diskmgmt.msc и нажмите Enter. Кликните по разделу, размер которого нужно уменьшить, правой кнопкой мыши, и выберите в меню пункт Сжать том. Укажите количество места, которое нужно освободить, и нажмите OK. После завершения операции за изменённым разделом появится свободное место, в котором можно будет создать необходимые разделы в процессе установки системы.
  2. Воспользоваться сторонним LiveCD. Для этого скачайте ISO-образ любого диструбитива, в состав которого входят ntfs-3g и gparted, запишите его на компакт-диск (например, с помощью InfraRecorder) или USB-накопитель (смотрите статью Установочный образ на USB-накопителе), после чего загрузитесь с подготовленного носителя.

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

  • GParted Небольшой загрузочный дистрибутив GNU/Linux для компьютеров на базе x86. Он позволяет вам использовать все функции последних версий приложения GParted. Не включает дополнительные пакеты, которые может включать System Rescue CD, и схемы шифрования диска могут не поддерживаться.
http://gparted.sourceforge.net/ || gparted
  • SystemRescueCD Хороший инструмент, работает без проблем в большинстве случаев. После загрузки запустите GParted, и всё остальное должно быть довольно очевидно.
https://www.sysresccd.org/ || systemrescuecdAUR[ссылка недействительна: package not found]

Обратите внимание, что важными программами для изменения размера разделов NTFS являются ntfs-3g и утилиты типа (G)parted или fdisk, входящие в состав пакета . Если вы не являетесь «продвинутым» пользователем, рекомендуется использовать такой инструмент вроде GParted для выполнения любых операций по изменению размера разделов, чтобы минимизировать вероятность потери данных из-за ошибки пользователя.

Для изменения размера NTFS-раздела из существующей системы Arch Linux установите пакеты ntfs-3g и и запустите программу gparted. Если в системе отсутствует графический пользовательский интерфейс, можно использовать программу parted, входящую в состав пакета .

Решение проблем

Сжатые файлы

При монтировании файловой системы NTFS в Windows 10 и чтении файлов или каталогов вы можете

  1. увидеть неработающие символические ссылки на 'unsupported reparse point' или
  2. увидеть сообщение об ошибке (в этом случае вы увидите сообщение в журнале).

Причиной этого являются NTFS reparse points и то, что NTFS-3G не поддерживает некоторые их типы по умолчанию. Можно использовать плагины NTFS-3G для обеспечения совместимости с частью функций, определенных следующими точками разбора:

  • Сжатие системы
  • Дедупликация файлов
  • Файлы OneDrive

Дополнительные сведения есть на этой странице.

Сжатие системы (Compact OS) сжимает определённые файлы. Существует два возможных обходных пути.

Вы можете установить плагин . В настоящее время этот плагин поддерживает только чтение, но не запись, то есть создание или обновление файлов не поддерживается.

В качестве альтернативы можно отключить функцию сжатия в Windows 10:

C:\WINDOWS\system32> compact.exe /CompactOS:never

Повреждённая файловая система NTFS

Если в файловой системе NTFS есть ошибки, ntfs-3g смонтирует её в режиме "только чтение". Для штатного исправления файловой системы NTFS загрузите Windows и запустите chkdsk (chkdsk /F).

Можно использовать команду ntfsfix, идущую в составе пакета ntfs-3g, однако она умеет исправлять только некоторые виды ошибок. Там, где она не справляется, chkdsk обычно отрабатывает успешно.

Для исправления файловой системы NTFS раздел должен быть отмонтирован. Пример ремонта NTFS-раздела /dev/sda2:

# umount /dev/sda2
# ntfsfix /dev/sda2
Mounting volume... OK
Processing of $MFT and $MFTMirr completed successfully.
NTFS volume version is 3.1.
NTFS partition /dev/sda2 was processed successfully.
# mount /dev/sda2

Если всё прошло без ошибок, раздел будет доступен для записи.

Искажаются китайские имена файлов на Windows-разделе

Смотрите Localization/Simplified Chinese#Garbled Chinese file name under Windows partition.

Metadata kept in Windows cache, refused to mount

Если вместе с Arch Linux на компьютере используется Windows 8 или новее, при монтировании системного раздела может возникнуть следующая ошибка:

The disk contains an unclean file system (0, 0).
Metadata kept in Windows cache, refused to mount.
Failed to mount '/dev/sdc1': Operation not permitted
The NTFS partition is in an unsafe state. Please resume and shutdown
Windows fully (no hibernation or fast restarting), or mount the volume
read-only with the 'ro' mount option.

Проблема вызвана новой функцией Windows 8 под названием "быстрый запуск". Когда эта функция включена, часть метаданных файловых систем всех используемых разделов при загрузке восстанавливается к тому состоянию, в котором они находились при завершении работы Windows. В результате изменения содержимого разделов, совершённые из Linux, могут быть утеряны. Это может произойти с любым разделом жёсткого диска, когда работа Windows завершается выбором пункта "Выключить" или "Гибернация". Однако, завершение работы Windows с помощью пункта "Перезагрузка" не должно вызывать таких проблем.

Чтобы получить возможность беспроблемно записывать данные на раздел из других операционных систем, убедитесь, что функция "быстрый запуск" отключена. Для этого загрузите Windows и выполните следующую команду в командной строке, запущенной от имени администратора:

powercfg /h off

Чтобы проверить текущее значение параметра, зайдите в Панель управления -> Оборудование и звук -> Электропитание -> Действия кнопок питания. Флажок Включить быстрый запуск должен быть снят либо отсутствовать.

Удаление метаданных спящего режима Windows

В качестве альтернативы вышеописанному методу чистого выключения существует способ полного уничтожения метаданных NTFS, сохранённых после спящего режима. Этот способ применим только в том случае, если вы не можете или не хотите загрузиться в Windows и полностью выключить ее. Для этого нужно запустить ntfsfix, входящий в состав ntfs-3g.

# ntfsfix /dev/раздел_NTFS

Отказ в монтировании

Если, даже следуя этому руководству, вам не удаётся примонтировать раздел NTFS, попробуйте отредактировать файл , указав UUID вместо имён устройств для всех разделов NTFS. С примером можно ознакомиться здесь.

Отказ в монтировании в Windows

Windows не распознает раздел NTFS, для которого не задан соответствующий тип раздела. Частая ошибка при создании раздела NTFS для работы с Windows — забыть установить тип раздела как NTFS. Используйте fdisk или один из инструментов разметки, чтобы исправить тип раздела на правильный.

Смотрите также

gollark: Andrew is just overselling ATech™ a lot.
gollark: Those don't actually work.
gollark: It's mostly obsolete now.
gollark: By using nanorobots to rearrange primarily silicate-based rocks into structures more usable for computing.
gollark: We tried that, although with a more direct approach, actually.
This article is issued from Archlinux. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.