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

推荐订阅源

Google DeepMind News
Google DeepMind News
www.infosecurity-magazine.com
www.infosecurity-magazine.com
L
LINUX DO - 最新话题
N
News | PayPal Newsroom
S
Security Affairs
W
WeLiveSecurity
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Webroot Blog
Webroot Blog
Spread Privacy
Spread Privacy
A
Arctic Wolf
T
Troy Hunt's Blog
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
D
Darknet – Hacking Tools, Hacker News & Cyber Security
C
Cybersecurity and Infrastructure Security Agency CISA
T
Threat Research - Cisco Blogs
V2EX - 技术
V2EX - 技术
Scott Helme
Scott Helme
Google Online Security Blog
Google Online Security Blog
Schneier on Security
Schneier on Security
F
Fortinet All Blogs
U
Unit 42
爱范儿
爱范儿
腾讯CDC
S
Security @ Cisco Blogs
PCI Perspectives
PCI Perspectives
Hacker News - Newest:
Hacker News - Newest: "LLM"
Apple Machine Learning Research
Apple Machine Learning Research
C
CERT Recently Published Vulnerability Notes
Security Latest
Security Latest
Y
Y Combinator Blog
S
Schneier on Security
Cisco Talos Blog
Cisco Talos Blog
T
The Blog of Author Tim Ferriss
Hugging Face - Blog
Hugging Face - Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
IT之家
IT之家
K
Kaspersky official blog
Security Archives - TechRepublic
Security Archives - TechRepublic
博客园 - 聂微东
Cloudbric
Cloudbric
V
V2EX
H
Help Net Security
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
小众软件
小众软件
TaoSecurity Blog
TaoSecurity Blog
T
Tor Project blog
G
Google Developers Blog
人人都是产品经理
人人都是产品经理
GbyAI
GbyAI
MyScale Blog
MyScale Blog

mephisto.cc

修复rime-ice无法弹出候选框的问题 开机滚动字体显示优化 个人网站安全防护 树莓派上部署Vaultwarden 使用goaccess实时分析Caddy日志 个人网站监控 Hugo全站AVIF记 Linux下尝试使用Godot开发小游戏 Arch linux dae 透明代理 Airflow接管galler-dl下载任务 如何使用gallery-dl批量下载图像 Arch核显下如何愉快玩Dota2和CS2 Arch/labwc 环境网络相关设置 Rime添加dota2词库 Arch 重装记录 Supertuxkart iOS版终于发布了 打造自己的流媒体音乐服务 剪切板管理工具clipcat推荐 MangoHud性能监控 微信小程序开发记 Rofi试用 解决Arch下VSCode无法输入中文的问题 独立窗口管理器下无法录屏问题处理 上海市二手房成交数据监控 OpenLDAP监控 Arch linux如何顺畅连接蓝牙设备 使用Git和Ansible管理配置文件 Arch Linux SSL VPN 客户端配置 简单获取celery任务实时结果 Arch linux下iNode客户端的安装和使用方法 券商费率调整记 迷你主机组装记 Labwc更换定制皮肤 树莓派跑分流代理 实用自动代理配置示例 九年老鼠标复活记 Openvpn示例 Mac下如何旋转webp图片 如何隐藏Vscode中Markdown PDF插件的头部内容 解决Linux下网络配置无法变更保存的问题 labwc环境启用wlogout Ubuntu下新官方微信尝鲜 简单检测用户是否开启广告屏蔽 Atuin ZFS下卡顿问题解决 Wine安装64位微信 Fish 和 Atuin使用记 Fastapi简单实现临时下载链接 Fastapi微信公众号开发简要 Hugo根据语种展示不同内容 如何修复Waybar微信图标错误 信封加密简要 Linux环境下维护公众号记录 快速隐藏和呼出终端 Wayland环境自动切换壁纸 SuperTuxKart 试玩 简单抓取雪球股票快讯 为什么你的kill命令不能列出信号表 Wine安装微信保姆教程 Hysteria科学上网简要 Ubuntu 23.10 钉钉无法启动解决方法 网站导航栏防止插入Adsense自动广告 Linux环境按键检测 Hugo文末添加最后修改时间 Wayland环境ksnip无法复制问题解决 我眼中的股票市场 Caddy简单图片防盗链 greetd和regreet使用教程 Wayland环境下截图加后期修改 Wayland 环境下gif录屏 Firefox的一些有趣功能 Ubuntu 切换系统语言 Firefox 标题栏高度调整 网站添加回到顶部功能 Hugo自定义字体 Labwc 便捷配置 Wofi使用教程 窗口管理器labwc使用记 文件共享软件Dufs推荐 Hugo静态站点接入Adsense广告 Fcitx5配置详解 Ubuntu安装chrome的方法总结 一种Xterm.js的全屏方案 Google网址收录api Python示例 手机听离线音乐 Snipe it资产导入 应用启动器yofi使用配置 Snipe it资产管理系统安装使用 Ubuntu开机启动加速 Vue3 vite TypeScript跨域等相关设置 Ubuntu手动升级Libreoffice Ubuntu设置alacritty为默认终端 简体文章批量转换为繁体 使用Inkscape调整svg图片大小 实用命令 使用mitmproxy给手机app抓包 Python中rstrip方法细解 Github同主机多仓库部署deploy key问题处理 Linux安装最新版本Python KeePassXC使用教程 Ubuntu 22.10连接蓝牙耳机报错br-connection-profile-unavailable解决方法
zfs快照功能测试
2022-05-29 · via mephisto.cc

4 月底新的 ubuntu22.04 系统发布的时候,好奇心让我选择了 zfs 文件系统,早有耳闻 zfs,后来自己安装更新 linux 内核 deb 包的时候,发现无法引导系统,彼时有点慌,因为 zfs 文件系统无法识别,没办法只能上网查询资料,原来因为开源协议的问题,内核并没有像 ext4 那样包含 zfs 的相应处理模块,有纠纷的话,Oracle 的律师会发律师函。

题外话不多说,既然 ubuntu 官方提供了对应的文件系统选项,加上 bsd 等也选用 zfs 文件系统,肯定有其独到之处,对于穷苦大众来说,zfs 的 snapshot 即快照功能绝对够实用,测试过程如下

1. 先看看基本状况

 1    ➜  mephisto.cc git:(main) zpool list
 2    NAME    SIZE  ALLOC   FREE  CKPOINT  EXPANDSZ   FRAG    CAP  DEDUP    HEALTH  ALTROOT
 3    bpool  1.88G   244M  1.64G        -         -     1%    12%  1.00x    ONLINE  -
 4    rpool   472G  23.1G   449G        -         -     3%     4%  1.00x    ONLINE  -
 5    ➜  mephisto.cc git:(main) zpool status
 6    pool: bpool
 7    state: ONLINE
 8    config:
 9
10        NAME                                    STATE     READ WRITE CKSUM
11        bpool                                   ONLINE       0     0     0
12        5caca429-191c-f046-b1dc-3167ba2d43fa  ONLINE       0     0     0
13
14    errors: No known data errors
15
16    pool: rpool
17    state: ONLINE
18    config:
19
20        NAME                                    STATE     READ WRITE CKSUM
21        rpool                                   ONLINE       0     0     0
22        1c85b674-1367-5d40-8553-2ba3439be776  ONLINE       0     0     0
23
24    errors: No known data errors
25    ➜  mephisto.cc git:(main) zfs --version
26    zfs-2.1.2-1ubuntu3
27    zfs-kmod-2.1.2-1ubuntu3
28    ➜  mephisto.cc git:(main) zfs list
29    NAME                                               USED  AVAIL     REFER  MOUNTPOINT
30    bpool                                              244M  1.51G       96K  /boot
31    bpool/BOOT                                         243M  1.51G       96K  none
32    bpool/BOOT/ubuntu_o54gp2                           243M  1.51G      243M  /boot
33    rpool                                             23.1G   434G       96K  /
34    rpool/ROOT                                        7.42G   434G       96K  none
35    rpool/ROOT/ubuntu_o54gp2                          7.42G   434G     5.74G  /
36    rpool/ROOT/ubuntu_o54gp2/srv                        96K   434G       96K  /srv
37    rpool/ROOT/ubuntu_o54gp2/usr                       140M   434G       96K  /usr
38    rpool/ROOT/ubuntu_o54gp2/usr/local                 139M   434G      139M  /usr/local
39    rpool/ROOT/ubuntu_o54gp2/var                      1.55G   434G       96K  /var
40    rpool/ROOT/ubuntu_o54gp2/var/games                  96K   434G       96K  /var/games
41    rpool/ROOT/ubuntu_o54gp2/var/lib                  1.51G   434G     1.38G  /var/lib
42    rpool/ROOT/ubuntu_o54gp2/var/lib/AccountsService   112K   434G      112K  /var/lib/AccountsService
43    rpool/ROOT/ubuntu_o54gp2/var/lib/NetworkManager    144K   434G      144K  /var/lib/NetworkManager
44    rpool/ROOT/ubuntu_o54gp2/var/lib/apt              84.4M   434G     84.4M  /var/lib/apt
45    rpool/ROOT/ubuntu_o54gp2/var/lib/dpkg             46.3M   434G     46.3M  /var/lib/dpkg
46    rpool/ROOT/ubuntu_o54gp2/var/log                  41.3M   434G     41.3M  /var/log
47    rpool/ROOT/ubuntu_o54gp2/var/mail                   96K   434G       96K  /var/mail
48    rpool/ROOT/ubuntu_o54gp2/var/snap                    1M   434G        1M  /var/snap
49    rpool/ROOT/ubuntu_o54gp2/var/spool                 116K   434G      116K  /var/spool
50    rpool/ROOT/ubuntu_o54gp2/var/www                    96K   434G       96K  /var/www
51    rpool/USERDATA                                    15.7G   434G       96K  /
52    rpool/USERDATA/mephisto_fmrvh5                    15.7G   434G     15.7G  /home/mephisto
53    rpool/USERDATA/root_fmrvh5                        1.03M   434G     1.03M  /root

2. 确认测试文件 404.jpg 存在

1    ➜  mephisto.cc git:(main) ls -al ~/Pictures/iPhone
2    total 47
3    drwxrwxrwx 2 mephisto mephisto     3 May 29 12:53 .
4    drwxrwxrwx 4 mephisto mephisto     7 May 26 14:49 ..
5    -rw-rw-r-- 1 mephisto mephisto 43408 May 29 12:53 404.jpg

3. 创建快照,然后删除文件, 创建快照非常快,秒级

1    ➜  mephisto.cc git:(main) sudo zfs snapshot rpool/USERDATA/mephisto_fmrvh5@9527
2    [sudo] password for mephisto:
3    ➜  mephisto.cc git:(main) rm ~/Pictures/iPhone/404.jpg
4    ➜  mephisto.cc git:(main) ls  ~/Pictures/iPhone/404.jpg
5    ls: cannot access '/home/mephisto/Pictures/iPhone/404.jpg': No such file or directory

4. 再回滚快照,抢救被删除的 404.jpg,实测回滚也非常快,毕竟改动少

1    ➜  mephisto.cc git:(main) sudo zfs rollback rpool/USERDATA/mephisto_fmrvh5@9527
2    ➜  mephisto.cc git:(main) ls ~/Pictures/iPhone/404.jpg
3    /home/mephisto/Pictures/iPhone/404.jpg
4    ➜  mephisto.cc git:(main) echo "nubility"
5    nubility

5. 查看当前有哪些快照,9527 就是刚刚创建的

1    ➜  mephisto.cc git:(main) zfs list -t snapshot
2    NAME                                  USED  AVAIL     REFER  MOUNTPOINT
3    rpool/USERDATA/mephisto_fmrvh5@9527  3.17M      -     15.7G  -

6. 再创建个 9528 的快照, 不重复测试了,文件系统还是很靠谱的

1    ➜  mephisto.cc git:(main) sudo zfs snapshot rpool/USERDATA/mephisto_fmrvh5@9528
2    [sudo] password for mephisto:
3    ➜  mephisto.cc git:(main) ✗ zfs list -t snapshot
4    NAME                                  USED  AVAIL     REFER  MOUNTPOINT
5    rpool/USERDATA/mephisto_fmrvh5@9527  3.98M      -     15.7G  -
6    rpool/USERDATA/mephisto_fmrvh5@9528     0B      -     15.7G  -

另外,zfs 的存储池 zpools 也很好使用,不需要额外的卷管理系统去使用一个以上的设备,个人创建 NAS 的时可用上,因为没有额外的磁盘进行测试,有条件的用户可以查阅 OpenZFS 或者 Oracle 的相关文档进行操作