将当前的Ubuntu系统封装成为可以安装(发布)的iso镜像

简介:

写在前面

最近公司要求让我把现有的系统做成iso镜像发布,查看些资料,使用了remastersys定制自己的镜像,出了很多问题。网上的文档没有一个完整的,都做不来,到处是坑,浪费了不少时间,实在是不能忍,所以我整理了一下我的过程,给大家分享一下。

    如果出错了欢迎留言,共同解决!

使用工具

1Remastersys mkisofs(国外Remastersys项目已经停止,所以现在很多博客给出的下载地址都不能下载)

              remastersys_3.0.4-2_all.deb                          #Remastersys安装包

              remastersys-gui_3.0.4-1_amd64.deb         #图形化包

              定制现有系统的iso镜像

2)软碟通(UltraISO

              制作光盘及优盘启动,便于服务器安装自己定制的系统

3)安装镜像(ubuntu-15.04-desktop-amd64.iso

需要和制作镜像的系统为同一版本

系统版本、内核信息查询

solin@node1:~$ lsb_release -d

Description:    Ubuntu 15.04

solin@node1:~$ uname -p

x86_64

Remastersys包下载

可以在http://www.filewatcher.com/查找下载

mkdir tools

cd tools/

wget ftp://ftp.gwdg.de/pub/linux/easyvdr/mirror/remastersys/ubuntu/remastersys/remastersys_3.0.4-2_all.deb

wget ftp://ftp.gwdg.de/pub/linux/easyvdr/mirror/remastersys/ubuntu/remastersys-gui/remastersys-gui_3.0.4-1_amd64.deb

 

安装依赖

1)安装remastersys依赖

 sudo apt-get install syslinux-utils isolinux squashfs-tools casper libdebian-installer4 ubiquity-frontend-debconf user-setup discover xresprobe systemd

2)安装remastersys-gui依赖

 sudo apt-get install libvte-common libvte9 plymouth-x11

 

开始安装Remastersys

cd tools/

 ls

 sudo dpkg -i remastersys_3.0.4-2_all.deb

 sudo dpkg -i remastersys-gui_3.0.4-1_amd64.deb

 

Remastersys备份操作系统

 sudo remastersys backup

或图形操作 sudo remastersys-gui

 

到这里就有问题出现了

使用remastersys来封装系统,可以得到iso,但是iso不能安装,每次点击安装的话会直接进入系统,安装不进硬盘。

 

解决制作镜像不能安装问题

1)上传ISO 镜像到/home/solin/tools/目录下并将ISO挂载到/home/solin/mnt

 ls /home/solin/tools

mkdir mnt

 sudo mount -o loop /home/solin/tools/ubuntu-15.04-desktop-amd64.iso /home/solin/mnt/

 ls /home/solin/mnt

 

2)创建一个livecd的工作目录

 mkdir livecd

 

3)将/home/solin/mnt下的内容除了casper/filesystem.squashfs,同步到了/home/solin/livecd目录下

 sudo rsync --exclude=/home/solin/mnt/casper/filesystem.squashfs -a /home/solin/mnt/ /home/solin/livecd/

 cd livecd/casper/

 ls

4)设置文件权限所属组

 sudo chmod o+w /home/solin/livecd/casper/filesystem.*

 

5)、将刚才生成的那个backup-*.squashfs文件,拷贝成/home/solin/livecd/casper/filesystem.squashfs

 cd livecd/casper/

 sudo cp /home/remastersys/remastersys/ISOTMP/casper/filesystem.* .

 

 

6)更新系统所装包的列表

更新/home/solin/livecd/casper/目录下的filesystem.manifestfilesystem.manifest-desktop

sudo dpkg -l | grep ii | awk '{print $2,$3}' > /home/solin/livecd/casper/filesystem.manifest

sudo dpkg -l | grep ii | awk '{print $2,$3}' > /home/solin/livecd/casper/filesystem.manifest-desktop

注:实际上filesystem.manifest-desktopfilesystem.manifest是有所不同的,主要是少了 ubiquity casper live-initramfs user-setup discover1 xresprobe os-prober libdebian-installer4 这几个包,我们这里忽略了这些影响。

 

7)退回的LiveCD的工作目录 /home/solin/livecd 

 cd .. cd /home/solin/livecd

 sudo rm md5sum.txt

 

8)更新原来的md5sum

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

 

9)安装ISO打包工具mkisofs

sudo apt-get install mkisofs

10)在工作目录的根下执行

 sudo mkisofs -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 -allow-limited-size  -o ../ubuntu-bdyun-test.iso .

到这里iso镜像就制作成功了。

 

光盘刻录和U盘启动盘制作

1)我使用软碟通刻录成光盘镜像并测试安装成功

2)使用软碟通制作U盘启动

如果你制作的镜像做成U盘启动时无法启动

1)可以把上述操作安装的镜像用软碟通打开,复制文件到原镜像(官方镜像)中

根文件下替换:md5sum.txt

capress目录下替换添加

filesystem.manifest-removefilesystem.manifestfilesystem.manifest-desktopfilesystem.squashfsfilesystem.size

spacer.gif

2)加入文件后保存,重新制作U盘启动盘,就可安装了










本文转自 运维小当家 51CTO博客,原文链接:http://blog.51cto.com/solin/1865855,如需转载请自行联系原作者
目录
相关文章
|
19天前
|
Ubuntu Linux
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
130 3
|
15天前
|
Ubuntu Linux Docker
Ubuntu 18.04 安装Docker实战案例
关于如何在Ubuntu 18.04系统上安装Docker的实战案例,包括安装步骤、配置镜像加速以及下载和运行Docker镜像的过程。
89 3
Ubuntu 18.04 安装Docker实战案例
|
15天前
|
Ubuntu 网络安全 开发工具
Ubuntu19.04的安装过程详解以及操作系统初始化配置
本文详细介绍了Ubuntu 19.04操作系统的安装过程、初始化配置、网络设置、软件源配置、SSH远程登录以及终端显示设置。
36 1
Ubuntu19.04的安装过程详解以及操作系统初始化配置
|
1天前
|
存储 Prometheus 监控
在Ubuntu系统上安装与配置Prometheus的步骤
通过以上步骤,您应该已经成功在Ubuntu系统上安装并配置了Prometheus。您现在可以开始使用Prometheus收集和分析您的系统和应用程序的指标数据了。
8 1
|
1天前
|
监控 Ubuntu API
Python脚本监控Ubuntu系统进程内存的实现方式
通过这种方法,我们可以很容易地监控Ubuntu系统中进程的内存使用情况,对于性能分析和资源管理具有很大的帮助。这只是 `psutil`库功能的冰山一角,`psutil`还能够提供更多关于系统和进程的详细信息,强烈推荐进一步探索这个强大的库。
8 1
|
13天前
|
Ubuntu 开发工具 虚拟化
MacOS系统基于VMware Fusion配置Ubuntu 22.04LTS环境
这篇文章介绍了如何在MacOS系统上使用VMware Fusion虚拟化软件配置Ubuntu 22.04 LTS环境,包括自定义VMware Fusion网段、Ubuntu系统安装、配置root用户登录、设置静态IP地址、修改默认网卡名称、配置PS1变量、设置登录界面为字符界面、修改软件源和进行vim基础优化等步骤。
52 2
|
14天前
|
Ubuntu NoSQL
ubuntu上安装某个程序的符号表和源码包
ubuntu上安装某个程序的符号表和源码包
|
14天前
|
Ubuntu
在树莓派4B上安装ubuntu系统
在树莓派4B上安装ubuntu系统
|
14天前
|
Ubuntu
使用dpkg在ubuntu上安装软件包遇到依赖包的问题
使用dpkg在ubuntu上安装软件包遇到依赖包的问题
|
11天前
|
存储 Ubuntu 网络安全
在Ubuntu系统下通过Caddy实现LXD的安装与部署
通过上述步骤,您可以在Ubuntu系统下通过Caddy实现LXD的安装与部署。这种方法不仅可以提高容器管理的效率,还可以借助Caddy的自动SSL管理功能提升安全性。
9 0