1

我正在使用 clonezilla-live-2.6.1-11-amd64.iso 我想在启动 live USB 时更改默认部分以执行整个驱动器的完整备份。例如:

在屏幕“安装 Clonezilla 映像目录”上,我想将默认值从 local_dev 更改为使用 samba_server

在屏幕“Mount Samba 服务器”上,我想将默认值从 192.168.1.1 更改为 192.168.1.2

在屏幕上的“Mount Samba 服务器”帐户上将默认管理员更改为 clonezilla

当我在 /syslinux/syslinux.cfg 中输入项目时。

ocs_repository="smb://clonezilla:password@192.168.1.2/zilla/

菜单仍然询问我 192.18.1.1 的默认地址和用户名管理员,所以看来我不理解文档。有没有人有示例cfg?

4

2 回答 2

1

我已经深入研究了专门定制“LiveISO”和 CloneZilla,所以我将大致了解我将如何攻击它。

看着我的笔记,这就是我所拥有的。要启用 SSH 守护程序,我将解压缩 ISO,编辑以下内容并使用mksquashfs.

例如:

准备解压 ISO:

sudo apt-get install -y squashfs-tools

将 iso 复制到 /tmp 并重命名 live.iso

mkdir /tmp/mnt
sudo mount -o loop /tmp/live.iso /tmp/mnt
sudo find /tmp/mnt \( -name '*.squashfs' -o -name "*.SQFS" \) -exec unsquashfs -d /tmp/squashfs-root/ {} \;
sudo umount /tmp/mnt
sudo rm /tmp/mnt -R
cd /tmp/squashfs-root

这给你留下了:

/tmp/live.iso 
/tmp/squashfs-root/FilesFromSquashedFS

做出改变…..

sudo nano /tmp/squashfs-root/etc/ocs/ocs-live.conf

滚动到底部并添加:

ocs_daemon=\"ssh\"

然后重新打包 ISO:

cd /tmp
sudo mksquashfs /tmp/squashfs-root filesystem.squashfs
sudo rm /tmp/squashfs-root -R

这给你留下了:

/tmp/live.iso 
/tmp/filesystem.squashfs

现在使用 ISO 编辑程序将其插入filesystem.squashfs到原始 ISO 中,确保使用与使用的原始 ISO“squasedfs”相同的名称。有时它是不同的扩展名。

上述方法非常“通用”,但我发现一些 LiveOS 创建者有用于启动操作系统、进行更改然后从正在运行的操作系统创建 ISO 的脚本。

对于 CloneZilla,这是我在快速 google 后发现的。

https://clonezilla.org/advanced/customized-clonezilla-live.php

该链接的简单版本:

  • 创建名为custom-ocs的自定义脚本(示例脚本文件/usr/share/drbl/samples/custom-ocs
  • /home/partimag/
  • 将脚本复制到/home/partimag/并 cd 到/home/partimag/
  • 运行以下命令生成 ISO

    ocs-iso -g en_US.UTF-8 -k NONE -s -m ./custom-ocs

对于其他选项,请运行ocs-iso -hocs-live-dev -h获取更多信息。

另一个链接(https://clonezilla.org/related-articles/012_Automated_USB_thumb_drive_using_Custom/Automated_USB_thumb_drive_using_Custom.html)显示了这种方法,这似乎向我表明,如果你在 ISO 中放置一个脚本,然后通过编辑指向它syslinux.cfg(你可以使用上述任何一种方法对其进行编辑)您可以以这种方式自动运行它。该链接说启动USB并选择第一个菜单选项,但我希望它完全自动化,如果你什么都不做,无论如何都会选择该选项。

这是syslinux.cfg他使用的编辑:

kernel /live/vmlinuz1 
append initrd=/live/initrd1.img boot=live union=aufs noprompt noprompt ocs_live_run="/live/image/live/custom-ocs" ocs_live_extra_param="" ocs_live_keymap="NONE" ocs_live_batch="yes" ocs_lang="en_US.UTF-8" vga=791 ip=frommedia nolocales 

注意:ocs_live_run="/live/image/live/custom-ocs"这对我来说意味着在启动后运行这个脚本,但我有一段时间没有测试/弄乱 CloneZilla。

个人意见:我喜欢Parted Magic,但有些人不喜欢它现在有一些奇怪的许可并且不是真正免费的,但可以找到和/或以 10 美元左右的价格购买旧 2013 版本。它内置了 CloneZilla,还有一个MKISO用于从引导/编辑/LiveOS 制作 ISO 的脚本,但同样,我通常会使用解压缩 ISO squashfs,然后重新打包并注入 ISO。

这是我自定义“LiveISO”所做的链接。几年前我的最后一个项目是一个“Parted Magic”LiveISO,它启动了一个受 PWD 保护的 VNC 会话 + ssh,并通过电子邮件向我发送了 DHCP IP 地址。(我在电子邮件部分遇到了命中和未命中的结果,但根据您的设置,您可以使用静态 IP 或检查路由器的 DHCP IP 地址)

https://www.freesoftwareservers.com/display/FREES/Customize+LiveISO%27s

于 2019-05-02T04:28:27.643 回答
0

ocs_repository=您确实可以通过在vmlinuz内核启动参数中使用来自动预安装您的 Samba 共享。

但是,它需要在正确的引导文件中。

根据启动参数文档,相关文件是以下文件之一:

  • /syslinux/isolinux.cfg在 MBR 机器上从 CD 引导时
  • /syslinux/syslinux.cfg从 MBR 机器上的 USB 闪存驱动器启动时
  • /boot/grub/grub.cfg从 uEFI 机器启动时
  • /tftpboot/pxelinux.cfg/default在您的 PXE 服务器上或类似,当从 MBR 机器上的 PXE 引导时
  • /tftpboot/grub/grub.cfg从 uEFI 网络引导机器引导时,在 PXE 服务器上或类似的东西

根据您的 Samba 服务器,您可能还需要指定要使用的 SMB 版本。从同一文档页面

要通过 URI(统一资源标识符)分配图像存储库,请使用“ocs_repository”。Clonezilla live 中支持的 URI: [dev|smb|smb1|smb1.0|smb2|smb2.0|smb2.1|smb3|smb3.0|smb3.11|smb3.1.1|ssh|nfs|nfs4|http|https|ram]:[//[user:password@]host[:port]][/]path

于 2021-05-06T09:58:29.527 回答