E9 卡片电脑升级内核和Ubuntu系统

噫,E9 自带的 Ubuntu 12.02 真!是!太!老!了!

本来想用 E9 当个 Agar.io Server(现已做好,见上一篇文章),发现连 Node.js 版本太老(肯定是系统版本太老的问题)

于是各种逛论坛。。ww

发现其中只提供了内核和 Rootfs,并没有提及具体如何烧写到E9中。按照官方说明的烧写方法,需要 uImage 内核文件。在下载的 Rootfs 中,zImage 替代了它。

那么关键问题是如何不需要 uImage,用一台 Windows 电脑写入 E9 呢?

 

在升级之前,需要……

  • E9光盘上带的 Mfgtools For Windows;
  • E9卡片电脑;
  • RS232 – USB 转换线(可选);
  • MiniUSB 线;
  • 一台可以上网的电脑。

 

接下来……

  1. 下载 U-BootRootfs,感谢 RIX
  2. 将 U-Boot 和 Rootfs 拷贝到 Mfgtools\Profiles\MX6Q Linux Update\OS Firmware\files\ubuntu 下;
  3. rootfs.tgz 重命名为 oneiric.tgz
  4. 修改 Mfgtools\Profiles\MX6Q Linux Update\OS Firmware\ucl2.xml。取消uImage写入,具体方法如下:
  5.  

    在 109 行左右找到

        <CMD state="Updater" type="push" body="send" file="files/ubuntu/uImage">Sending kernel uImage</CMD>
        <CMD state="Updater" type="push" body="$ dd if=$FILE of=/dev/mmcblk0 bs=1M seek=1 conv=fsync">write ubuntu kernel image to sd card</CMD>
    

    将其注释,即改为

    <!--
        <CMD state="Updater" type="push" body="send" file="files/ubuntu/uImage">Sending kernel uImage</CMD>
        <CMD state="Updater" type="push" body="$ dd if=$FILE of=/dev/mmcblk0 bs=1M seek=1 conv=fsync">write ubuntu kernel image to sd card</CMD>
    --->
    
  6. 将E9跳线帽设为Download模式(参见官方手册),并上电,连接至电脑;
  7. 打开Mfgtools,猛戳Start,等待直到烧写完成;
  8. 享受新系统!

Agar 推荐配置

// Ogar configurations file
// Lines starting with slashes are comment lines

// [Server]
// serverGamemode: 0 = FFA, 1 = Teams, 2 = Experimental, 10 = Tournament, 11 = Hunger Games
// serverBots: Amount of player bots to spawn (Experimental)
// serverViewBase: Base view distance of players. Warning: high values may cause lag
// serverStatsPort: Port for the stats server. Having a negative number will disable the stats server.
// serverStatsUpdate: Amount of seconds per update for server stats
// serverLogLevel: Logging level of the server. 0 = No logs, 1 = Logs the console, 2 = Logs console and ip connections
serverMaxConnections = 64
serverPort = 96
serverGamemode = 2
serverBots = 0
serverViewBaseX = 1024
serverViewBaseY = 592
serverStatsPort = 88
serverStatsUpdate = 60
serverLogLevel = 1

// [Border]
// Border values of the map (Vanilla values are left/top = 0, right/bottom = 11180.3398875)
borderLeft = 0
borderRight = 12000
borderTop = 0
borderBottom = 12000

// [Spawn]
// Each interval is 1 tick (50 ms)
spawnInterval = 20
foodSpawnAmount = 10
foodStartAmount = 400
foodMaxAmount = 2000
foodMass = 10
virusMinAmount = 40
virusMaxAmount = 200
virusStartMass = 200
virusFeedAmount = 7

// [Ejected Mass]
// ejectMass: Mass of ejected cells
// ejectMassLoss: Mass lost when ejecting cells
// ejectSpeed: Base speed of ejected cells
// ejectSpawnPlayer: Chance for a player to spawn from ejected mass
ejectMass = 12
ejectMassLoss = 16
ejectSpeed = 160
ejectSpawnPlayer = 50

// [Player]
// playerRecombineTime: Base amount of ticks before a cell is allowed to recombine (1 tick = 1000 milliseconds)
// playerMassDecayRate: Amount of mass lost per tick (Multiplier) (1 tick = 1000 milliseconds)
// playerMinMassDecay: Minimum mass for decay to occur
// playerDisconnectTime: The amount of seconds it takes for a player cell to be removed after disconnection (If set to -1, cells are never removed)
playerStartMass = 100
playerMaxMass = 225000
playerMinMassEject = 32
playerMinMassSplit = 36
playerMaxCells = 512
playerRecombineTime = 1
playerMassDecayRate = .002
playerMinMassDecay = 9
playerMaxNickLength = 15
playerDisconnectTime = 60

// [Gamemode]
// Custom gamemode settings
// tourneyTimeLimit: Time limit of the game, in minutes.
// tourneyAutoFill: If set to a value higher than 0, the tournament match will automatically fill up with bots after value seconds
// tourneyAutoFillPlayers: The timer for filling the server with bots will not count down unless there is this amount of real players
tourneyMaxPlayers = 12
tourneyPrepTime = 10
tourneyEndTime = 30
tourneyTimeLimit = 20
tourneyAutoFill = 0
tourneyAutoFillPlayers = 1

Set Up Web Servers

For Debian / Ubuntu ONLY.
Execute the following commands in your terminal

Install PHP5, Apache2 and MySQL Server

$ sudo apt-get update
$ sudo apt-get install php5 apache2 mysql-server

Install additional modules

You can install additional modules like PHP5-MySQL, PHP5-cURL and more.

$ sudo apt-get install php5-mysql php5-curl

Then go to your WebRoot and upload some webpages

They are usually located in /var/www/html

Enjoy your new website!

By entering the IP address of your computer, you can enter your website now.