外付けハードドライブ(NTFS)からシンボリックリンクを逆参照せずにコピーする方法は?

外付けハードドライブ(NTFS)からシンボリックリンクを逆参照せずにコピーする方法は?

NTFSでフォーマットされた外付けハードドライブを介してあるコンピュータから別のコンピュータにファイルを移動しています。多くのPDFを含む「ライブラリ」というフォルダがあります。一部のPDF(書籍や記事など)が複数のカテゴリ(フォルダなど)に属するため、フォルダにはかなり多くのシンボリックリンクが含まれています。私が直面している問題は、シンボリックリンクがそのまま残っている(つまり、逆参照なしに)ファイルを新しいコンピュータに保存できないことです。私はコマンドを使用して既存のコンピュータのフォルダを外付けハードドライブにコピーでき、シンボリックリンクはそのままになりましたcp -a。ただし、同じコマンドを使用してハードドライブから新しいコンピュータにファイルをコピーすると、シンボリックリンクは逆参照されます(つまり、参照するファイルに置き換えられます)。私もcp -r --preserve=all同じ結果を持ってこれを試しました。では、外付けハードドライブから新しいコンピュータにシンボリックリンクをインポートするには、どのコマンドを使用する必要がありますか?つまり、cp -a外付けハードドライブにコピーするときにシンボリックリンクをそのままにして、他の方向にコピーしないのはなぜですか?関連がある場合は、Ubuntu 22.04を使用しています。

編集する:

ハードドライブを以前のコンピュータ(Ubuntu 16.04を実行)に接続すると、ハードドライブのシンボリックリンクがリンクとして表示され、そのまま動作することがわかりました(たとえば、シンボリックリンクをクリックすると参照されたPDFファイルが開きます)。ハードドライブを新しいコンピュータ(Ubuntu 22.04を実行)に接続します。シンボリックリンクは次のとおりです。いいえリンクとして表示(ただし、PDFファイルとして)と実行いいえ動作します(つまり、ドキュメントビューアはそのドキュメントをクリックするとエラーメッセージを表示します。File type unknown (application/octet-stream) is not supportedつまり、ドキュメントビューアはリンクをクリックする代わりにそのドキュメントをPDFファイルとして開こうとします)。 2つのバージョンのUbuntuが異なる動作をするのはなぜですか?

答え1

NTFSは望むことはできません。

したがって、NTFS にコンテンツを直接保存することはできません。

転送したいファイルを保存するには、アーカイブを使用する必要があります。それではアーカイブです。いくつかのオプション(実際には2つ)があります。tar動作し、インストールがより一般的で、mksquashfsより小さいサイズを可能にし、解凍することなく、内部ファイルを実際に使用できます。私は書いたtarmksquashfs回答ここで使用法を比較して説明します。

残念ながら、NTFSには目的の機能がないため、選択肢はありません。

関連情報