使用SystemImager创建您的Linux系统的映像
版本1.0
作者:Falko Timme
你有没有遇到问题,你已经设置了“完美的系统”,现在你要备份这个系统,然后再进行更改,以便您可以恢复原来的状态,如果你的改变不满意? 或者您是一家大型公司的系统管理员,您必须维护数百台运行完全相同软件的Linux机器,但是手动安装每台机器不方便? 或者您是否开发了基于Linux的硬件设备,现在您想要在不同的硬件平台(即,不同的硬盘等,不同的处理器架构!)上大量销售,而无需为每个平台维护图像? 或者您是否要将此解决方案分发给您在海外的经销商,以便您不必运送昂贵的硬件,您的经销商可以销售自己的硬件* ? 这是SystemImager发挥作用的地方!
从SystemImager网站:
“SystemImager是自动执行Linux安装,软件分发和生产部署的软件。
SystemImager可以轻松地对您的Linux机器网络进行自动安装(克隆),软件分发,内容或数据分发,配置更改以及操作系统更新。 您甚至可以从一个Linux版本更新到另一个!
它也可以用于确保安全的生产部署。 通过在更新到新的生产图像之前保存当前的生产图像,您将有一个高度可靠的应急机制。 如果发现新的生产环境有缺陷,只需简单的更新命令即可回滚到最后的生产图像!
一些典型的环境包括:互联网服务器场,数据库服务器场,高性能集群,计算机实验室和企业桌面环境。
SystemImager可以让您创建安装的映像。 要这样做,您需要一个图像服务器 (应该有足够的磁盘空间来存储图像)和所谓的黄金客户端 (即,您要制作图像的“完美系统”)。 这意味着您必须在映像服务器和黄金客户端上安装一些软件才能运行SystemImager。 SystemImager提供Debian软件包以及基于rpm的发行版的rpm软件包,如RedHat,Fedora,SUSE或Mandrake。 在这个例子中,我的图像服务器和我的黄金客户端都在Debian下运行。
这是一个实践指南; 它不包括理论背景。 他们在网络上的许多其他文档中被处理。
本文档不附带任何形式的保证!
* 这是我正在为我工作的公司做的。 我们将垃圾邮件设备的图像通过互联网分发给我们的经销商,以便他们可以在自己的硬件平台上进行安装和销售。 如果您有兴趣,请致电info@projektfarm.de 。
1在Image Server上安装SystemImager
加
deb http://download.systemimager.org/debian stable main
到/etc/apt/sources.list并运行
apt-get更新
要安装SystemImager服务器,只需运行即可
apt-get install systemimager-server
2在Golden Client上安装SystemImager
加
deb http://download.systemimager.org/debian stable main
到/etc/apt/sources.list并运行
apt-get更新
要安装SystemImager客户端,只需运行即可
apt-get install systemimager-client
3在图像服务器上创建您的黄金客户端的映像
现在假设我的映像服务器的IP地址为192.168.0.2 ,我的黄金客户端的IP地址为192.168.0.100 。
为了从黄金客户端拉出图像,您应该关闭黄金客户端上的任何防火墙,或者至少允许连接到端口873 TCP( rsync )。 现在,在黄金客户端上 ,运行以下命令:
prepareclient --server 192.168.0.2
在映像服务器上运行
getimage -golden-client 192.168.0.100 -image my_golden_client -ip-assignment replicant
其中 my_golden_client 是要创建的图像的名称。 -ip-assignment可以具有以下4个值之一(参见man getimage ):
· static_dhcp - DHCP服务器将每次为与此映像一起安装的客户端分配相同的静态地址。 在这种情况下,DHCP服务器也会分配相应的主机名。 因此,使用静态dhcp可以通过简单地更改dhcpd.conf文件中的一个值来更改机器的主机名和IP地址。 有些人会发现这是可取的。 另请参阅mkdhcpstatic命令。
· dynamic_dhcp - DHCP服务器将动态分配IP地址到与此映像安装的客户端。 在动态dhcp中,机器的IP地址可能会更改,但您希望它保留相同的主机名。 因此,主机名由机器本身设置。 每次可能会分配一个不同的地址。
· static - 客户端在自动安装过程中使用的IP地址将被永久分配给该客户端。
· 复制品 - 不要混淆此图像中的网络设置。 我正在使用它作为单机的备份和快速恢复机制。
4创建引导软盘
SystemImager可以让您在没有安装任何内容的系统上安装映像。 但是我们必须告诉这样一个系统,从中获取图像。 这可以通过引导软盘完成(这意味着您的新系统需要IDE软盘驱动器,它不能与USB软盘驱动器一起使用)。 要创建引导软盘,请在映像服务器中插入一个空软盘并运行
mkautoinstalldiskette
这将创建一个标准的启动软盘。 现在我们要创建一个名为local.cfg的配置文件:
HOSTNAME=www DOMAINNAME=example.com DEVICE=eth0 IPADDR=192.168.0.100 NETMASK=255.255.255.0 NETWORK=192.168.0.0 BROADCAST=192.168.0.255 GATEWAY=192.168.0.1 GATEWAYDEV=eth0 IMAGESERVER=192.168.0.2 IMAGENAME=my_golden_client |
它应该包含新机器所需的网络设置。 DEVICE和GATEWAYDEV应该是您的网卡的Linux设备名称。 IMAGESERVER应该是您的映像服务器的IP地址, IMAGENAME应该是要检索的映像的名称。
将此文件保存到引导软盘。 您甚至可以在Windows工作站上执行此操作,但请确保使用UNIX linebreaks保存文件!
创建启动盘的另一种方法是:在映像服务器上创建一个/var/lib/systemimager/my_golden_client.local.cfg文件。 /var/lib/systemimager/my_golden_client.local.cfg应填写与上面local.cfg相同的内容。 然后跑
mkautoinstalldiskette -config /var/lib/systemimager/my_golden_client.local.cfg
这将创建您的引导软盘与您的local.cfg包括!
创建引导软盘的第三种方法是:下载此 引导软盘映像并将其写入软盘。 在Linux系统上,您可以使用以下命令执行此操作:dd if = systemimager-floppy-image.img of = / dev / fd0
在Windows上,您可以使用像RawWrite这样的工具来实现。 之后,您仍然必须在磁盘上创建一个local.cfg ,如第一种方法所述,以便在上面创建引导软盘。
5在新系统上安装映像
在映像服务器上 ,执行以下命令:
/etc/init.d/systemimager-server start
要么
/etc/init.d/systemimager-server-rsyncd start (取决于您的SystemImager版本)
确保端口873 TCP可以从外部访问(防火墙!)。
现在将启动软盘插入新系统并从软盘启动。 您的新系统将自动安装映像my_golden_client,您已经完成了!
6更新图像
假设您对黄金客户端进行了一些重要更改,现在要更新以前创建的图像my_golden_client 。 步骤与第3段相同:
在你的黄金客户端上运行
prepareclient --server 192.168.0.2
(注意你的防火墙!)
在映像服务器上运行:
getimage -golden-client 192.168.0.100 -image my_golden_client -ip-assignment replicant
7删除图像
如果要删除图像服务器上的图像 ,只需运行
rmimage my_golden_client
( my_golden_client应替换为要删除的图像的名称。)
链接
SystemImager: http : //www.systemimager.org/