(/に含まれていて、/ mnt/sdb5に新しい場所が準備されている)動作中のLinuxシステムのコピーを作成する必要があります。これには、/ devにハードリンク、ソフトリンク、および特殊ファイルが大量に含まれているようです。 cpio
は、追加のマジックを適用せずにこのジョブを処理しますか?
現在知られているセーフガード:
root=/dev/sdb5
で動作するまで、実行中のシステムを削除/変更しません。削除する前に、パーティション全体のバックアップを取ってください。しかし、それでも、cpioがいくつかのフラグを逃し、アクセス権/ノードタイプ/ソフトまたはハードリンクを不自由にしたからといって、時間を失うことはありません。
どのツールを使用するか/どの水中岩石を避けるべきか?
cpio
に関する実際の質問に答えるには、次のフラグを使用しますcpio
:
find / -xdev -depth \! -path ./lost+found -print0 | cpio --pass-through --null --dot --make-directories --unconditional --preserve-modification-time --sparse /mnt/sdb5
もちろん、ネットワーク経由でコピーしているわけではないので、私はcp
を使用するだけです。
cp --archive --sparse=always --verbose --one-file-system --target-directory=/mnt/sdb5 /
また、コピーを複数回実行したい場合は、再開機能としてrsync
を選択することをお勧めします。 (また、cp
と同様に、ACLと拡張属性を処理し、オプションでcpio
のようにネットワーク経由で機能します。ローカルで最初のコピーを行うことを除いて、これは最も便利なオプションです。 cp
を使用して実行します。)
rsync --archive --inplace --hard-links --acls --xattrs --devices --specials --one-file-system --8-bit-output --human-readable --progress / /mnt/sdb5
コピーすることを忘れないでください/boot
および/dev
!
/boot
は簡単です。コピーするだけです。だが /dev
はudev
によって非表示になっているため、最近はかなりトリッキーです。次の手順をお勧めします。
mkdir /tmp/dev
mount --move /dev /tmp/dev
/dev
から/mnt/sdb5
上記のコマンドのいずれかを使用mount --move /tmp/dev /dev
rmdir /tmp/dev
@Kloxが述べたように、同じサイズのパーティションをコピーするときは、dd
を使用することに同意します。
ただし、サイズの異なる別のパーティションにディスクをコピーする場合は、rsync
を使用します。新しいパーティションをマウントして(たとえば、/ mnt/new)、次のようにします。
# rsync -a --exclude=/proc --exclude=/dev --exclude=/sys / /mnt/new
シンボリックリンクの追加の魔法はなく、ライブCDも必要ありません(シングルユーザー/ init 1で十分です)。
dd
のより最適なバリアントは partimage
を使用し、パーティションの使用されたセクションのみをコピーして、未使用の大きなパーティションのコピーをより適切にします。
重要な警告に注意してください:
Partimageは、新しいUbuntuインストールのデフォルトであるExt4をサポートしていません。
便利なコピーが System Rescue CD ディストリビューションに含まれています。
Linuxインストールをハードドライブ間で移動するときは、常にLive CDから起動し、dd
を使用してパーティション全体をコピーします。私はこれがディスクサイズの変更を処理しないことを認識しています(必然的に新しいディスクは大きくなり、物事を簡素化します)。cpio
の使用に懸念がある理由から、この手法が好きです:違う。 dd
テクニックを使用すると、すべてかゼロかがわかります。新しいディスクが起動してすべてが同じであるか、ディスクが起動しません。後でポップアップする問題が潜むリスクはありません。
もちろん、パーティションが新しいディスクをいっぱいにしないという問題がありますが、新しいパーティションを作成して余分なスペースをいっぱいにし、シンボリックリンクに依存してディレクトリを移動したいのです。 (パーティションのサイズを変更するためのツールもあると思いますが、使用していません。)