树莓派装机记录

2020-12-25   992 次阅读


准备

拿到一个树莓派,首先要先给SD卡上烧录系统,我自己比较喜欢RaspOS,所以就直接到官网下载一个最新的镜像,通常下体积最小的那个,比方说是2020-12-02-raspios-buster-armhf-lite.zip这个文件,只有438兆,下起来很快。下载完毕,解压缩得到映像文件(以img结尾)

下载完直接写入到SD卡中:

dd if=2020-12-02-raspios-buster-armhf-lite.img of=/dev/sdc bs=1M

启动

将SD卡插入树莓派,连接上显示器,键盘和电源,然后上电启动系统。启动过程应该没什么问题,否则检查电源,SD卡等。启动完毕显示终端登录,可以用pi/raspberry登录。

登录后首先要连接WIFI,配置SSH服务器,更新系统软件。这些都可以通过rasp-config来实现。

安装vim

sudo apt install vim

安装Frp

tar xvzf frp_0.34.2_linux_arm.tar.gz
cd frp_0.34.2_linux_arm
vim frpc.ini

修改frpc.ini的内容为:

[common]
server_addr = xx.xx.xx
server_port = 7000
admin_port = 7400
admin_addr = 127.0.0.1
login_fail_exit = false

[ssh-pioff]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 8122

然后测试一下是否成功:

./frpc -c ./frpc.ini

然后设置成系统服务:

pi@raspberrypi:~/app/frp $ ls
frpc  frpc_full.ini  frpc.ini  frps  frps_full.ini  frps.ini  LICENSE  systemd
pi@raspberrypi:~/app/frp $ cd systemd/
pi@raspberrypi:~/app/frp/systemd $ ls
frpc.service  frpc@.service  frps.service  frps@.service
pi@raspberrypi:~/app/frp/systemd $ vim frpc.service 
pi@raspberrypi:~/app/frp/systemd $ sudo cp frpc.service /lib/systemd/system/
pi@raspberrypi:~/app/frp/systemd $ sudo systemctl enable frpc.service 
Created symlink /etc/systemd/system/multi-user.target.wants/frpc.service → /lib/systemd/system/frpc.service.

只需提前将frpc.service里的内容编辑好即可。

安装dnsmasq

apt安装无需配置,只要修改/etc/hosts的内容,重启dnsmasq服务即可。

安装autofs

可直接用Apt安装。安装完毕后配置/etc/auto.master,取消注释/misc那一行。改为:/misc /etc/auto.misc --timeout 300,后面这个timeout是选项,这里是定义超时5分钟,即5分钟没有操作就卸载该设备。

然后就编辑auto.misc文件,内容如下:

1t              -rw,fstype=ext3,users,nosuid,nodev      :/dev/disk/by-uuid/100ca1b5-55b5-48c2-b495-60158314effe
4t              -rw,fstype=ext3,users,nosuid,nodev      :/dev/disk/by-uuid/3faad3eb-6022-4692-a769-57b5b0550b08

这里采用UUID的方式,因为用原先的/dev/sda1经常因为udev的缘故乱掉,所以。

配置完毕后重启autofs,应该就好了。这样当程序使用/misc/1t的时候,对应的磁盘就自动挂载。这个用于定时备份的情况就非常好用。

配置免密登录

将要远程登录的计算机用户公钥内容拷贝到树莓派.ssh/authorized_keys文件中,修改一下sshd的配置,然后重启sshd服务即可。

pi@raspberrypi:~ $ mkdir .ssh
pi@raspberrypi:~ $ cd .ssh
pi@raspberrypi:~/.ssh $ touch authorized_keys
pi@raspberrypi:~/.ssh $ chmod 600 authorized_keys
pi@raspberrypi:~/.ssh $ vim authorized_keys                                            
pi@raspberrypi:~/.ssh $ sudo vi /etc/ssh/sshd_config
pi@raspberrypi:~/.ssh $ sudo systemctl restart sshd.service

sshd的配置中只需要将PubkeyAuthentication yesPasswordAuthentication no加上即可。也可以将原先的注释取消掉。注意在取消口令登录前先试一下密钥登录是否可行,否则两个都不能登录就只能再给树莓派接显示器了。

配置Samba

安装Samba

sudo apt-get update
sudo apt-get install samba samba-common-bin

配置

@raspberrypi:~ $ sudo vim /etc/samba/smb.conf
pi@raspberrypi:~ $ sudo systemctl restart smbd.service 
pi@raspberrypi:~ $ sudo smbpasswd -a pi
New SMB password:
Retype new SMB password:
Added user pi.

配置比较简单,就是在最后附上这部分内容:

[share]
  path = /misc
  valid users = pi
  browseable = yes
  public = yes
  writeable = yes
  guest ok = no
  read only = no

安装Docker

树莓派安装Docker比较靠谱的方法还是用Docker提供的安装脚本,比较简单,安装前最好还是把系统更新到最新(节约安装时间)。

curl -sSL https://get.docker.com > docker_install.sh
sudo sh ./docker_install.sh -mirror Aliyun

不出意外应该可以安装成功,如果失败大概率是网络问题,可以多试几次。

安装好后将用户pi设置成可以运行Docker命令:

sudo usermod -aG docker pi

重新登陆pi,然后运行docker run hello-world测试一下。

但是,树莓派系统是在一个SD卡上的,往往很小,对于动辄上G的镜像来说,肯定不够,最好是外接一个硬盘,比方说我就外接了一个移动硬盘(参考前面autofs部分),然后把本地存储镜像的目录改为硬盘上的某个目录。方法是修改/etc/docker/daemon.json这个文件。

{
  "data-root": "/home/pi/nas/1t/docker"
}

然后重启docker服务

sudo systemctl restart docker.service

可以运行docker info看一下,里面的输出很多,有一行为Docker Root Dir:,应该就是所设置的目录。

Q.E.D.

知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议

No PAINS No GAINS.