-
2020-09-12 21:07:28
U盘启动盘Linux制作
1、使用Deepin的u盘工具
2、使用Runfus工具https://rufus.ie/
更多相关内容 -
制作U盘Linux与WinPE启动
2020-08-02 21:12:10这里给大家介绍一下制作U盘Linux与WinPE启动的过程。 -
u盘linux制作工具 Universal USB Installer v1.9.9.5绿色版
2020-12-21 13:53:01为您提供u盘linux制作工具 Universal USB Installer下载,Universal USB Installer是一款u盘linux制作工具,支持各种linux系统,且支持linux系统在线下载,希望接触linux又不想更换系统的朋友不妨实时,觉得让你... -
U盘linux读取工具
2018-04-12 15:24:08U盘linux读取工具U盘linux读取工具U盘linux读取工具U盘linux读取工具U盘linux读取工具U盘linux读取工具 -
u盘安装linux
2018-05-31 12:05:16这是用u盘安装linux(redhat 5 server)的亲自测试,安装成功, -
从0开始构建自己的U盘Linux(一)
2019-04-29 09:51:01从0开始构建自己的U盘Linux前期知识储备Linux内核源码下载Linux源码编译Busybox工具无盘构建根文件系统在U盘上构建Linux根文件系统测试 前期知识储备 1.1本项目介绍 (1)开发环境 主机:Dell xps13 9360 , 操作系统...从0开始构建自己的U盘Linux
前期知识储备
1.1本项目介绍
(1)开发环境
主机:Dell xps13 9360 , 操作系统Windows 10, 64-bit , USB3.0接口
虚拟机:ubuntu-18.04.2-desktop-amd64,运行在VMware® Workstation 15 Pro ,版本15.0.2 build-10952284
(2)项目内容
参考《嵌入式系统原理与设计》(浙大出版社 王勇编著)完成的本书后面一个“从0开始构建自己的U盘Linux”的实验,里面步骤中的linux内核比较老,和新的会有出入。即:
不使用U盘Linux工具,而是在Ubuntu中从0开始,自己一步步构建一个U盘存储的Linux操作系统,可以加深自己对Linux的基本开发过程的了解,这是学习嵌入式的很好的一个方法。
以下内容主要分为:Linux及其相关内容简介、构建Linux的详细过程、遇到的问题和解决方法(详见从0开始构建自己的U盘Linux(二))。如果是第一次接触Linux系统,比如我,建议先了解Linux的以下内容,在网上搜索,都有很详细的内容,这里就不详细列出来了。
- Linux 系统启动过程
Linux启动时我们会看到许多启动信息。总体概括下来,其过程可以分为5个阶段:
(1)内核的引导
(2)运行 init :init程序的类型——SysV、Upstart、Systemd
(3)系统初始化
(4)建立终端
(5)用户登录系统 - Linux文件系统结构
- 分析源码目录
- .config文件
一些配置项;
make xx_defconfig和make menuconfig相配合 … 等等,例如make x86_64_defconfig - 常用命令介绍
第一次使用linux,对一些终端操作的命令不熟悉,可以在网上搜索相关的指令用法,在本实验中常用cd、vim/gedit、apt-get、tar、cp、make、touch(可新建文件夹)、fdisk、mkdir、mount等等
Linux内核源码下载
对于完全安装ubuntu的可以在/usr/src下找到linux源码,对于非完全安装(本人),需要手动下载源代码,有以下两种方式,我用过第二种和第三种:
A.在主机上从http://www.Linux.org官网下载,再拖到ubuntu中 B. ubuntu终端下载 apt-get install linux-source-4.18.0 C. 终端中访问服务端下载: wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.11.1.tar.xz
通过sudo -i 输入密码,进入root权限,再进行之后的操作。
-
首先看一下自己的内核版本,如果不想下载和自己正在使用的内核匹配的版本,可以忽略这一步
apt-cache search linux-source
-
下载内核代码,在做本次实验中,我下载过好几个版本的Linux内核,后来用的是4.11.1
apt-get install linux-source-4.18.0
或者wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.11.1.tar.xz
-
在哪个目录下执行上面操作的,就到该目录下查看你已经下载好的源码,我在/home/pumpkin中
-
解压源码,我选择解压到/home/pumpkin(用户名)下面:
1)后缀.bz2的解压(tar相关操作可自行搜索)
tar -jxv -f linux-source-4.18.0.tar.bz2 -c /home/pumpkin
2)后缀.xz的解压
xz -d linux-4.11.1.tar.xz
tar xvf linux-4.11.1.tar
等待其解压完成,现在可以到/home/pumpkin 目录下面进行查看:
Linux源码编译
- menuconfig准备
如果ubuntu安装时候没有选择全部安装,这个过程会遇到缺少很多包的问题,可能出现的错误:ncurses库没装、屏幕太小等等。所以建议一次性把可能需要的包在这里全部安装了:
apt-get install libncurses5-dev libncursesw5-dev
apt-get install ncurses-devel
apt-get install bison -y
apt-get install flex
- 配置内核
.config决定了Make时的条件编译与连接。.config文件由两次配置,第一次make xxx_defconfig ,第二次menuconfig。自行百度linux内核、make xxx_defconfig作用等等,能够帮助我们理解之后的各个步骤。
(1)make x86_64_defconfig
输入:make x86_64_defconfig //64位元电脑
make xxx_defconfig这一步其实是参考别人已经做好的,这样做有很多好处:减少很多工作量,避开了很多自己不懂的配置项(譬如对内存管理的、调度系统的等模块的配置项),我们只用管自己需要管的。
最后只要出现:configuration written to .config
这句话,就证明我们的操作是正确的。如果没有出现这句话,就有错误:
(2)make menuconfig
不进行上面一步,直接make menuconfig也是可以,完全自定义配置,以下开始配置,建议自己多了解了解各个配置项,我做的时候对其中一些也不太了解… 网上多搜索,https://blog.csdn.net/linpuliang/article/details/38317367 博主详细地讲了一些配置项,《嵌入式》书中也有讲,但是里面是比较老的linux内核,和新的有些不同
(上图的 Enable loadable …:“除非你准备把所有需要的内容都编译到内核里,否则该项应该是必选的”)(即 可加载模块支持)
为了实现U盘Linux,必选:
·Device Drivers -> Block devices 下的 loopback device support, RAMblock device support
·Device Drivers ->SCSI Support 下的 SCSI device support 下的SCSI disk Support、 SCSI low-level drivers —> Buslogic SCSI support
· Device Drivers ->USB Support 下的Support for Host-side USB,Preliminary USB device filesystem ,USB Mass Storage support,xHCI HCD (USB 3.0) support(如果是电脑是USB2.0接口需要选2.0那个选项)
·File System -> ext3 // 文件系统的支持
后面要在U盘上面建立Linux文件系统,我建的是ext3,把ext3的选上了,默认是没有选的,第一个second extended fs support是ext2文件系统,建议都选…
上面也许有些你自己需要的功能,但是我没写出来的,建议把linux内核配置相关的选项了解之后自己再修改,我也是才入门,so
(3)配置完成后 保存 退出
(4)编译内核make dep // 寻找依存关系,由系统决定要编译哪些内容 make clean // 清除以前编译内核时生成的中间文件(我以前没有编译过 所以不知道这一步的影响大小 make bzImage // 生成压缩的Linux内核文件,保存位置:你内核编译完成后 最后一行命令就是其位置
对于make dep命令的理解,如果你使用程序A(比如支持特殊设备),而A需用到B(比如B是A的一 个模块/子程序),而你在做make config的时候将一个设备的驱动 由内核支持改为module,或取消支持,这将可能影响到B的一个参数的设置,需重新编译B,重新编译或连接A…如果程序数量非常多, 你是很难手工完全做好此工作的。
慢慢等它完成编译即可Busybox工具
(1)从BusyBox的官方网站下载BusyBox的源代码:
进入你想要下载busybox 的目录下面,我在主文件夹,即用户目录pumpkin的"下载"文件夹进行的这一步:wget https://busybox.net/downloads/busybox-1.26.2.tar.bz2
(2)将压缩文件放到/home/pumpkin/下载,注意/tmp是临时文件夹,在关机后里面的内容会丢失,所以尽量不要放到/tmp下面,此处选择放在用户目录下,可以再关机重启后继续使用。
(3)解压缩,可以在终端操作:tar -jxvf busybox-1.26.2.tar.bz2 cd busybox-1.26.2/
也可以在这里直接在文件夹里面右键buzybox-1.30.0.tar.bz2解压到该目录下:
(4)配置Busybox,输入:make defconfig //使用默认配置,让busybox包含常用命令和工具 make menuconfig //在上述基础上,自己更改配置
开始配置,需要和建议选择的有:
BusyBox Setting->Build Options->[ 选]Build Busybox as a static binary (no shared libs)
BusyBox Setting->Shells->chose your default shell(ash):
BusyBox Setting->Installation Options->[*]Don’t use /usr(否则busybox会安装到ubuntu的/usr下,会覆盖原系统原有的命令)
BusyBox Setting->Shells->chose your default shell(ash):
(5)编译和安装busybox:make make install
执行完后会产生_install/bin/ 和_install/sbin/后面会用到这些文件,ls一下会发现多了一个 _install 目录,里面是bin、sbin等,我们要用它来构建linux的根目录。bin下面是busybox支持的命令和工具,如果你希望的命令里面没有,就需要重新配置、编译Busybox让它支持
无盘构建根文件系统
这里没有直接在U盘中构建根目录,而是在虚拟机中构建一个根文件系统的镜像压缩,之后复制到U盘中。如果直接在U盘中构建,之后有什么错误需要格式化U盘,就没必要重新构建根文件系统,把压缩文件复制过去即可。
(1)在用户目录下新建rootfs,把_install目录中的内容复制进去,现在rootfs下已经有了bin、sbin目录
(2)一个完整linux系统还需要添加其他必要文件夹,进入/rootfs,输入:
mkdir usr proc mnt var tmp dev sys etc
(下图 和我的描述有两个不同,一是文件夹名字 rootfs 无所谓吧这个名字… 而是下图没有usr 这个文件夹也不是必须的 可能要做用户登录系统需要涉及这个吧)
(3)同时在rootfs下还必须要有一个init文件,这个init文件可以是一个可执行的二进制文件,也可以是一个shell脚本,或者是指向前面两者的链接。init文件会在linux内核初始化就绪后被执行。方便起见,我们就把init做成一个指向bin/sh的软连接,在rootfs下输入:
ln -s bin/sh init
(4)dev目录下还必须有几个必要的设备console,null,ram,tty,tty1,tty2,这些tty就是和用户交互的终端:
cd 进入/rootfs/dev,建立必须的设备节点文件,并授权,输入:
mknod tty c 5 0
mknod console c 5 1
mknod null c 1 3
mknod ram b 1 0
mknod tty1 c 4 1
mknod tty2 c 4 2
chmod 666 tty console null
chmod 666 tty1 tty2
chmod 600 ram
(5)制作压缩镜像,输入:
cd .. // 回到rootfs目录下
find . | cpio -H newc -o > ../rootfs.img // 返回 块数目:5157 块
cd .. //回到用户目录
gzip rootfs.img -f //压缩镜像
在U盘上构建Linux根文件系统
-
前期准备——在U盘上建立Linux分区和ext3文件格式
分区表:
推荐使用DiskGenius软件,我是在win10系统下操作的。查看U盘的分区表格式,有些U盘是GUID格式的,如果不是MBR,建议转为MBR格式:
硬盘分区格式为MBR格式,启动模式应该为Legacy:
硬盘分区格式为GUID(GPT)格式,启动模式应该为UEFI:
Linux分区和文件系统:
对于建立Linux分区和ext2/ext3/ext4文件系统的更改都可以在DiskGenius中进行,比较直观,容易理解。
1)分区->删除当前分区(这个会把U盘清空 我U盘没东西 随便删)
2)分区->建立新分区->主磁盘分区->选择文件系统类型 ext3或者ext4均可,ext2/ext3/ext4有区别,可在网络上自行搜索了解。(图上是512MB 我设置了1G 看你内核大小? 1G可能也算大了 -0-)
我建立的是ext3文件系统:
成功:
-
把U盘挂载入文件系统,进行文件操作
(1)把U盘拔出再重新插入物理机,一般vmware会弹出下图“检测到新的USB设备”,让你选择连接到的位置,如果没有这个过程中,以及U盘连接不了,在博客(二)有一些解决办法。
如果没有弹出,可以在vmware右下角,点击U盘图标选择连接主机:
(2)检查是否分区成功和连接成功
fdisk -l
返回的最后一行出现和刚才自己分区结果一样的U盘(1G,类型Linux),设备为 /dev/sdb1
(3)U盘挂载
mkdir /mnt/usb2 //新建一个usb文件夹 名字自行取无所谓
mount /dev/sdb1 /mnt/usb2 //然后把sdb1挂到usb2文件夹
(4)安装grub,显示最后一句话说明安装成功。这条命令会把grub安装到/dev/sdb中,即把grub的第一阶段(短于512字节的部分)放入/dev/sdb的第一扇区,并且把第二阶段要用到的各种文件放到当前目录(即/dev/sdb1分区承载的ext3文件系统)(更准确的说,是放在了/dev/sdb1/boot/grub下)
(5)把过去做好的bzImage和rootfs.img.gz复制到U盘的boot目录下
(6)配置grub.cfg
输入:(下图结尾的s是不小心打错的 不需要)
保存,退出
(7)卸载U盘,之后拔出U盘,即制作完成
测试
在虚拟机上测试。
- 更改虚拟机bios 的boot让它从U盘启动
(1)虚拟机设置->硬件 下方点击添加->硬盘->SCSI(推荐)
->使用物理硬盘
->drive0是主机的物理盘,不要选,一般都是drive1或drive2
-> 进入bios
->设置虚拟机bios 的引导顺序,用“+/-”把boot中Hard Drive(0:1) 即U盘放到第一个(红色下划线)(还记得grub.cfg中 那个 “hd0,msdos1”?这两个有关的)
8.2 成功启动
启动,小企鹅的出现是内核配置了framebuffer的原因,然而出现了两个…?
·命令测试ls /cd /mkdir
命令测试ping:
·列出/bin下面支持的操作:
- Linux 系统启动过程
-
u盘Linux防火墙.pdf
2021-11-06 00:51:26u盘Linux防火墙.pdf -
从零开始构建自己的U盘Linux.docx
2022-02-24 15:55:16从零开始构建自己的U盘Linux -
U盘Linux防火墙系统设计与实现.pdf
2021-09-06 23:35:35U盘Linux防火墙系统设计与实现.pdf -
u盘Linux防火墙借鉴.pdf
2021-11-04 17:23:25u盘Linux防火墙借鉴.pdf -
构建U盘Linux操作系统
2018-07-05 19:03:03本设计是基于U盘的linux操作系统,包括内核编译,busybox工具获取,运行测试,和功能扩展等 -
U盘linux系统制作
2018-03-12 10:29:21U盘linux系统的制作方法,包括使用软件或者手动制作系统。 -
构建U盘Linux
2021-11-28 19:39:04构建U盘Linux 参考文章:https://blog.csdn.net/weixin_43124455/article/details/89667940 按照上文的步骤,已经可以在U盘构建一个Linux系统了。因此本文主要记录遇到的问题。 1. Unable to locate package # ...构建U盘Linux
参考文章:https://blog.csdn.net/weixin_43124455/article/details/89667940
按照上文的步骤,已经可以在U盘构建一个Linux系统了。因此本文主要记录遇到的问题。
1. Unable to locate package
# 命令行输入以下命令后,重新下载 apt-get update apt-get upgrade
2. U盘无法连接到虚拟机
问题 : U盘连接到虚拟机时,出现以下提示。
解决方法:将USB兼容性改为 3.1。
如果还是不能解决,尝试以下命令
sudo apt-get install exfat-utils
查看U盘分区:输入以下命令,查看最后一行
fdisk -l
3. can’t open /dev/tty3: No such file or directory
在参考文章中 无盘构建根文件系统 目录下。如果按照他给的命令输入。在最后运行的时候,会出现以下错误。
can't open /dev/tty3: No such file or directory can't open /dev/tty4: No such file or directory
需要添加以下命令
mknod tty c 5 0 mknod console c 5 1 mknod null c 1 3 mknod ram b 1 0 mknod tty1 c 4 1 mknod tty2 c 4 2 mknod tty3 c 4 3 # 添加行 mknod tty4 c 4 4 # 添加行 chmod 666 tty console null chmod 666 tty1 tty2 tty3 tty4 # 修改行 chmod 600 ram
4. 测试部分
测试部分是新创建一个虚拟机,U盘插在主机上,而不是虚拟机上。
其余部分跟着做就行了。出现以下画面时,回车。
当没有内容出现时,就可以输入命令了。
-
360 u盘 linux
2014-08-07 21:17:27360u盘,自启制作,Linux内核,还有奇葩的游戏功能 -
linux系统直接安装到u盘
2015-08-13 21:14:39可以将linux的iso格式系统一键安装到u盘 -
u盘Linux启动盘制作工具
2013-05-16 12:00:42一个可以将u盘制作成linux启动盘的工具 -
自己写u盘linux操作系统
2011-12-11 14:06:32自己写u盘linux操作系统,这个文档是本人用一个星期,辛苦研究出来了,因为这个u盘网上介绍实在太少,都很模糊,我就辛苦的用今天的下午把它整理出来,希望能够给学linux的朋友一个指导,这里面的内容都是个人总结。... -
制作linux系统U盘启动盘的工具
2017-02-11 22:01:19制作linux系统U盘启动盘的工具.. -
Linux下U盘禁用的方法.pdf
2021-09-06 18:27:38Linux下U盘禁用的方法.pdf -
Linux读取U盘或者移动硬盘序列号并获取U盘或者移动硬盘分区名
2019-08-28 17:51:50Linux读取U盘或者移动硬盘序列号并获取U盘或者移动硬盘分区名。基本原理如下: 当有外置 USB 插入的时候,会产生 /proc/scsi/usb-storage 目录,并在其中产生数字文件(形如 1 2 3 4),此文件存储了设备相关信息。 ... -
详解Linux实现U盘自动挂载(图文教程)
2020-09-15 06:27:36主要介绍了Linux实现U盘自动挂载功能,本文图文并茂给大家介绍的非常详细,需要的朋友可以参考下 -
手把手教你如何使用u盘安装Linux系统
2021-05-13 19:32:39第二步:u盘安装Linux1,U盘插到要安装Linux的电脑上后,启动电脑,在启动时,一直按F2键,就能进入到主板的BIOS控制界面,按左右键移动到boot选项。然后按上下键到removeable device选项,再按+号移动它的位置在最...第二步:u盘安装Linux
1,U盘插到要安装Linux的电脑上后,启动电脑,在启动时,一直按F2键,就能进入到主板的BIOS控制界面,按左右键移动到boot选项。然后按上下键到removeable device选项,再按+号移动它的位置在最上方。因为我这台电脑比较老,所以U盘只能显示为removeable device,对于一些比较新的主板,可以直接显示出U盘的名称。那就把这个名称移动到最上方即可。然后按F10保存设置,按回车确认,系统开始重启。
linux系统安装图详解-9
u盘图详解-10
2,重启后,就会自动从U盘启动,然后就显示出了Linux系统的安装选项,移动鼠标到第一个Install CentOS 7,然后敲回车。再按一次回车,就开始安装。
第一步,默认语言是English,点击continue,继续下一步。
u盘安装Linux系统图详解-11
u盘图详解-12
u盘图详解-13
linux系统安装图详解-14
第二步,设置正确的时区,因为时区不正确,很多软件配置的时间都可能是错误的。首先点击Date图标,然后在地图上点击上海位置,将时区改为Aisa/Shanghai,然后将时间改为当前时间和日期。完成后点击右上角的done按钮保存设置。
u盘图详解-15
Linux图详解-16
第三步,修改默认的语言设置。因为刚才第一步里设置的默认语言是English,这样会对软件的支持比较好,但是我们还需要添加中文支持,这样在执行脚本的时候,出现乱码的几率就更小了。在保存时间和日期后,点击language support。然后拉到最下方,点击中文,然后勾选简体中文,选择好后,点击done保存设置。
u盘安装Linux系统图详解-17
第四步,点击INSTALLATION DESTINATION,选择安装位置,这里会选择你安装的硬盘。我这个硬盘比较小,只有100g,就选择这个,然后默认情况下会自动分区,新手建议使用默认设置即可。选择好后,点击done保存设置。至此,所有的设置都保存完毕,开始准备安装,点击右下角的begin install开始正式安装Linux。
linux系统安装图详解-18
u盘安装Linux系统图详解-19
u盘图详解-20
3,此时安装程序会开始复制文件,设置硬盘启动项等。这个时候会提醒我们没有设置root密码,我们点击那个提示,进去设置正确的root密码,然后点done保存。耐心等待它安装完毕即可。
u盘图详解-21
Linux图详解-22
linux系统安装图详解-23
4,安装完毕后,会显示出reboot按钮,并提示你,已经成功安装。这个时候安装过程基本上就完了。点击reboot按钮,重启系统,就能看到linux系统的启动项,然后就会跳到登录界面,输入账号密码,登录,进入终端,系统就可以使用了。
-
刻录linux-iso至U盘工具
2014-01-19 12:16:17将下载的linux ISO 文件刻录到U盘,便于携带安装 -
Linux系统下执行U盘中的脚本文件
2021-01-20 13:47:19今天写了个简单脚本并且使用chmod +x path给脚本添加了可执行权限,然后放在U盘中,运行时发现执行权限没了,于是直接在U盘中使用chmod +x path给U盘的脚本添加权限,可是使用 ls 查看的时候还是没有权限,什么... -
详细教您如何使用u盘安装Linux系统
2021-05-10 06:26:11上期小编讲解了win10使用技巧,详细教您win10使用技巧有哪些,本次正特手机网小编给大家讲解一下详细教您如何使用u盘安装Linux系统,小伙伴之所以知道利用u盘进行安装Linux系统的方法,其实是因为小编的一个朋友告诉... -
怎么用u盘安装linuxmint
2021-05-11 19:27:49Linux Mint是对用户友好而功能强大的操作系统。它诞生的目的是为家庭用户和企业提供一个免费的,易用的,舒适而优雅的桌面操作系统。linnux Mint 是一个为PC和X86电脑设计的操作系统。因此,一个可以跑得动Windows的... -
Linux下U盘使用教程详解
2021-05-11 17:24:30今天小编就借用Ubuntu来讲讲Linux下如何使用U盘。工具Ubuntu 11.10移动存储设备(以U盘为例)步骤在Ubuntu下点击侧面边栏上的功能按钮,打开命令行的终端(部分版本在顶部系统应用程序菜单下才能找到)在命令行模式下先... -
用u盘安装linux系统的简单方法教程
2021-05-14 17:34:24[教程介绍]虽然我们多数人都是使用windows操作系统,但不得不承认,还是有大量的用户在...用u盘安装linux系统的简单方法教程,给大家详细讲解了具体的安装步骤,供大家参考。linux系统到底有什么用呢?你也许会... -
如何在Linux下使用U盘
2021-05-14 03:51:43如何在Linux下使用U盘U盘的主目录您习惯于在Windows系统下即插即用U盘,在Linux系统下可能无法使用它. 为什么这么说由于Linux系统USB闪存驱动器被视为SCSI设备,因此无法直接使用,我们需要手动设置相应的设置. 以下... -
u盘安装linux失败的解决方法
2021-05-11 23:38:05u盘安装linux失败的解决方法发布时间:2020-04-27 11:35:55来源:亿速云阅读:197作者:小新今天小编给大家分享的是u盘安装linux失败的解决方法,相信很多人都不太了解,为了让大家更加了解,所以给大家总结了以下...