远程将CentOS改装成Debian

 

=环境需求=

 

因一些特殊情况,需要远程将CentOS改装成Debian

当前OS:CentOS 5.4 64bit (本文内容稍作修改也适用于其它发行版)

目标OS:Debian 5.0 (lenny) amd64

文中我是以一块新硬盘举例的,实际可以不用加硬盘,只要有2G左右的空闲分区即可。

 

=debootstrap安装基本系统=

创建目标目录


sudo mkdir /mnt/target

sudo fdisk /dev/sdb # 给目标磁盘分区

sudo mkfs.ext3 /dev/sdb1 #格式化目标磁盘

sudo mount /dev/sdb1 /mnt/target #挂载目标分区


 

安装debootstrap工具:


wget http://ftp.de.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.10lenny1.tar.gz

#如果下载链接过期,请去debootstrap主页找新版本:http://packages.debian.org/source/lenny/debootstrap

tar xvf debootstrap*.tar.gz -C /tmp/

cd /tmp/debootstrap

make install


 

开始安装基本系统:


sudo ./debootstrap --arch amd64 lenny /mnt/target http://mirrors.163.com/debian/ #从163的源安装一个amd64架构(即64位)的Debian 5,根据网络情况,要等一段时间

sudo chroot /mnt/target /bin/bash #Chroot到目标系统


 

修改root密码:


passwd root


创建 /etc/fstab #根据你的实际情况来修改: 


     # file system   mount point     type    options                 dump    pass

     /dev/hda1       /               ext3    defaults                0       0

     /dev/hda5       none            swap    sw                      0       0

     proc            /proc           proc    defaults                0       0

     sys             /sys            sysfs   defaults                0       0


挂载所有分区: 


     mount -a

     ls /proc# 检查信息是否正确

     mkswap /dev/hda5 #将/dev/hda5格式化成swap


配置键盘:


     dpkg-reconfigure console-setup


配置网络:


     editor /etc/network/interfaces


配置主机名:


     echo debian > /etc/hostname


添加一个普通用户: 


     adduser foo

     echo 'foo ALL=(ALL) ALL' >> /etc/sudoers

     chmod 0440 /etc/sudoers

passwd foo #修改foo用户的密码


设置/etc/apt/sources.list(Apt软件源),/etc/hosts,/etc/resolv.conf(DNS服务器地址),/etc/network/interfaces(IP配置)


echo "127.0.0.1 localhost debian" > /etc/hosts


 

安装amd64内核与grub引导器、openssh-server


     apt-get install linux-image-amd64 grub openssh-server

     mkdir -p /boot/grub

     cp /usr/lib/grub/i386-pc/* /boot/grub

     editor /boot/grub/menu.lst 

     exit # exit the chroot(), that is


将grub引导记录安装到目标磁盘


     sudo grub-install --no-floppy --root-directory=/mnt/target /dev/sdb


如不成功,可以进入到grub shell里安装。


grub

root (hd1,0)

setup (hd1)


 

修改CentOS当前grub引导优先级:


editor /boot/grub/menu.lst #添加Debian并设置为最高


OK!可以重启了。重启之前一定要检查好目标磁盘的/etc/fstab和/boot/grub/menu.lst,以及网络配置等,以免重启后连接不上。

如有疑问请在我博客上找我: http://Linuxzh.org

 

已有 8 条评论 »

  1. 竟能如此配置? 太伟大了? 那为何不重装一个呢 ? 呵呵

  2. 刘楠 刘楠

    楼主,我顶你个肺呀!!真的很强悍!

  3. @ideapad 远程哦!
    @刘楠 你终于不用马甲了……呵呵

  4. Maonx Maonx

    看着不错,来顶下

  5. 看完..发现:安装debootstrap工具完之后 就没机会出场了....其他的提到的也不是他的使用和效果

  6. @christian 嗯,呵呵,用一次就行了,如果有装好的Debian也可以直接 cp -a

  7. 其实俺的意思是。。。这个东西只是负责下载一个system,想象中的效果有所失望而已

  8. @christian
    呵呵,其实这样就够了,况且debootstrap还有一些其它参数,很方便,比如debian-installer。实际上Unix的KISS哲学也是如此,每个东西看起来都很简单,但加在一起就是神器。

添加新评论 »