LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 3633|回复: 12

ArchLinux上作liveUSB原来如此简单

[复制链接]
发表于 2009-1-20 22:32:02 | 显示全部楼层 |阅读模式
创建用户arch,并且添加到users组里面
adduser arch
按照提示操作
安装archiso的依赖关系包
pacman -S mkinitcpio
pacman -S cdrkit
pacman -S aufs
pacman -S syslinux #做ISO的时候要用

archiso可以通过手工的make make install来安装
或者使用下面的git方法克隆archiso-live的源码树

使用下面的命令

git clone git://github.com/godane/archiso-live.git

当然你也需要安装sqlzma-tools.
添加下面的指令到你的 /etc/pacman.conf 文件中的[core]前面
[archiso-live]
Server = http://arch-live.isawsome.net/packages/
pacman -S sqlzma-tools
现在你进入 linux-live/initrd 文件夹运行下面的指令:

cd archiso-live/linux-live/initrd
./initrd_create

这样就会创建一个 initrd.lzm 文件.
将这个文件拷贝到 configs/archiso-live/cd-root 文件夹中.

cp /root/archiso-live/linux-live/initrd/initrd.lzm /root/archiso-live/configs/archiso-live/cd-root/
修改mkinitcpio配置文件archiso-mkinitcpio.conf,主要修改HOOKS部分
nano /root/archiso-live/configs/archiso-live/archiso-mkinitcpio.conf

HOOKS="base udev boot-cd archiso ide scsi sata usb fw filesystems"
如果创建的是boot-usb的话,那么用boot-usb替代boot-cd
可以修改packages.list,加入需要的包,每行一个包名,一般情况下使用base和内核就可以了,当然你也可以添加自己的包
cd /root/archiso-live/configs/archiso-live/list
编辑list文件

进入到 archiso/ 文件夹中,并且输入:
cd /root/archiso-live/archiso
make install

现在你可以进入 configs/archiso-live 文件夹,然后使用下面的命令开始创建livecd:
cd /root/archiso-live/configs/archiso-live
mkarchiso -f all .working archiso-live.iso

稍后片刻,livecd就创建完成了.
另外一个重要的步骤就是增加应用程序和特定的配置等.
mkarchiso希望他们放到一个单独的目录中,类似于一个fstab中的配置情况
目前支持两种格式的镜像,squashfs和平板的目录,他们都需要root进行挂载
下面介绍下使用squashfs挂载的方法
将你要放置的文件放置在一个单独的目录中,我们假使他为/
然后对这个目录使用mksquashfs,然后拷贝到addons目录
在addons下创建一个配置文件,必须命名为config
典型的挂载格式为:
live_overlay.sqfs / squashfs
第一个参数是镜像的文件名,第二个是挂载点,第三个参数是挂载的镜像类型
如果存在多个镜像的话,前面的镜像会覆盖后面的镜像的同名文件
如果你想挂载一个平板的目录的话
把你的目录直接复制到addons目录中,然后再config中增加下面挂载信息
core /packages bind
第一个是目录的相对路径,第二个你的挂载点,第三个参数是类型

需要注意的是:
1.操作的分区要足够的大,我的8G的SSD就不够用了,建议搞个10G左右的分区
2.操作的时间比较长,耐心等待
3.如果把源同步过来的话,作一个LiveCD大约在30分钟的样子,否则全部下载,够呛。
发表于 2009-1-20 23:27:22 | 显示全部楼层
主板:VIA MM2500+
显卡:VIA/S3G UniChrome Pro IGP
内存:A-DATA 1024MB
处理器:VIA C7, 1500 MHz
硬盘:Kingston 2G CF Card;
网卡:VIA Rhine II Fast Ethernet Adapter+Intel 82559*2


这个配置花了多少钱?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-1-21 08:44:37 | 显示全部楼层
好象是699,一年前买的了啦,买的空机,全新的.LCD是旧的,没有买.
回复 支持 反对

使用道具 举报

发表于 2009-1-21 08:53:06 | 显示全部楼层
即使简单,大多数人也不愿意做,所以有了现在的FaunOS。。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-1-21 08:56:04 | 显示全部楼层
Post by carbonjiao;1940245
即使简单,大多数人也不愿意做,所以有了现在的FaunOS。。。

做一个基本的很简单,大家只要有时间就可以做了
我现在怕太多的更改,难度就比较大了,我看了你的那个LiveCD,比较爽,我还是初级,以后多多指教.准备假期里面搞一个玩玩,好不容易才有10天的假期,买彩票呀,玩linux呀...
回复 支持 反对

使用道具 举报

发表于 2009-1-21 10:00:59 | 显示全部楼层
好东西,收藏之
现在liveUSB挺实用的,一般的机器都支持USB启动了
回复 支持 反对

使用道具 举报

发表于 2009-1-21 11:17:14 | 显示全部楼层
Post by parset;1940246
做一个基本的很简单,大家只要有时间就可以做了
我现在怕太多的更改,难度就比较大了,我看了你的那个LiveCD,比较爽,我还是初级,以后多多指教.准备假期里面搞一个玩玩,好不容易才有10天的假期,买彩票呀,玩linux呀...


俺的archlive有更新了,本打算更完美点的,无赖春节前忙。。。
所以就模块化发布了0115内测版
做livecd live-hd live-usb都是相当简单。。。
详细见 http://sns.linuxeye.cn/app.php?id=2
回复 支持 反对

使用道具 举报

发表于 2009-1-21 13:08:16 | 显示全部楼层
有了源:
Server = http://arch-live.isawsome.net/packages/
我们其实只是装配工而已,
脚本和解决方案都是现成的,
这就是linux一人干活大家受益
回复 支持 反对

使用道具 举报

发表于 2009-1-21 17:11:56 | 显示全部楼层
archiso-live 是套不错的系统,作者也一直在更新,尤其是提供了自己定制的软件源后,更方便了。

我比较喜欢这种自己“装配”的方式,大多数软件可以使用自己的仓库,换来的是随心所欲的配置。

carbonjiao 的发行版也挺不错,更贴近中文用户,为 Linux 的推广做了很多工作呢 :-) 不知道你的 code 发布在什么地方?

我前几天提到的 ZenOS,其实就是按自己的方式做 FaunOS。我比较认同 FaunOS 的 POE(便携操作环境)的概念。基于这个理念,ZenOS 的目标是 LiveUSB,并且仅仅是 LiveUSB,虽然制作 LiveCD 也很简单。有兴趣的朋友可以去看看 ZenOS 的代码,并一起完善它,仅靠一个人的力量维护一套系统,时间上有点吃不消呢。

代码在这里:

http://github.com/jicknan/zenos/tree/zenos

ZenOS 还很不成熟,虽然自己用来很长时间,但毕竟我已经熟悉了这套系统。比如发布吧,是采用本帖的自己“装配”模式,还是直接丢一个大大的 img 出来?

我比较抗拒 img 方式,我觉得:
- 在网络速度并不快的情况下,为了几个包的更新而下载一个 img 很不划算,尤其对于一个滚动发布模式;
- 优盘的分区被 img 固定了,不便于利用自己的方式使用自己的优盘;
- 我用到的工具别人不一定能用到,比如 git, gcc 等开发工具;这个问题也可以通过基本系统+addons 来解决,不过 ZenOS 还不支持 addons :-(

但这种方式有个很大有点:简单,下载下来,直接 dd 到 /dev/sdx 就可以了。

当然,自己装配的前提最好是建立在有自己的 archlinux 本地镜像的基础上,不然,花费的网络传输上的时间还是相当可观 :-)

说一下我对 ZenOS 的期许吧: 适合 USB,便于 DIY,中文支持。

如楼主所言,Arch 上的 LiveUSB 确实很简单,但我们还需要更方便 :-)
回复 支持 反对

使用道具 举报

发表于 2009-1-21 17:41:40 | 显示全部楼层
目的决定方法,如果是做维护用系统,或希望系统大部分情况下是只读IMG合适.
如果是for moving working那需要考虑系统的动态组态,大家一起维护一个二进制包库是更合适的.  因为需求是阶段性和变化的.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表