Створіть символічні посилання NTFS з Linux


15

Чи є утиліта Linux, яка може створювати символічні посилання NTFS ? Тобто посилання на розділ NTFS, який вказує на іншу папку NTFS - ту, яка працюватиме конкретно в Windows 7.

Я хочу перенести папку, яка зазвичай використовується під час роботи Windows. Ця машина вже може подвійно завантажуватися в Ubuntu, тому я хотів би скористатися цим.

EDIT : Щоб це не перетворювалося на "який найкращий компакт-диск Windows Live", я обмежу це питання "Чи можливо це за допомогою Linux, так чи ні?"


1
Створити символічне посилання на підключеному диску на іншій машині Windows?

Це, безумовно, альтернатива, але я швидше за все завантажуюся із завантажувальним компакт-диском, ніж у цьому випадку.
римо

На сьогоднішній день фактичний ntfs-3g в Linux створює посилання, які добре працюють під Linux, але Windows (7) не визначає їх правильно. Однак посилання, створені за допомогою mklink під Windows, працюють належним чином під Linux.
Лівін

Відповіді:


11

Використовуючи NTFS-3G Advanced , представляється можливим трактувати наявні з'єднання / NTFS-посилання так, ніби вони були посиланнями на Linux , але моя реальна мета створення нових, які працюють у Windows, - це непрохідність:

Таким чином, стає можливим перенаправлення точок з’єднання та символьних посилань, створених Windows, тому жорстке з'єднання, перейменування та видалення, але створення нових не є .


4

Як створити символічне посилання (він же: точка з'єднання або точка повторного розбору) на диску NTFS з Linux. Взято з: http://www.tuxera.com/community/ntfs-3g-advanced/extended-attributes/

При необхідності: sudo apt-get attr

# Display the reparse data of the file source-file
getfattr -h -e hex -n system.ntfs_reparse_data source-file

# Copy the reparse data of the file source-file
# to the file target-file
REPARSE=`getfattr -h -e hex -n system.ntfs_reparse_data source-file | \
         grep '=' | sed -e 's/^.*=//'`
setfattr -h -v $REPARSE -n system.ntfs_reparse_data target-file

Не могли б ви покращити цю пристрасть? Ви не згадали про це, sudo apt-get attrспочатку потрібно . Що таке вихідний і цільовий файл? Якщо я хочу , щоб створити посилання з /home/xxx/Musicдо /media/Storage/Musicякої один є джерелом і який є метою?
loostro

Крім того, перша частина (getfattr) повертає "Немає такого атрибуту", незалежно від того, я його запускаю /home/xxx/Musicабо/media/Storage/Music
loostro

3

Я знаю, що цей потік є досить застарілим, але останнім часом у мене виникла така ж проблема (мені потрібно було перемістити деякі системні папки Windows на інший диск), і ось просте рішення.

У Windows скопіюйте (не переміщуйте) папку на нове місце та створіть до неї символьне посилання з дещо іншим іменем (щоб не сталося зіткнення), а потім у Linux просто видаліть оригінальну папку та перейменуйте символьне посилання на оригінальне ім'я папки. Перезавантажте і воно працює. Використовувані системи були Windows 8.1 та Ubuntu 14.04.

Любо


0

Просто встановити розділ під Linux і створити посилання з ln -sповинен працювати. Це не дає вам доступу до повної складності посилань NTFS, але повинно бути достатньо для ваших цілей.

Існує дві різні реалізації NTFS для Linux: NTFS-3g (назва файлової системи ntfs-3g, пакет Ubuntu ntfs-3g) та Linux-NTFS (назва файлової системи fuse.ntfs, пакет Ubuntu ntfsprogs). Якщо одна з них не робить того, що ви хочете, спробуйте інший.


1
Я вже монтую розділ з ntfs-3g, і він ні дотримується існуючих посилань / переходів, ні створює сумісні з Windows посилання зln
rymo

-1

Здається, що документація для NTFS-3G застаріла, я використовую версію Ubuntu 2011.4.12AR.4-2ubuntu3 і мені вдалося створити символічні посилання всередині віртуального розділу. Ось процедура, яку я використав для перевірки цього:

dd if=/dev/zero of=ntfs.image bs=1024 count=20480
mkfs.ntfs -F ntfs.image
mkdir ntfs
sudo mount ntfs.image ntfs
cd ntfs
mkdir target
ln -s ./target symlink
ls -alF
cd -
rmdir ntfs
sudo umount ntfs
rm ntfs.image

1
Питання в тому, чи правильно функціонуватиме ваше посилання, якби цей ntfs.image був встановлений під фактичною установкою Windows? Вся суть полягала в тому, що я хотів за допомогою Linux переставити структуру каталогу директорій фізичного розділу Windows.
римо

Я точно не знаю, але я б здогадався, що NTFS-3G не додав би цю функцію Windows не розпізнав посилання. Важливо зазначити, що вам потрібно буде завантажити пакет "ntfs-3g", якщо ви завантажилися на живий диск, щоб спробувати це, але жоден дистрибутив, про який я знаю, не включає NTFS-3G на диску.
Compholio

1
ln -s"працював" для мене в тому, що він не вийшов з ладу, але отримане посилання було непридатним при монтажі під Windows. Якщо ви справді можете перевірити це, дайте нам знати, що відбувається.
римо

Так, я спробував на роботі, і ці посилання не розпізнаються. Він також не розпізнає Junction Points, зроблені в Windows, тому можливо, що мені просто потрібно оновити ОС (зараз використовується 11.10).
Compholio
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.