树莓派学习

一 树莓派配置

1 安装树莓派

1)在树莓派的官方网站http://www.raspberrypi.org/downloads/下载操作系统。

2)下载系统镜像之后,将Micro SD卡插入电脑,借助Win32 Disk Imager 将镜像文件写入到Micro SD卡之中。

2 树莓派(raspberry)启用root账户

  树莓派使用的linux是debian系统,所以树莓派启用root和debian是相同的。debian里root账户默认没有密码,但账户锁定。
当需要root权限时,由默认账户经由sudo执行,Raspberry pi 系统中的Raspbian默认用户是pi 密码为raspberry。

  重新开启root账号,可由pi用户登录后,在命令行下执行

sudo passwd root

  执行此命令后系统会提示输入两遍的root密码,输入你想设的密码即可,然后在执行

sudo passwd --unlock root

  这样就可以解锁root账户了。使用 su root 切换到 root账户。现在树莓派就有以下默认账户/默认密码:

pi / raspberry
root / 自定义密码

3 树莓派无线网卡配置

  1)通过配置 /etc/network/interfaces 文件实现

sudo nano /etc/network/interfaces

  修改后文件内容如下:

auto lo
iface lo inet loopback
iface eth0 inet dhcp
auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-ssid “你的wifi名称”
wpa-psk “你的wifi密码”

  具体各行配置的意思如下:

auto lo //表示使用localhost
iface eth0 inet dhcp //表示如果有网卡ech0, 则用dhcp获得IP地址 (这个网卡是本机的网卡,而不是WIFI网卡)
auto wlan0 //表示如果有wlan设备,使用wlan0设备名
allow-hotplug wlan0 //表示wlan设备可以热插拨
iface wlan0 inet dhcp //表示如果有WLAN网卡wlan0 (就是WIFI网卡), 则用dhcp获得IP地址
wpa-ssid “你的wifi名称”//表示连接SSID名
wpa-psk “你的wifi密码”//表示连接WIFI网络时,使用wpa-psk认证方式,认证密码

 上述定义后,如果有网线连接,则采取DHCP自动连接获得地址,使用命令

sudo /etc/init.d/networking restart

或使用如下命令

sudo service networking restart 

  成功后,用 ifconfig 命令可以看到 wlan0 设备,且有了IP地址。

     更新源测试,有线或者无线网络连通过,我们后面对软件更新是,需要首先进行更新列表更新,执行以下命令即可:

sudo apt-get update

    2)修改树莓派软件源

   例如大连东软信息学院的软件源镜像地址为——http://mirrors.neusoft.edu.cn/raspbian/raspbian

  在修改之前先把源列表备份,然后再修改sources.list

cd /etc/apt
cp sources.list sources.list.bak

      修改 /etc/apt/sources.list

sudo nano sources.list

    例如使用大连东软信息学院软件源镜像,修改之后的内容如下:

deb http://mirrors.neusoft.edu.cn/raspbian/raspbian wheezy main contrib non-free rpi 

   更新软件源

sudo apt-get update

  更新软件

sudo apt-get upgrade

4 进入配置菜单

  如果当前树莓派已经登录了图形桌面系统,打开终端,输入进入配置菜单。

sudo raspi-config

 

说明一下:

    expand_rootfs – 将根分区扩展到整张SD卡,因为整个Image才400多兆,但是现在的SD卡基本都是几个G的,除非SD卡有其他用途,一般建议选择这项,这样可以有足够多的空间来安装各种程序。
    overscan – 可以扩充或者缩小屏幕的设置,除非一启动就发现显示的内容能刚好填满整个电视的画面。大部分情况下是不能填满或者超过,如果这样就要enable这个,然后在系统启动之后,更改config.txt中的overscan_left、overscan_right、overscan_top和overscan_bottom的内容,如果显示内容超出屏幕的范围(显示不全),就要设置这些值为正值,如果是1080p,一般设置为48。如果显示的内容不能填满屏幕,则设置这些值为负值,如果是1080p,一般设置为-48。具体可以更加显示的结果,以16为步长进行调整。
    configure_keyboard  - 这个很重要,前面的屏幕选默认值:Generic 105-key (Intl) PC,但在Keyboard layout:时,显示出来的都是English(UK)的,要选择Other,然后在里面选择English(US),否则会出现键盘的一些符号不对或者对调,比如引号”和@符号对调,#号变成英镑符号等等。之后的两个屏幕都选择默认值就可以了,到了:Use Control+Alt+Backspace to terminate the X server? 时,选择Yes,表示用这个可以终止X Server,当整个X-Window死掉的时候可以用。
    change_pass – 默认的用户名是pi,密码是raspberry,一般登录时不需要输入,但是用ssh远程连接时要用到这个用户名和密码,这里可以更改密码。
    change_locale – 更改语言设置。在Locales to be generated: 中,选择en_US.UTF-8和zh_CN.UTF-8。在Default locale for the system environment:中,选择en_US.UTF-8(等启动完机器,装完中文字体,再改回zh_CN.UTF-8,否则第一次启动会出现方块)。
    change_timezone – 更改时区,这个很重要,因为树莓派没有内部时钟,是通过网络获取的时间,如果设错时区,那么时间就不正确了,选择Asia – Shanghai,没错是Shanghai,木有Beijing,这是Unix的传统。缩写是CST,不知道是China Shanghai Time还是China Standard Time。
    memory_split – 按照网上的说法,这个功能有Bug,会导致/boot/start.elf损坏使系统无法启动,所以不要使用这个功能。可以通过拷贝/boot/下的arm128_start.elf、arm192_start.elf、arm224_start.elf覆盖start.elf来实现显存和内存的划分。为了能播放高清1080p的视频,至少要分配64M显存给GPU。所以arm224就不能播放1080p高清视频。
    ssh – 是否激活sshd服务,应该选择激活,这是当界面死掉后唯一进入机器的通道(如果Kernel没死的话),可以找另外一部机器,用putty或者其他ssh的工具连接到这部机器上,用pi这个用户登录,至少可以实现安全重启。
    boot_behaviour – 设置启动时启动图形界面,如果需要开机就进入图形界面的话就选yes
    update – 这就是更新软件啦,听说清华大学有个镜像源,如果感觉更新速度不给力的话可以试试

5 安装中文支持及输入法

   更新数据源

sudo apt-get update 

  安装中文字库

sudo apt-get install ttf-wqy-microhei

  更改系统中的菜单界面

 sudo dpkg-reconfigure locales

  用空格键勾选前面带有 “zhCN.UTF-8” 的选项,这些表示是中文字库。然后重启系统。

reboot

  安装智能通用输入法   sudo apt-get install scim (如遇用户选择,选择y)
  安装智能拼音中文表格  sudo apt-get install scim-table-zh (如遇用户选择,选择y)
  安装智能拼音输入法   sudo apt-get install scim-pinyin (如遇用户选择,选择y)
  重启
  切换方法Ctil+空格面.

6 旋转屏幕,支持HDMI热插拔

   修改/boot/config.txt 文件

sudo nano  /boot/config.txt

  要旋转显示器,在这文件内加上以下一行代码:

display_rotate=1

  要让显示器连接更加可靠,支持 HDMI 热插拔,在文件内加上以下一行代码:

hdmi_force_hotplug=1

  然后重新启动系统。

reboot

7 修改分辨率

修改 /boot/config.txt ,找到 hdmi_mode=16行。查找以下列表中你要的分辨率的mode值,修改“hdmi_mode=16”为你要的mode值:
比如:640x480 60Hz就是修改为“hdmi_mode=4”

These values are valid if hdmi_group=2 (DMT)
hdmi_mode=1 640x350 85Hz
hdmi_mode=2 640x400 85Hz
hdmi_mode=3 720x400 85Hz
hdmi_mode=4 640x480 60Hz
hdmi_mode=5 640x480 72Hz
hdmi_mode=6 640x480 75Hz
hdmi_mode=7 640x480 85Hz
hdmi_mode=8 800x600 56Hz
hdmi_mode=9 800x600 60Hz
hdmi_mode=10 800x600 72Hz
hdmi_mode=11 800x600 75Hz
hdmi_mode=12 800x600 85Hz
hdmi_mode=13 800x600 120Hz
hdmi_mode=14 848x480 60Hz
hdmi_mode=15 1024x768 43Hz DO NOT USE
hdmi_mode=16 1024x768 60Hz
hdmi_mode=17 1024x768 70Hz
hdmi_mode=18 1024x768 75Hz
hdmi_mode=19 1024x768 85Hz
hdmi_mode=20 1024x768 120Hz
hdmi_mode=21 1152x864 75Hz
hdmi_mode=22 1280x768 reduced blanking
hdmi_mode=23 1280x768 60Hz
hdmi_mode=24 1280x768 75Hz
hdmi_mode=25 1280x768 85Hz
hdmi_mode=26 1280x768 120Hz reduced blanking
hdmi_mode=27 1280x800 reduced blanking
hdmi_mode=28 1280x800 60Hz
hdmi_mode=29 1280x800 75Hz
hdmi_mode=30 1280x800 85Hz
hdmi_mode=31 1280x800 120Hz reduced blanking
hdmi_mode=32 1280x960 60Hz
hdmi_mode=33 1280x960 85Hz
hdmi_mode=34 1280x960 120Hz reduced blanking
hdmi_mode=35 1280x1024 60Hz
hdmi_mode=36 1280x1024 75Hz
hdmi_mode=37 1280x1024 85Hz
hdmi_mode=38 1280x1024 120Hz reduced blanking
hdmi_mode=39 1360x768 60Hz
hdmi_mode=40 1360x768 120Hz reduced blanking
hdmi_mode=41 1400x1050 reduced blanking
hdmi_mode=42 1400x1050 60Hz
hdmi_mode=43 1400x1050 75Hz
hdmi_mode=44 1400x1050 85Hz
hdmi_mode=45 1400x1050 120Hz reduced blanking
hdmi_mode=46 1440x900 reduced blanking
hdmi_mode=47 1440x900 60Hz
hdmi_mode=48 1440x900 75Hz
hdmi_mode=49 1440x900 85Hz
hdmi_mode=50 1440x900 120Hz reduced blanking
hdmi_mode=51 1600x1200 60Hz
hdmi_mode=52 1600x1200 65Hz
hdmi_mode=53 1600x1200 70Hz
hdmi_mode=54 1600x1200 75Hz
hdmi_mode=55 1600x1200 85Hz
hdmi_mode=56 1600x1200 120Hz reduced blanking
hdmi_mode=57 1680x1050 reduced blanking
hdmi_mode=58 1680x1050 60Hz
hdmi_mode=59 1680x1050 75Hz
hdmi_mode=60 1680x1050 85Hz
hdmi_mode=61 1680x1050 120Hz reduced blanking
hdmi_mode=62 1792x1344 60Hz
hdmi_mode=63 1792x1344 75Hz
hdmi_mode=64 1792x1344 120Hz reduced blanking
hdmi_mode=65 1856x1392 60Hz
hdmi_mode=66 1856x1392 75Hz
hdmi_mode=67 1856x1392 120Hz reduced blanking
hdmi_mode=68 1920x1200 reduced blanking
hdmi_mode=69 1920x1200 60Hz
hdmi_mode=70 1920x1200 75Hz
hdmi_mode=71 1920x1200 85Hz
hdmi_mode=72 1920x1200 120Hz reduced blanking
hdmi_mode=73 1920x1440 60Hz
hdmi_mode=74 1920x1440 75Hz
hdmi_mode=75 1920x1440 120Hz reduced blanking
hdmi_mode=76 2560x1600 reduced blanking
hdmi_mode=77 2560x1600 60Hz
hdmi_mode=78 2560x1600 75Hz
hdmi_mode=79 2560x1600 85Hz
hdmi_mode=80 2560x1600 120Hz reduced blanking
hdmi_mode=81 1366x768 60Hz
hdmi_mode=82 1080p 60Hz
hdmi_mode=83 1600x900 reduced blanking
hdmi_mode=84 2048x1152 reduced blanking
hdmi_mode=85 720p 60Hz
hdmi_mode=86 1366x768 reduced blanking

8 更新 vim

  树莓派自带的vim不是很好用,比如默认不支持小键盘及方向键等,可以使用以下命令更新一下

sudo apt-get install vim

9 使用远程桌面

  通过windows自带的远程桌面软件,可以远程访问树莓派桌面应用,使用windows命令 mstsc

sudo apt-get install xrdp

10 访问到局域网里的树莓派

  为了能用raspberrypi.local来访问到局域网里的树莓派

sudo apt-get install avahi-daemon 

11 安装 lrzsz

  通常linux服务器是通过ssh客户端来进行远程登录和管理的。然而如何方便的实现客户端与linux服务器端的文件交互呢?这就需要用到rz(上传)、sz(下载)工具。

   sz/rz除了需要在Linux上面安装程序,还需要有支持sz/rz命令的终端软件,SecureCRT和Xmanager都支持sz/rz命令。

sudo apt-get install lrzsz

  解决SecureCRT无法用非root账号登录ssh,使用rz传输文件时会出现以下问题:

The server has disconnected with an error.  Server message reads:
A protocol error occurred. Change of username or service not allowed: (root,ssh-connection) -> (zoujiaqing,ssh-connection)

 解决方法:

  这是因为SecureCRT设置中的用户名和你登录时候输入的用户名不相符,在这里改一下就可以:

选项 -> 会话选项 -> 连接 -> SSH2 -> 用户名

  修改后登录正常,这样可以禁用服务器的ROOT登录了(为了安全)

12 更改键盘布局

  树莓派(raspberry pi)用了几次后,发现键盘老是按错,一些字符打不出来或打错 ,发现是键盘布局不对,树莓派(raspberry pi)是英国产品,默认键盘布局是英国(GB),我们用的键盘布局一般是美国(US)。更改键盘布局,命令如下:

sudo dpkg-reconfigure keyboard-configuration 

  进入后,选通用的101键PC键盘

  按tab键,到OK,按Enter确定,在键盘layout选择中,选Other

按tab键,到OK,按Enter确定,然后在选项中,选English(US)

按tab键,到OK,按Enter确定,再选English(US, alternative international)

 
按tab键,到OK,按Enter确定,然后一路按OK,退出后,重启系统

reboot

13 安装浏览器

  使用以下命令安装浏览器

sudo apt-get install x11-xserver-utils unclutter

 开机启动某个特定程序

cd~/.config 
mkdir autostart
cd autostar

  生成一个*.desktop文件(比如:my.desktop),命令如下:

vim my.desktop

  输入以下文件内容:

[Desktop Entry]
Type=Application
Exec=chromium --user-data-dir=~/chromium --kiosk --incognito http://127.0.0.1/index.html

14 树莓派 Wifi 掉线问题

   在使用过程中发现过一阵 SSH 和 FTP 就链接不上了,这怎么行?Wifi 断了这个镜子不就不能工作了。解决这个问题很简单,创建并编辑文件 /etc/modprobe.d/8192cu.conf 并且粘贴下列内容:

#Disable power saving
options 8192cu rtw_power_mgnt=0 rtw_enusbss=1 rtw_ips_mode=1

然后使用 sudo reboot 进行重启就可以了。

15 开机启动某个程序

 linux启动时,用户登录后,会执行/etc/rc.local脚本文件,一般我们把要自动执行的命令放在该文件中,所以修改该脚本在文件尾部(在exit0前)加上以下代码

cd /home/pi/xinping/apache-tomcat-8.0.22/bin
./startup.sh

比如:以root身份登录,就添加以下一句:

sudo –s startx

 使用 commond(Alt) + d 切换程序

16 安装ftp服务器

在终端输入以下命令:

sudo apt-get install vsftpd

然后再编辑一下配置文件,这样就可以设置访问限制了。

sudo vi /etc/vsftpd.conf
推荐以下配置
# 不允许匿名访问 
anonymous_enable=NO 

# 设定可以进行写操作
write_enable=YES 

# 设定本地用户可以访问
local_enable=YES 
ascii_upload_enable=YES 
ascii_download_enable=YES

重启服务

sudo service vsftpd restart

参考资料:

http://www.cnblogs.com/ma6174/archive/2013/01/25/2875617.html

http://www.cnblogs.com/imfanqi/p/4370025.html

http://www.cnblogs.com/Elvin/p/3916437.html

http://blog.csdn.net/xdw1985829/article/details/38818193

http://www.jianshu.com/p/f9397672d5fd

原文地址:https://www.cnblogs.com/wangshuo1/p/5558415.html