ディレクトリ構造を変更せずにあるファイルシステムから別のファイルシステムに移動するには?

ディレクトリ構造を変更せずにあるファイルシステムから別のファイルシステムに移動するには?

/dev/xvda1容量がいっぱいで、内容を30 GBのファイルシステムに移動したいと思いますudev

Filesystem      Size  Used Avail Use% Mounted on
udev             30G  4.0K   30G   1% /dev
tmpfs           5.9G  768K  5.9G   1% /run
/dev/xvda1      7.8G  7.4G     0 100% /
none            4.0K     0  4.0K   0% /sys/fs/cgroup
none            5.0M     0  5.0M   0% /run/lock
none             30G     0   30G   0% /run/shm
none            100M     0  100M   0% /run/user

どうすればいいですか?

スタック:EC2 Ubuntuマシン。

答え1

大量のデータをコピーするためにcpを使用しないでください。
また、中断すると再起動できるため、rsyncを使用します。以下を使用してください。

rsync -az -H /path/to/source  /path/to/destination

-a : Archive mode (i.e. recurse into directories, and preserve symlinks, file permissions, file modification times, file group, file owner, device files & special files) <br>
-z : Compress file data during the transfer <br>
-H : Preserve hard links (i.e. copy hard links as hard links)

コメント作成者が指摘したとおりに編集してください。これがあなたの/ディレクトリであるかどうかはわかりません。
bash または zsh をシェルとして使用する場合は、以下を追加します。

--exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"}

今はなった

rsync -az -H --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} /path/to/source  /path/to/destination 

それ以外の場合、別のシェルを使用する場合は、--excludeそれぞれの異なるディレクトリに対して1つのステートメントを実行する必要があります。

答え2

ほとんどの場合、あるファイルシステムから別のファイルシステムにファイルを移動しません。仮想マシンでディスクを拡張したり、同じディスク上のスペースを増やしたりするには、ファイルシステムを含むパーティションを拡大し、ファイルシステムを拡張してパーティションを作成する必要があります(使用するコマンドはパーティションの種類によって異なります)。およびファイルシステムタイプ)。新しいディスクに移動する場合は、通常、上記のようにパーティション全体をコピーしてからズームインする方が高速で簡単です。

あなたの場合、これは仮想マシンなので、まず大きなディスクを提供する必要があります。指摘したとおりコメントにマークプロットニック(Mark Plotnick)があります。、調査するAWSガイド;新しいボリュームを接続するためのWebインターフェースと、複製を実行するためのWebインターフェース(スナップショットの作成と復元)があります。

これは/devストレージファイルシステムではなくRAMのファイルシステムであることに注意してください。 30GBの空き容量は保存できる最大データ量ですが、RAMの一部を占め、再起動時に失われます。また、ファイルをに移動しないでください/dev。再起動すると、そのファイルが削除されます。

関連情報