前述几点:
- centos7是跑在vbox虚拟环境的虚拟机,而非真机。
- 官方介绍文档中提到在centos6.2 x86_64和centos6.6 x86_64操作系统中测试安装成功,但是我在centos6.6安装时破费周折,加之vbox5.4版本安装增强功能的波折,导致耗时几天,期间当然有重复安装工作,尚未完成gstore的完全安装,表现为,gstore的bin目录未看到官方文档中提及的所有可执行文件。
so,在一位朋友无意之中的一句话,打破了我这个按部就班的人,经过脑袋中之前安装时一些操作的会议以及简单的思考之后,决定使用高一点版本的centos7来安装这一软件。 - 下面会列出完整配置以及过程中的操作,其中有些操作因具体环境的限制,走过一些“捷径”,所以不需要一模一样,达到实现小阶段目标(那步操作所要完成的操作)即可,也就是一个原则,怎么简单怎么来。
- 如果有朋友看到了我这篇文章,个人小建议,看完每一步的内容之后,再执行操作,就可以避免一些不成功之后的重复工作,当然,如果您需要验证文本中出现的错误,whatever,哈哈。
- 这篇的撰写时间是完成安装gstore之后,所以文章是以回忆的方式写的,如果有不对的地方,或叙述有误的地方,欢迎交流。
一、centos7系统安装部分
1.vbox版本
我使用的vbox的版本,在不完全理解vbox安装增强功能的所有原理时,这点显得非常重要,之前用的版本鲜有完美安装增强功能。
2.安装centos7 64位系统
这里面的门道我并没有懂的十分透彻,但是会有一些这次安装过程中学习到的一些东西。
1). 基本的硬件配置:内存:4G ,硬盘:动态扩充,上限20G
启动虚拟机进行安装之前,需要先做下面的配置,否则在安装界面中将看不到鼠标
2). 系统安装过程
基本的个人设置,语言键盘什么的,看个人想法,都可以。后面的分区部分,我是采用手动分区方式,使用standard分区方式,默认进去之后是虚拟卷方式,下面是分区情况。
主机名的命名方式,我是,用户名+系统版本,maria.centos7
进行网络配置时,启用网卡,以前我总是在开机之后去配置文件中进行设置
是否开启kdump,这个服务是当系统内核崩溃的时候,对恢复内核有帮助的服务,但是我所使用的centos是红帽的开源版本,红帽官方并不会提供这方面的工作,除非去买了收费的RedHat,所以这块开启不开启都没有什么卵用。
3.安装增强功能
1)对屏幕大小设置的一点唠叨
完成系统安装工作之后,打开系统之后,会发现屏幕过小,但是鼠标可以在真机和虚拟机之间自由切换,所以就猜测是不是屏幕大小也可以自由设置,所以就在application->system tools->settings->devices->displays中找到设置屏幕大小的地方,并且这个选项是可选的,在以前低版本的vbox中安装的centos7系统中,此处呈灰色的不可配置的状态,但是并不像看上去的那么乐观,虽然那一刻看到可选,我是激动的,作为一个从未安装成功过增强功能的人,但是当在此处进行了合适的选择之后,回到桌面之后,发现鼠标无法精准定位了,会向左上方有些许偏差。所以猜想还是需要安装增强功能才能真正有效实现虚拟机全屏。
2)安装过程
根据以往安装的经历,需要保证两点:一是kernel,kernel-devel,kernel-headers的版本保持一致(得细化到版本号所有数字一致),二是系统中必须安装了gcc,make和perl三个工具。所以,首先rpm -qa | grep kernel
,这个命令会列出安装的以kernel开头的工具版本,会发现没有安装kernel-devel,此时yum list kernel*
,这个命令会列出yum源中有的默认安装的版本以及是否有更新版本,会发现 kernel,kernel-devel,kernel-headers有统一的更新版本,下图是我更新后的内核版本,
rpm -qa | grep kernel
命令再次进行查看,发现除了kernel其他两个已经保持一致了,这是因为启动系统时用的还是低版本的内核,所以重启之后,内核版本就会一致了,在启动系统的界面中就可以看到有两个内核版本可选择。用
rpm -qa | grep 工具名
进行查看是否安装了gcc,make和perl,没安装的进行安装即可。准备工作完成之后,重启之后就可以进行增强功能的安装,安装成功之后,需要重启以生效,就可以在虚拟机上方菜单中,视图->虚拟显示屏 设置屏幕大小了。
4.设置sudo用户
使用root身份,修改/etc/sudoers
文件
如果打开这个文件之前,没有给它
+w
权限,那么可以执行这条命令实现写入更改:w !sudo tee %
5.保证系统中安装了git,因为后面需要使用git clone源码。
二、安装gstore软件的依赖
官方给出的依赖包的版本要求
备注:下面两段段文字,是一些个人牢骚
首先,得反省自己没有认真看官方文档,上面对环境配置过程这块有说明,下载的源码中
scripts/setup
文件夹中有安装环境的脚本,但是不知道是没有细心看还是以往的习惯太强烈,我就直接手动进行环境配置,不是说这样不可以,按笨办法来思考一下,我要是手动一步步执行脚本的一条条命令也是可以实现配置环境的,但是问题就在于脚本中不仅有安装命令,还有gstore需要配合源码的一些安装文件的位置配置,所以如果按照自己的想法进行放置安装的一些库,源码在编译过程中调用时,就会出现找不到库函数的报错。其实,现在的很多软件都会在安装文件夹中放置这种程度的一键安装依赖的脚本,这也是一次小教训吧。之前在centos6.6上安装之所以会失败多次,就是这张图上的某几项要求,此处对两项进行说明,gcc和boost。yum源中对于gcc和boost并没有更新版本,使用原有版本进行编译时会报错。所以均进行了源码编译安装,gcc的问题是耗时太长,两小时左右,boost库文件位置不对,导致编译gstore时找不到库文件。
1.git clone源码
2.进入gStore文件夹,安装依赖环境
执行命令sudo scripts/setup/setup_centos.sh
这里会发现有两次报错,其一是clone下来的setup文件夹下的脚本不具备可执行权限,所以需要chmod +x scripts/setup/setup_centos.sh
;其二是这个文件曾经在windows下打开编辑过,所以在使用vim打开这个文件后,最下面会发现它的文档类型是dos
(在centos6中可以在使用vim打开文件之后,通过:set ff=?
命令来查看文档类型),
所以需要使用
:set ff=unix
进行更改文件类型,保存退出之后就可以执行了。备注:在这个过程中,还会出现一个问题,由于网速过慢,导致脚本中下载boost源码时迟迟连接不到服务器上,我的办法是,我的虚拟机当时还没配代理,但是真机上配置了代理,所以,就从脚本中将下载路径copy出来,在chrome浏览器地址栏粘贴进行下载,然后通过一定的方法,将文件传入虚拟机。重新执行脚本之前,需要先进行两个步骤,将文件放入合适的位置,这个位置是从脚本中得到的(注意boost目录是由root用户创建的)
第二步需要将创建文件夹和获取源码的命令删掉,保存退出。
脚本执行过程中由于包含boost库的源码编译过程,所以耗时稍有些长,大概半个小时可以完成脚本执行。
3.在gStore目录中,执行make pre
,进行软件版本检查
4.在gStore目录中,执行make
这步如果出现这个问题
那还是第二步安装依赖时出现的问题,改变文档类型为
unix
之后,重新执行,就会看到如下成功安装的显示。写在最后
虽然没有经过全面测试,但是仅从实际成功安装的结果,是否可以说明 gstore 在 centos7 上可以进行安装。