这篇帖子我打算用 Q&A 的方式来编写,这样大家更容易一目了然的看明整个帖子的内容,层次分明,调理清晰,以下均是我个人拿到树莓派之后实际使用中碰到的问题和解决办法。
1. Q: 树莓派怎么启动?
A: 使用 win32diskimager 将系统镜 img 文件写入 SD 卡中,然后插到树莓派的卡槽中,上电,即可启动系统。需要注意的是,我最初使用的是 TF 小卡套上 SD 卡套来实现启动的,一开始也的确使用正常,后来在使用过程中发现系统无法启动,一度以为是 RPI 坏了,发回爱板网让小鸟帮我检测,得出结论是 SD 卡套的问题。这个卡套在电脑上读写的时候是正常的,但是树莓派却无法读出系统。因此建议各位还是尽量直接用 SD 卡,或者是用 U 大的 TF 转 SD 变形卡,比市面上 2 块钱的 SD 卡套质量要好的多.
2. Q: 没有屏幕,没有键盘,怎么玩树莓派?
A: 没有屏幕和键盘,只要你有一根最大负载至少 750ma 的 5V 电源适配器和一根网线,你就可以使用电脑通过 SSH 连上树莓派。这里,我要说明的是,树莓派官方系统 Raspbian 自 2012-9-18 版本之后,均设置了 ssh 服务随系统自动启动,我使用的是最新的 2012-10-28 版本的。插上 SD 卡,插上网线,上电,树莓派启动约 30 秒之后,应该就启动完成了。我们只需要一个 SSH 客户端来连接树莓派就可以。这里推荐 putty.exe 这个小巧的 ssh 客户端软件,整个程序就一个 exe 文件,很精简。
IP 地址填上树莓的 IP,其他设置不用更改,点击 OPEN。这时会提示需要输入账号和密码,树莓派的默认账号是 pi, 默认密码是 raspberry, 注意密码输入的时候是没有 * 号来告诉你输了几位的。ssh 连接成功后如图所示
3. Q: 如何让你的电脑远程连接上树莓派桌面?
A: 树莓派的官方系统 raspbian 自带了 x window,因此是可以使用它的类 WIN 风格的 GUI 界面的。但是 ssh 是不支持 GUI 图形界面的,因此我们这次要用到是 vnc。首先按照问题 2 的操作,连接上树莓派。然后输入以下命令
- sudo apt-get install tightvncserver
复制代码
之后树莓派就会自动从网上下载 vnc 的服务器端,安装过程中会提示是否安装,按小写的 y 后回车,继续安装。安装完成后会让你设置一个 VNC 登陆的密码,输入密码后还会问你是否输入个只能观看不能操作的密码,一般选择 n,也就是不设置。整个安装完成之后输入
- vncserver -geometry 1024x768
复制代码
后面那个参数就是你想显示的分辨率。命令成功执行后,ssh 里会显示
这里说明一点,每执行一次上面的命令,就打开了一个 VNC 的端口。VNC 默认的端口是 5901,也就是说,上面命令执行完成后的编号表示你当前可以连接的端口号。这时候 VNC 的服务端已经安装完成了,你需要一个客户端来连接这个服务端。这里可以使用 tightvnc view 或者 RealVNC, 这两个软件可以自行谷歌搜下。启动 VNC view,这里以 tightvnc 举例
IP 是你的树莓派的 IP,端口号就是上面 ssh 中 New ‘X’ desktop is raspberrypi:1 加上 5900,因此现在可以连接的端口号是 5901。当然你可以再次执行 vncserver -geometry 1024x768,那么 New ‘X’ desktop is raspberrypi:2,可以连接的端口号就是 5901 和 5902,以此类推。点击连接按钮,需要输入前面设置过的 VNC 登陆密码,登陆成功后的效果
这里有几个问题我需要说明下。有时候 VNC 连上去,不出来桌面,而是灰色的面板,整个时候滑动几下鼠标的滚轮,可能会解决问题,这个是无意中发现的,不保证一定有效。还有一个情况是,我使用 tightvnc view 和 Realvnc view 连上去,点鼠标右键出来的菜单不一样,到现在还不知道是什么原因,而且两个 view 都无法用界面上的按钮输入 ctrl+alt+del 来调出任务管理器。
4. Q: 如何让树莓派显示中文?
A: 树莓派默认是采用英文字库的,而且系统里没有预装中文字库,所以即使你在 locale 中改成中文,也不会显示中文,只会显示一堆方块。因此需要我们手动来安装中文字体。好在有一个中文字体是免费开源使用的。ssh 中输入以下命令
- sudo apt-get install ttf-wqy-zenhei
复制代码
安装过程中如果碰到 (Y/n),都选择 y
中文字库安装完成之后,还需要安装一个中文输入法。输入如下命令
- sudo apt-get install scim-pinyin
复制代码
一样的安装过程,安装完毕后输入
- sudo raspi-config
复制代码
然后选择 change_locale,在 Default locale for the system environment: 中选择 zh_CN.UTF-8, 配置完成之后,输入命令
- sudo reboot
复制代码
重启完成好就可以在 VNC 连接上去后使用中文显示和中文输入法了,切换中文输入法一样也是 ctrl+space
5. Q: 如何在树莓派上安装谷歌的开源浏览器 Chromium?
A: 连接 ssh, 输入如下命令
- sudo apt-get install chromium-browser chromium-l10n
复制代码
提示是否安装,输入 y, 等待安装完成
完成之后,进入桌面 选择菜单 -〉互联网 -〉Chromium 网页浏览器,就可以打开熟悉的 chrome 浏览器了
还有一种方式,是在系统发行版软件库里没有 chrome 的时候来安装 chrome 浏览器的
打开 ssh,输入如下命令
- wget http://goo.gl/go5yx -O install.sh
复制代码
成功后,打入:
- chmod a+x install.sh
复制代码
然后,输入(注意一定要加上前面的” 点斜杆”):
- ./install.sh
复制代码
就开始下载和安装一些必要的包,还有下载整个 Chrome 并安装,整个过程速度飞快。
这个方式参考了这个链接里的教程http://www.leiphone.com/raspberry-pi-hands-on.html
不过这种安装方式在菜单里就没有选项可以让你点了,VNC 连接后,在中端里输入
- chrome -disable-ipv6 &
复制代码
就可以启动浏览器了
6. Q: 官方 Raspbian 默认的自动更新的源连接速度太慢,更新常常失败,如何解决?
A: 这里需要修改源的文件 sources.list。输入如下命令:
- sudo cp /etc/apt/sources.list /etc/apt/sources.list_bk
复制代码
备份原来的文件
- sudo nano /etc/apt/sources.list
复制代码
编辑 sources 文件,将里面的内容替换成
-
deb http://mirror.nus.edu.sg/raspbian/raspbian/ wheezy main contrib non-free rpi
-
deb-src http://mirror.nus.edu.sg/raspbian/raspbian/ wheezy main contrib non-free rpi
复制代码
按 ctrl+o 保存,按 ctrl+x 退出,接着输入
- sudo reboot
复制代码
重启系统,完成之后 ssh 连入,输入
- sudo apt-get update
复制代码
这下速度绝对比之前要快很多了,而且不会出现找不到很多源的情况了
7. Q: 如何使用无线网卡,让树莓派摆脱网线束缚?
A: 首先你要确定你的无线网卡驱动是 Raspbian 的驱动库里包含了的,可以上这个地址查看自己的无线网卡芯片是否是支持列表里面的(http://elinux.org/RaspberryPiBoardVerifiedPeripherals#USB WiFi Adapters)。如果你的无线网卡可以支持,那么进入正题,配置无线上网。首先发一下我的参考配置的链接 (http://omer.me/2012/04/setting-up-wireless-networks-under-debian-on-raspberry-pi/), 是老外写的,英文不好的朋友可以看我下面的讲解
1,首先插上你 USB 无线网卡,插好 SD 卡,上电启动系统,通过外接屏幕和键盘或者 SSH 连接进入命令行。要注意的是,树莓派的 USB 供电有问题,启动系统以后如果直接插入 USB 设备会导致系统重启,避免这个问题的办法是用外接有源的 USB HUD。进入命令行界面,输入如下命令
- sudo lsusb
复制代码
可以看到命令执行完成后,会显示所有挂载的 USB 设备,最后一行一般就是你的无线网卡,我自己测试的结果显示的是这样
-
pi@raspberrypi ~ $ sudo lsusb
-
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
-
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp.
-
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
-
Bus 001 Device 004: ID 0cf3:1006 Atheros Communications, Inc. TP-Link TL-WN322G v3 / TL-WN422G v2 802.11g [Atheros AR9271]
复制代码
最后一行就是我的无线网卡设备号,显然我的无线网卡已经被系统识别出来了。如果还不能确认的话,输入如下命令
- sudo lsmod
复制代码
返回的结果如下
-
pi@raspberrypi ~ $ lsmod
-
Module Size Used by
-
snd_bcm2835 12808 0
-
snd_pcm 74834 1 snd_bcm2835
-
snd_seq 52536 0
-
snd_timer 19698 2 snd_seq,snd_pcm
-
snd_seq_device 6300 1 snd_seq
-
snd 52489 5 snd_seq_device,snd_timer,snd_seq,snd_pcm,snd_bcm2835
-
snd_page_alloc 4951 1 snd_pcm
-
arc4 1187 2
-
ath9k_htc 54918 0
-
mac80211 236178 1 ath9k_htc
-
ath9k_common 3181 1 ath9k_htc
-
ath9k_hw 376754 2 ath9k_common,ath9k_htc
-
ath 16648 3 ath9k_hw,ath9k_common,ath9k_htc
-
cfg80211 171957 3 ath,mac80211,ath9k_htc
复制代码
可以看到有 mac80211,显示无线网卡已经被正确识别.
2, 现在可以测试你周围的无线网络了。输入如下命令
- sudo iwlist wlan0 scan
复制代码
如果搜索到了无线网络,会返回无线网络的 MAC 地址,SSID 等相关信息。
3, 配置无线网络
输入如下命令
- sudo apt-get install wpasupplicant
复制代码
安装 wpasupplicant 的,熟悉安卓的朋友估计看着很眼熟吧,安卓里想要让安卓连上 AP 热点,就得破解这个文件
安装完成之后,创建一个配置文件,输入如下命令
-
$ sudo nano /etc/wpa.conf
-
network={
-
ssid=“你用的 WIFI 的 SSID”
-
proto=RSN
-
key_mgmt=WPA-PSK
-
pairwise=CCMP TKIP
-
group=CCMP TKIP
-
psk=“WIFI 的密码”
-
}
复制代码
接下来编辑你的网络配置文件,输入如下命令
- $ sudo nano /etc/network/interfaces
复制代码
以上将无线网卡的配置添加到网络配置中去了,这样启动的时候无线网卡就会按照你前面配置的 SSID 和密码连上无线网。需要更换无线网的时候只需要在 wpa.conf 中修改 SSID 和密码即可。
4, 重启你的树莓派
- sudo reboot
复制代码
记得拔掉网线,将电脑连入无线网络,这样树莓就可以无线上网了
现在你可以使用命令来查看无线网卡的状态了,输入如下命令
- ifconfig
复制代码
会返回有线网络和无线网络的 MAC 地址和 IP 地址状态
8.Q: 我不想用 VNC,想用 WINDOWS 的远程桌面连接树莓派,如何实现?
A: 办法已经有了,需要在 raspbian 下面安装一个服务 xdrp, 输入如下命令
- sudo apt-get install xrdp
复制代码
然后就可以用 win 的远程桌面连接了,你的电脑和树莓派在一个局域网的时候没有问题,如果是想外网访问,跟需要做好端口 3389 的映射,具体见我另外一个帖 子http://www.eeboard.com/bbs/thread-5526-1-2.html
首先连接
输入 pi 的用户密码,就是 ssh 连上去的用户名密码
这样就连上去了,跟用 VNC 效果一样