imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Программы и Операционные системы > Пингвинятник (ОС *NIX)
Опции темы
Старый 04.08.2005, 20:19     # 1
Saruman
::VIP::
 
Аватар для Saruman
 
Регистрация: 12.11.2002
Адрес: Nicosia, Cyprus
Сообщения: 1 285

Saruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman Гуру
HOWTO mount NTFS with full read/write access

Не раз встречал на форуме вопросы "а как мне подмонтировать ntfs-раздел и что-нибудь записать на него" с ответами типа "подмонтировать легко, а вот писать не стоит" (да и сам такие давал 8) ). И вот, после личного тестирования в течение некоторого времени и решения возникавших багов, предлагаю краткое howto на тему "использование captive-ntfs для монтирования ntfs-разделов с полным доступом на чтение-запись" (lol, прям тема для реферата 8)) ).
Сразу предупреждаю - я работаю в Gentoo, посему все вопросы будут освещены именно с позиций этого дистриба. Обладателям других дистрибутивов найти у себя аналоги предлагается самостоятельно 8)

Итак, для начала:
что это такое и зачем оно нужно.
Известно, что последние версии ядра позволяют писать на ntfs-разделы, но в очень ограниченном виде (только в имеющиеся файлы, без изменения их размера, без создания/удаления). В таком виде данная запись практически ни для чего непригодна. Проект captive-ntfs реализует другой подход - он использует родные бинарники windows (в частности, ntfs.sys и ntoskrnl.exe), эмулируя их окружение в линуксе на базе кода ReactOS или собственного. В результате решается проблема закрытости спецификации NTFS - вместо реверсинга самой файловой системы, мы используем для работы с ней ее родные драйвера, которые это умеют делать лучше всех 8) Никаких репортов о порушенных при использовании captive-ntfs разделах в инете я не встретил, сам в процессе тестирования также фатальных проблем не заметил, так что заверениям на странице проекта о том, что это безопасный метод записи, думаю, можно верить.

Полагаю, для вступления этого достаточно, с подробностями можно ознакомиться на сайте.
Что нам понадобится для установки:
1. Собственно линукс-система и знание того, какие разделы мы хотим смонтировать.
2. Пакет captive-ntfs. Живет на данной странице, компилируется и устанавливается из исходников обычным образом (./configure && make && make install) либо ищется готовый пакет в своем дистрибутиве (в Gentoo он есть, поэтому в ней достаточно сказать emerge captive).
2a. Ессно, должны быть установлены все требуемые зависимости. В частности, нужны gnome-vfs и fuse. На всякий случай, полный список зависимостей из гентовского ебилда:
Цитата:
RDEPEND="sys-libs/readline
>=gnome-base/orbit-2.8.2
gnome-base/gnome-vfs
dev-libs/popt
dev-libs/glib
>=dev-libs/openssl-0.9.7c
>=dev-libs/libxml2-2.4.29
>=sys-fs/lufis-0.3
>=sys-fs/fuse-2.2"

DEPEND="${RDEPEND}
sys-fs/ntfsprogs"
После успешной компиляции необходимо предоставить требуемые бинарники из Windows. Путей несколько:
1. Монтируем обычным образом ntfs-раздел с установленной на нем Windows и запускаем утилиту captive-install-acquire. Она произведет поиск по смонтированным разделам и скопирует все файлы, которые сможет найти. У меня по неизвестной причине не был найден ntoskrnl.exe, посему переходим к пункту 2.
2. Если какие-то файлы не могут быть найдены, но они точно есть - просто копируем их с ntfs-раздела в /var/lib/captive.
3. И последний случай - если нет установленной windows, то captive-install-acquire скачает с сайта MS пакет XP SP1 и возьмет из него требуемые файлы.
После того, как все файлы на месте -
мы готовы к монтированию.
Отключаем старые ntfs-разделы и заново монтируем их следующим образом:
Код:
mount -t captive-ntfs /dev/hda1 /mnt/win/c
Ессно, заменяем имя раздел и точку монтирования на необходимые. Voila, если все прошло успешно - то можно начинать удалять файлы, создавать файлы и вообще всячески писать на свежепримонтированный раздел.

Если на ntfs-разделе имеются файлы с русскими именами,
а кодировка в линуксе - не UTF8, то они наверняка будут показаны как попало (т.е. нечитабельно). Для этого патчим файл /src/client/lufs/captivefs-vfs.c, изменяя в нем строку setlocale(LC_ALL, "") на setlocale(LC_ALL, "ru_RU.cp1251") (или на свою кодировку, если она не cp1251). Патч для cp1215 для версии captive-1.1.5 прилагается.
При этом все равно сохраняется проблема кодировки при использовании для монтирования /etc/fstab (или даже init-скрипта). В качестве обходного пути я написать init-скрипт, подключающий мои разделы, и когда нужно прочитать на них русские буквы - просто вызываю его из консоли с параметров restart, одна команда - и все разделы с корректной кодировкой. Нужно мне это редко и русских файлов у меня мало, посему данная проблема меня мало заботит. Если кто-то найдет окончательное решение - с удовольствием воспользуюсь.

И последнее - минусы (ну а как же без них 8) ):
1. Первый и самой основной - очень низкая скорость записи, порядка 300-500 kb/sec. Но это лучше, чем вообще не иметь такой возможности.
2. Иногда наблюдаются проблемы при удалении большого количества файлов - captive долго думает и ворочается, потом оказывается, что все файлы на месте. Но, в любом случае, ни к каким крешам это не ведет и такая ситуация лично у меня возникает редко.

Предложение, пожелания, дополнения - приветствуются.
PS: при написании данного HOWTO использовались материалы соответствующей статьи из gentoo-wiki и статья на сайте Simon Litt Software Запись NTFS в Linux.
Вложения
Тип файла: txt captive-ru-cp1251.txt (793 байт, 19 просмотров - Кто скачивал? )
__________________
"If people only knew how hard I work to gain my mastery, it wouldn't seem so wonderful at all." Michelangelo Buonarroti
Saruman вне форума  
Старый 11.08.2005, 10:04     # 2
GuRman
::VIP::
лЯнтяй-full version
 
Аватар для GuRman
 
Регистрация: 08.02.2004
Адрес: /dev/null
Сообщения: 670

GuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman Гуру
Saruman
Хм, ну есть впринципе способ проще. А точнее скачать драйвер для нтфс. Хотя он платный и это будет варез. Но скорость будет больше. Интересно?
__________________
icq: 702007
e-mail: 702007@gmail.com
GuRman вне форума  
Старый 11.08.2005, 15:54     # 3
Saruman
::VIP::
 
Аватар для Saruman
 
Регистрация: 12.11.2002
Адрес: Nicosia, Cyprus
Сообщения: 1 285

Saruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman Гуру
GuRman
интересно, озвучивай - попробуем 8)
__________________
"If people only knew how hard I work to gain my mastery, it wouldn't seem so wonderful at all." Michelangelo Buonarroti
Saruman вне форума  
Старый 11.08.2005, 16:14     # 4
GuRman
::VIP::
лЯнтяй-full version
 
Аватар для GuRman
 
Регистрация: 08.02.2004
Адрес: /dev/null
Сообщения: 670

GuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman Гуру
Ну это называется Paragon NTFS правда полную я что-то не смог сейчас найти. У меня есть а одном винте вроде, нужно порыться, если найду, то выложу вечерком
__________________
icq: 702007
e-mail: 702007@gmail.com
GuRman вне форума  
Старый 11.08.2005, 17:18     # 5
Saruman
::VIP::
 
Аватар для Saruman
 
Регистрация: 12.11.2002
Адрес: Nicosia, Cyprus
Сообщения: 1 285

Saruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman Гуру
Спасибо за наводку, дистриб я уже нашел. Теперь вопрос только в том, насколько это надежно. Captive-NTFS работает через родные виндовые драйверы, посему там все проще и прозрачнее. Paragon же, как я понял, реализовали свои драйверы (реверсинг NTFS? хм %-\ ), надежность которых у меня вызывает сомнение.
Личный опыт использования данного драйвера у кого-либо имеется?
__________________
"If people only knew how hard I work to gain my mastery, it wouldn't seem so wonderful at all." Michelangelo Buonarroti
Saruman вне форума  
Старый 11.08.2005, 17:30     # 6
GuRman
::VIP::
лЯнтяй-full version
 
Аватар для GuRman
 
Регистрация: 08.02.2004
Адрес: /dev/null
Сообщения: 670

GuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman ГуруGuRman Гуру
Ну если кому-то нужен дистр, а не демо который писать не разрешает то в ПМ или асю

Saruman
Да, они реализовали собственный драйвер, т.к. исходных кодов NTFS как понимаешь нет. Я им пользуюсь уже прилично. Единственный трабл, который у меня иногда возникал, то что некоторые фаилы без рута никак не удалить, хоть и ставил разрешение на обычного пользования. Но потерь данных никаких не возникало. Еще вопросы есть? ЗЫ да и скорость там побольше Протестирую и напиши отзывы
__________________
icq: 702007
e-mail: 702007@gmail.com
GuRman вне форума  
Старый 22.08.2005, 20:02     # 7
tiranozaurus
Junior Member
 
Аватар для tiranozaurus
 
Регистрация: 04.05.2005
Сообщения: 59

tiranozaurus Нуль без палочки
а где я могу найти gthread-2.0, gmodule-2.0 (обе >=2.0.0); l libxml-2.0(>=2.8.8)
под дебиан сардж
__________________
не поворачивайся к жизни спиной-может отыметь..

Я сказал мне не нужна корона..я передумал...
tiranozaurus вне форума  
Старый 30.08.2005, 11:06     # 8
sensor_ua
Junior Member
 
Регистрация: 13.08.2002
Адрес: Ukraine
Сообщения: 82

sensor_ua Молодецsensor_ua Молодецsensor_ua Молодец
Нашёл и бросил в варез
http://www.imho.ws/showthread.php?t=62499
- Paragon NTFS for Linux.
Пишет, что типа для ядер 2.2, 2.4, 2.6.
У меня SuSe 9.3. Эта штука не компилится;( Застряёт на системных хидерах с с объявлениями external irq функций. А хотелось бы ей помочь
__________________
uuuhhh
sensor_ua вне форума  
Старый 03.09.2005, 14:54     # 9
Raven B.
Member
 
Аватар для Raven B.
 
Регистрация: 12.07.2004
Адрес: Очень странное место.
Сообщения: 328

Raven B. Известность не заставит себя ждатьRaven B. Известность не заставит себя ждать
Доброго времени суток.

Скачал. (Мои благодарности Он-Сам-Знает-Кому.)
В архиве:
install.sh
Судя по докам из него должно собрать маке файл.... (или я чего то не понял)
У меня он заявляет на ./install.sh - permission denied. Хотя а под rootом.
ОС: FreeBSD 5.2.1 - STABLE.

Что я неправильно делаю ?
Как эту штуку ставить ?

З.Ы. Пробовал на сайте парагона по докам шарить - бесполезно. Инструкций не нашол... Только то что в дистрибютиве прилагается и ФАК на !5! вопросов...
Raven B. вне форума  
Старый 03.09.2005, 15:12     # 10
sensor_ua
Junior Member
 
Регистрация: 13.08.2002
Адрес: Ukraine
Сообщения: 82

sensor_ua Молодецsensor_ua Молодецsensor_ua Молодец
А Linux-Base на FreeBSD стоит? И ещё, фря 5+ точно сама не умеет писать на NTFS? Что-то я на 5.2.1 делал и помню, что на запись есть траблы с кириллицей, а так работало
__________________
uuuhhh
sensor_ua вне форума  
Старый 03.09.2005, 16:20     # 11
Raven B.
Member
 
Аватар для Raven B.
 
Регистрация: 12.07.2004
Адрес: Очень странное место.
Сообщения: 328

Raven B. Известность не заставит себя ждатьRaven B. Известность не заставит себя ждать
Гм. у меня она только читает.
в fstab стоит
/dev/... /mnt/... ntfs rw 0 0.
Linux-Base поставил.
Raven B. вне форума  
Старый 03.09.2005, 16:32     # 12
sensor_ua
Junior Member
 
Регистрация: 13.08.2002
Адрес: Ukraine
Сообщения: 82

sensor_ua Молодецsensor_ua Молодецsensor_ua Молодец
man смотри - там, кажись, не rw, а W или похожее должно быть
__________________
uuuhhh
sensor_ua вне форума  
Старый 03.09.2005, 16:36     # 13
Raven B.
Member
 
Аватар для Raven B.
 
Регистрация: 12.07.2004
Адрес: Очень странное место.
Сообщения: 328

Raven B. Известность не заставит себя ждатьRaven B. Известность не заставит себя ждать
ок. сейчас почитаю.
Raven B. вне форума  
Старый 03.09.2005, 20:31     # 14
Raven B.
Member
 
Аватар для Raven B.
 
Регистрация: 12.07.2004
Адрес: Очень странное место.
Сообщения: 328

Raven B. Известность не заставит себя ждатьRaven B. Известность не заставит себя ждать
--------
Почитал. Ключ -W отвечает за кодировку
Raven B. вне форума  
Старый 03.09.2005, 20:41     # 15
Saruman
::VIP::
 
Аватар для Saruman
 
Регистрация: 12.11.2002
Адрес: Nicosia, Cyprus
Сообщения: 1 285

Saruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman Гуру
народ, вы чего, откуда нативная поддержка полноценной записи на NTFS в ядре? Read + limited write
__________________
"If people only knew how hard I work to gain my mastery, it wouldn't seem so wonderful at all." Michelangelo Buonarroti
Saruman вне форума  
Старый 03.09.2005, 20:46     # 16
Raven B.
Member
 
Аватар для Raven B.
 
Регистрация: 12.07.2004
Адрес: Очень странное место.
Сообщения: 328

Raven B. Известность не заставит себя ждатьRaven B. Известность не заставит себя ждать
ага. поэтому и хотелось бы установить драйвера от Paragon.
Подскажите как ? (Вопрос в #9)
Raven B. вне форума  
Старый 10.09.2005, 18:45     # 17
tiranozaurus
Junior Member
 
Аватар для tiranozaurus
 
Регистрация: 04.05.2005
Сообщения: 59

tiranozaurus Нуль без палочки
у меня в сарже такая же фиговина, говорит, что не имею права на инсталляцию, хотя права взял заранее
__________________
не поворачивайся к жизни спиной-может отыметь..

Я сказал мне не нужна корона..я передумал...
tiranozaurus вне форума  
Старый 10.09.2005, 19:26     # 18
Raven B.
Member
 
Аватар для Raven B.
 
Регистрация: 12.07.2004
Адрес: Очень странное место.
Сообщения: 328

Raven B. Известность не заставит себя ждатьRaven B. Известность не заставит себя ждать
Походу: если файл разрешит на исполнение и запустить как скрипт (по расширению .sh об этом можно догадатся)
, то он все равно не хочет собиратся...
Raven B. вне форума  
Старый 12.09.2005, 10:07     # 19
sensor_ua
Junior Member
 
Регистрация: 13.08.2002
Адрес: Ukraine
Сообщения: 82

sensor_ua Молодецsensor_ua Молодецsensor_ua Молодец
Он использует хидеры из исходников ядра Linux. А где такое добро во фре? И Linux-base каким ядром отзывается? там в скрипте есть строчки, пуляющие всю диагностику компиляции в дев/нул - можешь грохнуть их и увидеть, на чём оно застряло.
__________________
uuuhhh
sensor_ua вне форума  


Ваши права в разделе
Вы НЕ можете создавать новые темы
Вы не можете отвечать в темах.
Вы НЕ можете прикреплять вложения
Вы НЕ можете редактировать свои сообщения

BB код Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 23:31.




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.