あるローカルNTFSディスクから別のローカルNTFSディスク(Windows 7以降)にディレクトリ構造をコピーし、このディレクトリ構造内に存在するハードリンクを保持する必要があります。
受け入れられる解決策は、コピーの前にハードリンクを(相対)シンボリックリンクに置き換えることですが、それが実行可能かどうかはわかりません。
ここでのオプションは何ですか?
あるローカルNTFSディスクから別のローカルNTFSディスク(Windows 7以降)にディレクトリ構造をコピーし、このディレクトリ構造内に存在するハードリンクを保持する必要があります。
受け入れられる解決策は、コピーの前にハードリンクを(相対)シンボリックリンクに置き換えることですが、それが実行可能かどうかはわかりません。
ここでのオプションは何ですか?
回答:
コマンド: ln --copy x:\dir\dir2 y:\dir\newdir
上記の例では、x:\ dir \ dir2の下のディレクトリとファイルがy:\ dir \ newdirにコピーされ、x:\ dir \ dir2内のすべてのハードリンク/ジャンクション/シンボリックリンクがyの下の新しい場所にコピー/結合されます:\ dir \ newdir。
リソース: http : //schinagl.priv.at/nt/ln/ln.html
ダウンロード: http : //schinagl.priv.at/nt/ln/ln.html#contact
注: CPUアーキテクチャ用のこのソフトウェアを、ZIPファイルとvcredist(Visual C ++ Redistributable)からダウンロードしてインストールするだけのようです。次に、ZIPファイルから新しいフォルダー(.egなどC:\Temp
)にファイルとフォルダーを抽出します。コマンドラインで、その[ディレクトリ]フォルダーに移動し、上記の例に示すように、ドライブの場所に必要なコマンドを実行します。実行するとln --help
ヘルプの詳細が表示されますが、上記のコマンド例はhard links
ドキュメントごとにコピーすることになっています。
リソース: http : //schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html
ダウンロード: http : //schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html#contact
このソフトウェアに関連するセクションまたは機能
Smart Mirror
Clone
Smart Copy
ln-コマンドラインハードリンク-スクリーンショットのダウンロード
Link Shell Extension-スクリーンショットのダウンロード
興味深いメモ
表示されたhard links
など、そのファイルポインタ、のために同じディスクパーティションにロックされ、複数のパーティションにまたがって使用することはできません。また、hard links
NTFS では、パーティションはMaster File Table
レコード(または少なくともカウントの属性)の一部であるためMFT
、パーティションレベルでバイト単位のクローンを作成しない場合、それを独自のディスクにコピーすることは問題のように見えます少なくとも。
コマンドラインユーティリティrsync
は、ユーザーの要求に応えます。
古いデータがロケーションAにあり、新しいデータがBにあると想定して、以下を実行します。
rsync -ahPruvz --hard-links A B
rsyncマニュアルからの引用:
これは、ソースでハードリンクされたファイルを探し、対応するファイルを宛先でリンクするようにrsyncに指示します。
rsync
それを取得して使用する方法は?Windowsには2つの簡単な代替手段があります。
最初の選択肢:を使用しますcygwin
。これはWindowsソフトウェアです。それをインストールし、rsync
パッケージを選択するステップで追加します。他はすべてデフォルトのままにします。インストール後、シェルを使用してコマンドを入力します。必要に応じて、/usr/bin/rsync
だけでなく、完全なパスを使用できますrsync
。Windowsドライブにアクセスする場合は、「/ cygwin / drives」のようなパスを使用し、常にTABを使用してオートコンプリートを試みます。
2番目の選択肢:デスクトップコンピューターの場合は、ライブのGNU / Linuxディストリビューションを使用します。ライブUSBイメージを準備し、そこから起動し、目的のディスクをマウントして、rsyncを起動します。ライブイメージにがない場合はrsync
、インストールします。(apt-get install rsync
Debianおよびその派生物。)Linuxエコシステムの経験がまだない場合は、cygwinの方が簡単かもしれません。
A
がディレクトリの場合B
、(cp
たとえば、最後の引数が親ディレクトリである場合とは異なり)そのディレクトリがターゲットで取る名前にする必要があります
ln
別の答えに示されているようなものになってしまいました。rsync
私が述べたように、この回答からのCygwin も同様に機能する可能性があります。
ln --copy
。GUIについては、「スマートコピー」があなたが探しているものだと思います。
Windowsのrsyncを調べてみてください。rsyncにはハードリンクを保持するオプションがあるため(フラグ-H、-hard-links)、ジョブを実行する必要があります(ソース:https ://download.samba.org/pub/rsync/rsync.html )。
あなたはcwRsyncのようなものを調べてみることができます:https ://www.itefix.net/cwrsync# これにはGUIがあります。
cwRsyncは、クライアントGUIを備えたRsync for Windowsのパッケージです。cwRsyncを使用して、リモートファイルの高速バックアップと同期を行うことができます。