一、好像听说有支持linux的ghost,去找找
二、使用最专业的做法,难度极大,你要搞清楚安装好系统后又装了哪些包,利用linux安装程序kickstart来实现包安装及相关配置,当然就要用上bash shell了,然后用linux下的mkisofs命令来定做一个iso镜像,就像cactiez.iso,fan.iso,emos.iso等著名的定制集成的可引导镜像。最后用对应的量产工具制做到U盘。
三、如果硬件环境一样,用tar打个包,然后通过第三方媒介解压到目的硬盘,即可。
1、看下图片是什么后缀的,是那种软件生成的,也许电脑里没有能打开该图片的软件,对应后缀查出图片相对应的软件,从网上下载一个安装到电脑里就可以显示了。2、U盘或电脑有病毒造成的,把杀毒软件升级到最新好好地查杀一下就可以了。
3、电脑里可能没有相关联的打开图片的文件,重新安装或修复一下系统。
4、软件版本的问题,一般情况是高版本的软件生成的图片低版本的软件打不开,反过来可以兼容。
5、可能U盘故障,把图片复制到电脑硬盘里试
rpm 打包环境--centos 6.5,第一步:
先看下当前的环境是否有rpmbuild工具。如果没有,可以在这个网址下载。
http://rpmfind.net/linux/rpm2html/search.php?query=rpm-build
由于rpm包安装比较简单,相对与源码安装来说不需要编译等 *** 作,所以在缺少一些工具时,还是推荐使用上面的网址下载相应的rpm包。
安装时,如果还依赖其他的包,会出现提示,这时候,同样在上面的网址寻找提示版本号的依赖工具安装就行。
(如果可以连网的话。可以直接使用yum 命令,这样依赖的包会自动一起安装)
第二步:
不同的系统,rpmbuild默认路径会不同,此时可以使用rpm --showrc 查看rpmbuild 的相关信息,包括一些路径名等的宏定义。
我是用的centos 系统中,默认是在/root/rpmbuild下。rpmbuild需要用到的BUILD、BUILDROOT、SOURCE、RPMS、SPECS此时已经创建好了
有的帖子上说,这几个路径需要手动创建,可能不同版本不太一样。
第三步:
rpmbuild工具装好之后,首先需要对其有一个基本的了解。
例如,rpmbuild 的目标就是将源码包打包成rpm包,安装时就减少了编译的步骤。
但是这里有两个问题大部分帖子上说的都比较模糊。下面是我自己的一些心得整理
1、首先要明确的是,打包和安装一般来说不会是在一个机器上(要验证自己的脚本是否正确,最好用两台机器验证)。
所以可以这么理解,现在有两台机器,一个是源码包的来源机器,一个是rpm包的安装目标机器。
2、源码包的来源机也是你自己的实验机,你的代码,编译工具,相关安装包都在该机器上。而目标安装机器上可能什么也没有
3、此时你需要做的就是在源码机上实现一个脚本(实际上是spec脚本中的某几个部分实现),对你的代码进行预处理、编译、打包等。
4、然后将编译打包后的rpm包上传到目标机器上。再在目标机器上实现另一个脚本(spec脚本的另外几个部分实现),完成解压,安装等处理。
先搞清楚上面的几点,可能对rpm包的制作方法就有个一个大概的了解。
第四步:
开始写脚本啦.
rpm的脚本是spec脚本。网上有很多关于spec脚本的说明,大家可以参照这篇:http://blog.csdn.net/hbhhww/article/details/7219834
里面介绍了spec脚本的关键字和一些标准宏定义。这里截取比较重要的部分简单说明一下。
%pre rpm安装前执行的脚本
%post rpm安装后执行的脚本
%preun rpm卸载前执行的脚本
%postun rpm卸载后执行的脚本
%preun %postun 的区别是什么呢?
前者在升级的时候会执行,后者在升级rpm包的时候不会执行
%files 定义那些文件或目录会放入rpm中
%exclude 列出不想打包到rpm中的文件
注意:如果%files或者%exclude指定的文件不存在,会出错的。
第五步:
可以先将需要打包的文件压缩到固定目录
完成spec脚本之后开始打包
使用 rpmbuild -xx xxx.spec 就可以制作rpm包啦.具体可以参考:http://blog.sina.com.cn/s/blog_4ba5b45e0102e5r2.html
下面同样只截取部分说明:
#rpmbuild
-bp 只作准备 (解压与打补丁)
-bc 准备并编译
-bi 编译并安装
-bl 检验文件是否齐全
-ba 编译后做成*.rpm和src.rpm
-bb 编译后做成*.rpm
-bs 只做成*.src.rpm
制作好的.rpm包,就可以使用rpm命令在其他机器上安装啦~
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)