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

树莓派是一个学习的好工具,也是一个非常稳定的服务器,如果安装了一些了长期使用的服务,则系统的备份很重要,重新部署会非常痛苦。同时,很可能我们刚开始的时候安装的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文件并修改,修改内容一样,系统不同可能要求有差异,网络上有大量教程可供参考。

Nextcloud的使用

  云的概念在大型互联网公司的基本服务中已经是普遍存在,进入了移动互联的时代,用手机比较方便。但个人生活学习方面,主要还是PC加移动硬盘的形式,自己的资料与PC、手机的无痕连通,并随时随地还处于连接状态的模式还没有形成,尝试利用现有条件建设个人云,有不少挑战也有不少乐趣。

  首先,随时随地的要求实现,就要在PC的基础上进一步,需要一台长期待机,高可靠性设备来提供服务,要求低功耗、大存储、多服务。其次,要选择平台式的软件系统,为多功能适应和扩展提供基础。

  基于以上考虑,我选择了nas作为基础服务平台,用nextcloud作为内容管理平台。网络上关于Nextcloud安装配置有不少文章,但使用内容较少,结合自己的摸索,做几点经验分享。

1、搭建文字创作服务

  不管什么环境,文字写作总是最基础的需要,基本要求实现msoffice三件套的功能(Word、Excel、PPT),可以在Nextcloud中集成多种office软件,具体可以看它的应用插件商店,网上分享比较多,我集成了onlyoffice,效果比较好。

2、邮件

  其内部集成的邮件组件选择启用,内带的邮件好处是可以从nextcloud自己的文件夹中选择附件,有些插件安装的邮件只能从PC上传附件。

3、音乐

  安装owncloud / music插件,再挂载自己的音乐文件目录,可以实现在线听自己的音乐。

4、笔记

  安装note插件,可以记笔记,这个插件还有手机app配套,感觉功能比较单一。

5、日历和待办事项

  启用内置组件就可以,但有一个问题,系统设置中的时间区域不要选中国,否则写日历时会出现“始于Invalid date的Invalid date”错误,什么时区合适大家可以试试,选欧洲是没有问题的。

6、流程图和思维导图

  安装Draw.io和Mind Map插件,这样在写文章时直接就可以在nextcloud中完成插图。

7、白板和地图

  安装Whiteboard和Mps插件,可以在web页面随手画一些东西,很方便地查看地图。

8、利用好外部存储设置

  Nextcloud可以挂载本地和远程的共享文件夹,这样就可以像使用本地硬盘一样使用各处设备,特别可以挂载各种云盘。

  到这里你基本可以做到仅打开浏览器就可以完成绝大多数的工作,特别是配合nas使用,文件的存取不再是问题,利用Nextcloud解决基本的创作和信息互联后,真正可以实现按自己需求定制的个人云。在此基础再根据爱好或职业需要在nas上配置其他的服务,如编程、阅读、智能家居等服务,体验会得到很大提升。

9、手机登录app的问题

手机下载app后用用户名和密码很难登录app,一直在转圈的状态,这里的原因可能是app的登录原理与电脑有差异,使系统的php等程序反应出现问题。

其实,nextcloud为设备登录专门设置了通道,非常方便快捷:

9.1 进入设置,选择安全选项

9.2 拉到最下面,点“创建新应用密码”

9.3 保存系统自动生成的密码串,该密码仅显示一次,并点生成二维码。

9.4 以上面用户名和密码串登录,或直接在手机登录页面点扫描二维码,就可以很方便完成登录。

手机上使用nextcloud尽量不要从浏览器登录,非常不方便于文件的的查找、分享和利用其他app打开查看。

10 处理各种不同格式的文档

Word等msoffice文档用Onlyoffice是比较好的,在WPS和Office中都能比较准确地打开。

Markdown文档用系统内建的标准文本编辑器完全满足要求

TXT纯文本格式,可以用系统Markdown文档编辑器来做,生成的MD文件用windows的记事本打开会带有各种格式标记符。直接以txt后缀编写文件时,如果从其他文章拷贝一段话则不会自动换行,很麻烦。一种曲线方法是用上文提到的笔记来写纯文本文件,会自动换行,完全兼容txt文档。

PDF文件,系统自带查看插件,安装的时候选上就可以了,可以打印和复制内容,满足基本需要,如果想编辑只能下载到本地再用专业软件来处理了。

音频和视频支持格式比较少,可以装上music插件,之后直接进入文件夹播放相关文件,mp3和mp4总体正常播放。音乐插件界面会出现乱码而且不能正确扫描音乐文件,安装插件主要是为了利用它的解码器。