Ubuntu硬盘ISO安装一法

我在公司的机器没有光驱,有Ubuntu的Desktop安装盘也没有用,捣鼓了很久的硬盘安装也没有成功,因为Ubuntu Dapper使用了Live CD的启动方式。而我尝试过唯一能从硬盘ISO安装成功的就是Fedora Core 5了。
在研究了数周毫无结果就要放弃的时候,我突然灵机一动,觉得既然Ubuntu Dapper的CD就是一个完整的Linux系统,那何不直接拿来用呢?在经过了一整夜的研究之后,我终于用这种丑陋的方法,将Ubuntu Dapper装在了没有光驱的机器上。
具体步骤如下:

  1. 进入原有的Linux系统,先对系统进行分区,将目标系统的root分区准备好,并挂载在某个目录比如/target下,然后将其他分区准备好,相应挂载在/target下(比如/usr, /var, /home等)。在此不赘述,可以参考Gentoo磁盘准备的教程
  2. 使用

    mount -o loop -t iso9660 [ISO文件路径] [挂载路径A]

    将镜像挂载到某个目录下A,这里我使用的镜像是Ubuntu Dapper的desktop安装镜像。

  3. 然后再用

    mount -o loop -t squashfs A/casper/filesystem.squashfs [挂载目录B]

    ,因为Ubuntu Dapper的Live CD的文件系统内容都是以squashfs形式压缩在光盘的casper/filesystem.squashfs文件中的。

  4. 在刚刚挂载好的Live CD的目录B中,复制所有文件到/target下,

    cp -p -r B/* -t /target

    其中-p表示保留所有的文件权限信息,-r表示递归复制。这时候基本的系统内容就有了

  5. 如果有chroot,也可以调用:

    chroot /target /bin/bash

    (以下假设运行了这条指令,根目录转到了/target中)

  6. 准备/etc/fstab,起初的内容都是空的,根据自己分区的情况酌情编写,以下是一个参考例子:

  7. 准备引导文件,如果已经装了Grub或者Lilo,只需要修改一下相应的配置文件,比如,在grub的menu.lst中加入:

    title Load Ubuntu Dapper
    root (hd0,5) #假设是这里的安装根目录
    kernel /vmlinuz root=/dev/hda6 quite splash –
    initrd /initrd.img

  8. 如果是自己用无所谓建立新用户的话,将来可以直接使用root(初始密码为空),但必须在/etc/X11/gdm中,将gdm.conf和factory-gdm.conf中的AllowRoot设置为true。如果需要更加安全,则请建立相应的用户,但必须在/etc/sudoers中添加相应的用户,使用visudo来进行编辑。
  9. 编辑/etc/apt/source.list,添加一些ubuntu的apt源,具体就不列出来了。
  10. 调用dpkg-reconfigure -a对所有安装了的Debian包进行重新配置,尤其重要的是xserver-xorg和语言等等
  11. 之后重启,便可选择进入我们克隆出来的Live CD的系统了。这时候应该对系统进行一些设置,比如在系统中选择自己的语言,并使用新立得来更新系统,同时也可以将Ubuntu Live CD相关的一些包删除。
  12. 这时候,终于可以在机器上使用Ubuntu Dapper了。

唉……瞎折腾啊。

“Ubuntu硬盘ISO安装一法”的一个回复

发表评论

电子邮件地址不会被公开。 必填项已用*标注