[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:32004] Re: 他のマシンへ同じ環境を移植する方法



吉田さん,みなさん,はじめまして.

たわ と申します.
偶然,いまさっき,同マシン内でのHDD入れ替えを行いました.

参考になればと,手順をお知らせします.

内容:
20GBの旧HDD(IDE)から,40GBの新HDD(IDE)へ,Debianの環境を移行.


今回,吉田さんにおかれましては,マシン構成が同じである別マシンへの移行,
ということで,ちょうどピッタリくる方法になると思います.


手順詳細:
新HDDを,マシンにつなぎます.
旧: /dev/hda
新: /dev/hdb  <- 追加


<第一段階> 領域の用意

旧HDDのDebianを起動して,rootから,

#cfdisk /dev/hdb

を行い,Debianの新規インストール時のパーティション確保の容量で,
83 Linux       /dev/hdb1
82 Linux swap  /dev/hdb2
等とします.


#mkreiserfs /dev/hdb1

として,Reiserfs領域を確保します.
(すいません.私の場合です.ex2fsであれば読み替えて下さい)

適当なマウント用ディレクトリを作成して,
#mount -t reiserfs /dev/hdb1 /mnt/tmp

とマウントします.


<第二段階> コピー

これより,コピーに入ります.

#cd /

ここで,/ 以下の全てのフォルダ(とvmlinuzとかのファイル)をコピーします.
たとえば,/binフォルダであれば,

#tar cf - /bin | ( cd /mnt/tmp ; tar xpf - )

として,コピーします.
これを,他の/boot /usr /home
等全てについておこないます.

tarを用いているのは,タイムスタンプを変えないため,tarのpオプションは,
パーミッションを変えないためです.

ちょっと難しいでしょうか?
・tarすることで,/binをタイムスタンプ変更から保護
・tar - で標準出力へtar結果を出力
・cd /mnt/tmpで,ディレクトリを変更しつつ
・tar xpf -で,最初標準出力に出した/bin.tarを解凍.
です.
(cp -aで,もっと簡単に属性保護コピーが出来るそうですが,私は今回tarで済
ませました.)

途中,ソケットはコピーしません等の警告等が出ると思いますが,この手順で問
題はない(と思います)です.


<第三段階> 仕上げ

#chroot /mnt/tmp
として,/mnt/tmpを/ とします.

必要があれば,状況に合わせて,/etc/fstabを書き換えます.
私の場合は,パーティションの分け方が,旧と新で違いましたので,書き換えま
した(新HDDでは,hda1に別OSがあったのが理由です).

また,/etc/lilo.confも必要があれば,状況に合わせて書き換え,
(boot = /dev/hda1の部分等です.私の場合だと,hda1に別OSがあるため,hda2
に変えました.私の変更はここだけです.)

#/sbin/lilo
を実行します.

ここまで終わったら,
#exit
で,chrootを抜けたのちshutdownし,
HDDを繋ぎかえます.

新:/dev/hda


あとは,起動するだけです.


別に失敗しても,旧ディスクには何の影響もありませんから(あたりまえか),気
楽に出来ます.
私がこの作業に要した時間は,トータルで40分ほどでした.
Debianで使用していた領域は,3GBほどです.



> 提示した情報が少なくて申し訳ありませんでした。
> 目的は、
> ・全く同じ物がほしいのです。(PCの置き換えでなくもう一つ別のPCが必要な
の
> です)
> ・オリジナルマシンは停止しても良いですし、HDの取り外しも可ですし、PCは
CD-ROM
> からブート可能です。
> 
> 吉田
> 
----
TAWA
Yokosuka City, Kanagawa Pref.