U盘上的迷你linux系统

一,简介

欢迎下载和使用U盘上的迷你linux系统——BabyLinux (USB Key Drive Edition)

Babylinux 是一套基于LFS

6.1的迷你linux系统,他的最大特点是可以装在一个FAT16或FAT32文件系统的可启动u盘上,并且安装过程将前所未有的简单!并不影响U盘作为移动存储的功能,在Windows系统上正常使用。

本版本为babylinuxUE-no-X-0.1pre.

基本上是把一个未经过该动的LFS系统压缩后集成到了一个128M的U盘上。(只删除了/usr下三个大于16M的文件,一个为/usr/lib/locale下的loacle字符集,有37M,另外两个为/usr/include

下和gcc

c++相关的16M左右的大文件,但是gcc和g++编译器在此版本中可以正常使用,之所以要删除这三个大文件是因为压缩/usr文件系统的cramfs不支持大于16M的文件,另外添加了zhcon控制台中文环境。)因此,它是一个非常干净、整洁的系统。由于时间关系,目前,我只完成了不含有X服务器和X应用软件的版本。此版本是未来版本的基本框架,在未来版本中,将对此版本系统做精简,并将U盘的BabyLinux发展成两个分支,一为不带X、但基本保持LFS原貌的系统,再添加一些优秀的控制台软件和iptables防火墙设置工具,主要用做系统修复工具和防火墙系统,也可以作为一个随身携带的练习linux命令的玩具系统;另一个分支将加入X服务器和必要的软件,主要以影音娱乐、上网为主,但由于空间的原因,将删除原LFS系统上的不少东西,主要是gcc编译器和庞大的perl语言还有一些man和info文档,其他内容的改动幅度将不会很大。并且会重点开发带X的版本,并不断完善它,使它成为一个实用系统。

二,安装

1,准备一个容量为128M 或者 128M 以上的可启动U盘

2,用U盘厂商提供格式化工具将其格式化成一张可启动的U盘启动方式USB-HDD或者USD-ZIP都可以。如果没有厂商提供的格式化工具,也可以用通用的USB启动盘制作工具usboot但用usboot并不适用每一种U盘,比如我的台电酷闪就不行。做好启动盘后,请先测试一遍,看看能否使计算机从U盘启动,并出现DOS提示符

C:\> 。一般的U盘厂商提供的格式化工具会用自由软件FreeDOS,而不是MSDOS.

FreeDOS是一个完全兼容MSDOS,并可运行DOS软件的DOS系统。和linux一样符合遵循GPL公约。因此,一般的U盘格式化工具,会用FreeDOS作为启动系统。

3,如果你的U盘在格式化成可启动U盘后的文件系统格式是FAT(即FAT16或者称MSDOS)那么初始化ramdisk映象用默认的initrd.img就可以了,如果是FAT32那么请用initrdFat32.img。只要把原来的支持FAT16的initrd.img删除或改名,并将initrdFat32.img该名为initrd.img就可以了。如果U盘格式化工具用FreeDOS做启动系统,那么肯定是格式化成FAT16的文件系统了,FreeDOS只支持FAT16。因此,我将支持FAT16的initrd作为默认initrd.

在未来版本中,我将加入对NTFS格式的U盘的支持.但目前版本,为了在新年前推出,很多特性都还没有加进去。

4, 将U盘BabyLinux的5个文件全部拷贝到U盘的根目录下。其中:

bzImage —— 系统内核,2.6.14版本

initrd.img —— 系统启动的ramdisk文件,也是整个系统的关键。

rootfs.img —— ext2文件系统映象,整个系统全在这里面。

其中还有用cramfs压缩过的/usr文件系统映象usr.img .

loadlin.exe —— linux启动工具,能在fat上启动系统全靠它了。

autoexec.bat —— DOS启动时候,自动运行的批处理文件。

里面的内容是:

loadlin bzImage initrd=initrd.img vga=788

如果做好的可启动U盘上已经有了这个文件,可以覆盖掉,或者添加上面那行命令。

如果是17寸CRT显示器,或者15寸液晶显示器,建议将vga=788改成vga=791,这样

显示效果更理想。尤其是15寸液晶显示器,用vga=791最完美。

5, 插上U盘,重新启动电脑,进入BIOS设置,将启动顺序该为从U盘启动。

保存后重起,系统会自动进入linux。root用户密码为123 。

如果想要加其他参数启动,请修改autoexec.bat,或者不用autoexec.bat自动运行loadlin,

而是先启动到DOS,然后再手工输入loadlin命令来启动,如:

//单用户模式 :

C:\>loadlin bzImage initrd=initrd.img vga=788

single

//直接启动到bash提示符,类似单用户模式 :

C:\>loadlin bzImage initrd=initrd.img vga=788

init=/bin/bash

//禁止运行SELinux :

C:\>loadlin bzImage initrd=initrd.img vga=788

selinux=0

//1024x768分辨率 :

C:\>loadlin bzImage initrd=initrd.img vga=791

**************

***特别注意***

**************

如果你修改autoexec.bat或者自己另外创建一个自动批处理文件。应当特别注意编码问题。假如你在windows下编辑这个文件,假如你的WINDOWS系统用的是Unicode编码,保存后文件内容就是Unicode编码的字符集合。而纯DOS系统,无论是MSDOS或者是FreeDOS都只支持Ascii编码。那么自动运行该批处理文件的时候只显示一行乱码,因此,强烈建议在纯DOS下用Edit编辑工具创建该文件,或者用windows的写字板编辑,然后另存为对话框中的保存类型中选择“文本文档——MSDOS格式”这样就保证了编码一致。另外一种解决方法是先不运行自动批处理,然后在DOS提示符下输入:

echo "loadlin bzImage initrd=initrd.img vga=788" >

autoexec.bat

生成一个符合DOS编码的自动批处理,再启动就生效了。

6, 启动系统后U盘的挂装点在/initrd/loopfs下,可以将文件保存和拷贝到这个目录,以便于

在Windows系统上打开这些文件。如果保存在其他地方,则意味着文件保存在rootfs.img这个

ext2文件系统映象中,在windows中看不到,当然,在linux和freeBSD等支持ext2文件系统和

支持loopback device的UNIX类系统中可以挂装后看到。

三,其他

这是一个很粗糙的版本,仅仅是预览版本和一个框架。最近由于有人询问进展,

因此想在2006年前先释出。不要对此版本抱太大希望,但以后的版本中将陆续改善。

周期可能比较长,争取以后每个月推出一个修正过的版本。每半年推出一个有重大

改进的版本。但是时间有限,我每天只能在此项目上工作1~2个小时。

关于制作的文档,还需要过一段时间。

急着想自己制作的朋友可以看我的制作日志。日志在系统的root用户目录下

有babylinux_build_log 文件,记录的我制作的思路和大致过程。

进入系统后,可以用zhcon配合vim 查看。linux高手应该可以根据这个日志,

知道制作过程,并做一个自己的版本。

基本思路是用制作一个支持loopback设备为根文件系统的initrd

然后用 loadlin 在fat系统上引导它。细节问题将在以后的文档中详细说明。

由于设备和时间有限,不能进行完整的测试。我不保证该版本能在每一台机器上正常运行。

u盘迷你linux,U盘上的迷你linux系统相关推荐

  1. php项目源码发布linux,php代码上传到linux服务器无法正常显示

    近期接手了一个PHP开发的项目,一直想搞个LVS管理的工具,却一直没动力去做,这次就当是学习和为了以后工作的方便吧.开发过程中遇到这么一个问题,情况如下: 情况:在windows下写好的代码,上传在L ...

  2. 迷你计算机工作站,掌上的迷你工作站,便携笔记本电脑神奇小本MAG1评测

    掌上的迷你工作站,便携笔记本电脑神奇小本MAG1评测 2019-10-19 16:17:46 17点赞 44收藏 42评论 今年来迷你笔记本电脑市场火爆,小于10寸的笔记本电脑虽然说属于小众,但是很多 ...

  3. 在linux或者windows上直观查看linux下生成的自签名证书

    linux上查看 windows上查看 需要把pem后缀修改为crt 转载于:https://www.cnblogs.com/lqynkdcwy/p/9664080.html

  4. linux php 如何上传webshell,linux+apache+php的一次拿webshell的心得

    首先俺先声明俺是个菜鸟,俺虽然是菜鸟但俺不会一直是菜鸟的(一旁兄弟喊到:别俺,俺,俺的,说普通话!).俺,不对,我一直遵照着实践是检验真理的唯一标准这句话学习技术,这不,刚刚实践了一次有了一点小小的心 ...

  5. linux下github上传文件,linux下将本地文件上传到github中?

    今天编写一份Python基础代码,经过Linux上传到github上,遇到点问题,已经解决 1.首先sudo su 进入root 用户 2.ls 检查出当前文件下有什么文件 3. cd 进入你将要上传 ...

  6. linux测试ftp上传速度,Linux通过trickle对FTP Client限速

    Linux通过trickle对FTP Client限速 Trickle是一款用户端带宽管理软件. Trickle通过控制socket数据读写量来控制和限制应用的上传/下载速度. ldd工具可以帮我们找 ...

  7. linux php文件上传失败,linux不能上传文件

    问题: 无法向Linux主机上传文件. 例如:我们现在想把A文件上传到 /opt/software 目录下,但是此时发现怎么都上传不上去.[isea@redis99 software]$ ll 总用量 ...

  8. linux rz 无法上传文件,linux rz上传文件及出错解决方案

    在把Windows上的文件传至Linux端时用到SecureCRT,一般小文件都没有问题,文件太大时则出现了上传后的文件只有几K大小,当然大于2个G的是不可能传的上去的了.对于几百M到1G多的大文件要 ...

  9. linux安装桌面上的软件,linux安装桌面软件

    CentOS 作为服务器的操作系统是很常见的,但是因为需要稳定而没有很时髦的更新,所以很少做为桌面环境.在服务器上通常不需要安装桌面环境,最小化地安装 CentOS(也就是 minimal CentO ...

  10. linux 判断文件上传轨迹,linux各种常用命令

    (1).man命令 man命令用于查看Linux各种命令的使用说明,用法如下: man 命令名↙ (2).参考背景资料或利用man命令,熟悉掌握以下基本命令的使用方法: ls:按条件列出文件 cd:进 ...

最新文章

  1. 如何提升 Linux 服务器安全的开源工具和技巧?
  2. HDOJ 1231 最大连续子序列
  3. 14-数据库连接池和jdbc优化
  4. 浅谈:Wi-Fi 6的优势及应用前景
  5. python 网络编程_Python网络编程(六)
  6. Hibernate中把Session和线程绑定的配置
  7. 机器学习第18篇 - Boruta特征变量筛选(2)
  8. 连载三:Oracle升级文档大全
  9. UE4 无法include “filename.generated.h”
  10. mongodb连接池 php,node.js,mongodb_nodejs使用mongodb连接池,node.js,mongodb - phpStudy
  11. 在ccs中添加芯片_985博导团队重大成果,涉及隐私保护领域,已在腾讯与京东、快手的业务中应用...
  12. tcpdump高级过滤
  13. ArcView,ArcGis,MapObjects,ISRI有什么区别
  14. sas 分析家模块 安装,SAS9.3/9.4统计分析安装使用教程自学资料完整模块最新SID
  15. uni-app设置原生标题栏渐变色
  16. 《白话大数据与机器学习》学习笔记
  17. 虚拟机共享目录添加按钮灰色_共享按钮将成为PS4最重要的遗产
  18. python plot画简单的曲线图
  19. 探索者TSSD打印比例及绘图比例理解
  20. 广告管理系统的UML分析与设计 1

热门文章

  1. 在线新华字典Sidebar Gadget
  2. 鸿蒙系统外销吗,郭明錤:华为可能会在10月份出货搭载鸿蒙系统的手机
  3. 《iPhone-锁屏密码忘了或设备已停用》
  4. Android 发布到google Play的app搜索不到问题的解决
  5. 【第100题】元音统计 | 乘法原理加速计算
  6. 谷歌浏览器插件Automa_4.元素多选
  7. C# .NET 遍历Json 形成键值对 取节点值key value
  8. <<<QQ大放送>>>>
  9. 双网卡双ip设置(转载)
  10. 备份:官方maemo hello world 运行说明