如何用linux把一个装好的系统做成镜像?
一、下载安装包
可以根据你的系统类型自行去官网下载,由于会有很多依赖关系,条件允许建议者通过网络yum的形式安装(具体操作很多教程有)。
当然如果你是redhat6版本,那么可以直接在http://downloadcsdnnet/detail/u012209894/9669034下载,我已经上传了,
里面的包已经全部囊括其中,安装命令,有依赖关系的先安装好依赖关系。
二、使用工具备份成镜像
root用户下输入mondoarchive,然后就都是图形操作了,鉴于要截图,所以使用的是远程连接工具,实际图的界面没这么丑。
[root@TIANCOM ~]# mondoarchive
See /var/log/mondoarchivelog for details of backup run
Checking sanity of your Linux distribution
选择标记的存放在服务器本地硬盘里面就可以了,点击回车下一步出现让你选择存放路径,直接默认即可,回车下一步。
一般选择gzip作为压缩条件就可以了,随你自行选择吧,回车下一步。
压缩标准,最大压缩率,最小压缩率,一般压缩率,其实选择一般就可以了,最小的话用时会比较久点,这个也根据自己实际情况选择吧,如果你系统需要备份的太多,那么你最好选择最小,因为如果压缩不超出范围,会生成两个盘,相对来说就不好刻录还原了,回车下一步。
这里让你选择镜像文件的大小,一般直接默认dvd的4480M就好了,选择Ok回车下一步。
替你的镜像命名,随意命名即可,如果有多个镜像工具会在后面自行标记1-9来区分,ok下一步。
选择你要备份的目录,一般默认根目录即可,直接下一步。
选择你要排除的文件,一般镜像存放目录肯定排除不需要备份,还有根目录下的临时文件,或者一些其他不用的,具体根据实际情况和网上一些备份情况斟酌,注意在还原的时候你建立这些没有备份的文件。
默认选择下一步。
同上。
问你是否备份并且检测,点击yes下一步。
选择你的系统内核,redhat内核不要改动,其他系统有些需要改动,不用改的直接下一步。
选择yes就进去备份界面了。
该版本存在一个问题(从官网上来看估计是工具的bug),在你备份完系统之后(最好将系统所有软件都停止运行),通过genisoimage命令制作镜像时会报错。
经过查看/var/log/mondoarchivelog日志找到具体的genisoimage命令(通过mkisofs调用,二者之间的关系自行搜索 ),发现工具是想将/home/mondoscrcathxxfsca(各人最后的xxfsca不一样)制作成镜像的,但是isolinuxbin存在。于/home/mondoscrcathxxfsca/syslinux下,由于genisoimage命令只会在它需要制作的目录/home/mondoscrcathxxfsca下搜索,自然找不到啦,那么解决就简单了,直接将syslinux下的文件使用cp命令复制出来即可,然后重试制作(接报错的步骤即可,不需要重头再开始),等待几分钟,系统就会提示你制作成功了,然后到默认路径下查看是否生成iso文件即可。
至此你linux制作镜像就算成功了。
通过软通牒在win上刻录好光盘(如果你有两个iso文件当然刻录两个啦),能刻录的光驱会标记有DVD_RM等字样,刻录成功之后,在另外的机器上试着还原,有四个命令供你选择,一般选择第一个自动恢复(如果你不需要重新分区什么的)。
然后就是等待,十几分钟基本就搞定。
一需求分析
最近公司软件Team 有个需求是这样的:能不能在局域网搭建一个Ubuntu 镜像服务器,
这样作的好处是可以节省Ubuntu某些常用工具的安装时间。
二部署过程
21 测试环境
目前在公司内有一台能连接到外网的Ubuntu机器, IP : 1921688173 ,
Ubuntu版本为Ubuntu 904 i686。
22 搭建步骤
为了创建Ubuntu mirror 服务器,最少需要60G硬盘空间,Ubuntu每个版本都有32 bit
和64 bit两个版本,有两组deb包。当然可以创建Ubuntu一个版本的32 bit 和64 bit 的
镜像服务器,也可以创建全部版本的镜像。
这里使用sohu 公司的mirror地址作为本地Ubuntu Source 服务器,使用sohu的原因是:
1 sohu的Ubuntu Source 服务器速度相当快
2 sohu 的ubuntu Source 服务器每天会和Ubuntu官方服务器同步一次,这样可以保
证我们使用的是最新的软件包。
修改方式如下:
root@ms ~: cat /etc/apt/sourceslist
deb http://mirrorssohucom/ubuntu/ jaunty main restricted universe multiverse
deb http://mirrorssohucom/ubuntu/ jaunty-security main restricted universe multiverse
deb http://mirrorssohucom/ubuntu/ jaunty-updates main restricted universe multiverse
deb http://mirrorssohucom/ubuntu/ jaunty-proposed main restricted universe multiverse
deb http://mirrorssohucom/ubuntu/ jaunty-backports main restricted universe multiverse
deb-src http://mirrorssohucom/ubuntu/ jaunty main restricted universe multiverse
deb-src http://mirrorssohucom/ubuntu/ jaunty-security main restricted universe multiverse
deb-src http://mirrorssohucom/ubuntu/ jaunty-updates main restricted universe multiverse
deb-src http://mirrorssohucom/ubuntu/ jaunty-proposed main restricted universe multiverse
deb-src http://mirrorssohucom/ubuntu/ jaunty-backports main restricted universe multiverse
安装下面工具:
root@ms ~: apt-get install apt-mirror
root@ms ~: apt-get install apache2
下面就构建Ubuntu 904 32bit 的本地Ubuntu mirror 服务器为例子,来说明如何配置:
修改配置文件:
root@ms ~: cat /etc/apt/mirrorlist
############# config ##################
#
# set base_path /var/spool/apt-mirror
#
# set mirror_path $base_path/mirror
# set skel_path $base_path/skel
# set var_path $base_path/var
# set cleanscript $var_path/cleansh
# set defaultarch
# set postmirror_script $var_path/postmirrorsh
set run_postmirror 0
set nthreads 20
set _tilde 0
#
############# end config ##############
deb-i386 http://mirrorssohucom/ubuntu jaunty main restricted universe multiverse
deb-i386 http://mirrorssohucom/ubuntu jaunty-security main restricted universe multiverse
deb-i386 http://mirrorssohucom/ubuntu jaunty-updates main restricted universe multiverse
#deb http://mirrorssohucomubuntu jaunty-proposed main restricted universe multiverse
#deb http://mirrorssohucomubuntu jaunty-backports main restricted universe multiverse
deb-src http://mirrorssohucom/ubuntu jaunty main restricted universe multiverse
deb-src http://mirrorssohucom/ubuntu jaunty-security main restricted universe multiverse
deb-src http://mirrorssohucom/ubuntu jaunty-updates main restricted universe multiverse
#deb-src http://mirrorssohucom/ubuntu jaunty-proposed main restricted universe multiverse
#deb-src http://mirrorssohucom/ubuntu jaunty-backports main restricted universe multiverse
#clean http://archiveubuntucom/ubuntu
备注:
deb-i386 http:// 表示下载32 bit 版本的deb 软件
deb http:// 表示下载64bit 版本的deb 软件
jaunty 表示Ubuntu 904的代号
设置完成后,输入下面命令:
root@ms ~: apt-mirror
这时系统会启动20个线程运行wget 到 http://mirrorssohucom/Ubuntu 下面下载相应的
deb包。时间比较的长,该命令执行完成后,/var/spool/apt-mirror目录下就有了所有需
要的deb包和相应的配置文件。
由于我是从sohu下载的,所以实际的文件在 :
/var/spool/apt-mirror/mirror/mirrorssohucom/ubuntu 目录下。
这样,本地就有了所有Ubuntu Source 服务器所需要的文件,然后开启相应的服务:
这里使用apache2作为Web服务器,默认根目录在/var/www/,所以可以在该目录下做
个链接,如下所示:
root@ms ~: cd /var/www
root@ms ~: ln /var/spool/apt-mirror/mirror/mirrorssohucom/ubuntu -s
开启web服务:
root@ms ~: apache2ctl start
打开浏览器输入下面地址即可看到和sohu mirror一样的页面:
http://1921688173/ubuntu
同时也可以使用crontab进行每天的更新,修改配置文件:
root@ms ~: cat /etc/crond/apt-mirror
#
# Regular cron jobs for the apt-mirror package
#
#0 4 apt-mirror /usr/bin/apt-mirror > /var/spool/apt-mirror/var/cronlog
把命令前面的“#”去掉即可,这样系统会自动使用apt-mirror去和sohu服务器更新。
最后,我们所要做得就是在客户端的机器上修改更新源配置文件,将地址改成本地
mirror服务器的地址即可,如下所示:
root@ms ~: cat /etc/apt/sourceslist
deb http://1921688173/ubuntu/ jaunty main restricted universe multiverse
deb http://1921688173/ubuntu/ jaunty-security main restricted universe multiverse
deb http://1921688173/ubuntu/ jaunty-updates main restricted universe multiverse
deb http://1921688173/ubuntu/ jaunty-proposed main restricted universe multiverse
deb http://1921688173/ubuntu/ jaunty-backports main restricted universe multiverse
deb-src http://1921688173/ubuntu/ jaunty main restricted universe multiverse
deb-src http://1921688173/ubuntu/ jaunty-security main restricted universe multiverse
deb-src http://1921688173/ubuntu/ jaunty-updates main restricted universe multiverse
deb-src http://1921688173/ubuntu/ jaunty-proposed main restricted universe multiverse
deb-src http://1921688173/ubuntu/ jaunty-backports main restricted universe multiverse
执行“apt-get update”来重建本地索引,这样以后就会使用本地的Mirror 服务器进行更新
楼上:RAID 只适用于单服务器,多服务器可采用 NAS(Network Attached Storge,成本十分高昂)
可以固定时间同步,但要接手却比较难,而且你需要完全同步镜像,这很像是分布式数据库了,技术上就有难点,现在广泛采用的是不完全同步镜像,比如 linux 上的 rsync 工具。
你如果要提高服务器的稳定性,可以采用 RAID、集群等技术,本公司提供解决方案。
可以定时同步,windows 的 at 命令。
http://wwwitefixno/phpws/indexphpmodule=pagemaster&PAGE_user_op=view_page&PAGE_id=6&MMN_position=23:23
参考这个 windows 下的 rsync
楼上喊 RAID 的完全是个业余人士,分布式数据库(不是你说的服务器)什么原理估计你都不懂,估计你也仅仅是听过 RAID,而摸都没有摸过
你先先安装一个PE 系统能进入到桌面环境,启用网络并确保能够访问到文件服务器上的镜像,你可以把服务器上的镜像包含在ISO文档中,使用虚拟光驱加载共享的ISO文件,这样ghost32 就能识别虚拟光驱里面的镜像了 ghost 使用就如镜像在本地一样的 但是这样操作其实是有一定局限性的 如果客户端很多的话 大家一起访问服务器 速度会比较慢 效率和直接把ghost镜像下载到本地不会提高很多的
0条评论