树莓派快速入门指南

前言



接触树莓派已经有一年多的时间了,主要用于Linux服务器。前一段时间树莓派2发售了,树莓派又小火了一把。现在我介绍一下我的经验,希望对于各位读者有多帮助吧。

准备


  • 树莓派
  • 路由器
  • 网线
  • 电源
  • SD
  • 计算机

不用路由器也可以,参考这篇文章。不过还是建议用吧,能省下不少工作。

刻录镜像


  1. 这里下载喜欢的镜像,我选择的是RASPBIAN,Debian大法好!
  2. 下载Win32DiskImager
  3. 插上SD卡并刻录

组装并启动



这块我想不用仔细讲了吧,看到树莓派两个绿灯亮起则表示启动成功。

SSH连接


如果不了解SSH是什么,点击这里

树莓派默认已经启动了ssh服务

  • 获取树莓派ip地址,如果用了路由器的话这点轻而易举,进入管理界面就能找到。比如我的是192.168.1.104

  • 绑定静态IP,方便以后管理。绑定静态地址有很多种方法,我这里选择的是最偷懒的一种,比如通过修改interface。建议分配一些比较偏的IP,以免和DHCP分配的发生冲突。

  • 默认用户名为pi,默认密码为raspberry
    ssh [email protected]
    
  • 如果前面一切正常就能看到pi@raspberrypi ~ $

快速设置


sudo raspi-config


如果你的SD卡大于4G,建议选择第一项Expand Filesystem,其他的视情况选择吧。
为了避免出现乱码的麻烦,推荐使用英文系统。

安装应用


搜索最快的源

令人鼓舞的是,国内很多高校已经开通了树莓派的镜像源,据我的不完全统计:

下面使用我们的小工具,自动查找最快的源:

sudo apt-get install apt-spy
sudo apt-get update
sudo apt-spy -d wheezy -a Asia

也可以手动添加以上的地址到/etc/apt/sources.list

安装tasksel

sudo apt-get install tasksel
sudo tasksel

可以很方便得安装常见服务与应用

使用VNC显示图形界面


这部分不太推荐,除非你是特别想看看树莓派的桌面,因为这不仅卡还没什么意义

//安装
sudo apt-get install tightvncserver

//运行
vncserver :1 

//第一次运行VNC会让你输入密码,记住它

使用Remmia之类的客户端就能直接连接树莓派了,Windows自带的远程桌面能直接连接。

使用ssh key登录


从这部分开始为进阶内容

每次登录都输入密码既麻烦又不安全,使用ssh key代替密码登录。

生成密钥

ssh-keygen -t rsa

然后会出现,强烈建议你使用默认,也就是只要Enter就好了

Enter file in which to save the key (/Users/you/.ssh/id_rsa): [Press enter]

出现类似以下信息就创建好了

Your identification has been saved in /Users/you/.ssh/id_rsa.
# Your public key has been saved in /Users/you/.ssh/id_rsa.pub.
# The key fingerprint is:
# 01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db

将key添加到ssh-agent

  • 确保ssh-agent是可用的

    $ eval "$(ssh-agent -s)"
    Agent pid 12190
    
  • 打印出pid信息则表示正常
    ssh-add ~/.ssh/id_rsa
    

将公钥添加到远程服务器

这里的远程服务器指的就是pi

  • 首先检查一下本地的密钥

    ls -al ~/.ssh
    

    可以看到先前创建的id_rsa,id_rsa.pub

    出现如下信息:
    total 24
    drwx------  2 reeco reeco 4096  3月  9 18:59 .
    drwxr-xr-x 55 reeco reeco 4096  3月  9 18:59 ..
    -rw-rw-r--  1 reeco reeco   47  3月  9 18:59 config
    -rw-------  1 reeco reeco 1679  3月  4 16:10 id_rsa
    -rw-r--r--  1 reeco reeco  399  3月  4 16:10 id_rsa.pub
    -rw-r--r--  1 reeco reeco 2876  3月  9 16:28 known_hosts
    
  • 我们要做的就是将id_rsa.pub 复制到树莓派里,推荐的做法是:
    ssh-copy-id remote_host
    
  • 如果你不甘寂寞,想挑战hard模式也可以:
    //树莓派下:
    sudo mkdir ~/.ssh
    
    //修改权限,不然无法写入
    sudo chmod 777 ~/.ssh
    
    //计算机下:
    cat ~/.ssh/id_rsa.pub | ssh [email protected] ‘cat - >> ~/.ssh/authorized_keys‘
    
    //将权限修改回来
    chmod 600 ~/.ssh/authorized_keys && chmod 700 ~/.ssh/
    

测试连接

ssh [email protected]
[email protected] ~ $

awesome!成功了!

修改ssh config再次简化ssh连接

不需要密码了还觉得每次输入一大串麻烦,有的时候记不住IP地址,还有更简单的方法吗?当然有了,往下看:

 touch ~/.ssh/config
 vim ~/.ssh/config

 //INSERT 以下内容:

   Host pi
   HostName host_ip
   User pi
   Port 22

接着

ssh pi

也能成功连接上,是不是很cool!

参考更多



树莓派Raspberry Pi上手报告
不可小觑!树莓派16个酷炫玩法
Raspberry Pi Beginers
Raspberry on github

时间: 2024-10-13 09:35:10

树莓派快速入门指南的相关文章

JWPlayer快速入门指南(中文)

将JW Player嵌入到网页中非常的简单,只需要进行如下3个步骤: 1.解压mediaplayer-viral.zip文件,将jwplayer.js和player.swf文件拷贝到工程中: 2.在页面引入jwplayer.js文件: <script type="text/javascript" src="/jwplayer/jwplayer.js"></script> 3.将下面代码粘贴在body标签内,如下所示: <div id=&

Chapter 0.SymmetricDS快速入门指南( Quick Start Guide)

本文档是SymmetricDS3.6.14文档的第一章节Quick Start Guide文档的翻译,的目的是帮助读者快速搭建一个SymmetricDS集群并普及一些基本概念术语. 本文档描述了如何在两个SymmetricDS节点之间同步两个相同schema的数据库.下面的例子构建了一个分销业务模型,有一个中央数据库(我们叫它root或者corp节点)和多个零售商店的数据库(我们叫它client或者store节点).对于本教程,我们将只有一个store(商店)节点,如下图.如果你愿意,可以再教程

AngularJS快速入门指南20:快速参考

thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table.reference>thead>tr>td, table.reference>tbody>tr>td, table.reference>tfoot>tr>td { padding: 8px; line-height: 1.42857143; vertic

AngularJS快速入门指南05:控制器

AngularJS控制器用来控制AngularJS applications的数据. AngularJS控制器就是普通的JavaScript对象. AngularJS控制器 AngularJS applications通过控制器进行控制. ng-controller指令定义了一个application的控制器. 一个控制器就是一个JavaScript对象,它可以通过标准的JavaScript对象构造函数来创建. <div ng-app="myApp" ng-controller=

[转] Clojure 快速入门指南:1/3

[From] http://huangz.iteye.com/blog/1325228 导读 本文的目标是为熟悉 Ruby.Python或者其他类似语言.并对 Lisp 或者函数式编程有一定程度了解的程序员写的 Clojure 快速入门指南. 为了让文章尽可能地精炼且简单易懂,本文有以下三个特点: 一:不对读者的知识水平作任何假设,当遇上重要的知识点时,只给出 wikipedia 等网站的链接引用而不对知识点进行解释,有需要的读者可以沿着链接查看,没需要的直接略过就行了. 二:和第一条类似,没有

AngularJS快速入门指南15:API

thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table.reference>thead>tr>td, table.reference>tbody>tr>td, table.reference>tfoot>tr>td { padding: 8px; line-height: 1.42857143; vertic

AngularJS快速入门指南14:数据验证

thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table.reference>thead>tr>td, table.reference>tbody>tr>td, table.reference>tfoot>tr>td { padding: 8px; line-height: 1.42857143; vertic

AngularJS快速入门指南17:Includes

使用AngularJS,你可以在HTML中包含其它的HTML文件. 在HTML中包含其它HTML文件? 当前的HTML文档还不支持该功能.不过W3C建议在后续的HTML版本中增加HTML imports功能,以支持在HTML中包含其它的HTML文件. <link rel="import" href="/path/navigation.html"> 在服务端包含文件 大部分的web服务器都支持服务端包含文件(Server Side Includes).通过

AngularJS快速入门指南16:Bootstrap

thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table.reference>thead>tr>td, table.reference>tbody>tr>td, table.reference>tfoot>tr>td { padding: 8px; line-height: 1.42857143; vertic