デバイスノードのコピー

デバイスノードのコピー

実行中のLinuxインストールをより大きな新しいディスクに移動しようとしているので、新しいディスクをUSBポートに接続し、パーティションを分割してファイルシステムを作成します。すべてのファイルのコピー中に/ devディレクトリに問題が発生しました。 "cp -a" はほとんどの操作を実行しますが、/dev/video0 で "タスクがサポートされていません" のため失敗します。

>ls -l /dev/video0    # on disk I copy from
crw-rw----+ 1 root video 81, 0 2011-09-25 17:15 video0

>ls -l dev/video0    # on disk copied to
crw-rw---- 1 root video 81, 0 2011-09-25 17:15 video0

したがって、アクセスフィールドの末尾の「+」を除くすべてがコピーされたように見えます。このプラス記号は何を意味し、ターゲットディスクにそれを作成するにはどうすればよいですか?

ベストアンサー1

最後は+存在を示します。アクセス制御リスト。所有ユーザー、ファイルが属するグループ、および他のユーザーのみを区別する既存のUNIX権限に加えて、ファイルのACLは他のユーザーまたはグループに対する特定の権限を提供します。getfaclファイルのACLを表示およびsetfacl設定するために使用できます。

cp -a可能であれば、ACL がコピーされます。これが不可能な理由は、ターゲットファイルシステムがACLをサポートしていないか、ACLをサポートせずにインストールされているためです。

ここでは重要ではありません。/devいずれにせよ、これはオンディスクファイルシステムではないためコピーしてはならず、/proc他の/sys非ディスクファイルシステムもコピーしてはいけません。cp -ax他のファイルシステムに繰り返さずにコピーを実行するには、実行します。

cp通常、既存のインストールを新しいディスクに転送する最良の方法ではありません。ファイルシステムを一括コピーしてから拡張してターゲットパーティションを埋めるのは簡単です。簡単に言うと:

cat </dev/sdy1 >/dev/sdz1
resize2fs /dev/sdz1

これは/dev/sdy1、既存のインストールを含み、/dev/sdz1システムをより大きなディスクにコピーするパーティションです。このコマンドを入力すると、ターゲットパーティションが元に戻せないように削除されるため、非常に注意してください。

ファイルをコピーしたら、新しいディスクにブートローダを設定する必要があります。トリックを実行する必要がありますが、新しいディスクがプライマリディスクになることを示すためにgrub-install /dev/sdz最初に作成する必要があるかもしれません。/boot/grub/device.map問題が発生した場合、最も簡単な(最も便利ではない場合でも)方法は、新しいディスクを最終位置に挿入してUbuntu CD / USBから起動し、インストーラにブートローダを変更するように指示することです。

おすすめ記事