惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

IT之家
IT之家
The GitHub Blog
The GitHub Blog
F
Fortinet All Blogs
Last Week in AI
Last Week in AI
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
L
LangChain Blog
爱范儿
爱范儿
博客园_首页
Stack Overflow Blog
Stack Overflow Blog
MongoDB | Blog
MongoDB | Blog
博客园 - 三生石上(FineUI控件)
大猫的无限游戏
大猫的无限游戏
宝玉的分享
宝玉的分享
GbyAI
GbyAI
H
Help Net Security
A
About on SuperTechFans
Recent Announcements
Recent Announcements
Hugging Face - Blog
Hugging Face - Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
雷峰网
雷峰网
D
Docker
博客园 - Franky
有赞技术团队
有赞技术团队
G
Google Developers Blog

膨胀自留地

使用CloudFlare标记管理功能优雅的使用谷歌分析 四天轻松版北京旅游攻略 Adsense税务居住地证明申请教程:如何申请中国税收居民身份证明以及Google Adsense更新新加坡税务信息教程 常见的 VPS 优化措施 HTML实现table表格移动端自动转为卡片样式 个人网站接入 Google 登录 如何从 GitHub 永久删除泄露的 .env 文件 Cloudflare设置www的域名跳转到不带www的域名 顶级iOS神器!全面解开App Store限制,AssPP Pro保姆级教程 BroadcastChannel将你的 Telegram Channel 转为微博客 Medama开源轻量级网站统计(分析)系统 白嫖一个网站监控面板:uptime-kuma 部署TraffMonetizer利用闲置VPS挂机赚钱 Counterscale-使用CloudflareWorkers部署的免费网站数据统计工具,界面类似umami 封装一个最简单的Axios,避免过度封装! 如何使用Cloudflare Email Routing创建域名邮箱免费发送邮件 使用Cron定时更新Hosts解决Gihub无法访问问题 容器化MariaDB/Mysql实现定时备份 JetBrains全家桶许可证服务器怎么找,JetBrains激活教程 图片加速接口:缓存图片,加速访问,解决防盗链 MySQL模糊查询再也不用like+%了,全文索引介绍及使用简介 为什么这么多人推荐你办理流量卡?流量卡怎么赚钱?怎么避坑? 借助Cloudflare Worker实现Google Analytics反代加速,规避广告屏蔽插件的拦截 etcd入门之在Centos上安装部署 Grafana在linux下安装和基本使用入门 Prometheus介绍、安装和基本功能快速入门 无需加速器,油猴插件解锁xbox云游戏 阿里云盘自动每日签到,无需部署,无需服务器 自定义VSCode终端主题样式 一行 CSS 代码实现响应式布局 – 使用 Grid 实现的响应式布局
利用树莓派打造时间机器 TimeMachine
2022-04-04 · via 膨胀自留地

#智能家居 2022-04-04 13:05:11 | 全文 2073 字,阅读约需 5 分钟 | 加载中... 次浏览

👋 相关阅读


什么是 Time Machine

Time Machine (时间机器)是 Mac 的内置备份功能。您可以使用 Time Machine 对您的所有文件进行自动备份,包括应用、音乐、照片、电子邮件、文稿和系统文件。如果您拥有备份,当原始文件从 Mac 永久性删除或者 Mac 中的硬盘(或 SSD)被抹掉或更换时,可以从备份恢复文件。

Time Machine 可以说是 Mac 上最好用的功能之一!只需开启,数据丢失的问题就几乎完全不用担心了!就连系统完全坏了都能 100% 还原回来!甚至还可以选择还原到哪个时间点!简直太方便了!当然很关键的是备份最好不要和源文件在一个硬盘上,以免硬盘坏了源文件和备份就一起丢失了。

图片alt

利用树莓派搭建无线 Time Machine

看着大家用 TimeMachine 甚欢,但是自己又不想再搞一块硬盘……刚好树莓派上空间还多,那么不如将树莓派用作 TimeMachine,就可以像 iCloud 云备份一样可以无感自动备份了。

其实过程……真的真的很简单!

需要设备材料:

  • Raspberry Pi 搭载 Raspberry Pi OS(其他 OS 的也可以)
  • TF 卡(做系统盘)
  • 千兆路由器
  • CAT6 网线
  • 一个硬盘搭配硬盘盒/移动硬盘(线材也要选择 USB 3.1 Gen 1 带宽为 5 Gbit/s 版本)

1、硬盘格式化分区

如果熟悉挂载硬盘的操作可以直接跳过这部分,直接看配置 Time Machine。

首先插上硬盘通过 sudo fdisk -l 查看一下硬盘状态:

图片alt

可以看出这里的是 NTFS 格式的硬盘,我这里要根据 /dev/sdb 把硬盘格式化为 ext4 格式:

sudo mkfs.ext4 /dev/sdb

手动挂载硬盘

格式化完成后,重新通过 sudo fdisk -l 查看硬盘状态,此时我们可以把硬盘挂载到指定目录下:

## 创建挂载目录
sudo mkdir 自定义的指定目录
## 挂载
sudo mount Device名称 自定义的指定目录

举例:
sudo mkdir /media/pi/backup
sudo mount /dev/sdb /media/pi/backup

查看硬盘状态 df -h,此时 /dev/sdb 已经挂载上去了。

图片alt

以上就是手动挂载的方式,但是迫于断电重启的问题,每次挂载有点麻烦,所以设置启动时自动挂载硬盘是个不错的办法。

自动挂载硬盘

在系统开机时会主动读取 /etc/fstab 这个文件中的内容,根据文件里面的配置挂载磁盘。 所以我们只需在 /etc/fstab 加入我们硬盘信息即可。

首先编辑文件:

sudo vi /etc/fstab

在 /etc/fstab 中加入 UUID 指定目录 硬盘文件系统格式 defaults,nofail 0 0

举例:UUID="3f63fe7c-1173-4423-ad02-6bf92e15c2b7" /media/pi/backup ext4 defaults,nofail 0 0

其中 nofail 的作用为当挂载硬盘失败时不会影响系统的启动,当你不知道硬盘文件系统格式时,可以通过 sudo blkid 查看硬盘的 UUID 和 TYPE。

图片alt

2、配置 Time Machine

配置用户

首先新增 linux 的系统用户(这里用 timemachine 举例):

sudo adduser timemachine

将前面挂载磁盘权限修改为 timemachine 用户:

sudo chown -R timemachine: /media/pi/backup

安装 SMB

首先更新一下软件源:

sudo apt-get update && sudo apt-get upgrade

安装 Samba:

sudo apt-get install samba

配置 SMB

添加 smmba 用户并设置密码:

sudo smbpasswd -a timemachine

编辑 Samba 的配置文件:

sudo vi /etc/samba/smb.conf

在 /etc/samba/smb.conf 文件的全局配置 [global] 段应增加如下设置以禁用 SMB1 协议和支持 macOS 系统的拓展属性:

[global]
#Apple extensions ("AAPL") run under SMB2/3 protocol, make that the minimum (probably shouldn't be running SMB1 anyway...)
min protocol = SMB2
#支持macOS系统的拓展属性
ea support = yes

其次,作为备份的共享文件夹设置应设置支持 Time Machine,/etc/samba/smb.conf 文件追加以下配置:

[TimeMachine]
    comment = TimeMachine Backup
    ## 填入硬盘挂载路径
    path = /media/pi/backup
    browseable = yes
    public = no
    writable = yes
    create mask = 0700
    ## 用户名按需修改为前面创建的
    valid users = timemachine
    ## 加载模块以支持AAPL拓展,注意顺序很重要!
    vfs objects = catia fruit streams_xattr
    ## 支持AAPL
    fruit:aapl = yes
    ## 存储macOS的元数据
    fruit:metadata = stream
    ## 设置服务器在finder中的图标
    fruit:model = MacSamba
    ## 设置支持Time Machine
    fruit:time machine = yes
    ## 文件清理相关配置
    fruit:posix_rename = yes
    fruit:veto_appledouble = no
    fruit:wipe_intentionally_left_blank_rfork = yes
    fruit:delete_empty_adfiles = yes

配置好后重启 samba 服务让设置生效:

sudo systemctl restart smbd

更多详细的 Samba 设置,请查看: 树莓派开启Samba共享(smb) - 膨胀的面包 https://blog.wangtwothree.com/smart_home/184.html

3、配置广播服务

Raspberry Pi OS 默认安装和启用了 Avahi 服务,Avahi 服务会自动提供服务广播。因为 Time Machine 只能选择系统自动发现的硬盘,所以树莓派需要广播让 macOS 发现支持 Time Machine 的备份硬盘存在。如果你的系统未安装 Avahi,使用该命令可安装:

sudo apt install avahi

启动并且设置 Avahi 服务自动启动:

sudo systemctl enable avahi-daemon && sudo systemctl start avahi-daemon

使用 Time Machine

接下来配置 MAC 上的 Time Machine。

打开系统设置,找到 Time Machine(时光机器),解锁后点击「选择磁盘」,如果配置无误且在同一个局域网的话,会看到共享的 TimeMachine 硬盘:

图片alt

然后选择磁盘就会发现刚创建好的,然后输入前面设置的用户名 timemachine 以及对应的密码然后连接即可。

图片alt

图片alt

使用感受

首次 330G 的全量备份大概花了 10 个小时,抛开第一次全量备份外每天的增量备份在 10G 左右备份时间也都在半小时内,所以不会占用太长时间。实际使用了一周的后,最便捷的就是只要连上家中 Wi-Fi 就会开始备份,同时也不用担心备份一半就要出门会导致备份损坏的情况。对我个人习惯来说下班回家之后会把电脑外接显示器使用,此时就会开始备份。相比于硬盘备份实在方便很多,通常来说很难做到坚持每天回家接上硬盘点击备份,这个更像一个部署在局域网的 iCloud 云备份。当然这个也和每个人的使用习惯相关,假如你下班回家之后连电脑都懒得从包里拿出的话,那么定期备份一次才是更加适合你的选择。

Time Machine 备份策略在你硬盘足够大的情况下是可以追溯 24 小时的每小时备份,即使没有连接到 Time Machine 也会在本地磁盘中存储快照。这种机制下可以很方便追溯 24 小时内的版本,对于误删或者误操作覆盖等情况都可以快速找回。

VIA

利用树莓派打造时间机器 - 少数派 https://sspai.com/post/69197

树莓派默认密码_从此Mac上的文件再也不会丟了,我来教你使用树莓派做无线时间机器…_weixin_39604280的博客-CSDN博客 https://blog.csdn.net/weixin_39604280/article/details/111388712


×