Linux搭建下载器
Linux搭建下载器
几年前买了一块CubieBoard2的开发板,由于后面转行做游戏了就没在接触过嵌入式方面,相关的一些知识和技能都已全部忘记了。前几天突然想到可以拿它来挂个硬盘下电影,然后就又去重新学习了一点嵌入式基础,就有了这篇总结。
- 下载Linux系统
-
由于CubieBoard2原先烧的是Android系统,现在打算换成Linux系统。下载Linux系统镜像或者自己编译Linux系统。自己编译Linux系统需要先 下载源码,然后在有交叉编译环境的Linux PC上进行编译。图省事我就在CubieBoard论坛上下载了 Lubuntu Desktop镜像,使用镜像文件安装就比较简单了,使用PhoenixSuit工具和手机刷机一样的操作方式。
注意: 我开发机使用的是Windows 10操作系统,板子接上去驱动老是安装不对,所以是安装了PhoenixSuit工具包里自带的驱动。
- 简单配置开发板网络
-
开发板系统刷好以后,需要接串口线进去查看设置网络,设置好网络之后就可以使用ssh远程登陆,再操作板子就会方便的多了。
先要连接好板子和串口线,连接方式如下图示:
http://photo.blog.sina.com.cn/showpic.html#blogid=4b26a2fe0101jb4l&url=http://s2.sinaimg.cn/orignal/4b26a2fete0762eecd641GND 黑线 VCC 红线(不接) Rx 绿线 Tx 白线 注意: windos 7版本及以上的系统对USB转串口(pl2303芯片)的驱动支持不是太好,需要多试几个版本。
我使用MobaXterm工具来连接开发板
查看Ubuntu版本信息
:~# cat /etc/issue Linaro 13.04 \n \l
查看网络信息
:~# ifconfig -a eth0 Link encap:Ethernet HWaddr XX:XX:XX:XX:XX:XXinet addr:192.168.0.253 Bcast:192.168.0.255 Mask:255.255.255.0inet6 addr: XXXX::XX:XXX:XXXX:XXX2/64 Scope:LinkUP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:1345 errors:0 dropped:0 overruns:0 frame:0TX packets:1709 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000RX bytes:135348 (135.3 KB) TX bytes:127322 (127.3 KB)Interrupt:87 Base address:0x4000
设置网络信息
为了方便后面登陆的时候直接使用SSH来连接开发板,需要保证板子IP稳定,所以给板子设置静态IP:~# vi /etc/network/interface auto lo eth0 iface lo inet loopback iface eth0 inet static address 192.168.0.253 gateway 192.168.0.1 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255
检查ssh服务开启状态
ps -s | grep ssh
如果ssh服务没起来的话需要起一下ssh服务
service ssh start /etc/init.d/ssh start
到这里板子的网络环境就基本OK了,现在我们就可以扔掉串口线,使用网线和ssh来远程连接板子了。使用ssh连接上开发版之后我们就要开始进入正题了。下面介绍两种Linux下载器的搭建方法。
- 迅雷远程下载
-
第一种使用迅雷远程下载功能。迅雷远程下载能够远程创建下载任务和操作现有的现在任务。并且搭建起来非常方便。
1. 到迅雷远程下载论坛下载 ware工具。
2. 到开发板运行该工具,运行成功后会使用迅雷账号登得到一串码。
3.打开并登陆 雷远程下载网站,按指示输入串码绑定设备。
执行完以上三步,你的迅雷远程下载器已经搭建完成了。
- 使用Aria2搭建下载器
-
使用Aria2搭建下载器需要移植Aria2到开发板,所以首先需要有arm-linux-交叉编译环境。
linux交叉编译环境
下载arm-linux-gcc,解压到开发用Linux PC,然后设置环境变量即可。sudo gedit /etc/bash.bashrcif [ -d /home/cf/ARM/opt/FriendlyARM/toolschain/4.5.1 ] ; then PATH=/home/cf/ARM/opt/FriendlyARM/toolschain/4.5.1/bin:"${PATH}" fi
Aria2 移植
下载Aria2源代码,在Linux PC上使用arm-linux-gcc编译完成后,将运行相关文件下载到开发版即完成了移植。:~$./configure --prefix=/home/work/aria2_build --exec-prefix=/home/work/aria2_build CC=arm-linux-gnueabihf-gcc --host=arm-linux-gnueabihf ARIA2_STATIC=yes :~$make :~$make install
移植完成了之后需要创建aria2.conf配置文件,然后运行Aria2
bin/aria2c --conf-path=/home/aria2/aria2.conf -D
Apache 移植
Apache此处用于提供YAAW(Yet Another Aria2 Web Frontend)工具的运行环境,YAAW用于创建和管理Aria2的下载任务。Apache的移植比较复杂,这里先贴一个大概,后续给详细步骤。:~$./configure --prefix=/usr/local/apache2 --enable-mods-shared=all --enable-deflate --enable-speling --enable-cache --enable-file-cache --enable-disk-cache --enable-mem-cache --enable-rewrite --enable-so --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre --with-included-apr //切换到root :#make :#make install
移植Apache比较折腾,需要在开发环境正常./configure和make一遍源码。其目的是生成apache源码生产工具gen_test_char,需要先备份保存gen_test_char。而编译apache需要依赖apr、apr-util和pcre。所以需要先交叉编译apr、apr-util和pcre。
:~$./configure --prefix=/usr/local/apr-arm/ CC=arm-linux-gnueabihf-gcc CXX=arm-linux-gnueabihf-g++ LD=arm-linux-gnueabihf-ld --host=arm-linux-gnueabihf ac_cv_file__dev_zero=yes ac_cv_func_setpgrp_void=yes apr_cv_tcp_nodelay_with_cork=yes ac_cv_sizeof_struct_iovec=8 --cache=arm-linux-gnueabihf.cache :~$make :~$make install :~$ :~$./configure --prefix=/usr/local/apr-util-arm --host=arm-linux-gnueabihf CC=arm-linux-gnueabihf-gcc CXX=arm-linux-gnueabihf-g++ LD=arm-linux-gnueabihf-ld :~$make :~$make install :~$ :~$./configure --prefix=/usr/local/pcre-arm --host=arm-linux-gnueabihf CC=arm-linux-gnueabihf-gcc CXX=arm-linux-gnueabihf-g++ LD=arm-linux-gnueabihf-ld :~$make :~$make install
安装好上述之后,执行apache的configure然后make clean,然后把先去生成的gen_test_char拷贝回原位置。然后再make;make install;编译成功之后拷贝apache的运行相关到开发板,还需要拷贝apr、apr-util和pcre编译出来的.so库到/user/lib/供apache使用。然后设置apache即按自己需要编辑httpd.conf,然后下载YAAW到apache的网站目录,运行apache。
:~$./apachectl -f /home/apache/conf/httpd.conf
注意: 可以选择安装supervisor来管理linux进程
- ntfs-3g 移植安装
-
由于需要支持ntfs格式的硬盘,所以还需要移植安装ntfs-3g
:~$./configure CC=arm-linux-gnueabihf-gcc CXX=arm-linux-gnueabihf-g++ LD=arm-linux-gnueabihf-ld --host=arm-linux-gnueabihf --prefix=/home/zam/work/ntfs-3g-arm --exec-prefix=/home/zam/work/ntfs-3g-arm --enable-really-static :~$make :~$make install
使用ntfs-3g挂载硬盘
shell
sudo ntfs-3g /dev/sda5 /mnt/USB/ -o nolock - 设置开机启动
-
最后一步,设置开机启动。开机启动有两种方法。
1. 编辑/etc/rc.local,在/etc/rc.local 插入开机后需要自动执行的命令。
2. 使用update-rc.d xxx defaults NN命令添加开机启动服务。先将脚本复制或者软连接到/etc/init.d/目录下,然后用:update-rc.d xxx defaults NN命令(NN为启动顺序),将脚本添加到初始化执行的队列中去。
注意: 如果脚本需要用到网络,则NN需设置一个比较大的数字,如99 。
例如:
$ sudo chmod 755 /etc/init.d/test $ cd /etc/init.d $ sudo update-rc.d test defaults 95
这样我们的Linux下载器就已经搭建OK了。
Linux搭建下载器相关推荐
- Linux 高速下载器XDM
下载速度刚刚的 完虐uget 测试了一下 uget最高可以开16个线程 但是xdm可以开32个线程 要知道idm才30个下载地址 百度云 提取码v834
- 【Linux项目】 --P2P下载器的详细介绍
P2P下载器 一.P2P下载器功能简介 二.客户端功能细分 1.获取在线主机 1.1 获取网卡信息,得到局域网中的所有IP地址列表 1.2 逐个对IP地址列表的主机发送配对请求 1.3 配对得到响应, ...
- 我的世界php安装,我的世界Linux搭建网页后台Multicraft下载与安装
小编为大家带来了<我的世界>Linux搭建网页后台Multicraft下载与安装,首先下载Multicraft Linux版,下载好了以后请玩家自己看着下面的教程来安装. 64位:http ...
- linux 更改Chrome 默认下载器为uGet
一直使用Deepin作为我的开发系统,对于linux上面没有迅雷这种下载神器一直比较遗憾,每次感受到下载资源时的几 k/s 的网速时,感觉都快要崩溃了. 不过还好,最近发现了一个linux上面比较好的 ...
- 【CentOS7】在服务器上搭建基于Aria2的离线下载器
说明 在平时从网上下载文件时,有时会遇到即使一个几十兆的文件都要下一天的困境,如果使用远程服务器先登录ssh,再通过wget.scp的方式下载文件又比较费事.参考网上有人用Aria2搭建离线下载器 ...
- 解决: 利用 Xware 在 centos 上搭建远程下载器
利用 Xware 在 centos 上搭建远程下载器 Xware--迅雷提供的远程下载工具 第一步:在 centos 服务器上搭建 Xware 环境 这点网上已经有不少博客可以参考,所以我这里主要对自 ...
- P2P下载器(Linux下C++项目实战)
P2P下载器:即点对点下载器,服务端与客户端.服务端共享文件列表,客户端配对相应服务端,下载所需要的文件. 一.项目介绍 1.项目功能 搜索附近(局域网内)在线用户, 此处不足(只能在局域网内获取,需 ...
- 如何快速搭建离线下载器Aria2以及管理
本文的解决的应用场景: 从何从快速下载国外文件转移到国内自己的电脑上(离线下载)(国外的都学会了国内的还不简单?一样的操作) 不要和我说科学上网直接就可以(我知道但是此文是给一些需要分享文件的人准备的 ...
- Linux版 乐影音下载器(视频下载器) 使用方法
如果你不知道Linux为何物,那么请回去选择前两种下载方式之一. 只提供Linux 64位的乐影音下载器(点击下载),在Linux Mint 19.1 64位.Python 3.6环境下测试能正常运 ...
最新文章
- 图像指针与矩阵格式转换——Mat转uchar*及uchar*转Mat代码实现
- jq 切换功能toggle
- hdu-5900 QSC and Master(区间dp)
- uvalive4744(数论)
- CodeForces - 1438E Yurii Can Do Everything(暴力)
- 结合hello world探讨gcc编译程序的过程
- java中可以用浮点作为循环变量吗_Java千问:Java循环语句的几个冷门知识点你都知道吗?...
- mysql数据导出不完正_【MySQL】mysqldump 导出数据 常见问题
- 论文都看不懂,你还搞什么人工智能?
- oracle optimizermode,Oracle OPTIMIZER_MODE参数
- 重磅消息:全球首个光量子计算机诞生!
- 数据库管理学习笔记(一)——实体关系建模
- ASoC Codec驱动代码框架图
- Wireshark软件的使用教程
- 初试小刀自我简历小程序
- 大学生计算机专业顶岗实习日记24篇
- 接口(API)设计规范
- CF447A DZY Loves Hash 模拟
- 6英寸手持终端丨三防手机丨手持PDA丨提高配送效率
- word2019如何设置公式编号
热门文章
- 中国悍马“猛士”登场,国产电动车为啥掀起了硬派越野风?
- 实验6-4 单词首字母大写 (15 分)
- 诛仙一直服务器维护,服务器维护《诛仙3》官方致仙友的一封信
- 校园跑腿的优势和劣势
- realme真我gt能升级鸿蒙系统吗,realme真我GT Neo闪速版曝光,换用双电芯电池
- zabbix服务端搭建
- Dell服务器装系统黑屏,简单几步解决dell win7黑屏_dell win7黑屏如何修复
- HTML5中的全局属性
- python的matplotlib绘图(双坐标轴)
- 【移动端】屏幕、像素、视口、 viewport 控制