龙芯3A2000开源电脑体验和架设WEB服务器详细步骤
- 2017-01-13 00:20:00
- 若亚方舟 原创
- 10142
2016年8月,通过龙芯俱乐部的《龙芯3号开源电脑团购》(网址http://www.loongsonclub.com)购买了一台3A2000的开源电脑主机,在点击下单的时候心里咯噔了一下,感觉好像在梦里。下单后团购网负责人马上联系了我,怀着万分激动的心情等待,作为一个关注龙芯10年的爱好者,终于要第一使用国产的龙芯电脑,完成一个许久的夙愿,到货后迫不及待开箱,发现机箱不大,类似广场舞上音响,我还发了个微信朋友圈让朋友们猜猜是什么,结果24小时内猜什么的都有,比如:微波炉、音响、充电宝....,就是没猜到是龙芯电脑主机,果然高端大气上档次!开机后查看配置,个人感觉在台机挺高,已经超过了我现在用主机的配置,固态硬盘、8G内存,还赠送了U盘。
开箱附图:
命令行查看系统构架和系统操作系统,经查为mips平台的fedora2.1的64位系统。如果想使用更优好的用户桌面体验,还可以向俱乐部请求用deepin的龙芯版,不但界面接近苹果操作系统,而且桌面软件更完善,而且有软件商店直接像苹果商店一样安装软件,主要是的已经移植了QQ最新版。
命令行查看CPU的情况,以下附图说明是4个999Mhz频率的核心
使用ifconfig命令行查看网卡的情况
使用htop系统资源情况(安装htop命令可以使用sudo yum install htop 一行命令即可),使用htop直接查看系统资源占用详细情况,可以看出,在无图形界面的情况下,系统对cpu的占用率极低。
一、作为办公用主机的体验。
虽说是拿来做服务器用,但仍好奇先把玩一番。就先后体验了办公软件WPS和网页版QQ,微信以及Kodi视频播放。经初测:libreoffice在打开文档、电子表格以及幻灯片速度快,满足办公完全没问题,唯一不足是字体不够全,建议系统应配套默认的仿宋体。由于腾讯无最新版的QQ支持,登录web页面登录腾讯的网页版QQ和微信均能正常使用。在线视频播放软件我选择了《龙芯》官网推荐的kodi,使用命令行安装命令:sudo yum install kodi 。一行命令就安装成功,安装成功后选择了国内媒体库。即可播放国内的连续剧,我是在网上下载了新浪的影视库插件。关于kodi的使用请详见龙芯官网的说明http://www.loongson.cn/news/company/466.html
因此,可以说,龙芯作为办公用性能已经完全满足。如果结合娱乐使用,请建议安装国人开发界面目前最漂亮的linux系统,deepin版的龙芯版,支持将更丰富。
龙芯上使用libreoffice附图:
龙芯上使用QQ附图:
龙芯上使用微信附图:
龙芯上使用Kodi附图:
二、作为个人WEB服务器的使用,安装linux+mysql+apache+php。
打开系统终端,进行安装调试,以下为个人调试的示例,请做参考。
1、首先更新软件源,完善组件和系统依赖包,提高安全性。
sudo yum update
sudo yum upgrade
sudo yum list installed mysql*
2、安装mysql数据库
rpm -qa|grep mysql ##查看是否还有mysql软件,有的话继续删除
#安装mysql
sudo yum install mysql mysql-server mysql-devel -y
#mysql的几个重要目录
/var/lib/mysql/ #数据库目录
/usr/bin #相关命令(mysqladmin mysqldump等命令)
service mysqld start #启动mysql
mysql -uroot #进入mysql
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456'); ## 修改mysql密码为新密码
grant all privileges on *.* to root@'%' identified by '123456'; ## 授权超级用户远程连接,仅测试用
create database mytest;
grant all privileges on mytest.* to mytest2016@'localhost'identified by 'shujukubendifangwen-666';
flush privileges;
s y s t e mctl enable mysqld.service #为MySQL创建启动连接 (这样 MySQL 将随系统自动启动)并启动 MySQL服务。
安装成功后的截图
安装好mysql后大家可能惊奇的发现,提示不是mysql而是MariaDB数据,MariaDB数据比mysql兼容行更强,数据的查询速度更快,而且说有的mysql命令和设置均兼容MariaDB数据的操作。
MariaDB数据简介:MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB(英语:XtraDB)来代替MySQL的InnoDB。 MariaDB由MySQL的创始人Michael Widenius(英语:Michael Widenius)主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL AB卖给了SUN,此后,随着SUN被甲骨文收购,MySQL的所有权也落入Oracle的手中。MariaDB名称来自Michael Widenius的女儿Maria的名字。
MariaDB直到5.5版本,均依照MySQL的版本。因此,使用MariaDB5.5的人会从MySQL 5.5中了解到MariaDB的所有功能。
从2012年11月12日起发布的10.0.0版开始,不再依照MySQL的版号。10.0.x版以5.5版为基础,加上移植自MySQL 5.6版的功能和自行开发的新功能。
3、安装apache的http服务,提供WEB服务
命令行如下:
sudo yum list http* #查看http的软件安装包
sudo yum install httpd.mips64el httpd-devel.mips64el #选择安装相应的服务
sudo yum install php-ZendFramework-Db-Adapter-Pdo-Mysql.noarch #安装pdo组件,经测试,支持loongson架构
/var/www/html/ #网页更目录
/etc/httpd/conf/ #设置目录
s y s t e mctl enable httpd.service #系统在开机时启动Apache
发现问题,php代码编写时不支持<? ?> ,在嵌入显示时,一定要按照规范写为:<?php ?>
4、不带界面的命令行启动
由于作为服务器使用,没必要使用图形化操作界面,使用纯命令行启动更能节省内存和CPU资源。
因为在Fedora中没有/etc/initab文件我们不方便从这里设置它的runlevel target,但是Linux又给我们提供了一个强悍的工具s y s t e md,我们可以用s y s t e m来链接默认的启动级别,所以开始吧!
以下介绍三种方法:
(1)删除目标链接并创建新的符号链接(从命令行启动)
ln -sf /lib/s y s t e md/s y s t e m/multi-user.target /etc/s y s t e md/s y s t e m/default.target
(2)从图形界面启动
把multi-user.target替换为graphical.target即可。
ln -sf /lib/s y s t e md/s y s t e m/graphical.target /etc/s y s t e md/s y s t e m/default.target
代码解释
ln命令是一个在文件之间建立链接的命令,默认情况是硬链接(hard link),我们要用的是符号链接(symboli link),它可以为在不同文件系统中文件创建链接。
-s 创建符号链接
-f 删除已经存在的同名链接
安装php成功后,
在无图形界面,命令行开机的情况下开机,资源占用情况:
在无图形界面,开机12天后的资源占用情况,可以看出,资源占用情况影响很小。
在有图形界面的情况下,开机17天系统资源情况,由于我开的软件较多,内存占用在正常范围内。
系统组件,特别是PDO的支持正常。
对mysql(MariaDB数据)和sqlite数据库的支持
使用工具连接MariaDB数据,依然正常。
在3A2000做服务器搭建通用的ecshop演示
首先在ecshop官网http://yunqi.shopex.cn 下载UTF8的源码
修改源码中一下目录的bug:
a、\i n c l u d es\lib_time.php on line 28
在28行前边加一行date_default_timezone_set("PRC");
b、/i n c l u d es/cls_template.php on line 422
只要422行把这一句拆成两句就没有问题了 $tag_sel = array_shift(explode(' ', $tag)); 改成: $tag_arr = explode(' ', $tag); $tag_sel = array_shift($tag_arr);
c、/i n c l u d es/cls_template.php on line 300
return preg_replace("/{([^\}\{\n]*)}/e", "\$this->select('\\1');", $source);
替换为:return preg_replace_callback("/{([^\}\{\n]*)}/", function($r) { return $this->select($r[1]); }, $source);
d、/install/i n c l u d es/lib_installer.php on line 31
lib_installer.php文件,将第31行代码中的return cls_image::gd_version();改成:$p = new cls_image();return $p->gd_version();即可解决。
e、/i n c l u d es/lib_base.php
第346行return cls_image::gd_version(); 改为 $p = new cls_image(); return $p->gd_version();
上传upload内的源码到龙芯3A2000服务的某目录,我这里上传到echsop目录,并将该目录的权限设置为可写。
进入http://XXXXX/install 进行安装。
在龙芯3A2000的mysql上新建个数据库用于安装ecshop,我这里新建了名为ecshop的数据库,字符集设置为UTF8,然后安装界面进入下一步:
安装完成后进入首页,运行稳定,点击反应速度很快。
通过对国产龙芯CPU 3A2000主机的试用,首先说图像化界面,给我最深的感触是稳定!我操作图像化界面系统,未发现因为CPU的问题重启、死机的情况,因为系统问题重启死机的情况也未发生,但发生一下应用程序执行错误的情况,这在linux系统上很常见,和CPU没什么关系,这个是国产软件的生态问题。据悉武汉深之度公司也成为了龙芯的战略合作伙伴,在深度的新系统支持了龙芯CPU,十分期待试用该系统,深度linux的软件安装很人性化,安装原生态linux版的网易云音乐、360安全卫视、WPS等等,都实现了类似安卓系统的软件商店安装,十分方便。其次说重点就是我作为php的web服务器的使用体验,我通过系统软件监控,开机后从未发生过重启的现象,正常工作的情况下打开各种服务直接流畅,与intel平台安装的linux系统没有区别,因此可以说在服务器操作层面,国产龙芯CPU替代intel系列的linux服务器在兼容和生态圈方面已经很棒。因为常用的依赖包、插件、组件在源里已经移植,直接使用命令编译安装即可,十分方便。在常用的公司、学校、政府机关使用自主可控的国产龙芯服务器部署web网站我因为完全可以胜任了。一方面是稳定性好,另一方面使用了国产CPU不再担心境外产品可能预留后门的隐患,大大提高了整个系统的安全性和抗网路攻击的能力。往小了说提高了本单位本部门的系统的安全性,往大了说是为国家的网络信息安全建设增砖添瓦!
联系人: | 星原 |
---|---|
Email: | loongsonclub@126.com |
QQ: | 200888797 |