Linux内からNTFSシンボリックリンクを作成する


15

NTFSシンボリックリンクを作成できるLinuxユーティリティはありますか?つまり、別のNTFSフォルダーを指すNTFSパーティション上のリンク-具体的にはWindows 7内で機能します。

Windowsの実行中に通常使用されているフォルダーを再配置したい。このマシンはすでにUbuntuをデュアルブートできるので、それを活用したいと思います。

編集:これが潜在的に「どのWindows Live CDが最適」になるのを防ぐために、この質問を「Linuxで可能ですか、はい、いいえ」に限定します。


1
別のWindowsマシンに従属するドライブにシンボリックリンクを作成しますか?

これは間違いなく代替手段ですが、この場合はドライブを引っ張るよりもブートCDを使用するほうが確実です。
rymo

今日の時点で、Linux上の実際のntfs-3gはLinuxで正常に機能するリンクを作成しますが、windows(7)はそれらを正しく識別しません。ただし、Windowsでmklinkを使用して作成されたリンクは、Linuxで適切に機能します。
-liwin

回答:


11

NTFS-3G Advancedを使用することで、既存のジャンクション/ NTFSリンクをあたかもLinuxシンボリックリンクのように扱うことができるように見えますが、Windows内で動作する新しいリンクを作成する私の実際の目標は、無許可です:

これにより、Windowsによって作成されたジャンクションポイントとシンボリックリンクの逆参照が可能になり、ハードリンク、名前の変更、削除が可能になりますが、新しいリンクの作成はできません


4

LinuxからNTFSドライブにシンボリックリンク(別名:ジャンクションポイントまたは再解析ポイント)を作成する方法。から取得: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これを1ソースで、これは、ターゲットでありますか?
loostro 14年

また、最初の部分(getfattr)を返す「いいえ、そのような属性」私は上でそれを実行中にどんなに/home/xxx/Music/media/Storage/Music
loostro

3

私はこのスレッドがかなり時代遅れであることを知っていますが、最近私は同じ問題を抱えています(いくつかのWindowsシステムフォルダを別のドライブに移動する必要がありました)。

Windowsでは、フォルダーを新しい場所にコピー(移動ではなく)し、わずかに異なる名前(衝突が発生しない)でシンボリックリンクを作成します。Linuxでは、元のフォルダーを削除し、シンボリックリンクの名前を元のフォルダー名に変更します。再起動すると動作します。使用したシステムはWindows 8.1およびUbuntu 14.04です。

ルボ


0

Linuxでパーティションをマウントして、リンクを作成するだけでln -s機能します。これは、NTFSリンクの完全な複雑さへのアクセスを提供するものではありませんが、目的には十分なはずです。

Linux用のNTFSには、NTFS-3g(ファイルシステム名ntfs-3g、Ubuntuパッケージntfs-3g)とLinux-NTFS(ファイルシステム名fuse.ntfs、Ubuntuパッケージntfsprogs)の2つの異なる実装があります。それらのいずれかがあなたが望むことをしないなら、もう一方を試してください。


1
私はすでにntfs-3gでパーティションをマウントしていますが、既存のリンク/ジャンクションをln
たどら

-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パーティションのディレクトリ構造を再配置したかったということです。
rymo

確かなことはわかりませんが、NTFS-3Gがリンクを認識しないWindowsのこの機能を追加しなかったと思います。これを試すためにライブディスクで起動した場合、「ntfs-3g」パッケージをロードする必要があることに注意することが重要です。
コンフォリオ

1
ln -sそれは失敗しなかったという点で私のために「働いた」が、結果のリンクはWindowsでマウントされたときに使用できなかった。これを実際にテストできる場合は、何が起こるかお知らせください。
rymo

ええ、私は仕事で試しましたが、これらのリンクは認識されません。ただし、Windowsで作成されたジャンクションポイントも認識しないため、OSをアップグレードするだけで済みます(現在11.10を使用しています)。
コンフォリオ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.