如何制作我安装的系统的iso

And*_*w H 4 linux-mint distributions

我在这里重新发布这个是因为它在 Askubuntu 上是题外话。

我安装了 Linux Mint 17.3,自定义了主题,删除并添加了软件包,对文件管理器进行了许多更改等。我想知道一种简单的方法将我所做的所有内容转换为可启动的 ISO,我可以将其分发给我的朋友. 我可以使用 remtersys 和 relinix 来创建 ISO,但出于某种原因,我无法启动它们。我认为它们不再受支持,因为它们已经多年没有更新了。我可以使用什么以及如何使用它?谷歌提供了许多指南,但它们缺乏信息并且已经过时。

Systemback 被推荐作为另一种选择,但返回此错误:

Traceback (most recent call last):
File "/usr/lib/linuxmint/mintSources/mintSources.py",
    line 1455, in <module> codename = config_parser.get("general", "base_codename") 
File "/usr/lib/python2.7/ConfigParser.py",
    line 330, in get raise NoSectionError(section) ConfigParser.NoSectionError: No section: 'general
Run Code Online (Sandbox Code Playgroud)

edu*_*ogr 6

我认为您可以通过这些步骤来完成(这些是分步指南的第一部分和第二部分)....

准备主机

sudo apt-get install squashfs-tools 
sudo apt-get install chroot
Run Code Online (Sandbox Code Playgroud)

设置我们的工作环境。首先,我们将在 /tmp/livecd 下挂载 iso:

mkdir /tmp/livecd
sudo mount -o loop ~/Desktop/ubuntu-7.10-desktop-i386.iso /tmp/livecd
Run Code Online (Sandbox Code Playgroud)

然后在我们的工作目录中创建一个包含我们未来 CD 映像 (cd) 的目录,并在我们的 ~/livecd/cd 目录中复制除 casper/filesystem.squashfs 之外的所有 CD 内容

mkdir ~/livecd
mkdir ~/livecd/cd
rsync --exclude=/casper/filesystem.squashfs -a /tmp/livecd/ ~/livecd/cd
Run Code Online (Sandbox Code Playgroud)

现在我们需要将 casper/filesystem.squashfs 挂载到一个名为 ~/livecd/squashfs 的目录中,以便将其内容复制到我们将要编辑我们的 live CD 文件系统的目录中: ~/livecd/custom

mkdir ~/livecd/squashfs
mkdir ~/livecd/custom
sudo modprobe squashfs
sudo mount -t squashfs -o loop /tmp/livecd/casper/filesystem.squashfs ~/livecd/squashfs/
sudo cp -a ~/livecd/squashfs/* ~/livecd/custom
Run Code Online (Sandbox Code Playgroud)

最后,让我们将 /etc/resolv.conf 和 /etc/hosts 复制到我们的 ~/livecd/custom/etc 中,这样我们就可以从要自定义的映像中访问网络(通过 chroot)

sudo cp /etc/resolv.conf /etc/hosts ~/livecd/custom/etc/
Run Code Online (Sandbox Code Playgroud)

进入我们未来的形象

为了自定义镜像,我们将chroot到~/livecd/custom目录,挂载一些必要的伪文件系统(/proc和/sys)。从那里,我们将能够自定义我们的 Live CD。

sudo chroot ~/livecd/custom
mount -t proc none /proc/
mount -t sysfs none /sys/
export HOME=/root
Run Code Online (Sandbox Code Playgroud)

定制我们未来的现场 CD

删除一些包什么的......

更新现有图像

现在我们已经删除了不需要的软件,我们可以更新我们的 /etc/apt/sources.list 以启用 Universe 和 multiverse 存储库以及gutsy-updates、gutsy-security 和合作伙伴存储库,以便我们可以安装 vmware-服务器

vim /etc/apt/sources.list
Run Code Online (Sandbox Code Playgroud)

(您可以在该帖子顶部的第二个链接中查看最终文件)

现在我们可以通过运行来更新图像:

apt-get update
apt-get dist-upgrade
Run Code Online (Sandbox Code Playgroud)

安装新包

安装一些你想要的包...

嗯,就是这样,我们现在拥有您在使用 Live CD 时需要的任何软件。现在是时候做一些清理了

清理 chroot

当我们安装包时,apt 会缓存这些包,我们需要删除它们以节省一些空间:

apt-get clean
Run Code Online (Sandbox Code Playgroud)

另外,/tmp 中有一些文件需要删除:

rm -rf /tmp/*
Run Code Online (Sandbox Code Playgroud)

在 chrooting 之前,我们添加了 2 个文件:/etc/hosts 和 /etc/resolv.conf,让我们删除它们:

rm -f /etc/hosts /etc/resolv.conf
Run Code Online (Sandbox Code Playgroud)

最后,我们准备退出 chroot 并重新打包 CD。我们首先需要卸载 /proc 和 /sys:

umount /proc/ 
umount /sys/
exit
Run Code Online (Sandbox Code Playgroud)

最后,我们回到我们的主机,因为我们修改了一些包,我们需要重建一些清单文件,重新创建 squashfs 并重新创建 ISO

重新创建 ISO

Fisrt,让我们重新创建清单文件:

chmod +w ~/livecd/cd/casper/filesystem.manifest
sudo chroot ~/livecd/custom dpkg-query -W --showformat='${Package} ${Version}\n' > ~/livecd/cd/casper/filesystem.manifest
sudo cp ~/livecd/cd/casper/filesystem.manifest ~/livecd/cd/casper/filesystem.manifest-desktop
Run Code Online (Sandbox Code Playgroud)

并重新生成 squashfs 文件:

sudo mksquashfs ~/livecd/custom ~/livecd/cd/casper/filesystem.squashfs
Parallel mksquashfs: Using 2 processors
Creating little endian 3.0 filesystem on ~/livecd/cd/casper/filesystem.squashfs, block size 65536.
....
....
Run Code Online (Sandbox Code Playgroud)

现在,或者,您可能想要自定义文件:~/livecd/cd/README.diskdefines,最后更新 ~/livecd/cd/md5sum.txt,其中包含 ~/livecd/cd md5 sums 中的文件:

sudo rm ~/livecd/cd/md5sum.txt
sudo -s
(cd ~/livecd/cd && find . -type f -print0 | xargs -0 md5sum > md5sum.txt)
Run Code Online (Sandbox Code Playgroud)

我们现在差不多完成了,剩下的最后一件事就是使用以下命令创建 ISO:

cd ~/livecd/cd
sudo mkisofs -r -V "Ubuntu-Live-Custom" -b isolinux/isolinux.bin -c isolinux/boot.cat -cache-inodes -J -l -no-emul-boot -boot-load-size 4 -boot-info-table -o ~/Desktop/Ubuntu-Live-7.10-custom.iso .
Run Code Online (Sandbox Code Playgroud)

好了,您现在可以通过使用或使用虚拟化/仿真软件(例如 qemu、kvm、vmware.....