网络盒子安装 linux,天猫魔盒安装原生linux的一些初步成果
## 按
( o/ o8 \6 v) h- \; i7 ^' _ s4 S% m% d
一开始,我是想试试看能不能借由原生linux解决魔盒伪1080输出的问题。毕竟国内厂商靠不住这件事人尽皆知,求人不如求己。现在新版魔盒已经出来了,这个问题原厂就更加不会管了。2 z3 v4 |+ ? {, @! B: X1 t
& m& H* ~* X+ ]# Q3 q目前debian可以在魔盒上跑起来了,但问题还是很多。首先是音频驱动存在问题,alsamixer显示找不到控制器,aplay不报错但电视机端也没有音频输出。其次是遥控和usb口也都无法使用。
; ?. h$ A' e5 u9 e3 C9 ]1 d& Z# y
( C0 x2 R( y& [0 X* o这些问题不解决,即使花很多功夫把xbmc编译出来也没有实用价值。而我最近事情有些多,暂时没办法继续搞下去了。写这张帖子是希望,如果有人对这个问题有兴趣,可以通过我的帖子节约一点时间,也算是回馈论坛了吧。H+ z: r' A2 N! y/ k% m+ p9 e
1 ?) U, b0 {" k" T( N哈哈6014和1024255317给我提供了不少帮助,一并在此表示感谢。' ^# L$ g6 Q* f" S
# r' R! Z2 I9 L5 Q5 v$ _) O
## UBOOT
$ P3 y9 R; A* }% X: ^( |; ?2 d, ]% g( v4 ~
因为我希望保留nand内的安卓系统,所以linux就只能安装在tf卡中。虽然有朝一日如果能研究出点成果,拆机并不是必须的步骤。但就目前而言,没有uart接口就看不到输出,没法折腾,所以拆机焊线就目前来说仍然是必须的。$ P/ P t! p# J- O/ g- B: E. E
! d1 a1 _; c3 c/ a5 M% n# K7 M3 `
为了一张tf卡在两个系统中都派上用场,我把一张16G的tf卡为了两个区,第一个分区4G的fat32,剩余部分则格式化为ext3。
+ |8 d4 p( ^$ O7 k1 ^3 I5 S, a1 ^! U) W, {
想要启动时加载tf卡上根目录中名为uImage的内核文件,我们可以在uboot中这么做:
+ H1 i3 f8 ~# H1 o& h
mmcinfo
* y7 g8 h! g6 \5 M- |) M7 c
fatload mmc 0 ${loadaddr} uImage8 K [/ i* J& R( \' D
bootm( g* a% H/ M" h% M% U9 X; F/ |复制代码如果希望启动时默认加载tf卡上的linux内核,则可以这样做:
& k* v# C l9 H: {4 O2 J$ H: v6 F
setenv bootlnx 'mmcinfo; fatload mmc 0 ${loadaddr} uImage; bootm; '
0 J; _$ |/ ]9 I- g
setenv bootcmd 'run bootlnx'2 E: `0 z. T! I: z' K2 h0 R/ M4 Q5 L
saveenv4 E4 m, Y0 L$ S" |$ Y1 z0 U复制代码另外还有个法子,可以在上电时通过狂按遥控上的菜单键加载tf卡上的系统:
" y b; F j6 {( z! y
setenv bootlnx 'mmcinfo; fatload mmc 0 ${loadaddr} uImage; bootm; '
& h X7 U2 u# k: ~' f5 a2 L
setenv irremote_update 'if irkey 0x1f2d12e 500000 ;then run bootlnx; fi'$ D: t5 q$ F" F" w. ] i2 z, p
saveenv$ }/ d& G5 L: X A复制代码关于uboot的更多内容,可以参考一下这张帖子:http://www.7po.com/thread-235366-1-1.html- q: x7 G0 J& ^
4 n7 i' T+ W2 ?
## 内核
; k4 v( U9 S8 C5 z
t0 F$ F* J+ a% n% I2 L9 n' B. qamlogic官方放出的内核以及驱动源码这里有:http://openlinux.amlogic.com:8000/download/ARM/3 u* z; L5 Z/ Y A c
' ?5 A: _" @0 L5 [* ?! \1 X# V
不过直接用这里的代码虽然能够成功编译,但实际使用时有非常多的问题,所以我用的是wjb@github修改整理的版本。/ E; c5 @- B2 c
8 a0 s/ _+ T5 W6 b3 ?
编译内核使用的是ubuntu 12.04,安装必须的软件包什么的我就不废话了,具体编译过程大概是这样:
: ^1 P6 w9 ^+ o5 ~9 [: [
sudo apt-get install gcc-arm-linux-gnueabihf
# e! `$ }4 W) Z- i( \' f
2 A) `2 y& G: W# g7 e
git clone https://github.com/wjb/mx-common.git# ~$ A# R2 p- ]
cd mx-common/ L. Q! x3 l/ [6 T6 S
! R' w; H6 b$ A3 J, i
export CROSS_COMPILE=arm-linux-gnueabihf-0 P* ^/ m- _* t' T6 i/ {
export ARCH=arm. \* {- O& v6 r& X) [% [
make mrproper
. @; Z: c" {6 F9 ~1 B7 [
make meson6_g18_mx2_defconfig( E7 Q9 p* S0 \* J. U T3 q
make menuconfig: k4 z; ?! D, s; a/ P
make uImage -j4+ V l/ ]; L" m) o3 d' Q: \1 _& ~
make modules -j49 G) ^ n5 q* Q- I: j
+ `7 l4 v; u% A( S y
sudo cp arch/arm/boot/uImage /media/BOOT
) U* N+ c+ v' \/ C3 G
sudo make INSTALL_MOD_PATH=/media/AMLinux modules_install. F2 `+ h5 H, `' S8 `复制代码## Debian; N. ^$ Y; v% W
( q/ V: ^. A$ }, @5 lUbuntu和Debian都提供了ARM支持,下面的方法两个发行版都适用。不过只用命令行的话,Ubuntu远不如Debian好用,再加上stable的Debian软件包太老,所以下面安装的是sid的Debian。7 f1 B* T* v J
! A! X' U0 B ~2 t6 M/ [
, T1 `' T& E: n& T9 A. S( v
sudo apt-get install qemu-arm-static debootstrap
9 H, ?0 m. E2 A4 pmkdir debian-armhf-sid+ q' X$ X+ T& a/ i
sudo debootstrap --foreign --arch armhf sid debian-armhf-sid http://ftp.tw.debian.org/debian/; i- ?* }% Y2 e! }. C) u
sudo cp /usr/bin/qemu-arm-static debian-armhf-sid/usr/bin/# E4 X6 |$ x' @4 l& n
sudo chroot debian-armhf-sid /debootstrap/debootstrap --second-stage
6 U3 f5 ?# q+ n9 c) U# c4 Lsudo chroot debian-armhf-sid
7 V" ]& C! @. r5 x+ k8 s* A3 L
/ }! |5 R; }, h+ u9 F
; r8 W7 m- e. |1 p, C
qemu-arm-static很不错,可以直接在PC上chroot进ARM系统,相当方便。
0 A: d3 y" _3 z; h& `
/ K; n3 r: F+ H1 ?, l' L5 K然后就是一些基本设置:
$ O. |: e/ y) G3 \6 c+ W6 q: T- K
3 a* q: g. p9 c- g
1 V/ `' x9 z5 i1 x5 ?; O: q4 p4 ^passwd1 t' {8 I* K' ]5 e3 x1 D% b
echo AMLinux > /etc/hostname
' e" e! o4 v# G) e4 ]3 z. Fecho deb http://ftp.tw.debian.org/debian sid main contrib non-free >> /etc/apt/sources.list" j# h# Y5 M5 T5 h/ T" t
apt-get update, k7 u) V5 h/ ]# |
apt-get install locales! Q2 m2 }! H. U3 A* Q+ [/ \: H- s
dpkg-reconfigure locales
) A) |3 e& Z6 j6 P# a2 }- aapt-get install wireless-tools wpasupplicant
5 D- u, [% K! D5 g) d$ [/ d: vmknod -m 660 /dev/ttyS0 c 4 64
6 \1 B# o1 X0 E, k( f
, L( u6 q( C6 u* N$ @; e/ B5 f5 }* v. d+ B6 L
编辑/etc/inittab,将ttyS0所在行改为:
: Y4 I* Y4 B5 b, z( ?" d5 c! W+ e9 O: v8 m
: l. ~# }# }% ^( u0 O/ j9 u+ Y" @T0:2345:respawn:/sbin/agetty -L ttyS0 115200 vt1005 H3 b& h; L T
4 V9 N! Y8 e! ~, r# C5 o: H' o3 H
3 [) V5 p, C9 Q完成后cp -a将debian-armhf-sid复制到TF卡的ext3分区,到这里该TF卡就可以在魔盒中成功启动了。
1 m+ A( {; |/ g1 O q" \1 C
0 h: B# j) Y8 G2 k; Q. H## 现存问题
' U) \5 F' y- M7 o1 m7 c4 i, P8 |) _5 {9 j% U M; N% x
### 有线网卡的mac地址问题5 ], H* o- r2 r# M1 Y, R: U
k8 m" x7 d n( {: H: e在启动linux时,log里有一句未配置mac地址,使用随机地址的信息。进入linux后重启进入android,系统会自动运行一个叫MiptAutoTestForAli-10030的程序。虽然看起来很吓人,但其实只要在这个程序中选择写入随机mac地址再退出,就可以正常使用android系统了。1 R3 [% z* T/ T5 E5 r0 N/ X
; d* o( f- o1 I# X0 {- m
这有可能是linux下的网卡驱动不完善导致的,不过也不是什么大问题就是。
: J7 U! w$ D( u! N7 L4 j3 I/ a
### usb口无法使用$ w$ ^# N- d! s: ^
1 I! }! T9 g- j1 S" p) r. z ]启动信息看不出什么问题,usb相关内容都有也都正常,但不管是启动前还是启动后插入usb设备,系统都认不出来。
( _) F+ G9 ?( D
7 E. R3 P$ j L _, X. X# H### 音频输出
* ?3 |4 ^& A( y8 E
; }# Z" T: ]4 `( j+ B+ F! camlogic虽然也用了alsa,但似乎没有提供/dev/dsp一类标准接口。在android中我用optware安装了alsa相关工具,同样有alsamixer显示无控制器,aplay无法输出的问题,所以这究竟是怎么回事还有待研究。( d2 a& g. Z0 K* f, h. b+ q/ T
8 j) _! t3 X5 y0 |# `### 遥控器不能用
) j- r: i* i0 y; Z# N9 r# ^6 [7 d# E4 m
应该也是驱动问题,不过只要usb口可以正常使用了,大不了用鼠标不用遥控就是,问题不大。
, V+ Y4 e# [6 [, k. Z3 @7 F7 o5 u) d3 w0 L( h' p, w' H1 A8 [
! Q( `- @- f3 U1 U$ c9 b0 x- E% D
网络盒子安装 linux,天猫魔盒安装原生linux的一些初步成果相关推荐
- magicbox linux教程,天猫魔盒安装原生linux的一些初步成果
## 按 / j! g3 F8 V: \0 w4 _ ! G' G ]) J, {+ m0 |" C/ Y一开始,我是想试试看能不能借由原生linux解决魔盒伪1080输出的问题.毕竟国内 ...
- linux gnome3安装_Windows 10安装与管理WSL体验原生Linux系统
微软Windows10的内置Linux系统WSL已经有几年历史了.不得不说,在Windows中内置原生的Linux系统,对微软而言是个非常冒险的举措,但也是微软大刀阔斧拥抱开源世界的转折点.几年来,虽 ...
- 给破解后的天猫魔盒安装entware
找人把天猫魔盒yunos6.1.0给精简后,在具有root权限的telnet里仔细看了下yunos6.1.0的系统文件,发现其和android基本一样,只不过自己把系统版本号给变成了自己的,而里面的应 ...
- 天猫魔盒显示服务器响应错误,天猫魔盒网络连接异常 几招解决好这个问题
在天猫魔盒使用过程中,我们常常会碰到网络异常的情况,电视盒子都不能正常的使用,那么该如何解决这个问题呢!首先要排查这些网络异常的原因.下面就让小编教你几招解决问题. 首先排除系统问题:重启.恢复出厂设 ...
- 天猫魔盒远程安装APP
从前的小米盒子299给了父母用,前段时间天猫搞活动,99撸了一个天猫魔盒,天猫亲爹阿里真是有钱任性.由于广电总局各种规定,当然也有盒子厂商的利益,默认很多片是需要付费观看的,而且也看不了电视直播.所以 ...
- Linux系统的安装(自动引导安装、网络安装、分区选择)
Linux系统的安装(自动引导安装.网络安装.分区选择) Cobbler配置 yum install httpd -y yum install cobbler cobbler-web pykickst ...
- linux学习笔记4:linux的任务调度,进程管理,mysql的安装和使用,ssh工具的使用,linux网络编程...
1.设置任务调度命令crontab 任务调度是指系统在某个时间执行的特定的命令或程序.任务调度分为:1)系统工作:有些重要的工作必须周而复始的执行,如病毒扫描.2)个别用户工作:个别用户可能希望执行某 ...
- linux 商业游戏,Ubuntu下安装试玩原生Linux版商业游戏Braid
这款原生Linux版商业游戏Braid国外出售价大约在80美元左右.每年在Linux平台上发布的原生商业游戏是屈指可数,而且这些游戏的质量也是参差不齐. 不过这款原生Linux版商业游戏Braid还是 ...
- tableau linux无网络安装_四十二、Linux网络管理,软件安装,进程管理总结
「@Author: Runsen」 1.⽹络管理 1.1 网络状态查看 在Linux中经常使用ifconfig,route和netstat查看网络状态,它们就是. net-tools工具,下面我来使用 ...
- linux系统安装自主分区,Linux系统的安装(自动引导安装、网络安装、分区选择)...
Linux系统的安装(自动引导安装.网络安装.分区选择) Cobbler配置 yum install httpd -y yum install cobbler cobbler-web pykickst ...
最新文章
- POJ 1703 Find them, Catch them
- django orm级联_django+jquery 实现级联选择菜单
- Linux下对网络进行配置nmcli、nmtui
- Pwn环境配置(二)——VMware虚拟机安装Ubuntu 16.04系统
- ACM/ICPC 之 Floyd练习六道(ZOJ2027-POJ2253-POJ2472-POJ1125-POJ1603-POJ2607)
- 【Java数据结构】Map与Set、搜索树、哈希表
- 关于java集合的知识点_java中集合的知识点
- nginx反向代理转发apache配置 之 cookie去哪儿了?
- 30 | 答疑文章(二):用动态的观点看加锁
- wifidog php源码 配置,wifidog官方源码
- 【web前端】JavaScript闭包
- 概率论---全概率公式和贝叶斯公式
- 陈越何欣铭老师数据结构PTA08-图8 How Long Does It Take
- TestCenter测试管理工具问题详解(3)
- una到底啥意思_una到底啥意思_Una_英文名Una是什么意思
- TIPTOP 智能仓库扫描系统解决方案
- luogu P4881 hby与tkw的基情
- python另存为excel_为什么不能从python代码中“另存为”Excel文件?
- 2020-04-17
- 阅读笔记 - 20220401