Відповідно до розділу власності та дозволів документації на NTFS-3G, ми можемо використовувати параметри кріплення для контролю доступу та створення файлів . Комбінації дуже складні (див. Дві таблиці там). Також я не читаю і не отримую їх усіх. Наприклад, я не знаю, вибираються POSIX ACL під час компіляції чи ні бінарного пакету NTFS-3G. Але найкраще, що у мене вийшло, - це використання файлу User Mapping у поєднанні з деякими параметрами монтажу для наближення до правдоподібного відображення права власності на файли та дозволів між Windows та Linux.
Попередження . Це лише те, що найкраще підходить для мого спільного використання розділу даних NTFS (диск D:
у Windows) між двояковим завантаженням Windows 8 та Kubuntu 14.04. Інструкції реєструються ретельною ретроспективою, але не ретельно перевірені. Повторювати всю процедуру знову занадто втомливо і нудно. Тож дотримуйтесь цього на власний ризик. Але якщо так, поділіться своїм досвідом. Якщо ви вирішили виконувати вказівки, будь ласка, прочитайте її повністю, щоб мати цілу картину, перш ніж дійсно діяти. Удачі!
Добре, ось ви йдете! Детальна інструкція складається з трьох частин. Частина 1 повинна виконуватися в Windows, а частина 2 в Linux. Частина 3 призначена для перевірки.
Частина 1
У розділі " Мапування користувачів " документації NTFS-3G визначено дві версії для налаштування відображення користувачів між Windows та Linux, одна версія Windows та одна версія Linux. Мій досвід полягав у тому, що версія Linux закінчилася промахом . Обліковий запис Linux не було відображено до мого облікового запису Windows, але якийсь невідомий обліковий запис з’явився під SID . Результатом стало безлад, оскільки цей невідомий обліковий запис приймає право власності на всі файли мого облікового запису Windows. У цій ситуації, якщо у вас немає права адміністратора повернути право власності, файли з вашого облікового запису Windows стають недоступними. Але навіть якщо ви керуєте, все однонеправильне відображення. Це означає, що пізніше всі файли, створені в Linux, присвоюються цьому невідомому обліковому запису в Windows, а тим, хто в Windows, призначається викорінюватися в Linux (якщо я правильно пам'ятаю). Тож у Windows потрібно знову повернути право власності, а в Linux змінити право власності. Ми не очікуємо цього. Після кількох безнадійних спроб виправити проблему, я відмовився і перейшов до версії Windows. Той працював. Детальні інструкції, витягнуті з відповідного розділу документації NTFS-3G, наступні:
Завантажте інструмент usermap , витягніть його десь (у моєму випадку, диск C:
), краще поза розділом NTFS (у моєму випадку диск D:
), яким слід поділитися.
Відкрийте командний рядок Windows. Перейдіть до вилученого каталогу tools
(за замовчуванням) usermap
інструменту. Потім запустіть таку команду:
C:\tools> mapuser > UserMapping
Це створює шаблон і перенаправляє його до файлу з ім'ям UserMapping
. Відкрийте файл текстовим редактором, скажімо Блокнот, ви повинні побачити наступні рядки:
# Generated by usermap for Windows, v 1.1.5
# For Windows account "Account" in domain "Domain"
# Replace "user" and "group" hereafter by matching Linux login
user::SID
:group:SID
Імовірно, перший SID
повинен бути вашим SID користувача, а другий - груповим SID. Ви можете перевірити їх відповідно командами whoami /user
та whoami /groups
.
Після того, як ви переконаєтеся , що SIDs правильно, слідуючи інструкціям в коментарі, тобто зміна user
в user::SID
рядку з ім'ям користувача і group
в :group:SID
лінії основного імені групи на Linux. У Ubuntu вони однакові. Більше того, додайте своє ім’я групи Linux також після першого двокрапки user::SID
рядка. Тож лінія повинна виглядати приблизно так user:group:SID
. Схоже, що якщо цього не зробити, файли, створені в Windows, будуть призначені в user:root
Linux.
Збережіть файл. Перемістіть його до каталогу з іменем .NTFS-3G
(створіть його, якщо він ще не існує) на розділі NTFS, яким слід поділитися (у моєму випадку диск D:
).
Цей крок призначений для перевірки в частині 3. На спільному розділі NTFS створіть нову директорію та новий файл.
Частина 2
Тепер завантажтесь у Linux. sudo
відредагуйте файл /etc/fstab
. Додайте або модифікуйте рядок для спільного розділу NTFS до чогось подібного:
UUID=... /data ntfs defaults,umask=077,utf8 0 0
Важливим є встановлення umask
( dmask
і fmask
може також працювати, але не перевірено). Виберіть значення, яке umask
вам подобається, хоча я вибрав 077
. Здається, без цього налаштування буде надано повний дозвіл o
thers для новостворених файлів.
Збережіть файл. Тепер sudo mount
або перекомпонуйте ( sudo umount
а потім sudo mount
) спільний розділ NTFS (у моєму випадку /data
):
$ sudo mount /data
Частина 3
Тепер (все ще в Linux) cd
до точки монтування (в моєму випадку /data
), ls -l
файли там. Перевірте, чи відповідають їх права власності та дозволи відповідно до того, який ви вказали у UserMapping
файлі та встановленому umask
вами /etc/fstab
(відповідність між дозволами та umask
потребує певного обчислення доповнення, див. Man (1) umask для отримання додаткової інформації). Якщо вони це роблять, вітаємо, половина мети досягається. Інакше бідний ти. Запитайте Ubuntu або Windows.
Потім створіть новий каталог і новий файл. ls -l
перевірити їх право власності та дозволи. У власності має бути ваше ім’я користувача та основна група, як зазвичай. Дозволи повинні відповідати umask
. Тепер перезавантажте комп'ютер та завантажтесь у Windows. Знайдіть на спільному розділі NTFS каталог та файл, який ви тільки що створили в Linux. Перевірте їх властивості, щоб побачити, чи призначені вони для вашого облікового запису Windows. Якщо вони є, вітаємо, ви все готові. Інакше невдача. Запитайте Windows або Ubuntu.
EOF