作为一名高清爱好者,一直想配置一台HTPC放家里实现高清播放外加家庭服务器功能。Nvidia的Ion平台自然是高清平台的硬件首选,而家庭媒体中心的软件端则首先考虑开发的已经很成熟的开源利器XBMC。XBMC本身支持多种平台(Linux, Mac OS X, Windows …),从驱动程序和配置方面来说,自然是基于Windows搭建最省事,但最终选择Linux的原因是:ssh。Linux的ssh让我可以很方便地通过其他电脑,甚至手机操作我的家庭媒体中心主机。 因此,我最终在硬件上选择了Acer Aspire R3700,基于Ion平台的超小型主机,配置如下:
除了买的主机自带了鼠标键盘之外,我还选购了HDMI高清线以及MCE遥控器。 系统方面选择了安装配置简便的Ubuntu 10.10系统(我开始是打算使用Gentoo的,但是编译着编译着我就崩溃鸟)。使用Ubuntu要实现的功能如下:
系统安装因为Acer Aspire R3700本身不内置光驱,安装系统可以通过制作LiveUSB进行U盘引导安装。我制作了LiveUSB到一张SD卡上,直接放入机器的内置读卡器进行引导安装的。具体如何制作LiveUSB以及安装Ubuntu系统就不冗述了,可参考Ubuntu的LiveUSB制作教程:Installation From USB Stick Quick。 注:我在系统设置时添加了一个名为xbmc的普通账户,系统主机名为HAL。下文均使用此用户名和主机名代替。 分区上我新建了一个220G的空白分区挂载在 sudo mkfs.xfs -l size=64m -d agcount=4 -i attr=2,maxpct=5 -L library /dev/sdx
在 /dev/sdb5 /library xfs noatime,nodiratime,allocsize=512m 0 2
其中 系统调试删除冗余组件安装好系统之后首先运行 解决RALINK RT3090网卡驱动问题Ubuntu 10.10自带的无线网卡RaLink RT3090驱动存在不能正常关机的问题,需要安装第三方源的编译包,运行如下命令: ## 添加第三方驱动源
sudo add-apt-repository ppa:markus-tisoft/rt3090
## 更新源信息并安装第三方无线网卡驱动
sudo apt-get update
sudo apt-get install rt3090-dkms
编辑 # blacklist other Ralink modules in favour of 3090 DKMS mod
blacklist rt2860sta
blacklist rt2870sta
blacklist rt2800pci
blacklist rt2800usb
blacklist rt2x00lib
blacklist rt2x00pci
blacklist rt2x00usb
安装NVIDIA驱动为了充分发挥Ion平台的高清硬解效能,安装NVidia的私有驱动是必须的。运行 Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "ION"
Option "NoFlip" "1" # 加入此行
EndSection
调试HDMI的音频输出Ubuntu下调试音频的HDMI输出有点复杂,具体我参考了HOW-TO set up HDMI audio on nVidia GeForce G210, GT220, or GT240进行调试,这里简述下我的调试过程:
开启IPTABLES+SSH由于本机是通过无线路由连接,最好先在路由器上映射好相应端口并绑定一个固定IP以方便维护,在此不再冗述。既然系统已经搭建好了,可以去掉键鼠通过开启sshd服务进行远程操作维护。为了更安全的系统,iptables+sshguard也是不可或缺的。 运行命令安装iptables, ssh和sshguard: sudo apt-get install iptables openssh-server sshguard
修改 Port 2727 # 将默认的22端口修改为任意其他端口,例如2727。
然后是设置iptables规则,编辑 # Generated by iptables-save v1.4.7 on Sat May 22 20:03:22 2010
*raw
:PREROUTING ACCEPT [21639:19095836]
:OUTPUT ACCEPT [22904:4573912]
COMMIT
# Completed on Sat May 22 20:03:22 2010
# Generated by iptables-save v1.4.7 on Sat May 22 20:03:22 2010
*filter
:INPUT DROP [7:2223]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [9409:1846937]
:sshguard - [0:0]
-A INPUT -s 127.0.0.1/32 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# 设置内网IP权限访问,默认允许
-A INPUT -s 192.168.1.100/32 -j ACCEPT
-A INPUT -s 192.168.1.101/32 -j ACCEPT
# 打开transmission-daemon端口6666,其中9091是transmission web的端口
-A INPUT -p tcp -m tcp --dport 6666 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 9091 -j ACCEPT
# 允许路由器的UPnP
#-A INPUT -s 192.168.1.1 -j ACCEPT
# 设置sshd端口号(2727)的访问,先经sshguard判断访问是否异常
-A INPUT -p tcp -m tcp --dport 2727 -j sshguard
-A INPUT -p tcp -m tcp --dport 2727 -j ACCEPT
-A INPUT -p tcp -m tcp --tcp-flags RST RST -j DROP
COMMIT
# Completed on Sat May 22 20:03:22 2010
然后直接运行 pre-up iptables-restore < /etc/iptables
post-down iptables-save > /etc/iptables
运行 安装XBMC及相关组件安装XBMC要获得XBMC之前,我们先需要添加第三方源,运行如下命令完成XBMC安装: sudo add-apt-repository ppa:team-xbmc
sudo apt-get update
sudo apt-get install xbmc xbmc-standalone
首次运行XBMC会发现中文无法识别的问题,需要做的是拷贝一个中文字体进来,例如我喜欢使用Google制造的Droid Sans Fallback字体,运行: sudo cp DroidSansFallback.ttf /usr/share/xbmc/media/Fonts/arial.ttf
sed -e "s/language>english<\/language/language>Chinese (Simple)<\/language/" -i ~/.xbmc/userdata/guisettings.xml
sed -e "s/font>Default<\/font/font>Arial<\/font/" -i ~/.xbmc/userdata/guisettings.xml
安装LIRC实现遥控播放XBMC作为HTPC的一部分,脱离键鼠使用遥控器进行影院播放控制自然是必不可少,我使用的是Microsoft Media Center的遥控器,通过USB外接一个红外线接收器就可以了。 要让遥控器工作,首先得安装lirc,运行
然后将lircd加入系统自启动进程,重启计算机,在终端中运行 安装TRANSMISSION-DAEMON作为高清下载机,实现Bittorrent下载的远程管理是必不可少的,首选Transmission这个跨平台的Bittorrent下载利器,尤其是它的daemon模式,支持web远程操作,而且web端的操作针对iPhone等手持设备做了UI优化。运行 由于transmission-daemon默认使用的是debian-transmission用户名运行,需要将其改为我的用户名xbmc进行更好的管理。修改 #USER=debian-transmission #注释此行,修改为自定义的用户名
USER=xbmc
安装XBMC插件XBMC的强大之处在于可以通过插件进行无限扩展,我安装了Getlib, 7176, TheMovieDb几个电影类的削刮器以根据文件名自动获取电影的封面和制作信息。剧集方面安装了TheTVDb的削刮器,另外还可以安装xbmc-addons-chinese里的扩展,添加Youku等在线视频播放,更好地扩展网络电视功能。 此外,在XBMC下可安装Transmission的插件,便可通过XBMC监控Transmission下载,例图: 安装XBMC皮肤: AEON NOXXBMC下最漂亮的皮肤莫过于Aeon系列,Aeon下面有Aeon65, Aeon MQ2和Aeon Nox三个mod。个人更偏向于使用Aeon Nox,系统资源占用少于前二者且皮肤功能异常强大,整个UI也非常漂亮(见下文“截图欣赏”)。 安装方法很简单,去XBMC的扩展库里找到Aeon Nox安装就行了,下载过程可能有点慢,毕竟这个皮肤解压后的体积高达60MB。不过皮肤安装后的问题是缺少中文字体支持,解决方法是: 复制一个中文字体到 然后修改 优化系统设置为了更好地实现HTPC的流畅体验,还需要对安装后的系统进行一些优化。
整个系统优化完之后,就可以在GDM中选择默认登录xbmc-standalone环境,而不进入Gnome桌面环境,以节省不必要的系统资源占用。 截图欣赏参考:
END写在最后,我已经为我的HTPC新添置了一块Seagate的GoFlex Desk 2TB移动硬盘以满足我下高清的需求,Acer的R3700主机连续运行几天既不会有噪音也没有发热的现象。电脑之间,电脑与手机之间通过无线网络进行互联,一定要用上801.11n的无线路由器才能满足无线网络之间的数据高速传输。 |
|