https://www.cnblogs.com/Chinasf/archive/2010/05/06/1728840.html    【Ubuntu 下挂ISO到虚拟光驱的方法

各种方法参考如下论坛: http://wiki.ubuntu.org.cn/%E7%A1%AC%E7%9B%98%E5%AE%89%E8%A3%85LiveCD

转载如何在ubuntu系统内安装ubuntu

硬盘安装LiveCD

 
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安装篇一文

如何安装ubuntu系统的更多相关文章

  1. 2016031901 - U盘安装ubuntu系统

    使用U盘安装ubuntu系统 01.进入u盘安装 个人使用的是闪迪U盘安装 02. 个人重装ubuntu 03.进入ubuntu安装界面 04.进入语言界面 05.准备安装ubuntu 06.ubun ...

  2. [置顶] 使用U盘安装ubuntu系统

    使用U盘安装ubuntu系统 在网上找了很多教程,都不起效,提示:“从光盘上读取数据出错”. 总结出了几个关键点. 首先,版本,Ubuntu 12.04 Server,一般的U盘安装都会报:“从光盘上 ...

  3. 安装ubuntu系统及ubuntu安装Python的几点心得

    一.安装ubuntu系统 1.ubuntu系统是Linux系统的一种,和centos差别不大,但是个人还是建议大家安装ubuntu,它更适合国内使用习惯,换句话说更亲切. 2.安装方法不再赘述,网上有 ...

  4. U盘上安装Ubuntu系统 便捷式系统 - 赖大大

    简单介绍: U盘可以作为电脑的磁盘使用,在U盘上安装Ubuntu系统,只要有电脑,就可以轻松打开自己的系统, 方便又快捷,非常适合出差工作,学习使用. 另外,插入U盘后,需要我们就入电脑的Blos模式 ...

  5. 安装ubuntu系统 ——分区

    安装ubuntu 系统主要分四个区 目录 建议大小 格式 描述 / 10G-20G ext4 根目录 swap <2048M swap 交换空间 /boot 400M左右 ext4 Linux的 ...

  6. VirtualBox虚拟机安装ubuntu系统(图文详解)

    不多说,直接上干货! 想简单说下,想必大家有的喜欢玩一下linux操作系统,但是又不想实际安装在物理机上.那我们就需要用到虚拟机了,这里我们介绍一下如何用VirtualBox安装ubuntu的方法. ...

  7. 使用VMWare12.0安装Ubuntu系统

    使用VMWare12.0安装Ubuntu系统 Vmware12的虚拟机的文档说明: http://pubs.vmware.com/workstation-12/index.jsp#com.vmware ...

  8. win10安装ubuntu系统出现的一些问题以及解决方案

    前言 在win10系统进行安装新的ubuntu环境的时候遇到的一些问题,以及解决方案,供以后参考. 准备 从ubuntu官网下载最近版本的ubuntu系统,Ubuntu最新版本下载地址 操作系统:wi ...

  9. 用VirtualBox代替VMWare安装Ubuntu系统图文教程总结

    文章目录 为什么使用VirtualBox,而不是VMWare? 图文教程 安装VirtualBox 下载Ubuntu镜像 新建虚拟机 安装Ubuntu系统 总结 为什么使用VirtualBox,而不是 ...

随机推荐

  1. Ubuntu上部署Jenkins

    1.Ubuntu上安装jdk.tomcat https://blog.csdn.net/evankaka/article/details/50463782 2.Ubuntu上配置Jenkins htt ...

  2. SQL Server 常用SQL

    --查询所有表 select * from sysobjects where xtype='u' ORDER BY name ASC

  3. hibernate多生成一个外键以及映射文件中含有<list-index>标签

    (原文地址: http://blog.csdn.net/xiaoxian8023/article/details/15380529) 一.Inverse是hibernate双向关系中的基本概念.inv ...

  4. docker-compose安装

    安装docker-compose两种最新的docker安装方式 1.从github上下载docker-compose二进制文件安装下载最新版的docker-compose文件 $ sudo curl ...

  5. 使用CSV控件方法实现参数化

    一.录制脚本 二.下面介绍如何使用CSV控件方法实现参数化 1.  添加-->配置元件-->csv Data Set Config Filename:文件的来源 Variable Name ...

  6. hbase-bloom filter

    bloom fliter的作用主要用于提升hbase的读性能,但是会牺牲一定的存储空间. 原理: bloom fliter是一种空间效率很高的随机数据结构,初始状态时,bloom filter是一个包 ...

  7. struts 1.x配置文件说明

    <struts-config> <global-exceptions /> <!--全局映射定义--> <global-forwards> <fo ...

  8. centos 7 安装vscode

    网上很多写的安装,会遇到一个问题,就是无法启动: sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc sudo sh ...

  9. laravel和lumen数据库链接错误_FatalErrorException Call to a member function connection

    FatalErrorException in Model.php line 3339: Call to a member function connection() on null 挺简单的一个lum ...

  10. Vue.js 入门教程

    Vue.js 入门教程:https://cn.vuejs.org/v2/guide/index.html