个人工具

“硬盘安装LiveCD”的版本间的差异

来自Ubuntu中文

跳转至: 导航, 搜索
如何硬盘安装LiveCD?
grub2
 
(未显示20个用户的44个中间版本)
第1行: 第1行:
 +
{{Template:系统安装导航}}
 +
== 前言 ==
 +
更新的说明:--[[User:Xiaodan|Xiaodan]] 2016年1月8日 (五) 18:42 (CST)
  
 +
本文主要适用于'''Linux'''下本地安装Ubuntu系统,其原理也可借鉴于其他linux操作系统。
 +
同时,本文主要讨论BIOS下的安装,EFI请直接查看“EFI”一节。
  
== 什么是LiveCD? ==
+
如果您不知道您的PC适用于哪一类,建议优先尝试BIOS引导下的操作,或求助他人。
 +
== 设置iso文件 ==
 +
说明:以下内容均为假设情况,在实际操作中需要灵活掌握
 +
假如我们把iso文件放在挂载磁盘下进行安装 ,挂载磁盘的位置为/media/disk/,其中/media/disk/的分区格式为vfat,也即FAT32 .其中/media/disk/的具体情况视各自具体情况而定.一个重要的前提是必须保证该挂载磁盘被fstab有效挂载
 +
接下来我们要把该iso和其中的.disk和casper下的vmlinuz和initrd.lz释放出来,保存至/media/disk/
 +
在转移到/media/disk/下前请检查下/media/disk/的剩馀空间,剩馀空间至少要有750M。如果剩馀空间不多可考虑删除多余的文件。
 +
首先将iso文件转移到/media/disk/下,进入存放iso文件的目录下
 +
<pre>sudo mv *.iso /media/disk/</pre>
 +
然后挂载iso,并拷贝到 /media/disk/
 +
sudo mkdir /mnt/live&nbsp;;
 +
cd /media/disk&nbsp;;
 +
sudo mount -t iso9660 -o loop,utf8 *.iso /mnt/live/&nbsp;;
 +
sudo cp -r /mnt/live/.disk  /media/disk/&nbsp;;
 +
sudo cp /mnt/live/casper/vmlinuz  /media/disk/&nbsp;;
 +
sudo cp /mnt/live/casper/initrd.lz  /media/disk/
  
[http://zh.wikipedia.org/w/index.php?title=LiveCD&variant=zh-cn 关于LiveCD]
+
请注意,较新版本的ubuntu安装文件中,vmlinuz更名为vmlinuz.efi,用于efi启动模式,具体见'''EFI'''。
 +
需要将该文件重命名,去掉efi后缀。
 +
<pre> mv /media/disk/vmlinuz.efi /media/disk/vmlinuz </pre>
  
== 硬件要求  ==
+
如果什么重要的文件请在系统重启前及时备份。
  
内存不小于328M
+
== 设置启动项(镜像、.disk、vmlinuz和initrd.lz 四个文件都在u盘等设备上时)  ==
  
硬盘不小于5G
+
===grub(类似CentOS和ubuntu旧版本)===
  
== 下载光盘文件  ==
+
可以先
 +
<pre>
 +
locate menu.lst
 +
</pre>
 +
找出该文件的位置,之后进行修改
  
使用axel或wget下载ubuntu8.04.1的LiveCD文件
+
请灵活更改以下代码。
<pre>wget -c http://tw.releases.ubuntu.com/hardy/ubuntu-8.04.1-desktop-i386.iso</pre>
+
<br> 验证
+
<pre>md5sum ubuntu-8.04.1-desktop-i386.iso
+
c69e34e92d5402d1b87e6babc739f774 *ubuntu-8.04.1-desktop-i386.iso</pre>
+
建议下载验证完成后备份该ISO文件到U盘或挂载磁盘上。
+
  
== 设置iso文件  ==
+
注意,root (hd1,0)请根据自己的实际情况设置(应该为电脑的另一块硬盘或者U盘)。
 +
另外,早期版本的Ubuntu为initrd.gz,新版本的Ubuntu为initrd.lz(本人非计算机专业,估计应该是内核相关的文件)
 +
<pre>
 +
title Ubuntu x.xx LiveCD
 +
root (hd1,0)
 +
kernel /vmlinuz boot=casper iso-scan/filename=/ubuntu-x.xx-desktop-i386.iso ro quiet splash locale=zh_CN.UTF-8
 +
initrd /initrd.lz
 +
boot
 +
</pre>
  
说明:以下内容均为假设情况,在实际操作中需要灵活掌握
+
===grub2===
 +
在GRUB 1.98 Ubuntu10.04测试
  
假如我们把iso文件放在挂载磁盘下进行安装 ,挂载磁盘的位置为/media/disk/,其中/media/disk/的分区格式为vfat,也即FAT32 .其中/media/disk/的具体情况视各自具体情况而定.一个重要的前提是必须保证该挂载磁盘被fstab有效挂载
+
默认安装情况下打开grub2启动菜单的方法:
  
接下来我们要把该iso和其中的.disk和casper下的vmlinuz和initrd.gz释放出来,保存至/media/disk/  
+
grub2启动菜单默认是隐藏的,除非您改动了/etc/default/grub中的设置。在开机启动时一直按Shift键,直到grub2启动菜单出现,这时候可以按上下方向键选择一个项目
  
在转移到/media/disk/下前请检查下/media/disk/的剩馀空间,剩馀空间至少要有750M。如果剩馀空间不多可考虑删除多余的文件。
+
/etc/grub.d/40_custom(系统自带)中进行编辑,或者自行新建50_ubuntu进行编辑,应该注意的是,这些文件必须是可执行的,才能够由update-grub写入二进制文件,因此必须赋予可执行权限:
  
首先将iso文件转移到/media/disk/下,进入存放iso文件的目录下
+
<pre>
<pre>sudo mv *.iso /media/disk/</pre>  
+
sudo chmod +x /etc/grub.d/40_custom
然后挂载iso,并拷贝.disk、vmlinuz和initrd.gz 三个文件到 /media/disk/
+
</pre>
  
sudo mkdir /mnt/live&nbsp;; cd /media/disk&nbsp;; sudo mount -tiso9660 -o loop,utf8 *.iso /mnt/live/&nbsp;; sudo cp -r /mnt/live/.disk  /media/disk/&nbsp;; sudo cp /mnt/live/casper/vmlinuz  /media/disk/&nbsp;; sudo cp /mnt/live/casper/initrd.gz  /media/disk/
+
在40_custom
  
如果什么重要的文件请在系统重启前及时备份。
+
<pre>
 +
#!/bin/sh
 +
exec tail -n +3 $0
 +
</pre>
  
== 设置启动项  ==
+
之后的位置添加代码,这里的ubuntu-10.04-desktop-i386.iso镜像文件是放在U盘(另外一块硬盘)的根目录下。
  
修改grub文件,使启动项指向该iso文件
+
<pre>
<pre>sudo gedit /boot/grub/menu.lst</pre>  
+
menuentry "Ubuntu 10.04 LiveCD" {
复制下面的部分到menu.lst文件
+
set root='(hd1,1)'
<pre>title Ubuntu 8.04.1 LiveCD
+
loopback loop (hd1,1)/ubuntu-10.04-desktop-i386.iso
root (hd0,3)
+
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/ubuntu-10.04-desktop-i386.iso ro quiet splash locale=zh_CN.UTF-8
kernel /media/vmlinuz boot=casper iso-scan/filename=/media/disk/*.iso ro quiet splash locale=zh_CN.UTF-8  
+
initrd (loop)/casper/initrd.lz
initrd /media/initrd.gz
+
boot
boot</pre>  
+
}
说明:第二行的root (hd0,3)部分依据你的具体情况而定
+
</pre>
  
如果你的/media/disk/位置是 (hd0,1) ,那么你就应该设置为(hd0,1)
+
其中,menuentry "xxx" { }为固定语法,必须要写。注意,{ }内的行与行之间不能有空行,必须是连续的。
 +
loopback为grub2的新增功能,用于载入镜像文件。
 +
grub2中,kernel命令已经被替换为linux;root已经被替换为set root hdx,x。
  
设置好后保存退出
+
请注意,做出以上更改后,必须要执行grub-update,使更改写入启动文件。
 +
<pre>
 +
sudo update-grub
 +
</pre>
  
多说一句,理论上来说把iso文件放在磁盘的任意位置(包括U盘)都是可以安装的,但是hd编号你必须要搞清楚,尽量让启动安装一次性成功。
+
<!--这段文字是哪里来的?还没翻译啊
 +
意味着 sda3 under /ansi/software_and_config/ISOs/ubuntu/. In order to change it for your needs there are 3 elements to change. The loopback line contains your hard disk in grub style (hdx,y  x=0->sda x=1->sdb aso) and the path. The third element to change is in the linux line. Store this file as “50_ubuntu” in “/etc/grub.d“, make it executable with “chmod a+x 50_ubuntu” and activate the changes with “ubdate-grub“. A
 +
-->
  
== 如何确定ISO位置  ==
+
=== EFI ===
 +
1.按“设置iso文件”小节的说明拷贝文件。
 +
2.重启,按下适当按键,进入efi模式。
 +
3.选择vmlinuz.efi的路径,并启动。
 +
4.安装,见“安装”小节。
  
grub和hd0,x是硬盘安装的关键问题,解决了这2个问题,硬盘安装Ubuntu操作系统就成功了一半!
 
  
 +
== 如何确定ISO位置  ==
 +
grub和hd0,x是硬盘安装的关键问题,解决了这2个问题,硬盘安装Ubuntu操作系统就成功了一半!
 
使用fdisk查询本机硬盘分区状态,例如本人的:  
 
使用fdisk查询本机硬盘分区状态,例如本人的:  
 
<pre>sudo fdisk -l</pre>  
 
<pre>sudo fdisk -l</pre>  
第67行: 第111行:
 
Units = cylinders of 16065 * 512 = 8225280 bytes
 
Units = cylinders of 16065 * 512 = 8225280 bytes
 
Disk identifier: 0x00019d35
 
Disk identifier: 0x00019d35
 
 
   Device Boot      Start        End      Blocks  Id  System
 
   Device Boot      Start        End      Blocks  Id  System
 
/dev/sda1              1          12      96358+  82  Linux swap / Solaris
 
/dev/sda1              1          12      96358+  82  Linux swap / Solaris
第74行: 第117行:
 
/dev/sda4            996        9729    70155855    c  W95 FAT32 (LBA)</pre>  
 
/dev/sda4            996        9729    70155855    c  W95 FAT32 (LBA)</pre>  
 
第一行显示了硬盘大小为80G,后4行说明了硬盘分区状态,带有*的是grub指定的内核位置,那么/dev/sda3在grub中是如何表示的呢? 在grub中表示为(hd0,2) ,也即分区号减一,我们现在把ubuntu的iso以及引导文件放在/dev/sda4的根目录下,/dev/sda4分区格式为fat32,那么,如果想引导grub启动/dev/sda4下的iso文件那么就要将grub引导到/dev/sda4盘下,也即(hd0,3)  
 
第一行显示了硬盘大小为80G,后4行说明了硬盘分区状态,带有*的是grub指定的内核位置,那么/dev/sda3在grub中是如何表示的呢? 在grub中表示为(hd0,2) ,也即分区号减一,我们现在把ubuntu的iso以及引导文件放在/dev/sda4的根目录下,/dev/sda4分区格式为fat32,那么,如果想引导grub启动/dev/sda4下的iso文件那么就要将grub引导到/dev/sda4盘下,也即(hd0,3)  
 
 
对应关系  
 
对应关系  
<pre>/dev/sda1                   hd0,0       
+
<pre>/dev/sda1               hd0,0       
/dev/sda2                 hd0,1
+
/dev/sda2               hd0,1
 
/dev/sda3  *            hd0,2
 
/dev/sda3  *            hd0,2
 
/dev/sda4                hd0,3</pre>  
 
/dev/sda4                hd0,3</pre>  
第85行: 第127行:
 
Units = cylinders of 4064 * 512 = 2080768 bytes
 
Units = cylinders of 4064 * 512 = 2080768 bytes
 
Disk identifier: 0x00000000
 
Disk identifier: 0x00000000
 
 
   Device Boot      Start        End      Blocks  Id  System
 
   Device Boot      Start        End      Blocks  Id  System
 
/dev/sdb1  *          1        1018    2068448    b  W95 FAT32
 
/dev/sdb1  *          1        1018    2068448    b  W95 FAT32
第96行: 第137行:
 
/dev/sdb1  /media/usb vfat defaults    0      0
 
/dev/sdb1  /media/usb vfat defaults    0      0
 
</pre>  
 
</pre>  
然后修改grub,引导位置即(hdb1,0)
+
然后修改grub,引导位置即(hd1,0)
 +
 
 +
== 在grub命令行下确定ISO位置  ==
 +
在grub命令行下输入
 +
<pre>
 +
root (hd0,0)</pre>
 +
在返还回显时可知道hd0,0属于什么格式的分区,
 +
然后使用kernel+Tab键查询是否有启动文件的存在。
 +
即可查看所有硬盘以及分区。
 +
值得注意的是,使用grub 1.98版本会将分区显示为
 +
(hd0,msdos1)
 +
而不是
 +
(hd0,1)
  
 
== 安装  ==
 
== 安装  ==
 
+
重启系统,在启动时选择Ubuntu 9.10 LiveCD启动项进入系统。  
重启系统,在启动时选择Ubuntu 8.04.1 LiveCD启动项进入系统。  
+
需要补充重要的一点:在点击桌面的安装之前,必须先umount isodevice
 
+
<pre>sudo umount -l /isodevice</pre>
 
具体安装方法和以前版本基本一致。或者参考[http://ilovemac.cn/articles/play-with-hardy-install-live.html Ubuntu8.04安装篇]一文<br>
 
具体安装方法和以前版本基本一致。或者参考[http://ilovemac.cn/articles/play-with-hardy-install-live.html Ubuntu8.04安装篇]一文<br>
 
== 重要参考资料 ==
 
 
可参考 [http://forum.ubuntu.org.cn/viewtopic.php?f=120&t=58468&st=0&sk=t&sd=a 修改fstab的方法] 更为详细的有关(hd0,x)的设置信息可参考 北南南北 [http://www.linuxsir.org/main/?q=node/127 存储设备表示方法] 一文
 

2016年1月22日 (五) 15:10的最新版本

DVD 安装 LiveCD 试用 LiveCD 安装 U 盘安装 Wubi 安装 硬盘安装LiveCD

前言

更新的说明:--Xiaodan 2016年1月8日 (五) 18:42 (CST)

本文主要适用于Linux下本地安装Ubuntu系统,其原理也可借鉴于其他linux操作系统。 同时,本文主要讨论BIOS下的安装,EFI请直接查看“EFI”一节。

如果您不知道您的PC适用于哪一类,建议优先尝试BIOS引导下的操作,或求助他人。

设置iso文件

说明:以下内容均为假设情况,在实际操作中需要灵活掌握 假如我们把iso文件放在挂载磁盘下进行安装 ,挂载磁盘的位置为/media/disk/,其中/media/disk/的分区格式为vfat,也即FAT32 .其中/media/disk/的具体情况视各自具体情况而定.一个重要的前提是必须保证该挂载磁盘被fstab有效挂载 接下来我们要把该iso和其中的.disk和casper下的vmlinuz和initrd.lz释放出来,保存至/media/disk/ 在转移到/media/disk/下前请检查下/media/disk/的剩馀空间,剩馀空间至少要有750M。如果剩馀空间不多可考虑删除多余的文件。 首先将iso文件转移到/media/disk/下,进入存放iso文件的目录下

sudo mv *.iso /media/disk/

然后挂载iso,并拷贝到 /media/disk/

sudo mkdir /mnt/live ;
cd /media/disk ;
sudo mount -t iso9660 -o loop,utf8 *.iso /mnt/live/ ;
sudo cp -r /mnt/live/.disk  /media/disk/ ; 
sudo cp /mnt/live/casper/vmlinuz  /media/disk/ ;
sudo cp /mnt/live/casper/initrd.lz  /media/disk/

请注意,较新版本的ubuntu安装文件中,vmlinuz更名为vmlinuz.efi,用于efi启动模式,具体见EFI。 需要将该文件重命名,去掉efi后缀。

 mv /media/disk/vmlinuz.efi /media/disk/vmlinuz 

如果什么重要的文件请在系统重启前及时备份。

设置启动项(镜像、.disk、vmlinuz和initrd.lz 四个文件都在u盘等设备上时)

grub(类似CentOS和ubuntu旧版本)

可以先

locate menu.lst

找出该文件的位置,之后进行修改

请灵活更改以下代码。

注意,root (hd1,0)请根据自己的实际情况设置(应该为电脑的另一块硬盘或者U盘)。 另外,早期版本的Ubuntu为initrd.gz,新版本的Ubuntu为initrd.lz(本人非计算机专业,估计应该是内核相关的文件)

title Ubuntu x.xx LiveCD
root (hd1,0)
kernel /vmlinuz boot=casper iso-scan/filename=/ubuntu-x.xx-desktop-i386.iso ro quiet splash locale=zh_CN.UTF-8
initrd /initrd.lz
boot

grub2

在GRUB 1.98 Ubuntu10.04测试

默认安装情况下打开grub2启动菜单的方法:

grub2启动菜单默认是隐藏的,除非您改动了/etc/default/grub中的设置。在开机启动时一直按Shift键,直到grub2启动菜单出现,这时候可以按上下方向键选择一个项目

在/etc/grub.d/40_custom(系统自带)中进行编辑,或者自行新建50_ubuntu进行编辑,应该注意的是,这些文件必须是可执行的,才能够由update-grub写入二进制文件,因此必须赋予可执行权限:

sudo chmod +x /etc/grub.d/40_custom

在40_custom

#!/bin/sh
exec tail -n +3 $0

之后的位置添加代码,这里的ubuntu-10.04-desktop-i386.iso镜像文件是放在U盘(另外一块硬盘)的根目录下。

menuentry "Ubuntu 10.04 LiveCD" {
set root='(hd1,1)'
loopback loop (hd1,1)/ubuntu-10.04-desktop-i386.iso
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/ubuntu-10.04-desktop-i386.iso ro quiet splash locale=zh_CN.UTF-8
initrd (loop)/casper/initrd.lz
boot
}

其中,menuentry "xxx" { }为固定语法,必须要写。注意,{ }内的行与行之间不能有空行,必须是连续的。 loopback为grub2的新增功能,用于载入镜像文件。 grub2中,kernel命令已经被替换为linux;root已经被替换为set root hdx,x。

请注意,做出以上更改后,必须要执行grub-update,使更改写入启动文件。

sudo update-grub


EFI

1.按“设置iso文件”小节的说明拷贝文件。 2.重启,按下适当按键,进入efi模式。 3.选择vmlinuz.efi的路径,并启动。 4.安装,见“安装”小节。


如何确定ISO位置

grub和hd0,x是硬盘安装的关键问题,解决了这2个问题,硬盘安装Ubuntu操作系统就成功了一半! 使用fdisk查询本机硬盘分区状态,例如本人的:

sudo fdisk -l

结果如下

Disk /dev/sda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00019d35
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1          12       96358+  82  Linux swap / Solaris
/dev/sda2              13         302     2329425   83  Linux
/dev/sda3   *         303         995     5566522+  83  Linux
/dev/sda4             996        9729    70155855    c  W95 FAT32 (LBA)

第一行显示了硬盘大小为80G,后4行说明了硬盘分区状态,带有*的是grub指定的内核位置,那么/dev/sda3在grub中是如何表示的呢? 在grub中表示为(hd0,2) ,也即分区号减一,我们现在把ubuntu的iso以及引导文件放在/dev/sda4的根目录下,/dev/sda4分区格式为fat32,那么,如果想引导grub启动/dev/sda4下的iso文件那么就要将grub引导到/dev/sda4盘下,也即(hd0,3) 对应关系

/dev/sda1                hd0,0       
/dev/sda2                hd0,1
/dev/sda3   *            hd0,2
/dev/sda4                hd0,3

如果我们使用USB来安装ubuntu怎么办呢? 首先挂载usb到系统中使用fdisk查看usb磁盘分区状态,例如:

Disk /dev/sdb: 2118 MB, 2118123520 bytes
127 heads, 32 sectors/track, 1017 cylinders
Units = cylinders of 4064 * 512 = 2080768 bytes
Disk identifier: 0x00000000
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *           1        1018     2068448    b  W95 FAT32
Partition 1 has different physical/logical endings:
     phys=(1023, 126, 32) logical=(1017, 119, 32)

然后拷贝ubuntu的iso以及引导文件放在/dev/sdb1的根目录下,在/media下新建usb文件夹然后让系统自动挂载usb ,修改fstab,下面的仅做参考:

sudo nano /etc/fstab

添加:

#/dev/sdb1
/dev/sdb1   /media/usb vfat defaults    0      0

然后修改grub,引导位置即(hd1,0)

在grub命令行下确定ISO位置

在grub命令行下输入

root (hd0,0)

在返还回显时可知道hd0,0属于什么格式的分区, 然后使用kernel+Tab键查询是否有启动文件的存在。 即可查看所有硬盘以及分区。 值得注意的是,使用grub 1.98版本会将分区显示为 (hd0,msdos1) 而不是 (hd0,1)

安装

重启系统,在启动时选择Ubuntu 9.10 LiveCD启动项进入系统。 需要补充重要的一点:在点击桌面的安装之前,必须先umount isodevice

sudo umount -l /isodevice

具体安装方法和以前版本基本一致。或者参考Ubuntu8.04安装篇一文