“第八课--MicroWRT SD卡/U盘使用”的版本间的差异
(Created page with "{| style="width: 800px;" |- | MicroWRT上没有提供SD卡的插槽接口,不过我们可以USB接口连连接外部的SD卡,当然玩家也可以使用USB存储设备。 ...") |
|||
| (未显示1个用户的2个中间版本) | |||
| 第3行: | 第3行: | ||
| | | | ||
MicroWRT上没有提供SD卡的插槽接口,不过我们可以USB接口连连接外部的SD卡,当然玩家也可以使用USB存储设备。 | MicroWRT上没有提供SD卡的插槽接口,不过我们可以USB接口连连接外部的SD卡,当然玩家也可以使用USB存储设备。 | ||
| − | + | 本文主要通过一个例子来介绍如何使用SD卡,并在上面安装python和mysql。由于出厂固件的原因, | |
在microWRT上安装需要较大空间的程序时,总是提示/overlay空间不足的错误,比如安装python时会有如下错误,如下图所示: | 在microWRT上安装需要较大空间的程序时,总是提示/overlay空间不足的错误,比如安装python时会有如下错误,如下图所示: | ||
| 第29行: | 第29行: | ||
[[File:sd-6.jpg|600px|thumb|center|SD Configuration]] | [[File:sd-6.jpg|600px|thumb|center|SD Configuration]] | ||
| + | |||
| + | [[File:sd-7.jpg|600px|thumb|center|SD Configuration]] | ||
4. 软件安装 | 4. 软件安装 | ||
| 第48行: | 第50行: | ||
修改数据目录和临时目录和基础目录,如图所示: | 修改数据目录和临时目录和基础目录,如图所示: | ||
| − | [[File:sd- | + | [[File:sd-8.jpg|600px|thumb|center|SD Configuration]] |
在创建默认的数据库时,即命令:mysql_install_db --force --basedir=/mnt/usb/usr,有一大堆的输出,可以参考。 | 在创建默认的数据库时,即命令:mysql_install_db --force --basedir=/mnt/usb/usr,有一大堆的输出,可以参考。 | ||
注意貌似像my.cnf和mysqld都得在相应的/etc/和/etc/init.d目录下创建软链接;启动服务后,修改root密码,登陆后,如图所示: | 注意貌似像my.cnf和mysqld都得在相应的/etc/和/etc/init.d目录下创建软链接;启动服务后,修改root密码,登陆后,如图所示: | ||
| − | [[File:sd- | + | [[File:sd-9.jpg|600px|thumb|center|SD Configuration]] |
| 第59行: | 第61行: | ||
功能:POST随机数据到web平台(已提供POST接口) | 功能:POST随机数据到web平台(已提供POST接口) | ||
| − | 1. import httplib | + | 1. import httplib |
| − | 2. import urllib | + | 2. import urllib |
| − | 3. import time | + | 3. import time |
| − | 4. import random | + | 4. import random |
| − | 5. | + | 5. |
| − | 6. url_platform = '11.4.31.195:9071' | + | 6. url_platform = '11.4.31.195:9071' |
| − | 7. | + | 7. |
| − | 8. path = '/WIFPa/ResourceData.xml/000100003f0cfd4a?ResourceID=1' | + | 8. path = '/WIFPa/ResourceData.xml/000100003f0cfd4a?ResourceID=1' |
| − | 9. path_uploadservicedata = '/WIFPd/UploadServiceData/000100003f0cfd4a' | + | 9. path_uploadservicedata = '/WIFPd/UploadServiceData/000100003f0cfd4a' |
| − | 10. | + | 10. |
| − | 11. FORMAT = '%Y-%m-%dT%X' | + | 11. FORMAT = '%Y-%m-%dT%X' |
| − | 12. params_xml1 = '<ServiceData><mwid>000100003f0cfd4a</mwid><datatime>' +time.strftime(FORMAT,time.localtime()) + '</datatime><Datapoints><value>' | + | 12. params_xml1 = '<ServiceData><mwid>000100003f0cfd4a</mwid><datatime>' +time.strftime(FORMAT,time.localtime()) + '</datatime><Datapoints><value>' |
| − | 13. params_xml2 = '</value><num>1</num></Datapoints></ServiceData>' | + | 13. params_xml2 = '</value><num>1</num></Datapoints></ServiceData>' |
| − | 14. | + | 14. |
| − | 15. header = {'Content-type':'text/xml'} | + | 15. header = {'Content-type':'text/xml'} |
| − | 16. | + | 16. |
| − | 17. | + | 17. |
| − | 18. # conn.request(method='GET',url=path) | + | 18. # conn.request(method='GET',url=path) |
| − | 19. # while True: | + | 19. # while True: |
| − | 20. conn = httplib.HTTPConnection(url_platform) | + | 20. conn = httplib.HTTPConnection(url_platform) |
| − | 21. val = str(random.randint(1,100)) | + | 21. val = str(random.randint(1,100)) |
| − | 22. print 'value',val | + | 22. print 'value',val |
| − | 23. params_xml = params_xml1 + val + params_xml2 | + | 23. params_xml = params_xml1 + val + params_xml2 |
| − | 24. | + | 24. |
| − | 25. conn.request('POST',path_uploadservicedata,params_xml,header) | + | 25. conn.request('POST',path_uploadservicedata,params_xml,header) |
| − | 26. resp = conn.getresponse() | + | 26. resp = conn.getresponse() |
| − | 27. print resp.status,resp.reason | + | 27. print resp.status,resp.reason |
| − | 28. | + | 28. |
| − | 29. # htmldata = resp.read() | + | 29. # htmldata = resp.read() |
| − | 30. # print htmldata | + | 30. # print htmldata |
| − | 31. # time.sleep(5) | + | 31. # time.sleep(5) |
运行程序,结果如下图所示: | 运行程序,结果如下图所示: | ||
| − | [[File:sd- | + | [[File:sd-10.jpg|600px|thumb|center|SD Configuration]] |
| − | [[File:sd- | + | [[File:sd-11.jpg|600px|thumb|center|SD Configuration]] |
|} | |} | ||
2015年2月10日 (二) 09:03的最新版本
|
MicroWRT上没有提供SD卡的插槽接口,不过我们可以USB接口连连接外部的SD卡,当然玩家也可以使用USB存储设备。 本文主要通过一个例子来介绍如何使用SD卡,并在上面安装python和mysql。由于出厂固件的原因, 在microWRT上安装需要较大空间的程序时,总是提示/overlay空间不足的错误,比如安装python时会有如下错误,如下图所示: 文件:Sd-1.jpg SD Configuration 用命令查看时,其空间确实挺小的: 文件:Sd-2.jpg SD Configuration 下面就来介绍如何用闪存卡来扩容。由于出厂固件已经有了usb驱动模块,所以一插上闪存卡就能识别了。 文件:Sd-3.jpg SD Configuration 对SD卡的操作步骤想很简单,先格式化,再挂载,再配置opkg.conf使软件安装到其上。 1.格式化,操作步骤看下图所示。 文件:Sd-4.jpg SD Configuration 2.挂载到/mnt/usb目录 文件:Sd-5.jpg SD Configuration 3.修改/etc/profile及/etc/opkg.conf文件 文件:Sd-6.jpg SD Configuration 文件:Sd-7.jpg SD Configuration 4. 软件安装 4.1使用如下命令安装python。 opkg update opkg -d usb install python 即把python安装到了卡中,/etc/profile修改环境变量保证能找到库和程序。 4.2 安装mysql 安装mysql的具体步骤,请参考如下连接: http://www.right.com.cn/forum/thread-89216-1-1.html 由于我将mysql安装在了外挂SD卡上(U盘),还要修改它本身的配置文件。在/mnt/usb/目录下,打开etc/my.cnf, 修改数据目录和临时目录和基础目录,如图所示: 文件:Sd-8.jpg SD Configuration 在创建默认的数据库时,即命令:mysql_install_db --force --basedir=/mnt/usb/usr,有一大堆的输出,可以参考。 注意貌似像my.cnf和mysqld都得在相应的/etc/和/etc/init.d目录下创建软链接;启动服务后,修改root密码,登陆后,如图所示: 文件:Sd-9.jpg SD Configuration
1. import httplib
2. import urllib
3. import time
4. import random
5.
6. url_platform = '11.4.31.195:9071'
7.
8. path = '/WIFPa/ResourceData.xml/000100003f0cfd4a?ResourceID=1'
9. path_uploadservicedata = '/WIFPd/UploadServiceData/000100003f0cfd4a'
10.
11. FORMAT = '%Y-%m-%dT%X'
12. params_xml1 = '<ServiceData><mwid>000100003f0cfd4a</mwid><datatime>' +time.strftime(FORMAT,time.localtime()) + '</datatime><Datapoints><value>'
13. params_xml2 = '</value><num>1</num></Datapoints></ServiceData>'
14.
15. header = {'Content-type':'text/xml'}
16.
17.
18. # conn.request(method='GET',url=path)
19. # while True:
20. conn = httplib.HTTPConnection(url_platform)
21. val = str(random.randint(1,100))
22. print 'value',val
23. params_xml = params_xml1 + val + params_xml2
24.
25. conn.request('POST',path_uploadservicedata,params_xml,header)
26. resp = conn.getresponse()
27. print resp.status,resp.reason
28.
29. # htmldata = resp.read()
30. # print htmldata
31. # time.sleep(5)
运行程序,结果如下图所示: 文件:Sd-10.jpg SD Configuration 文件:Sd-11.jpg SD Configuration |