自定义的ISO供个人使用。如果您想与他人分享您的自定义,无论是免费的还是购买的,则必须重命名;删除所有特定的艺术品,品牌和其他身份元素;而且,您不能将预期用户与基本发行版以任何方式关联的自定义相关联。
您可以自由使用软件而无需重命名这些软件,因为它们已在GPL下获得许可。但是否则,它将是您自己的创作,不再是您的发行版。
发行版的名称和身份元素是商标和版权。除非您获得适当授权的批准,否则您将无法使用这些(身份元素和名称)。
这是一个简单的命令行工具,可以自定义Debian , Archlinux , Ubuntu Family , Linux Mint及其一些衍生产品的实时CD/DVD。它不需要主机系统和目标系统是相同的,即您可以修改坐在Ubuntu或Archlinux上的Debian Live CD,或者修改坐在Ubuntu上的Archlinux Live CD等。
它为您提供一个修改的Chroot环境,并创建修改后的ISO映像。您需要自己进行所有自定义,JliveCD本身不会进行任何修改。
它是在以下文档的帮助下开发的:
- https://help.ubuntu.com/community/livecdcustomization
- https://wiki.debian.org/debianinstaller/modify/cd
- https://wiki.archlinux.org/index.php/remastering_the_install_iso
该工具主要用于个人使用。
首次使用Ubuntu或Linux Mint ISO开始之前,请阅读其他信息部分。
它可以作为项目基础。对于JLiveCD项目,您只需要使用一次基本ISO提取并部署该项目。之后,您可以继续改变事物,建立和测试ISO,构建在这些更改上。
它可以与全局和本地配置文件一起使用。使用配置文件,您可以跳过需要从用户输入中答案的提示。本地(项目明智)配置优先于全局配置。
全局配置文件: /usr/local/JLIVECD/.config
本地配置文件:项目目录中的config.conf文件。
在Debian类似系统中使用以下命令安装要求:
sudo apt-get install squashfs-tools genisoimage syslinux syslinux-utils rsync xterm以及Archlinux中的以下命令:
sudo pacman -S squashfs-tools cdrkit syslinux rsync xterm dosfstools在终端运行install.sh文件:
chmod +x ./install.sh
sudo ./install.sh将JLstart作为root运行,或从menu->Development->JLIVECD运行。
例子:
~ $ sudo JLstart
[sudo] password for user:
**************** JLIVECD ******************
* Tips:
* 1. Paths must be absolute. (~ allowed)
* 2. Inputs are literal
* 3. Do not use NTFS partition
******************************************
=== Is this a new project: (y/n) ? :
...............................提示在旅途中给出,然后跟随它们成功创建自定义的实时CD/DVD。
它提示了新项目的OSMODE(Debian,Ubuntu或Archlinux),并将其保存在特定于项目的.config文件中,以便下次不需要您再次指定操作系统。确保您不要在.config文件中更改它。
如果您想在特定的OSMODE中运行JliveCD,则可以为您提供三个选项:
| 选项 | alt。选项 | 细节 |
|---|---|---|
-ub | --ubuntu | Ubuntu模式(用于Ubuntu Family&Linux Mint) |
-db | --debian | Debian Mode(Debian家族) |
-al | --archlinux | Archlinux模式(Archlinux家族) |
请注意,如果您在特定的OSMODE中运行JliveCD,并且与.config文件中的内容不匹配,则会丢弃错误并退出。
在特定osmode中运行jlivecd的示例:
sudo JLstart -ub # ubuntu
sudo JLstart -db # debian
sudo JLstart -al # archlinux在您的项目目录中,您会找到一些默认文件/目录。不要更改他们的名字。
目录是:
debcache : .deb或pkg文件保存在此处。有关更多详细信息,请参见“缓存管理”部分。edit :这是实时系统(CHRoot系统)的根文件系统(IE / )。您在此处进行的任何更改都将出现在最终的ISO中。extracted :这是提取原始ISO的地方。您可以在此处更改几件事,例如不使用,发布,日期,飞溅屏幕等。mnt :仅用于安装ISO映像的目录。mydir :具有777许可的目录。该目录在edit/在Chroot期间移动,因此在Chroot中可以作为/mydir提供。使用此目录存储/安装您需要存储的将来需要存储的软件包和文件,但不想将它们包含在ISO中。文件是:
.config :相应项目的配置IE DISKNAME和其他一些默认值config.conf :由用户管理的配置。这本质上是一个bash脚本,因此您可以聪明地使用它并设置动态选项。设置为变量(选项)的任何非空值都将绕过其输入提示。~被尊重。~/"some folder"和"~/some folder"是不同的。如果您想要空格,请按原样给出: ~/some folder 。n所有y/n类型提示。sudo JLopt -rn在主系统的另一个终端中。如果您在将PC连接到Internet之前启动JliveCD,则可能会发生这种情况。JLopt -t timeout_value 。 “ timeout_value”应在几秒钟内替换为所需的时间。例如:12秒的超时: JLopt -t 12mate-terminal 。对于Mate DE,请安装xterm ( sudo apt-get install xterm )。JLopt -t1 actual-terminal-command 。要更改次级默认终端: JLopt -t2 actual-terminal-command 。对于前。 JLopt -t1 gnome-terminalenter base iso path: ~/Downloads/x 。由于我的下载文件夹中只有一个匹配X的文件是xubuntu-14.04.1-x64.iso ,因此将该文件作为输入。.iso完整路径。pacman -Scc )。 JliveCD备份pkg文件以减少未来下载后清洁pacman Cache。如果您手动进行清洁,则pkg缓存将不再可用,下次安装/重新安装时,您将不得不再次重载相同的软件包。.deb文件放入Edit/var/cache/apt/Archives文件夹(或edit/var/cache/pacman/pkg/ )中的文件夹(或pkg文件),以免在软件安装过程中再次下载。.deb或pkg文件,也不应该(即使使用Package Manager Cache Clean Program,除非您希望以这种方式进行磁盘空间约束)。.deb或pkg文件放在DebCache文件夹中,但是在这种情况下,您需要在将文件复制到此文件夹后运行JliveCD。可以在Jlivecd Github Wiki上找到与自定义相关的文档。
默认情况下,jlivecd创建了混合图像。您可以使用诸如unetbootin之类的工具或dd之类的工具来创建可引导USB。如果您想使用dd ,请小心误解和正在做什么。例如,如果您将/dev/sdb as /dev/sda误解,则最终可能会擦拭硬盘。为此,我还有另一个脚本(Chibu)检查USB设备的有效性,并确保它是USB设备而不是硬盘上的分区之类的其他内容。在Cheking有效性之后,它将运行dd命令来创建可引导USB。
注意: Chibu或DD将贫穷的USB现有数据
有了chibu ,就是这样:
sudo chibu iso_path /dev/sdx其中/dev/sdx (非/dev/sdx1等)是您的USB设备,(x是一个字母)
您可以使用以下方式找到设备ID
sudo fdisk -l在上述命令的输出中查找USB设备。
笔记:
unetbootin创建的USB可能没有其引导标志集。使用gparted检查并设置引导标志(如果未设置)。unetbootin创建的USB可能无法使用其第一个默认启动选项启动,请选择failsafe选项。unetbootin不起作用,请尝试dd (最好是Chibu)unetbootin无法适用于Archlinux,使用dd (最好是Chibu) 1.在Linux Mint 17 XFCE有一个错误。要修复此编辑/usr/sbin/invoke-rc.d文件(在Chroot中)为:在285和421线处的exit 0替换exit 100 ,然后进行升级。升级后,恢复了此修改(必须)。
2.在Linux Mint 17 XFCE中,如果您安装了Nautilus,则它将将Gnome-Sessions设置为默认会话,如果未安装GNOME桌面,则不会在实时会话中显示桌面窗口。更改链接/usr/bin/x-session-manager指向/usr/bin/xfce4-session 。
3.在xubuntu 14.04.1还有另一个错误:无法打开 /脚本 /casper命令“错误)要解决此问题,请在Chroot中运行此代码:
ln -s /usr/share/initramfs-tools/scripts /scripts请按照以下链接进行错误报告:
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1325142
4.在Ubuntu 14.04 Gnome lts您可能会遇到两个错误:
应该通过编辑来解决一个:
/var/lib/dpkg/info/whoopsie.prerm
/var/lib/dpkg/info/libpam-systemd : amd64.prerm
/var/lib/dpkg/info/libpam-systemd : amd64.postinst (更改exit $?以在Invoke-rc.d行中exit 0 )
应该通过编辑来解决另一个:
/etc/kernel/postrm.d/zz-update-grub
/etc/kernel/postinst.d/zz-update-grub找到以下内容并评论IF和FI线:
if [ -e /boot/grub/grub.cfg ] ; then
# exec update-grub
fi在退出Chroot之前还原这些变化。
请按照以下链接获取错误报告以获取更多详细信息:
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1325142
5.您可能会遇到另一个错误: Ubiquity installer, hang/freeze on harddisk detection 。可以通过编辑文件edit/usr/share/applications/ubiquity-gtkui.desktop来解决此错误,并exex
sh -c ' ubiquity gtk_ui '到
sh -c ' sudo ubiquity gtk_ui '
` ` ` y