Есть ли способ сохранить права при использовании подключенного NTFS-диска в Ubuntu?

В своей работе по веб-разработке я использую Ubuntu почти исключительно. Но бывают случаи, когда мне нужно загрузить Windows - проверить компоновку в IE, перенести компиляцию в Photoshop - и я хочу иметь возможность делиться всей средой localhost между ними.

Вот мой текущий рабочий процесс:

В Ubuntu:

  • rsync каталог сайта, с которого я работаю /var/www в /windows/wamp/www (где /windows - это место монтирования моего раздела Windows NTFS, как указано в fstab).
  • Rsync базы данных MySQL из /var/lib/mysql в /windows/wamp/bin/mysql/{mysql version}/data,

Завершите работу, загрузите Windows, отредактируйте файлы, сохраните, перезапустите снова. Вернувшись в Ubuntu, найдите измененные файлы и верните rsync в /var/www, игнорируя изменения разрешений, которые произошли при перемещении файлов в раздел NTFS.

Мне не нравится хранить две копии всей моей среды разработки, и я не люблю вручную их синхронизировать. В идеале я хотел бы скопировать всю мою папку /var/www в раздел Windows и сделать ссылку на нее, и сделать то же самое для моих баз данных. Но изменения разрешений, которые происходят, не вызывают головной боли при этом.

Итак, мой вопрос состоит из двух частей, я думаю:

  • Есть ли способ скопировать файлы из разделов диска ext4 в разделы NTFS, которые поддерживают разрешения Unix таким образом, чтобы их можно было синхронизировать обратно?

или же,

  • Есть ли лучший способ разделить всю среду локального хоста между разделами Windows и Linux?

3 ответа

Если раздел используется совместно с Ubuntu и Windows, вы можете использовать ntfs-3g.usermap для создания файла пользовательской карты.

Предположим, что раздел /dev/sdXn смонтирован в / NTFS

1) Размонтировать раздел

sudo umount /dev/sdXn

2) запустите ntfs-3g.usermap (он создаст файл UserMapping в текущем каталоге)

 sudo ntfs-3g.usermap /dev/sdXn

3) перемонтировать

sudo mount /dev/sdXn

4)* скопировать файл UserMapping

sudo mkdir /NTFS/.NTFS-3G
sudo cp UserMapping /NTFS.NTFS-3G/

Теперь все должно работать. По крайней мере, у меня это сработало в Ubuntu 11.10

На последней (23.12.2015) странице Tuxera предлагается копирование в /.NTFS-3G/:

Полученный файл сопоставления записывается в файл UserMapping в текущем каталоге. Чтобы файл можно было использовать, сначала подключите том, затем скопируйте UserMapping в /.NTFS-3G/UserMapping в смонтированном каталоге, затем размонтируйте том и снова подключите его.

Так что-то вроде этого:

sudo mkdir /.NTFS-3G
sudo cp UserMapping /.NTFS-3G/

Ну, у вас есть несколько вариантов.

Во-первых, вы можете попробовать fsdriver

http://sourceforge.net/projects/ext2read/

Я не знаю, насколько хорошо этот драйвер будет работать, но если он это сделает, я бы пошел по этому пути, поскольку вы используете в первую очередь Ubuntu.

Другой вариант - монтировать раздел ntfs с разрешениями linux. Вам нужно будет добавить строку в fstab, аналогичную

UUID=12102C02102CEB83  /media/windows  ntfs-3g  auto,users,permissions  0  0

Измените ваш uuid на ваш раздел Windows (используйте sudo blkid)

Предполагая, что это работает, вы можете использовать ссылку или монтировать привязку (опять же, запись в fstab)

/media/windows/www /var/www none defaults,bind 0 0 

Недостатком второго метода является то, что Ubuntu не собирается отлаживать раздел NTFS, если есть проблема с файловой системой.

Изменить: еще одно потенциальное решение - запустить Windows в Virtualbox (или KVM) и использовать общую папку или общую сетевую папку (samba).

Удачи

Это работало для меня на Lubuntu 15.10

  1. Откройте терминал

Ctrl+ Alt+ T

  1. Размонтируйте диск ntfs (замените sdx на ваш диск; у меня sda3)

sudo umount / dev / sdx

  1. Отредактируйте fstab так, чтобы использовался ntfs-3g (Ubuntu поставляется с установленным leafpad; в других ditro вы можете использовать gedit или другой текстовый редактор)

sudo leafpad / etc / fstab

  1. Перейдите с ntfs на ntfs-3g. Что-то вроде этого:

# Вход для / dev / sdx:

UUID = 3844444444004444 / mnt / имя диска ntfs-3g по умолчанию, авто 0 0

  1. Сохрани и закрой

  2. Смонтировать все диски

sudo mount -a

  1. Откройте файловый браузер с правами root. (lubutu поставляется с установленным pcmanfm, однако для других дистрибутивов у вас может быть установлен другой файловый браузер)

sudo pcmanfm

  1. Перейдите к нужной папке и щелкните правой кнопкой мыши на ней, чтобы открыть окно "Свойства файла". Перейдите на вкладку "Разрешения" и выберите то, что вам нужно.

  1. Нажмите OK, тогда все должно быть так, как вы хотите. (Я тоже перезагрузился, но я не думаю, что требуется)
Другие вопросы по тегам