将当前的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,如需转载请自行联系原作者
目录
相关文章
|
4天前
|
Ubuntu NoSQL JavaScript
在Ubuntu上安装MEAN Stack的4个步骤
本指南介绍了在Ubuntu上安装MEAN Stack的四个步骤。MEAN Stack是一种基于JavaScript的开发堆栈,包含MongoDB、ExpressJS、AngularJS和NodeJS。步骤包括:1. 更新系统并准备安装MEAN;2. 从官方源安装最新版MongoDB;3. 安装NodeJS、Git和NPM;4. 克隆mean.io仓库并使用NPM安装剩余依赖项。通过这些步骤,您可以快速搭建基于MEAN Stack的应用开发环境。
21 2
|
2天前
|
Ubuntu Linux Shell
Ubuntu gnome WhiteSur-gtk-theme类mac主题正确安装和卸载方式
通过这个过程,用户不仅可以定制自己的桌面外观,还可以学习到更多关于 Linux 系统管理的知识,从而更好地掌握系统配置和主题管理的技巧。
26 12
|
1月前
|
缓存 Ubuntu Linux
Linux中yum、rpm、apt-get、wget的区别,yum、rpm、apt-get常用命令,CentOS、Ubuntu中安装wget
通过本文,我们详细了解了 `yum`、`rpm`、`apt-get`和 `wget`的区别、常用命令以及在CentOS和Ubuntu中安装 `wget`的方法。`yum`和 `apt-get`是高层次的包管理器,分别用于RPM系和Debian系发行版,能够自动解决依赖问题;而 `rpm`是低层次的包管理工具,适合处理单个包;`wget`则是一个功能强大的下载工具,适用于各种下载任务。在实际使用中,根据系统类型和任务需求选择合适的工具,可以大大提高工作效率和系统管理的便利性。
137 25
|
11天前
|
NoSQL Ubuntu 网络安全
在 Ubuntu 20.04 上安装和配置 Redis
在 Ubuntu 20.04 上安装和配置 Redis 的步骤如下:首先更新系统包,然后通过 `apt` 安装 Redis。安装后,启用并启动 Redis 服务,检查其运行状态。可选配置包括修改绑定 IP、端口等,并确保防火墙设置允许外部访问。最后,使用 `redis-cli` 测试 Redis 功能,如设置和获取键值对。
26 1
|
11天前
|
Ubuntu
在Ubuntu 20.04 x64系统中增加中文支持
将 Ubuntu 系统语言设置为中文: 1. 更新系统语言包: `sudo apt update` 和 `sudo apt install language-pack-zh-hans`。 2. 修改区域设置:编辑 `/etc/default/locale` 文件,设置 `LANG=zh_CN.UTF-8` 和 `LANGUAGE=zh_CN:zh`。 3. 生成中文 locale: `sudo locale-gen zh_CN.UTF-8` 和 `sudo update-locale`。 4. 重启系统: `sudo reboot`。 5. 验证设置: `locale` 命令检查是否生效。
29 1
|
17天前
|
Ubuntu TensorFlow 算法框架/工具
如何在Ubuntu上安装TensorFlow 24.04
如何在Ubuntu上安装TensorFlow 24.04
41 1
|
1月前
|
Ubuntu API 网络虚拟化
ubuntu22 编译安装docker,和docker容器方式安装 deepseek
本脚本适用于Ubuntu 22.04,主要功能包括编译安装Docker和安装DeepSeek模型。首先通过Apt源配置安装Docker,确保网络稳定(建议使用VPN)。接着下载并配置Docker二进制文件,创建Docker用户组并设置守护进程。随后拉取Debian 12镜像,安装系统必备工具,配置Ollama模型管理器,并最终部署和运行DeepSeek模型,提供API接口进行交互测试。
390 15
|
1月前
|
Ubuntu
Ubuntu下载ISO镜像的方法
步骤 1:访问Ubuntu官方网站 打开浏览器,输入Ubuntu的官方网址:https://cn.ubuntu.com/download/desktop 接着,点击“Ubuntu Desktop”或你需要的Ubuntu版本。
386 6
|
11天前
|
Ubuntu Linux Docker
如何在Ubuntu 20.04系统中安装Docker
安装 Docker 引擎的步骤如下:首先更新系统包索引 (`sudo apt update`),安装必要依赖包 (`apt-transport-https` 等),添加 Docker 官方 GPG 密钥及 APT 仓库。接着再次更新包索引并安装 Docker 引擎及相关工具 (`docker-ce` 等)。最后启动 Docker 服务并设置开机自启,通过 `docker --version` 和运行测试容器 (`sudo docker run hello-world`) 验证安装是否成功。
97 0
|
2月前
|
Ubuntu 计算机视觉 C++
Ubuntu系统下编译OpenCV4.8源码
通过上述步骤,你可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使你能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
90 30