
千の言葉よりも一枚の絵がより重要なので、次のように始めたいと思います。
画像を見ると、約500GBのハードドライブがあることがわかります。ファイルシステムはext4です。この500GBハードドライブには74TBを超えるファイルがあります。
rm .npmignore
これがどのように可能であるかを知りたいです(明らかにどんな種類のディスクの損傷)。しかし、もっと重要なのは、ファイルを削除しても安全なのか、それとも同様に効果的な削除方法があるのかを知りたいのです。
私の主な関心事は、ファイルの起動後にディスク上のデータを破壊することです。これは不可能です。
好奇心が強いと、ファイルはリポジトリのPATHの下に埋め込まれていますnode_modules/bower/node_modules/request/node_modules/qs/.npmignore
。ファイルをディレクトリから移動して実行した後、ファイルgit checkout .npmignore
は実際にはテキストファイル(duh)であり、実際には700バイト未満であることがわかりました。
答え1
ファイルシステムが破損している可能性はほとんどありません。ほとんどのUnixファイルシステムと同様に、Ext4fsはスパースファイルをサポートしています。つまり、ファイル内の特定のブロックは物理メディアではサポートされておらず、通常読み取られたときに返されるブロックにはnull値(0)のみが含まれます。
スパースファイルを削除することは特定のリスクを意味するわけではありませんが、実際には、一部のプロセスや人が失いたくないデータが含まれる可能性があります。
このstrings
コマンドを使用して、スパースファイルに含まれる実際のロードを確認できます。
ファイルシステムが破損していると思われる場合は、問題を見つける最善の方法はマウントを解除してfsckすることです。
編集する:あなたの質問に関する最後のコメントによると、最終的にファイルシステムが破損しているようです。破損の兆候が見られるファイルを削除したり、ファイルシステムで作業を実行することは危険であり、ファイルをさらに破損する可能性があります。できるだけ早く削除し、fsck
他のメタデータが破損していないことを確認することをお勧めします。
答え2
ファイルを削除することは「安全」でなければなりません。これは、npmで操作を実行するときに無視するファイルとパターンをnpmに伝える一種の設定ファイルです。
削除するかどうかはあなた次第です。便利な目的に使用できます。たぶんそれを猫にして、その中に何が入っているのか見てそこから判断を下すこともできます。
@jordanmが指摘したように、ファイルは実際には47TBではありません。
答え3
Wumpus Q. Wumbleyが指摘したように、これは破損したバイトであるか、または膨大な偶然の一致です。私は思い切ってファイルを削除することにしましたが、周囲のファイルに明らかな損傷を与えることなくプロセスが順調に進みました。