备份树莓派系统 更换成大容量卡

树莓派是一个学习的好工具,也是一个非常稳定的服务器,如果安装了一些了长期使用的服务,则系统的备份很重要,重新部署会非常痛苦。同时,很可能我们刚开始的时候安装的SD卡比较小,比如8G或16G,很快就没有空间了,更换成更大的卡十分必要。

网络上有各种关于系统备份和扩容的文章,可以提供很好的指导,从仅完成备份和扩容的角度看,其实可以比较简单地完成上述目标,不用很复杂的步骤和多个软件,而且系统可以备份成文件方便保存。

只需要两个步骤:

第一步 备份系统为img文件

1.用SSH工具进入树莓派后台。无论从什么地方,只要能连入系统就可以,没有打开ssh功能的按网络上的教程开启。

2.以sudo fdisk -l 命令查看挂载的磁盘信息, 确认需要复制的卷

在命令反馈比较多的信息时,大家可以对照磁盘的容量来辨认需要复制的SD卡的路径,如上图59.5 GiB, 63864569856 bytes,就表示与系统正在使用的卡信息一致,前面的/dev/mmcblk0 就是以后复制命令中要用到的绝对路径。

3.用dd命令将整个系统盘复制到指定位置,并保存为img文件

dd if=/dev/mmcblk0 of=/mnt/win/raspberrypi.img bs=1MB

以上if后面是树莓派系统文件路径,of后面是需要保存的文件的位置和名称,一般保存在插在USB口的设备中比较方便,U盘或移动硬盘都可以,具体路径可以在系统后台cd到它所在的目录,然后记下来。

第二步 将img文件写入新的SD卡中

1.下载balenaEtcher软件并打开运行,将第一步保存的img文件直接刷写进新卡。

这个软件是绿色是,不需要安装,最重要的是它可以直接刻写数据,无需事先对新盘进行格式化和确定文件系统,它是真正原版复制,在写盘的时候原文件是什么系统,写好的盘就是什么系统,所以不用管拿来的新盘是什么格式或有没有数据,直接刻就行了。

2. 新卡插入树莓派并开机运行,并设置将系统应用到整个SD卡

ssh进入系统后台,运行sudo raspi-config命令

选第7项,然后确认,退出面板,按系统要求reboot重启。

这样原有的系统完全一样地在新卡上运行了,并利用了新卡的整个容量,不再需要任何其它的配置。

说明:

1. 复制系统的命令中的路径,参数要注意,确保准确

2. 如果原系统容量不大,复制速度还是比较快的,大概超过10MB/s,但刻写有可能相对比较慢,刻写过程比较可靠。

3. 复制出来的文件其实是整个SD卡,有人通过调整大幅减少保存镜像文件的大小,我没有试过,不知道是否可行,最重要的应该是保证系统完全一样,避免以后不可预知的错误。

Transmission添加账户密码

群晖Docker安装的transmission默认状态下没有添加帐户密码,也不允许远程登录,因为局域网使用不存在安全问题,如果想远程管理下载任务,就需要增加远程登录帐户密码。

1、打开Docker套件,停止transmission容器。

2、找到安装transmission安装时映射的 /config目录。

这里可以在容器的详情中查看映射巻的具体位置和目录名称

3、修改其中的settings.json文件。

如果安装了群晖的文本编辑器可以直接右键打开,如果没有装则下载下来,改好后再传上去并覆盖原文件,为避免出错可以事先备份一下该文件。

修改以下几项就可以了:

3.1 “rpc-authentication-required”: true,       默认值是false,true开启身份验证;

3.2 “rpc-password”: “123456”,  

默认值是一长窜的字母数字组合体,改成自己的密码(如设置密码123456, “rpc-password”: “123456”)。

3.3 “rpc-username”: “admin”,     默认值是“”空的,改成自己的用户名

3.4 “rpc-whitelist”: “*.*.*.*”,  改成”*.*.*.*”,表示所用IP都可以访问

3.5 “rpc-whitelist-enabled”: true, 如果设置成false就不能远程登录了

4、重启transmission

Docker安装的Transmission配置修改非常方便,因为配置文件一般被映射出来了,如果不是docker安装需要SSH登录系统后台,仍然是找到settings.json文件并修改,修改内容一样,系统不同可能要求有差异,网络上有大量教程可供参考。