/******************************************************************************
* Linux U盘 启动盘
* 说明:
* 之前一直有个想法,那就是将x86的系统放在U盘中,像ARM那样做,但一直也不知
* 道大概要怎么查资料,最近搞redhat,查到了一些相关资料,记录一下。
*
* 2017-3-6 深圳 南山平山村 曾剑锋
*****************************************************************************/ 一、参考文档:
. 制作一个linux的u盘最小系统
http://zhuyi108.blog.51cto.com/2087327/845246
. 制作u盘启动linux系统
http://www.voidcn.com/blog/mr_zhaojy/article/p-5974248.html
. U 盘启动LINUX
http://blog.csdn.net/clozxy/article/details/5865632
. 定制自己的U盘Linux系统
http://mowblog.com/%E5%AE%9A%E5%88%B6%E8%87%AA%E5%B7%B1%E7%9A%84u%E7%9B%98linux%E7%B3%BB%E7%BB%9F/
. CDlinux HOWTOs 文档
http://cd-linux.sourceforge.net/archive/0.4/howto-cn.html
. GRUB (简体中文)
https://wiki.archlinux.org/index.php/GRUB_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)
. 什么是 initrd.img
http://blog.csdn.net/chrisniu1984/article/details/3907874
. Linux2. 内核的 Initrd 机制解析
https://www.ibm.com/developerworks/cn/linux/l-k26initrd/
. Linux 初始 RAM 磁盘(initrd)概述
https://www.ibm.com/developerworks/cn/linux/l-initrd.html
. Linux 引导过程内幕
https://www.ibm.com/developerworks/cn/linux/l-linuxboot/
. LINUX下三个内核文件详解(vmlinuz/initrd.img/System.map)
https://www.path8.net/tn/archives/5304 二、基本操作说明:
. U盘(SD卡)分两个区:
. /dev/sdb1;
. /dev/sdb2;
. mount /dev/sdb1 /mnt
. grub-install –root-directory=/mnt /dev/sdb
Installing for i386-pc platform.
Installation finished. No error reported.
. ls /boot/grub/
fonts gfxblacklist.txt grub.cfg grubenv i386-pc locale unicode.pf2
. 编写/boot/grub/grub.cfg文件:
set default=
insmod gzio
insmod jpeg
insmod part_msdos
insmod ext2
insmod ext3
insmod ext4
set timeout=
set root='hd0,1'
# linux (hd0,)/boot/vmlinuz rw # root=/dev/sdb2 rootfstype=ext3
linux (hd0,)/boot/vmlinuz rw root=/dev/sdb2 rootfstype=ext3
initrd (hd0,)/boot/initrd.img
boot
. 拷贝对应的系统文件,最终/dev/sdb1分区目录如下:
.
└── boot
├── grub
│ ├── fonts
│ ├── grub.cfg
│ ├── grubenv
│ ├── i386-pc
│ └── locale
├── initrd.img
├── initrd.img_redhat
├── initrd.img_ubuntu
├── vmlinuz
├── vmlinuz_redhat
└── vmlinuz_ubuntu
. 下载Ubuntu Core,并将其解压到/dev/sdb2分区中,注意将passwd中间中root密码去掉,否则要输入密码。
. 如上所示,既有redhat,又有ubuntu的,遇到了redhat内核版本过低,Ubuntu Core版本高过不能挂载文件系统的问题。 三、遇到错误:
. 现象:
...
mount: could not find filesystem /dev/root
Setting up other filesystems
Setting up new root fs
setuproot: moving /dev failed: No such file or directory
...
. 参考文档:
. [SOLVED] Getting existing CentOS5 system to run with a new motherboard
https://www.centos.org/forums/viewtopic.php?t=24681
. Creating a New Initial RAM Disk
https://wiki.centos.org/TipsAndTricks/CreateNewInitrd
. 原因:
If you have changed a motherboard or moved a disk to a different system it may fail to boot due to the lack of appropriate drivers in the initial RAM disk image (initramfs for CentOS , initrd for CentOS ).

Linux U盘 启动盘的更多相关文章

  1. windows下制作linux U盘启动盘或者安装优盘(转)

    windows下制作linux U盘启动盘或者安装优盘(转) Linux发行版排行榜:http://iso.linuxquestions.org/ [方案一]:UltraISO(不推荐,在Window ...

  2. windows和linux环境下制作U盘启动盘

    新笔记本上,要装xp的系统,100%会破坏原有的Linux系统,因为安装xp的时候会自动覆盖硬盘的主引导扇区,这个扇区一旦被重写,那么原有的linux根本就启动不了. 要想玩linux和xp双系统,一 ...

  3. 制作一个64M的U盘启动盘(mini linux + winpe +dos toolbox)

    制作一个64M的U盘启动盘(mini linux + winpe +dos toolbox) 自己动手定制winpe+各类dos工具箱U盘启动盘+minilinux 由于一个64M老U盘,没什么用,拿 ...

  4. [转]制作一个64M的U盘启动盘(mini linux + winpe +dos toolbox)

    自己动手定制winpe+各类dos工具箱U盘启动盘+minilinux 由于一个64M老U盘,没什么用,拿来发挥余热.如果U盘够大,可以使用功能更强大的mini linux和带更多工具的winpe.这 ...

  5. 如何制作 linux 系统 U盘启动盘

    1.制作linux 系统的U盘启动盘,需要选择ISO 模式!给大家推荐几个制作相关软件以及相关制作过程(点击相应名字即可进入到网站):UltraISO.rufus.老毛桃.大白菜. UltraISO ...

  6. 【转载】在Linux系统下用dd命令制作ISO镜像U盘启动盘

    #### 将U盘插入USB接口 #umount /dev/sdb* #dd if=/iso存放路径/XXX.iso of=/dev/sdb bs=1M ##### [转载]在Linux系统下用dd命令 ...

  7. U盘启动盘制作工具(安装Linux)

    2018-09-15 17:36:42 1. Etcher  官网:https://etcher.io/ 资料来源:https://linuxmint-installation-guide.readt ...

  8. U盘启动盘 安装双系统 详细教程

    U盘启动盘 安装win7+linux双系统 最近在看鸟哥的linux 私房菜 ,看到多重系统那部分,自然的安装多重系统的激情由此而燃.在网上看了很多资料,感觉都不全.经过艰辛的摸索,终于被我发现了一个 ...

  9. Ubuntu 制作U盘启动盘

    部门需要一台Linux系统远程共享服务器,需要一个启动盘安装.但是由于公司windows 系统都安装了保安软件,而且软件的使用也是有限制的.所以不能使用UltraISO 这类软件制作U盘启动盘.还好部 ...

随机推荐

  1. 标准c字符和字符串的使用方法

    cppreference.com -> Standard C String & Character -> 详解 标准c字符和字符串 atof 语法:     #include &l ...

  2. Oracle查询结果列的加减、求和、连接、列值相乘

    select prod.amount,prod.plansum,(prod.plansum-prod.amount) as borrow,d.enum_value from ----结果集相减(sel ...

  3. Python基础(14)_python模块之configparser模块、suprocess

    9.configparser模块 模块适用于配置文件的格式与windows ini文件类似,可以包含一个或多个节(section),每个节可以有多个参数(键=值). 常见的软件格式文档格式如下: [D ...

  4. KVM虚拟化虚拟机支持虚拟化

    一.开启的时候需要关闭所有虚拟机: 首先检查 KVM host(宿主机/母机)上的kvm_intel模块是否打开了嵌套虚拟机功能(默认是开启的): 1.modinfo kvm_intel | grep ...

  5. str字符串、bool类型常用方法总结

    字符串拼接 必须是字符串与字符串拼接 print('马化腾'+'马云') print('马化腾' * 10) 将打印10个马化腾 字符串翻转 [ : :-1] 字符串可以加和乘,不能减和乘 input ...

  6. PAT 天梯赛 L1-032. Left-pad 【字符串】

    题目链接 https://www.patest.cn/contests/gplt/L1-032 思路 要分两种情况处理 ①字符串长度 <= 填充长度 就在字符串前面输出(填充长度 - 字符串长度 ...

  7. IBM的SOA方法论之一——五个切入点和八个场景

    一.什么是SOA: 面向服务的体系结构(Service-Oriented Architecture,SOA)是一种 IT 体系结构风格,支持将您的业务转换为一组相互链接的服务或可重复业务任务,可在需要 ...

  8. 理解$watch、$apply与$digest

    Angular环境 浏览器里面有一个事件队列(event queue),用户触发啥事儿,或者网络请求,延时操作(例如定时器之类),都是一个event,浏览器会轮询这些事件,然后调用这些回调(这里的回调 ...

  9. mysql下merge分表

    1.merge简介分表就是把N条记录的表,分成若干个分表,各个分表记录的总和仍为N. 分表的方法有很多,用merge来分表,是最简单的一种方式.merge是mysql的一种存储引擎,它把一组MyISA ...

  10. S005SELinux(SEAndroid)的实际文件组成无标题文章

    SEAndroid 是将SELinux 移植到Android 上的产物,可以看成SELinux 辅以一套适用于Android 的策略. 那么在android系统中那些文件是与SELinux(SEAnd ...