タグ付けされた質問 「hardlink」

ハードリンクは、ファイルシステム上のファイルまたはディレクトリに名前を関連付けるディレクトリエントリであり、事実上、ファイルシステム上の他の場所にあるエイリアスを作成します。

4
Linuxのハードリンクとは何ですか?
私は周りを検索して、ハードリンクとシンボリックリンク(ソフトリンク)の違いを理解しようとしています。 私が見つかりました。このリンクは非常に便利です。しかし、私はまだはっきりしていません。ソフトリンクは元のファイルのコピーではないことを理解していますが、ハードリンクはコピーですか?
9 linux  hardlink 


3
OSXでハードリンクをどのように作成しますか?
わかった、これで頭をたたいている。OS Xでは、ターミナルウィンドウでハードリンクを作成するために、次のように入力することができるはずです... ln a.txt b.txt ...これにより、からa.txtへのハードリンクが作成されb.txtます。シンプルでわかりやすい。 そのステートメントを実行すると、確かに、Finderのb.txt右側に表示されますa.txt。ただし、a.txtTextEditを使用して編集した後でもb.txt、元のデータは残っています!つまり、リンクではなく、ハードなどのコピーを実行したように見えます。 私にはまったく意味がありません!だから誰かが私がここで間違っていることを教えてもらえますか?

2
Windows XPで2つのファイルがハードリンクされているかどうかを検出
私は私がコマンドを使用できることを知っています fsutil hardlink <new_file> <existing file> ハードリンクを作成する コマンドプロンプトから。 私の質問は、次のように、2つのファイルがハードリンクされているかどうかを確認できるコマンドラインツールがあるかどうかです。 ls -i UNIXで?

1
ファイルをコピーする代わりにrsyncでハードリンクできますか?
cp -lファイルをコピーする代わりにハードリンクし、ファイルシステムのスペースを節約します。その--exclude機能のため、cpではなくrsyncを使用する必要があります。 だから私の質問は、ファイルをコピーする代わりにハードリンクファイルにrsyncを取得するにはどうすればよいですか?明らかに、これはローカルのファイルシステムのコピーです。rsyncの-Hオプションのドキュメントを読みましたが、これがと同じように動作するかどうかはわかりませんcp -l。

1
ファイルシステム内のすべてのファイルがエラーなく読み取れることを確認する方法
私はバックアップを作成するためにext4ファイルシステムの外付けハードドライブを使用しています。私が使っているバックアップソフトウェア(faubackup)は、ファイル階層1:1をハードドライブのタイムスタンプ付きのフォルダにコピーし、内容が同じファイルに変更されていないファイルの新しいコピーをハードリンクするように増分バックアップを作成します。前回のバックアップの対応するサブフォルダにあります。私は最近バックアップドライブが死んでしまったので、書き込まれたすべてのファイルが実際にI / Oエラーなしで読めることを確認したいので、バックアップに頼ることができます。 そのための1つの方法は、パーティション全体を読むことです。によって dd それに /dev/null。ただし、ディスクは3TBの大きさであり、そのためには約7時間かかります(USB 3.0経由)。 別の方法は使用することです e2fsck とともに -c オプションが、これも年齢がかかります。 ディスク全体をチェックするのではなくファイルだけをチェックすることで、プロセスを高速化することが可能であるべきだと私は思います。これは可能である。すべてのファイルをtarアーカイブに書き込みます。これはディスクには書き込まれませんが、 /dev/null。ここで問題はハードリンクです。私が10の増分バックアップを言ったとしたら、そのための記憶域はディスクのほんの一部に過ぎませんが、それはそれより約10倍大きいように見えます。 私の質問: ディスク上のファイルだけを読み取る方法はありますか。同じ記憶領域にハードリンクしているファイルの各セットに1つだけ読み取る方法はありますか?または作る方法はありますか e2fsck -c それとも似たようなものだけがファイルシステムの使用された部分(割り当てられたブロック)をチェックしますか?

1
..と親ディレクトリ間のリンクがハードリンクであるのはなぜですか?
..と親ディレクトリ間のリンクがハードリンクであり、同じiノード番号を持っていることに気付きました。 starpinker@host /home/starpinker/unix $ ls -ail 8200794 drwxrwxr-x 2 starpinker starpinker 4096 Aug 23 11:22 . 1409238 drwxrwxr-x 2 starpinker starpinker 4096 Aug 23 11:22 .. ここで、iノード番号/home/starpinker/unixは8200794で、iノード番号は/home/starpinkerである1409238。 これについて質問があります。 ハードリンクは、異なるファイルシステム間で作成できません。次に、親ディレクトリと子ディレクトリが異なるファイルシステムにある場合はどうなりますか?たとえば私の場合は、場合のために/home/starpinkerと/home/starpinker/unix異なるファイルシステムであり、UNIXは、その後の間のリンクになる、ちょうどマウントポイントである/home/starpinker/unix/..とは/home/starpinkerまだハードリンクしますか?

0
同じファイルへのすべてのハードリンクを削除する方法(inode)?
私が使用したリンクシェル拡張を同じハードドライブ内の異なるディレクトリにハードリンクの束を作成するために(私は両方の異なる場所に保存されている必要があるとして、スペースを節約するために)。ファイルを完全に削除する場合、ファイルエクスプローラー(win10)で両方のハードリンクを見つけて、両方を削除することが唯一の方法です。 リンクシェル拡張機能などを使用して、両方のハードリンクを同時に削除する方法はありますか? 前もって感謝します。 注:これらのハードリンクをコンテキストメニューなどから削除する方法を探しています。ハードリンクシェル拡張を使用してハードリンクを作成するのと同じくらい簡単です。

0
ドライブ内のハードリンク数
ある外付けドライブを別のドライブにバックアップしました。どちらもNTFSファイルシステムです。すべてのディスクの内容をaというフォルダに移動し、右クリックしてファイル/フォルダ/サイズの数を取得しました。それらはまったく同じです。 しかしWindowsは1.33ギガバイト(バックアップ)とQ:521メガバイトを持つJを報告しています。 ハードリンクのせいかもしれませんが、Jよりももっと多く持っている必要があります。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.