linux字符界面教程,打造字符界面的多媒体Linux系统
打造字符界面的多媒体Linux系统
打造字符界面的多媒体Linux系统
0 环境与目标
硬件:ThinkPad R52笔记本一台。
目标:字符界面的LINUX系统,同时可以看图片,听音乐,看视频,无线上网。
1 系统安装
1.1 最小安装系统
官网下载CentOS 6.4-minimal镜像,刻录光盘安装系统,系统自身已经支持framebuffer。
1.2 启动framebuffer支持
修改/boot/grub/grub.conf文件,增加内核启动参数 vga=791 ,以启动framebuffer模式。
1.3 连接Internet,安装工具
配置有线网卡IP,连接Internet。
yum安装pciutils,usbutils以查看硬件设备情况。
yum安装wget以下载源码包。
2 我们要听音乐、看电影、看图片了
2.1 声卡测试
yum安装alsa-utils,用来测试声卡工作情况,系统本身已经支持此笔记本的声卡,lspci可以看到声卡信息。
运行alsamixer命令调整音量大小,运行aplay播放一个wav格式的音频文件,发出声音说明声卡工作正常了。
2.2 源码安装mplayer,支持大多数音视频文件
官网下载mplayer源码以及编解码库,把编解码库解压并把里面的所有内容(注意不是文件夹本身,而是解压后文件夹里面的内容)放到/usr/local/lib/codecs/下。
下载yasm,这个东西编译mplayer时需要使用,不知道为啥官网上就是下不了,最后从CSDN上下的。
解压mplayer源码,按照README的说明编译安装(不需要GUI),编译时间较长,耐心等待。
2.3 让mplayer发出声音
mplayer使用的是OSS标准的声音驱动接口,所以需要使用ALSA模拟OSS,其实也很简单,就是如下:
modprobe snd_pcm_oss
至此,mplayer已经可以正确播放大多数音视频了,包括mp3, rmvb。
2.4 看图片
首先yum安装libpng和libjpg库,这样mgaview才支持png,jpg格式的图片。
然后下载mgaview源码,编译安装即可。注意:编译时会出现2个Error,修改对应的源码即可(加括号修正)。
3 我们要无线上网了
3.1 安装无线工具包
yum安装wireless-tools,wpa_supplicant以设置无线网卡接入WIFI。
3.2 安装无线网卡固件
系统本身已经能正确加载无线网卡的驱动了,lspci 可以看设备。但是需要下载ipw2200-bss.fw这个固件文件到/lib/firmware目录下。
运行iwconfig 命令查看无线网卡情况,发现无线网卡名为eth1。
3.3 接入WIFI
运行iwlist scanning命令扫描当前可见的SSID,找到需要的那一个,记下ESSID名字备用。
新建/etc/my_wpa_supplicant.conf文件,内容如下:
ctrl_interface=/var/run/wpa_supplicant
network={
ssid="上面记下的ESSID名字"
psk="WIFI密码"
}
运行如下命令连接WIFI
wpa_supplicant -B -i eth1 -c /etc/my_wpa_supplicant.conf
运行如下命令获取IP地址
dhclient eth1
此时,已经接入WIFI了,通过iwconfig命令查看是否正常。
4 我们要使用串口了(网络工程师需要)
4.1 准备USB转COM转接头
我使用的是Z-TEK,默认系统已经有其驱动,lsusb可以看设备。插入后的设备名是/dev/ttyUSB0.
4.2 安装minicom超级终端
yum安装即可。
4.3 设置minicom
运行minicom -s 设置设备名、速率等参数并保存。
5 截屏工具fbgrab
5.1 安装依赖库
官网显示fbgrab依赖与splint, libpng, zlib。其中的libpng,和zlib我们已经安装了。
对于splint,其实是一个静态检测代码的工具,可以不用的,方法是:
去掉fbgrab的Makefile中的splint行。
5.2 编译安装fbgrab
如上所述,解压后,去掉Makefile中德splint行,直接make,make install。
如下命令就能完成截屏,并存储为png文件。 fbgrab 存放路径/图片名称.png。
本文附近中的截图就是这样完成的,为了不破坏图像显示,可以使用fbgrab的-s参数,或者使用ssh远程登陆操作。
附录:系统运行的几个截图
图一 运行命令mplayer -zoom -x 400 -y 300 影音文件.rmvb
图二 运行命令为 mgaview 图片文件名
相关文章:

Linux 环境 搭建Git 服务器,并且修改SSH端口使用
1.环境配置说明 服务器 CentOS 7 git(git version 1.8.3.1) 客户端 Windows10 SourceTree 2.安装 Git 服务器端安装: sudo yum -y install git 查看安装版本 #git --version git version 1.8.3.1 客户端安装 下载 SourceTree for Window 下…

php发光字体代码,CSS3怎么实现字体发光效果
这次给大家带来CSS3怎么实现字体发光效果,CSS3实现字体发光效果的注意事项有哪些,下面就是实战案例,一起来看一下。博客页面左上角的“猿来是勇者”文字已制作发光效果,分享方法如下:该属性为文本添加阴影效果text-shadow:h-shado…

计算机专业英语chapter012,计算机专业英语 chapter_1.ppt
计算机专业英语 chapter_1Chapter 1 Information Technology, The Internet, and You;Competencies;Competencies能力,要求After you have read this chapter, you should be able to: Explain the five parts of an information system: people, procedures, softw…

C#与C++的区别
1,C#不支持多重继承,这是与C明显区别的地方,说真的多重继承有时候用起来挺麻烦的,可能微软怕你用不好吧,不给你提供了,但我个人觉得没有了多重继承感觉有点可惜。 2.在标准的C#安全代码中不支持指针类型的操作…

黑裙安装linux环境,Linux学习笔记(一) ---- 安装Linux系统
学习Linux的第一件事情,你得先有个Linux系统,才能知道怎么学吧?于是安装Linux是第一部,找网上找了不少教程,自己总结了一下,些一个博文先。我安装的Linux是在VMWare 7.2版本上安装的,安装的是Ret Hat Linux…

mybatis批量更新的两种实现方式
mapper.xml文件,后台传入一个对象集合,另外如果是mysql数据库,一点在配置文件上加上&allowMultiQueriestrue,这样才可以执行多条sql,以下为mysql: <update id"batchUpdate" parameterType…

php常用20函数,PHP常用函数
//PHP设置跨域header("Access-Control-Allow-Origin:*");//PHP设置JSON头 以JSON格式输出header("Content-type:application/json; charsetutf-8");//正则取字符串preg_match_all(/字符串(.*?)字符串/i,$data,$out);// PHP把JSON对象转字符串不转码输出js…

tcpdump保存数据包
1、启动tcpdump tcpdump 2、查看网卡 tcpdump -D 3. 抓取报文后隔指定的时间保存一次 tcpdump -i eth3 -s0 -G 60 -Z root -w %Y_%m%d_%H%M_%S.pcap 这里解释下-G选项 后面接时间 单位为秒 本例中的时间为60秒 4. 抓取报文后达到指定的大小保存一次 tcpdump -i eth3 -s0 -C 1 -…

在线翻译系统属于计算机应用领域中,【单选题】网状物编织物和机件上的滚花部分,可以在轮廓线附件用( )线示意画出...
参考答案如下单选【简答题】我决定明天五点起床。(ことになる・ことにする)题网【单选题】法律的规定:邀请招标,应向()个以上具备承担招标项目能力,资信良好的特定法人发出投标邀请书。状物轮【单选题】描述液体运动的方法不包括( )。编织部分【单选题】Everyone _________ on …

linux进行主机发现,linux – 网络上所有计算机的主机名发现
SSH不关心是否给出了要连接的主机名或IP地址(当有特定于主机的配置时,不确定是否适用).大多数MPI实现也不关心,例如在Open MPI连接中,URI地址都是数字,因此具有IP的主机文件可以正常使用.另一方面,HTTP服务器关心的是虚拟主机事件,其中许多不同站点解析为相同的IP地址,但服务器…
Android5.0之CoordinatorLayout的使用
CoordinatorLayout,中文译作协调者布局,光听这名字你可能很难判断出协调者布局有什么特点,那么我们来看看下面一张图片: 由于CSDN对图片大小的要求,我只能录制一个快速播放的动画,请大家见谅。但是显示效果…

微信js sdk动态引用
一般情况下,微信的js-sdk只需要直接引用script即可 <script src"http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script> 但是有的时候,当我们的网页访问的环境多样的时候,比如APP内部,手机浏览器时候&…

java qq协议 c#,C# WebQQ协议群发机器人(三)
在前两篇文章中我已经给了绝大部分的WEBQQ的操作在这篇文章中不在过多的说明做法有的时候需要自己添加一些功能呢 怎么做呢,我这里给出一个方法。在调试webqq机器人时 我用google浏览器 的F12开发者工具来捕捉网络包,webqq绝大多数都是GET请求 参数用来用…

矩阵计算在计算机科学中,开发者必读:计算机科学中的线性代数(附论文)
来源:机器之心作者:Petros Drineas、Michael W. Mahoney本文共3994字,建议阅读6分钟。本文为你分享一篇来自普渡大学与UC Berkeley两位教授的概述论文中的线性代数知识。矩阵计算在计算机科学中占有举足轻重的地位,是每个开发者都…

linux blfs安装桌面,【Linux】Ubuntu14.04安装bridge-utils安装brctl
1、下载bridge-utils http://www.linuxfromscratch.org/blfs/view/svn/basicnet/bridge-utils.html2、放到/usr/src 目录下输入:su以root运行输入:cp /home/joanna/桌面/bridge-utils-1.5.tar.gz /usr/src/bridge-utils-1.5.tar.gzbridge-utils拷贝到/…

HTML5左取函数,Javascript常用方法函数收集(一)
本文中,收集了一些比较常用的Javascript函数,希望对学习JS的朋友们有所帮助。1.字符串长度截取function cutstr(str, len) {var temp,icount 0,patrn /[^\x00-\xff]/,strre "";for (var i 0; i < str.length; i) {if (icoun…

智能指针unique_ptr
unique_ptr的一些操作: int main() {unique_ptr<int> uptr(new int(10));//unique_ptr<int> uptr2(uptr);//报错//unique_ptr<int> uptr3 uptr;//报错unique_ptr<int> uptr2 std::move(uptr);//转移所有权//cout << *uptr <<…

java 设计一个geometricobject类,geometricobject类
(2) Circle 类和 Rectangle 类是 GeometricObject 类的子类,其中应实现 父类的抽象方法。 (3) 程序主方法中创建两个几何对象,一个圆和一个矩形,并用 ......创建一个元素是 GeometricObject 类型的数组: ?GeometricObject[] geo new GeometricObject[10]; 8 使用 GeometricOb…

linux 源码安装浏览器,vps+linux+安装浏览器
弹性云服务器 ECS弹性云服务器(Elastic Cloud Server)是一种可随时自助获取、可弹性伸缩的云服务器,帮助用户打造可靠、安全、灵活、高效的应用环境,确保服务持久稳定运行,提升运维效率三年低至5折,多种配置可选了解详情什么是弹性…

计算机基础及应用教案,计算机应用基础教案:数制的概念及转换(中职教育)
计算机应用基础教案:数制的概念及转换(中职教育) (6页)本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!9.9 积分课题:数制的概念及转换教学目标:1、了解和学握计算机…

博客园第一天,开放封闭原则
(以下内容来自网络,只为加深理解) 开放封闭原则 软件实体软件实体应该是可扩展,而不可修改的。 开放:扩展 封闭:修改 对扩展开放意味着在又新的需求或变化时,可以对代码进行扩展,以适…

centos6.5 php5.2,Linux中PHP安装与配置(CentOS-6.5:php-5.2.13)
1 PHP简介 PHP(PHP: Hypertext Preprocessor的缩写,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,入门门槛较低,易于学习,使用广泛,主要适用于Web开发领域。…

Oracle中分页查询语句
Oracle分页查询语句使我们最常用的语句之一,下面就为您介绍的Oracle分页查询语句的用法,如果您对此方面感兴趣的话,不妨一看。 Oracle分页查询语句基本上可以按照本文给出的格式来进行套用。Oracle分分页查询格式: SELECT * FROM …

大一c语言大作业课题大全,昆明理工大学大一C语言大作业题目.doc
昆明理工大学大一C语言大作业题目综合性实践排序求平均值(包括将数拆散求最大最小值)。函数ReadDat()随机产生100个存放到数组aa中00个jsSort()函数的功能是:进行降序排列。最后调用函数WriteDat()函数函数ReadDat()00个四位数存入数组a中,函数jsValue()…

1 项目里面如何打印log日志
1 首先写一个logging.py文件 import logging from conf import setting #配置文件,里面有日志存放路径def mylog():logger logging.getLogger()# 吸星大法# 先创造一个格式formatter logging.Formatter(%(asctime)s - %(name)s - %(levelname)s - %(message)s)#…

计算机应用主要设计到哪些方面,大学计算机应用基础教案设计.doc
大学计算机应用基础教案教 师: 腾莉单 位: 数学计算机学院2009 ~ 2010学年第一讲 计算机基础知识概述【教学目的】了解计算机概念、特点、发展历程、类型应用领域等基本知识计算机基本概念和分类计算机一、计算机的概念计算机(computer)是一种能自动、高…

php点击复制按钮到我的粘贴板,JS 实现点击按钮复制内容到粘贴板 clipboard
具体实现如下:点击按钮复制内容到粘贴板body {text-align: center;}#p1 {line-height: 150px;font-size: 40px;}#source {font-size: 18px;}.wrapper {margin-top: 50px;}.btn {width: 300px;height: 120px;background-color: #4da2fd;color: #fff;font-size: 20px;text-decora…

透明代理Transparent Proxy
透明代理Transparent Proxy透明代理Transparent Proxy类似于普通代理,它可以使得处于局域网的主机直接访问外网。但不同之处,它不需要客户端进行任何设置。这样,客户端误以为是直接连接的外网主机,所以称为透明代理。由于客户端没…

C语言case次数有限制吗,用switch...case语句统计数字、空格和其他字符出现的次数...
//用switch...case语句统计数字、空格和其他字符出现的次数//转自K&R#include int main(void){int c, i, nwhite, nother, ndigit[10];nwhite nother 0;for (i 0; i < 10; i)ndigit[i] 0;while ((c getchar()) ! EOF){switch (c){case 0: case 1: case 2: case 3: …

C++——简单数据类型及布尔类型
一. 简单数据类型 数据类型描述了对象在内存存储区中占据的空间大小,描述了对象能够表示的数据范围 和类型。C语言中常用的数据类型有整型、实型、字符型(这3种类型也被称之为简单数 据类型)、数组类型、布尔类型、枚举类型、结构体类型、公用…