转自: http://mp.weixin.qq.com/s?__biz=MzAxNTAyOTczMw==&mid=2649328522&idx=1&sn=64107695fef34ba48f04a78be7a37951&chksm=83976f00b4e0e61629f6f38a4868727bbd1f333a3bb43f0d1303adeb5fa3bb2d6b00f61e35df&mpshare=1&scene=23&srcid=0612vTbty2HiLcZ9zNGkDje9#rd

内核:linux-2.6.22.6

ubuntu:Ubuntu 9.10

开发板: JZ2440(方法通用,不局限于JZ2440)

目的:

Jz2440开机logo默认是一只可爱的小企鹅。我们把它替换成我们喜爱的图片。

准备工作:

准备好BMP或者PNG 图片,若是别的格式的图片,可以使用Windows自带的画图软件打开,然后另存为BMP或者PNG格式,Logo图片分辨率不小于JZ2440分辨率480*272,否则显示不了。

步骤:

1. 安装资料光盘Ubuntu 9.10没有的图片转换工具netpbm

$ sudo apt-get install netpbm

然后输入y //前提是ubuntu能上网

2. 制作linux logo图片

假设图片为 jz2440.png(png格式图片)

$ pngtopnm jz2440.png > jz2440.pnm

$ pnmquant 224 jz2440.pnm > logo224.pnm

$ pnmtoplainpnm logo224.pnm >logo_linux_clut224.ppm

假设图片为 jz2440.bmp(BMP格式图片)

$ bmptopnm jz2440.bmp > jz2440.pnm

$ pnmquant 224 logo.pnm > logo224.pnm

$ pnmtoplainpnm logo224.pnm >logo_linux_clut224.ppm

注意:转换后的文件名有规定,必须是logo_linux_clut224.ppm

3. 生成的logo_linux_clut224.ppm就是我们需要的logo文件,把它拷贝到内核目录覆盖原来的logo文件

$ cd /work/system/linux-2.6.22.6/drivers/video/logo/

$ cp /work/logo_linux_clut224.ppm .   //笔者制作的logo文件在/work/目录

4. 查看logo目录是否存在logo_linux_clut224.o的文件,如果有一定要删除!

$ rm logo_linux_clut224.o

5. 配置内核支持logo显示(如果内核用的是linux-2.6.22.6_jz2440.patch补丁,默认已经支持logo显示)

$ make menuconfig

Device Drivers --->

Graphics support --->

Console display driver support--->

<*>Framebuffer console support

Bootup logo --->

<*> Standart 224-color linux logo

6. 重新编译内核,烧写

$make uImage

把uImage上传到window tftp软件所在目录

进入开发板uboot,作一些必要设置,以PING通window

set gatewayip 192.168.1.1  //设置网关

set netmask 255.255.255.0 //设置子网掩码

set ipaddr 192.168.1.111  //设置uboot阶段的开发板ip

set serverip 192.168.1.170 //设置服务器ip

tftp 30000000 uImage //下载uImage

nand erase kernel    //擦除kernel分区

nand write.jffs2 30000000 kernel //烧写uImage

因为笔者的文件系统在nfs上, 所以先设bootargs

set bootargs noinitrd root=/dev/nfsnfsroot=192.168.1.199:/work/busybox-1.21.0/rootfsip=192.168.1.100:192.168.1.199:192.168.1.255:255.255.255.0::eth0 init=/linuxrcconsole=ttySAC0,115200
//设置bootargs

save  //保存环境变量

boot //启动开发板

说明:

192.168.1.100是linux系统起来后的开发板ip

192.168.1.199是作为NFS服务器的ubuntu ip

192.168.1.255是ubuntu 网关

/work/busybox-1.21.0/rootfs是ubuntu /etc/exports设置的nfs目录

255.255.255.0是ubuntu子网掩码

效果:我们伟大的百问网出来啦!

注:如果您使用的linux发行版是Fedora,可以使用友善之臂公司提供的工具logomaker制作,具体步骤参考它们用户手册,不在赘述。


[置顶] 制作开机LOGO就是这么简单!的更多相关文章

  1. [置顶] 在Ubuntu下实现一个简单的Web服务器

    要求: 实现一个简单的Web服务器,当服务器启动时要读取配置文件的路径.如果浏览器请求的文件是可执行的则称为CGI程序,服务器并不是将这个文件发给浏览器,而是在服务器端执行这个程序,将它的标准输出发给 ...

  2. 修改u-boot的开机logo及显示过程【转】

    本文转载自;http://blog.csdn.net/voice_shen/article/details/6789424 [ u-boot: Git://git.denx.de/u-boot.git ...

  3. 安卓修改开机logo和开机动画的方法

    第一种和第二种方法亲测可用,安卓版本是4.2和安卓5.1均可.第二种方法待验证 以下三种方法 Android 开机其实总共会出现3个画面: 1.第一个就是 linux 系统启动,出现Linux小企鹅画 ...

  4. 设置安卓开机动画、开机logo

    我们要修改的是system>media文件夹下的bootanimation.zip(手机开机动画)这个文件 先来讲讲这个文件结构:该zip解压后得到两个文件, 第一个目录存放了开机时播放的图片( ...

  5. Android 系统开机logo的修改【转】

    本文转载自:http://blog.csdn.net/yandongqiangZHRJ/article/details/8585273 看到了好几个修改logo的博文,但是说的不是很清楚,在这里亲手送 ...

  6. (原)kenel开机logo的制作

    今天项目需要,需要制作一个kernel的开机logo,所以在rk3288的平台上进行测试一番. 第一步:配置kernel:选上CONFIG_LOGO_LINUX_CLUT224选项 make menu ...

  7. RK3288 制作内核开机logo

    安装工具 sudo apt-get install netpbm 1.制作图片 (1).图片为bmp格式 $ convert logo.bmp logo.png $ pngtopnm logo.png ...

  8. jquery——制作置顶菜单

    置顶菜单: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...

  9. html简单响应式滚动条置顶

    简单响应式滚动条置顶 一般的,让页面出现滚动条的常见方法有: overflow:auto||overflow:scroll 或者overflow-x水平滚动条和overflow-y垂直滚动条 那么现在 ...

随机推荐

  1. SQL Server technical bulletin - How to resolve a deadlock

    https://support.microsoft.com/en-us/help/832524/sql-server-technical-bulletin-how-to-resolve-a-deadl ...

  2. 【codevs3012+codevs3037】线段覆盖4+线段覆盖5(DP)

    线段覆盖4网址:http://codevs.cn/problem/3012/ 线段覆盖5网址:http://codevs.cn/problem/3037/ 题目大意:给出一条直线上的一坨线段,每条线段 ...

  3. python基础3 - 变量的基本使用和命名

    4.变量的基本使用 4.1 变量定义 在 Python 中,每个变量 在使用前都必须赋值,变量 赋值以后 该变量 才会被创建 等号(=)用来给变量赋值 = 左边是变量名 = 右边是存储在变量中的值 变 ...

  4. 多线程下使用Jedis

    在不同的线程中使用相同的Jedis实例会发生奇怪的错误. 但是创建太多的实现也不好因为这意味着会建立很多sokcet连接,也会导致奇怪的错误发生. 单一Jedis实例不是线程安全的. 为了避免这些问题 ...

  5. 《Advanced Bash-scripting Guide》学习(三):自删除脚本和自读取内容的脚本

    本文所选的例子来自于<Advanced Bash-scripting Gudie>一书,译者 杨春敏 黄毅 自删除脚本 #!/bin/rm #自删除脚本 #当你运行这个脚本时,基本上什么都 ...

  6. hdu 3410 单调栈

    http://acm.hdu.edu.cn/showproblem.php?pid=3410 Passing the Message Time Limit: 2000/1000 MS (Java/Ot ...

  7. mysql备份shell脚步

    #!/bin/bash  #Shell Command For Backup MySQL Database Everyday Automatically By Crontab     USER=roo ...

  8. Git_学习_09_Commit message 和 Change log 编写指南

    一.前言 二.Commit message编写 1.规范 2.用空行分开主题和正文 提交时只执行 git commit,这时就会跳出文本编辑器,让你写多行. git commit 主题和正文分开 每次 ...

  9. @angular/cli项目构建--路由3

    路由定位: modifyUser(user) { this.router.navigate(['/auction/users', user.id]); } 路由定义: {path: 'users/:i ...

  10. 常用stl(c++)

    众所周知,c++的模板库是相当强大的. 下面我来列举一些常用的,(神奇的) //部分材料选自<算法竞赛入门经典(第2版)>(刘汝佳) 一,algorithm (算法) min(a,b)-- ...