GNU/Linux >> Linux の 問題 >  >> Linux

巨大なフォルダの名前変更:危険ですか?

フォルダーが同じファイル システム内にある場合、フォルダーの名前を変更しても安全です。

マウント ポイントの場合 (/data 私にはマウントポイントのように見えます。これを mount で確認してください )、単純な mv 以外の何かをする必要があります mv /data /BD_FILES以降 データをルート パーティションに移動します (これは望ましくない場合があります)。

ファイルシステムをアンマウントし、空になったディレクトリの名前を変更し、/etc/fstab を更新する必要があります。

つまり、

<オール>
  • umount /data
  • mv /data /BD_FILES (/BD_FILES と仮定すると まだ存在しない場合は、最初に移動してください)
  • 更新 /etc/fstab 、マウントポイントを /data から変更します /BD_FILES まで
  • mount /BD_FILES
  • これには、ファイルをコピーする必要はありません。ファイル システムのマウント ポイントとして機能するディレクトリの名前を変更するだけです。

    ディレクトリの名前変更に新しいファイル システムへの移動が含まれる場合 (これは /data の場合に当てはまります) /BD_FILES の間、1 つのディスク上にあります たとえば、何かをより大きなパーティションに移動する場合によくあることです)、コピーが正常であることを確認できるまで、元のデータをそのまま残してデータをコピーすることをお勧めします。

    でこれを行うことができます
    rsync -a /data/ /BD_FILES/
    

    たとえば、 rsync を参照してください これが行うことと行わないことについてはマニュアルを参照してください (たとえば、ハード リンクは保持されません)。

    フォルダの名前が変更されたら、既存の手順 (フォルダを使用するプログラムとユーザー、バックアップなど) が名前の変更を認識していることも確認する必要があります。


    ディレクトリ内のすべてのファイルの名前を変更するのではなく、1 つの名前を変更しています / にあるファイル。その理由:

    <オール>
  • ディレクトリはファイルで、
  • ファイル システムは、実際のテキストではなく、inode を本当に気にします。
  • したがって、ファイルの数やデータの量に関係なく、ディレクトリの名前を変更するのは簡単です。


    名前を変更するだけの場合 (ソースとターゲットが 同じ ファイル システム)、それは単にディレクトリ エントリの名前を変更することです。成功してディレクトリに新しい名前が付けられるか、失敗した場合は何も変わりません。

    ソースとターゲットが異なるファイル システムにある場合、データは mv までにコピーする必要があります .最大ファイル サイズ、ファイル名の制限など、ファイル システム機能の違いにより、問題が発生する可能性があります。問題を回避するには、まずファイル (cp) をコピーします 、 rsync 、…) コピーが正常に完了したら、元の場所にあるファイルを削除します。

    * ただし、BUGS で言及されているような、いくつかのまれなケースがあります。 man 2 rename のセクション


    Linux
    1. Javaファイルマネージャー

    2. 巨大なファイルの線Xから線Yへの猫?

    3. Linux – / net Directoryの目的は?

    1. Linux ファイル/ディレクトリのパーミッションチートシート

    2. ディレクトリへのシンボリックリンクを削除する

    3. .tar.gz ファイルの作成時にディレクトリを除外する

    1. sys/types.h:そのようなファイルまたはディレクトリはありません

    2. フォルダーを実行可能にする必要があるのはなぜですか?

    3. Linux で別のユーザーのホーム ディレクトリからファイル/フォルダをコピーするにはどうすればよいですか?