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

时间:2024-04-02 12:35:12

写在前面

最近公司要求让我把现有的系统做成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

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

系统版本、内核信息查询

[email protected]:~$ lsb_release -d

Description:    Ubuntu 15.04

[email protected]:~$ 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

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

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










本文转自 运维小当家 51CTO博客,原文链接:http://blog.51cto.com/solin/1865855,如需转载请自行联系原作者