注:本文为转载,最近有空把之前的项目复盘,顺便保存资料到网络,免得忘记。这是两年前的项目,资料是在外网找到的,已经忘记原文链接了,选择转载要贴原文链接,不得已发原创,请原作者原谅,如有冒犯请联系本人删除。

1、 下载ubuntn16.04.4安装光盘,文件为:ubuntu-16.04.4-desktop-amd64.iso
2、 使用安装光盘安装一个初始ubuntu系统,保证系统能够连通internet。
3、 打开终端,并运行:

sudo apt-get install squashfs-tools genisoimage -y

4、 创建一个工作目录,保证空间大于10G

mkdir ~/custom-img

5、 拷贝ubuntu光盘文件到工作目录(更改ubuntu-16.04.4-desktop-amd64.iso为ubuntu.iso)

cp /path/to/saved/ubuntu.iso ~/custom-img
cd ~/custom-img

备注:/path/to/saved/ubuntu.iso为基本光盘目录
6、 解压缩源光盘文件

mkdir mnt
sudo mount -o loop ubuntu.iso mnt
mkdir extract
sudo rsync --exclude=/casper/filesystem.squashfs -a mnt/ extract

7、 执行以下命令

sudo unsquashfs mnt/casper/filesystem.squashfs
sudo mv squashfs-root edit

8、 拷贝域名解析文件

sudo cp /etc/resolv.conf edit/etc/

9、 挂载重要工作目录

sudo mount --bind /dev/ edit/dev
sudo chroot edit
mount -t proc none /proc
mount -t sysfs none /sys
mount -t devpts none /dev/pts

10、 切换工作目录

export HOME=/root
export LC_ALL=C
dbus-uuidgen > /var/lib/dbus/machine-id
dpkg-divert --local --rename --add /sbin/initctl
ln -s /bin/true /sbin/initctl

11、 卸载不需要的软件包(可以不卸载,package1 package2 package3为包名,条件允许可考虑卸载游戏等不需要的软件)

apt-get purge package1 package2 package3

注意:不要使用apt-get remove卸载不需要软件,此命令会保留配置文件。Apt-get purge会删除软件及对应的配置文件。
12、 支持I386架构软件

dpkg --add-architecture i386

13、 更新软件应答包及现有系统软件包

apt-get update && apt-get upgrade

14、 安装需要预置到初始系统中的软件包(重要)

apt-get install package1 package2 package3
备注:我安装的软件

python3.6、docker18.09.1、nvidia-docker2.0.3、nvidia驱动384.13。软件具体安装方式见相关文档。
15、 清除临时文件

apt-get autoremove && apt-get autoclean
rm -rf /tmp/* ~/.bash_history
rm /var/lib/dbus/machine-id
rm /sbin/initctl
dpkg-divert --rename --remove /sbin/initctl

16、 卸载挂载目录

umount /proc || umount -lf /proc
umount /sys
umount /dev/pts
exit
sudo umount edit/dev

17、 创建新的manifest文件

sudo chmod +w extract/casper/filesystem.manifest
sudo chroot edit dpkg-query -W --showformat='${Package} ${Version}\n' | sudo tee extract/casper/filesystem.manifest
sudo cp extract/casper/filesystem.manifest extract/casper/filesystem.manifest-desktop
sudo sed -i '/ubiquity/d' extract/casper/filesystem.manifest-desktop
sudo sed -i '/casper/d' extract/casper/filesystem.manifest-desktop

18、 压缩文件系统

sudo mksquashfs edit extract/casper/filesystem.squashfs -b 1048576

19、 更新文件系统大小

printf $(sudo du -sx --block-size=1 edit | cut -f1) | sudo tee extract/casper/filesystem.size

20、 删除旧的MD5校验

cd extract
sudo rm md5sum.txt

21、 生成新的校验信息

find -type f -print0 | sudo xargs -0 md5sum | grep -v isolinux/boot.cat | sudo tee md5sum.txt

22、 生成ISO文件

sudo genisoimage -D -r -V "$IMAGE_NAME" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o ../name-of-your-custom-image.iso .

备注:name-of-your-custom-image.iso为新生成光盘的文件名,此时包含新软件包的ISO文件制作完成,可独立安装,安装完成后预装软件都已存在并可正常使用。

此步骤中最重要的是安装自己的软件包。

Ubuntu16.04.4制作自定义安装光盘方案相关推荐

  1. CentOS自定义安装光盘制作-kickstart用cdrom做源

    CentOS自定义安装光盘制作-kickstart用cdrom做源 挂载镜像.复制光盘 编辑Kickstart配置文件 编辑isolinux/isolinux.cfg文件和EFI/BOOT/grub. ...

  2. FreeBSD 6.0架设管理与应用-附录B 制作FreeBSD安装光盘

    附录B 制作 FreeBSD 安装光盘 如果您想要自行制作 FreeBSD 安装光盘,您可以自各大 FTP 站台下载 FreeBSD 回来自行烧录.FreeBSD 各个 RELEASE 版本推出时,都 ...

  3. Ubuntu16.04(64位)下安装和破解source insight4

    破解文件如下: https://pan.baidu.com/s/1i5qtbJv 首先 apt-get install wine 然后 winetricks wininet 然后下载sourceins ...

  4. ubuntu16.04装机1:安装NVIDIA显卡驱动(下载.run包方式)

    转自:ubuntu16.04安装NVIDIA显卡驱动或者更换高版本显卡驱动详细(下载.run包方式)_zbr794866300的博客-CSDN博客 1 下载显卡驱动 首先你要了解你的显卡类型,例如我是 ...

  5. 踩坑NVIDIA Jetson TX2、Ubuntu16.04、ROS Kinetic安装

    踩坑NVIDIA Jetson TX2.Ubuntu16.04.ROS Kinetic安装 摘要 一.NVIDIA Jetson TX2环境配置 1.1开机使用图形化界面 1.2刷机 1.3修改TX2 ...

  6. Ubuntu16.04 独显驱动安装 Nvidia

    Ubuntu16.04 独显驱动安装 Nvidia驱动 安装环境 安装步骤: 1.添加PPA源 2.查询驱动版本号 3.编译依赖 4.禁止集成的nouveau驱动 方法一: 方法二: 5.更新 6.安 ...

  7. Ubuntu16.04 GT730 显卡驱动安装

    Ubuntu16.04 GT730 显卡驱动安装 折腾了好多次,几乎一天时间才搞好真的是,真的是心累,现在简要说明一下步骤 1.禁用Nouveau 安装好依赖包后需要禁用 nouveau,只有在禁用掉 ...

  8. ubuntu16.04 uhd+gnuradio+gr-radar安装总结

    ubuntu16.04 uhd+gnuradio+gr-radar安装总结: (1)安装uhd: 参考http://digital.ni.com/public.nsf/allkb/825823A54D ...

  9. 在linux(ubuntu16.04)系统上安装RTL8822CE网卡驱动

    在linux(ubuntu16.04)系统上安装RTL8822CE网卡驱动 1.下载8822CE驱动https://github.com/alanfox2000/realtek-linux/tree/ ...

  10. 工控机 ubuntu16.04 yolov5 cpu版本安装和开发

    工控机 ubuntu16.04 yolov5 cpu版本安装 背景 环境安装 结果 安装过程中yolov5报错: 配合pyrealsense2 做检测 通过二维点获取三维坐标 rospy发送msg 背 ...

最新文章

  1. 0基础学怎么学习python
  2. 【Android 应用开发】Android 杀进程总结 ( 杀后台进程 | 杀前台进程 | 杀其它进程 )
  3. HBase 创建表/插入数据/查询数据命令
  4. android线程通信方式,Android 主线程和子线程通信问题
  5. Angular ActivatedRouteSnapshot
  6. 如何关闭SAP CRM中间件的delta download方式
  7. 江小白包装设计原型_雪碧和江小白的品牌跨界合作之旅可谓是一场品牌包装的视觉盛宴...
  8. android底层oem,Android中如何实现OEM
  9. Cortex-M3栈内存操作
  10. graphviz python_工具推荐|我是如何使用Python脚本分析CPU使用情况的?
  11. linux文件系统简析
  12. esp分区引导修复失败_ESP分区丢失,新建ESP分区修复引导教程
  13. [Kaldi] MFCC特征提取源码详解
  14. 【网络安全】还在担心网络诈骗?让OneDNS替你揽下一切
  15. RPG Maker MV 遇敌对战
  16. 生成二维码的三种方式
  17. WSN无线传感网络--网络连通率测试
  18. linux下安装mysql数据库[yum install版]
  19. 内核启动分析(三)——zImage 解压缩阶段
  20. 亿级以上的数据量 ES如何优化

热门文章

  1. JAVA计算机毕业设计晨光文具店进销存系统设计与开发Mybatis+源码+数据库+lw文档+系统+调试部署
  2. [转]批处理详细教程
  3. 微信支付SDK使用总结
  4. 实现AlphaGo(一):围棋的基本规则和代码设计思路
  5. 【图像配准】基于光流场算法Horn_Schunck和Brox及Lucas_Kanade实现医学图像配准matlab代码
  6. vue回到顶部(常用)
  7. 2160亿元电费如何降下来?地方5G“硬核”政策助力
  8. Canvas Scaler
  9. 快递查询API接口对接案例(顺丰、圆通、中通、德邦、天天)
  10. HDU 4939 Stupid Tower Defense 简单DP