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/4b26a2fete0762eecd641

GND 黑线
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搭建下载器相关推荐

  1. Linux 高速下载器XDM

    下载速度刚刚的 完虐uget 测试了一下 uget最高可以开16个线程 但是xdm可以开32个线程 要知道idm才30个下载地址 百度云 提取码v834

  2. 【Linux项目】 --P2P下载器的详细介绍

    P2P下载器 一.P2P下载器功能简介 二.客户端功能细分 1.获取在线主机 1.1 获取网卡信息,得到局域网中的所有IP地址列表 1.2 逐个对IP地址列表的主机发送配对请求 1.3 配对得到响应, ...

  3. 我的世界php安装,我的世界Linux搭建网页后台Multicraft下载与安装

    小编为大家带来了<我的世界>Linux搭建网页后台Multicraft下载与安装,首先下载Multicraft Linux版,下载好了以后请玩家自己看着下面的教程来安装. 64位:http ...

  4. linux 更改Chrome 默认下载器为uGet

    一直使用Deepin作为我的开发系统,对于linux上面没有迅雷这种下载神器一直比较遗憾,每次感受到下载资源时的几 k/s 的网速时,感觉都快要崩溃了. 不过还好,最近发现了一个linux上面比较好的 ...

  5. 【CentOS7】在服务器上搭建基于Aria2的离线下载器

    说明   在平时从网上下载文件时,有时会遇到即使一个几十兆的文件都要下一天的困境,如果使用远程服务器先登录ssh,再通过wget.scp的方式下载文件又比较费事.参考网上有人用Aria2搭建离线下载器 ...

  6. 解决: 利用 Xware 在 centos 上搭建远程下载器

    利用 Xware 在 centos 上搭建远程下载器 Xware--迅雷提供的远程下载工具 第一步:在 centos 服务器上搭建 Xware 环境 这点网上已经有不少博客可以参考,所以我这里主要对自 ...

  7. P2P下载器(Linux下C++项目实战)

    P2P下载器:即点对点下载器,服务端与客户端.服务端共享文件列表,客户端配对相应服务端,下载所需要的文件. 一.项目介绍 1.项目功能 搜索附近(局域网内)在线用户, 此处不足(只能在局域网内获取,需 ...

  8. 如何快速搭建离线下载器Aria2以及管理

    本文的解决的应用场景: 从何从快速下载国外文件转移到国内自己的电脑上(离线下载)(国外的都学会了国内的还不简单?一样的操作) 不要和我说科学上网直接就可以(我知道但是此文是给一些需要分享文件的人准备的 ...

  9. Linux版 乐影音下载器(视频下载器) 使用方法

    如果你不知道Linux为何物,那么请回去选择前两种下载方式之一. 只提供Linux 64位的乐影音下载器(点击下载),在Linux Mint 19.1  64位.Python 3.6环境下测试能正常运 ...

最新文章

  1. 图像指针与矩阵格式转换——Mat转uchar*及uchar*转Mat代码实现
  2. jq 切换功能toggle
  3. hdu-5900 QSC and Master(区间dp)
  4. uvalive4744(数论)
  5. CodeForces - 1438E Yurii Can Do Everything(暴力)
  6. 结合hello world探讨gcc编译程序的过程
  7. java中可以用浮点作为循环变量吗_Java千问:Java循环语句的几个冷门知识点你都知道吗?...
  8. mysql数据导出不完正_【MySQL】mysqldump 导出数据 常见问题
  9. 论文都看不懂,你还搞什么人工智能?
  10. oracle optimizermode,Oracle OPTIMIZER_MODE参数
  11. 重磅消息:全球首个光量子计算机诞生!
  12. 数据库管理学习笔记(一)——实体关系建模
  13. ASoC Codec驱动代码框架图
  14. Wireshark软件的使用教程
  15. 初试小刀自我简历小程序
  16. 大学生计算机专业顶岗实习日记24篇
  17. 接口(API)设计规范
  18. CF447A DZY Loves Hash 模拟
  19. 6英寸手持终端丨三防手机丨手持PDA丨提高配送效率
  20. word2019如何设置公式编号

热门文章

  1. 中国悍马“猛士”登场,国产电动车为啥掀起了硬派越野风?
  2. 实验6-4 单词首字母大写 (15 分)
  3. 诛仙一直服务器维护,服务器维护《诛仙3》官方致仙友的一封信
  4. 校园跑腿的优势和劣势
  5. realme真我gt能升级鸿蒙系统吗,realme真我GT Neo闪速版曝光,换用双电芯电池
  6. zabbix服务端搭建
  7. Dell服务器装系统黑屏,简单几步解决dell win7黑屏_dell win7黑屏如何修复
  8. HTML5中的全局属性
  9. python的matplotlib绘图(双坐标轴)
  10. 【移动端】屏幕、像素、视口、 viewport 控制