站点图标 Linux-技术共享

如何把自己的Kali Linux 虚拟机系统制定成iso镜像

LiveBuildaCustomKali ISO 创建自己的KALI ISO

  最早使用 Kali是在19年大二上学期,因为是小白,一般都会选择VMware Workstation Pro的虚拟机来学习的,这样简单又方便,即使遇到暂时无法解决的问题,也可以用快照恢复。

  随着学习的进步,也更加熟练了这款Linux操作系统,个人觉得可以脱离虚拟机,直接双系统装机了。但kali中安装和配置了大量文件,如果安装纯净版再搭建一遍,是一件事很费劲的事,于是乎,琢磨着是否可以将自己kali定制成iso镜像,功夫不负有人心,在Kali Linux的官方文档中找到了方法,分享给需要的网友。

  LiveBuildaCustomKali ISO 官方文档:https://www.kali.org/docs/development/live-build-a-custom-kali-iso/

  个人实操后的建议是,最好准备一个拥有足够容量的移动硬盘,挂载后在该硬盘中进行 ISO 镜像的制作,制作的过程很长,因为build.sh脚本会下载创建ISO所需的所有必要的软件包,一定程度上是取决于你的网络速度的,最关键一点是,这期间是不能断网或中断执行的,否则,又得重新开始。所以,请保证你机器运行流畅和网速和谐。

  最后,因为官方文档的写的很详细,博主也就没什么可多说的了,看到如下执行消息就证明制作成功了:

  制作完成后,可通过xtfp工具传输在win10中,但因Windows和Linux文件系统的差异,win中会很吃储存,像博主的kali是ext4文件系统而win中是NTFS,在kali中虽然仅有19G的显示,但却在win中超过了90G的空间占,传输时间会很长。


 
 
 
  所以,为了避免上述这种问题,博主建议在Kali 中直接挂载Windows的NTFS文件系统,一方面是制作好的 ISO镜像可直接在win10中读取使用,另一方面是在ntfs文件系统中封装Kali会比ext4文件系统速度稍快(当然,这还是取决于网速)。

  因此,博主推荐读者使用ntfs-3g工具对ntfs格式的硬盘进行挂载,NTFS-3G 是一个开源的软件,可以实现 Linux、Free BSD、Mac OSX等操作系统中的 NTFS 读写支持。它可以安全且快速地读写 Windows 系统的 NTFS 分区,而不用担心数据丢失。
  而Kali是原带有ntfs-3g工具的,读者可以输入ntfs-3g验证,如下图:

# ntfs-3g

  则证明是有ntfs-3g工具的,只需要挂载即可:

 sudo fdisk -l | grep NTFS
 查询已识别的ntfs设备
 mount -t ntfs-3g /dev/sdc1 /mnt/USB 
  或 
 ntfs-3g /dev/sdc1 /mnt/USB
 NTFS设备的挂载
注: /dev/sdb,/dev/sdc指被挂载的NTFS设备,/mnt/USB指你个人创建的挂载点。

  如果想将硬盘永久挂载,可以在/etc/fstab里面添加如下格式语句:
  ntfs-3g silent,umask=0,locale=zh_CN.utf8 0 0
  最后,在该硬盘中进行Kali Linux的 ISO镜像制作:


  当然,也可能有朋友的Kali中是没有ntfs-3g工具的,kali安装ntfs-3g工具:

	apt install ntfs-3g -y

  又由于ntfs-3g工具依赖FUSE用户态文件系统的支持,所以因为缺少FUSE而报错的朋友需要先安装了FUSE。

  可能有朋友又会问什么是FUSE呢?

   FUSE指的是用户态文件系统,FUSE在内核中存在一个驱动,用户态对文件系统的操作,通过FUSE驱动转发到用户态程序,这样就可以在用户态实现文件系统操作,传统的Linux文件系统存在于内核中,比如Linux下对NTFS提供读写支持的NTFS-3G软件包就是利用FUSE实现的:
wget https://github.com/libfuse/libfuse/releases/download/fuse_2_9_4/fuse-2.8.4.tar.gz
# 使用wget下载fuse压缩包
tar -zxvf fuse-2.8.4.tar.gz 	# 解压
cd fuse-2.8.4		# 进入目录

编译安装:

./configure
make && make install

加入环境变量:

 export PKG_CONFIG_PATH=/usr/lib/pkgconfig:/usr/lib64/pkgconfig/:/usr/local/lib/pkgconfig

内核模块的添加:

 modprobe fuse
 echo "/usr/local/lib" >> /etc/ld.so.conf

查看版本以验证安装成功:

 ldconfig
 pkg-config --modversion fuse   
  2.8.4   
 // 看到版本号表示安装成功

挂载成功:

C:\root> lsmod|grep fuse
fuse                  143360  7
  一切准备工作完成后,就开你的Kali个人镜像的制作吧!
退出移动版