上一篇我们介绍了如何组装并将树莓派通电点亮的过程(点此回顾)。根据预告,我们这一期将要介绍如何初步配置树莓派到一个可用的状态,并且构建一个简单的共享下载服务器。
由于我没有什么Linux相关的基础,所以本文不会涉及到过于专业的内容,只是不求甚解地参考各种资料对功能进行实现。如果想要比较系统地学习树莓派以及Linux系统,推荐各位阅读Vamei老师的著作《树莓派开始,玩转Linux》。
好了,言归正传,让我们开始本期的内容。
更改初始密码
虽然树莓派提供了一个堪用的图形界面,但是相信没有谁会为这个小盒子购置一整套键盘鼠标显示器的外设。即使是购买树莓派官方的7寸触摸屏,树莓派1.4GHz的处理器外加仅仅1G的DDR2内存也绝不是一个将图形界面作为主力的配置。所以忘了图形界面吧,我们将主要应用命令行来解决问题。由于中文字符在很多终端里是显示不出来的,所以我不建议各位将树莓派系统配置成中文。配置树莓派所需要的英文非常简单,本文也将使用英文环境进行说明。
现在,我们就打开电脑上的终端,通过ssh连上树莓派开始配置吧!(我的树莓派局域网地址10.0.0.15,电脑系统为MacOS)。输入如下命令,连接树莓派:
ssh 10.0.0.15 -l pi
进入树莓派的初始密码是raspberry,由于每个派在初始状态都一样,这串字符敲起来又非常麻烦,我们需要改个密码,输入如下命令:
passwd
会提示更改用户pi的密码。首先输入现在的密码raspberry,然后输入两次新密码就可以了。注意Linux系统输入密码的时候屏幕上是什么都不会显示的,连星号都没有,但是输入是实实在在的,也可以退格,这点可能有点不大一样。
更改默认密码
更改成功之后,会显示
passwd: password updated successfully
下次你就可以用自己顺手的密码登录了。
设置开启SSH
我们配置树莓派的主要接口,就是通过SSH协议连接进入终端命令行。第一次我们点亮机器,靠的是在/boot分区里写入一个叫ssh的文件,系统启动后读取到这个文件就会自动加载ssh功能。但是再次启动时SSH可能就不会跟随系统启动了,树莓派就变成了一个无法访问的盒子。所以我们要设定系统默认开启SSH。
好消息是这并不需要什么复杂的命令,因为树莓派自带了一个非常强大的配置界面,输入以下命令进入:
sudo raspi-config
然后你会看到这样的界面
raspi-config界面
用上下箭头选择5 Interfacing Options,回车进入下级菜单
Interfacing Options的下级菜单
选择P2 SSH,再次回车,选择
是否开启SSH功能
然后系统会在命令行模式和raspi-config的图形界面中切换一次,并告诉你,SSH已经开启。
以后都可以愉快的使用SSH连接树莓派了
区域和时间设置
之前说到过,树莓派是一款英国产品,使用的是英国英语和英国键盘布置,在这里我们要把设置改为比较常用的美国英语,以免今后的输入等功能出现错误(虽然目前除了键盘布局不对以外,并未遇到任何相关错误)。另外我们还需要把时间改成UTC+8时区,否则树莓派的系统时间会是英国时间,非常别扭。
还是在raspi-config的界面,选择4 Localisation Options
区域设置选项
然后选择T1 Change Locale来更改区域
更改区域
按下键往下翻,找到en_GB.UTF-8 UTF-8的选项,用空格键去掉
去掉大英帝国
然后向下找到en_US.UTF-8 UTF-8,用空格选中
换上我大灯塔美利坚
用Tab键选择
默认用美式英语
回车,等待屏幕闪回之后就配置好了。
同理,在Localisation Options中选择T2 Change Timezone
时间必须本地化
在弹出的界面中依次选择Asia、Shanghai,然后回车
中国当然在亚洲
没有北京,只有上海
时间就正常啦!用Tab键选择 date 就可以看到系统时间,应该和北京时间保持一致了。如果刚才是否重启时选择了否,想要手动重启的话,用下面这个命令 sudo reboot 树莓派就会自动重启了。 文件系统扩展及禁止图形界面 一般来说,我们安装树莓派的microSD卡都比较大,但是烧录系统的时候并没有用到那么多空间,我们需要设置一下来把microSD卡上没有用到的空间都分给树莓派,否则树莓派默认是不会使用那些烧录系统时没有被占用的空间的。 还是在raspi-config界面里选7 Advanced Options
高级选项
然后选择A1 Expand Filesystems
扩展一下可用空间
回车,完成!然后可能需要重启一下。当然这一步你也可以放在上面设置地区和时间之后同时完成,这样重启一次就可以了。
禁用图形系统留给各位自己去操作,步骤是依次选择Boot Options,Desktop/CLI,Console Autologin,这样能禁止系统启动时自动加载图形界面,只停留在命令行(这实际上要接上显示器才能看出区别),优化资源,让树莓派跑得更快。
更换树莓派软件源
Linux系统的软件包安装、更新等,都是从源服务器进行下载的。树莓派系统自带的源服务器在国外,安装和更新软件的速度非常慢,基本只有几十KB/s,所以我们要配置树莓派应用国内的镜像服务器,这里我们选择清华大学的源,速度有保障!
输入以下命令进入软件源服务器配置文件
sudo nano /etc/apt/sources.list
将所有不是以“#”开头的内容开头加上井号注释掉,然后在文件最后加上以下两行
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main contrib non-free rpi
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main contrib non-free rpi
清华大学镜像,速度飞快
按Ctrl+X退出编辑器,出现提示,按“y”选择保存,按回车退出。然后输入一下命令更改另外一个源列表
sudo nano /etc/apt/sources.list.d/raspi.list
同样用行首增加井号的方式注释掉原内容,并在文件最后增加以下内容
deb http://mirror.tuna.tsinghua.edu.cn/raspberrypi/ stretch main ui
deb-src http://mirror.tuna.tsinghua.edu.cn/raspberrypi/ stretch main ui
还是清华镜像
同样的方式保存并退出,就将源更新好了。
更新系统
更换好软件源后,需要更新系统。使用以下的命令首先更新软件包列表
sudo apt-get update
等执行完后输入以下命令更新系统
sudo apt-get upgrade
更新系统的时间比较长,请不要误以为系统死机,也不要中断进程,更不要给系统断电。重新回到输入界面的时候系统就更新好了。出于习惯,更新后
sudo reboot
安装局域网文件分享功能
局域网文件分享功能是通过一个叫做Samba协议来进行的。这个协议实际上就是我们日常在Windows上所使用的网上邻居共享所应用的协议的一部分。
在树莓派上配置Samba非常容易,安装三个软件就好。其中两个用来实现Samba的功能,后一个用来让树莓派能主动显示在网上邻居里面。依次输入以下命令安装:
sudo apt-get install samba samba-common-bin
sudo apt-get install avahi-daemon
安装时可能需要输入密码,那就输入,注意一样是没有显示的。如果出现问你y/n的界面,输入y按回车就可以继续进行了。安装完成之后,你就可以在网上邻居里发现树莓派主机了。但是需要分享的目录还没有配置,我们需要修改一个配置文件来进行。输入以下命令:
sudo nano /etc/samba/smb.conf
在文件的结尾增加以下文字:
[树莓派]
comment = Share
path = /home/pi
read only = no
create mask = 0777
directory mask = 0777
guest ok = yes
browseable = yes
其中:
[树莓派]这个字段可以更改,方括号里的文字就是你在共享里看到的共享文件夹的名字;
comment = 后面的内容没有实际意思,用来提示下次看到这段配置的你这个共享条目是干啥用的;
path是你要分享的目录,你可以设置成用户pi的主目录/home/pi,也可以设置成其它目录;
read only设定是否只读;
creat mask和directory mask两行不要改动,是新建文件和文件夹的权限;
guest ok设置的是是否允许访客访问;
browseable设置的是文件夹是否可以在网上邻居的共享里被看到(如果设置成no,可以通过输入路径访问,并不会被取消共享)。
之后保存并退出,配置就完成了。但是如果我们把guest ok设成no,访问的时候会被要求用户名和密码。我们输入pi和密码发现进不去,这是怎么回事儿呢?
实际上samba协议用的是自己的一套用户密码数据库,我们把pi的信息输入进去就好了。输入
sudo smbpasswd -a pi
并设置密码(这里的密码只用于访问共享内容,和系统的没关系),然后激活pi用户
sudo smbpasswd -e pi
重启一下samba服务,就算配置好了
sudo service smbd restart
现在你就可以在网上邻居里访问你的文件了。
此图只是用我的机器进行示例,和上面配置出来的不同
补充一句,由于最新的MacOS已经支持通过samba协议来建立并访问时间机器,所以我们并不需要额外安装MacOS的共享协议netatalk。不过由于树莓派的网络功能十分孱弱(无线大约150Mbps,有线最高300Mbps),不建议用做Mac系统的时光机控制器。
建立BT下载功能
目前主流的下载方式主要有BT、磁力链、迅雷等等。在树莓派上,一般实现上述下载方式的方案有两个,一是Transmission,二是Aria2。前者是一个老牌的下载软件,后者能够更好地兼容迅雷离线下载。
但是由于迅雷玩儿起了自家硬件,开始在事实上封闭离线下载的功能,而Aria2不仅需要配置软件本身,还需要用到Apache这个网页服务器来实现控制界面,比较复杂,所以我们用Transmission来实现这个功能。
安装Transmission也非常简单,如下命令就好
sudo apt-get install transmission-daemon
注意不要少写了-daemon,安装成在图形界面下用的Transmission软件了。
安装之后,让我们建立两个目录,分别用来存放transmission的未完成文件和已完成文件。由于之前我们扩展了文件系统,就放在/home/pi/Downloads文件夹下面吧:
sudo mkdir /home/pi/Downloads/complete
sudo mkdir /home/pi/Downloads/incomplete
然后我们设置文件夹和用户权限,以便pi用户可以控制transmission,且transmission能够将文件下载到这两个文件夹中。注意文件名大小写敏感!
sudo usermod -a -G debian-transmission pi
sudo chgrp debian-transmission /home/pi/Downloads/complete
sudo chgrp debian-transmission /home/pi/Downloads/incomplete
sudo chmod 0777 /home/pi/Downloads/complete
sudo chmod 0777 /home/pi/Downloads/incomplete
如果没有报错,就完成了,下面我们对transmission进行配置。还是通过编辑配置文件来完成
sudo nano /etc/transmission-daemon/settings.json
主要需要修改几个参数:
download-dir,修改成/home/pi/Downloads/complete
incomplete-dir,修改成/home/pi/Downloads/incomplete
incomplete-dir-enabled,修改成true,以把未下载完成的文件放在incomplete里,免得难看
rpc-authentication-required,修改成true,进入控制界面时需要用户名密码
rpc-password,改成进入控制界面时的密码,和系统密码无关(保存过一次之后再打开会变成加密的形式,不要在意)
rpc-username,改成进入控制界面时的用户名,和系统用户名无关
rpc-whitelist-enabled,改成false,否则你进不去控制界面
这依然是个示例,具体配置各位自己改
然后保存退出,依次执行以下两条命令(重新载入配置和重启服务)
sudo service transmission-daemon reload
sudo service transmission-daemon restart
服务就建立好了。那么我们从哪里访问呢?打开你的浏览器,输入你的ip地址:9091,比如我的是10.0.0.15:9091
输入刚才在settings.json里设置的用户名密码进入,就可以控制下载了。
为了方便演示,找了个比较火的种子下载,现已删除
下载可以上传种子文件,也可以贴磁力链接。如果你发现下载没速度,可能是因为BT下载需要的端口被封闭了。点左下角扳手,在对话框里选择network选项卡,如果看到端口下面的状态是:Port is Closed或者Unknown,勾选Randomize port on launch和Use port forwarding from my router
勾选随机端口和端口转发
然后在命令行重启服务
sudo service transmission-daemon restart
再次访问下载就可以了。这个功能还需要你的路由器开启uPnP功能,一般都是默认开启的,如果不确定,请参考路由器说明书。
下载好的内容可以通过上面创建的samba共享访问并播放。树莓派的功耗相当低,晚上再也不用彻夜开着电脑下东西了。开着树莓派晚上下电影,白天通过网络播放,心里美滋滋~
未完待续
到这里我们初步建立了基于树莓派的下载和网络分享服务,各位可以尝试自己改动配置文件来个性化你的树莓派。但是microSD卡毕竟空间有限,如何把树莓派打造成一个微型NAS,用外接硬盘存储数据,向各种电视盒子提供视频源,甚至将树莓派打造成私有云从公网访问,我们将在之后的内容继续介绍,敬请期待!
树莓派,其乐无穷
本文主要参考内容来源:
联系客服