Deepin安装到Btrfs文件系统中

说明

在Deepin上默认使用的文件系统是经典的Ext4,如果想体验Btrfs,就需要做点非主流的操作了。

为什么要用Btrfs?可以做snapshot!因为Deepin桌面版是滚动更新,所以出现一个显示问题看起来很别扭,但是目前没有回滚机制,可以用snapshot来做简单的备份系统。

关于文件系统选择:参考链接
当然Btrfs对于SSD的优化会比Ext4要好一些。使用SSD的笔记本,选择Btrfs应该是有好处的。

下面内容请{完全阅读}之后再操作,请慎重考虑,备份重要资料。务必理解后再操作,本文作者对操作后果概不负责!

安装

磁盘分区

笔记本里自带win,可以安装双系统。分一个空白分区用来装Deepin:比较方便的方法是从win的磁盘管理器直接压缩出一个空白分区。此分区需要格式化为Btrfs格式,由于Deepin的安装器无法选择Btrfs,这里选择Arch的liveCD,做成U盘启动盘,利用arch的工具格式化分区。

arch iso下载地址:https://www.archlinux.org/download/
里面可以找到china的镜像地址,下载最新的iso。例如:https://mirrors.ustc.edu.cn/archlinux/iso/2017.07.01/archlinux-2017.07.01-x86_64.iso

制作U盘启动盘,可以用Linux的DD命令,在Windows中,也可以采用rufus工具。rufus download

磁盘格式化

重启电脑,进入arch启动盘。(一般是开机按F12选择U盘引导)
利用命令lsblk -f命令查看分区情况
假设需要格式化/dev/sda3
格式化Btrfs命令:mkfs.btrfs /dev/sda3
挂载分区:mount /dev/sda3 /mnt

创建subvolume

快照是基于subvolume的。首先在分区下创建subvolume,将系统安装到subvolume中,就可以利用快照备份功能。
下面创建两个subvolume,一个是deepin,用于放Deepin系统的根目录,一个是backup,用来存放快照文件。

# btrfs subvolume create /mnt/deepin
# btrfs subvolume create /mnt/backup

subvolume与普通的目录看起来没有什么区别,但是无法使用rm删除它,只能使用btrfs的命令删除。对于btrfs来说,subvolume可以看作磁盘的两个分区。

安装Deepin

由于Deepin的安装器无法直接使用btrfs,需要预先将Deepin安装到一个独立的分区上。或者是另外一个电脑的硬盘上。如果没有SATA转USB的设备,建议可以直接在同一个磁盘上分区安装Deepin系统。如果有第二块硬盘,或者第二个电脑,可以先安装Deepin到此硬盘中,再用SATA转SUB设备连接进来。

安装Deepin的过程,其实就是将已经装在Ext4格式分区中的Deepin同步(拷贝)到Btrfs分区的过程。

  • 在Arch的引导环境中:挂载Deepin系统分区到本地。例如,Deepin分区在另一个硬盘上的分区中(/dev/sdb2):
# mkdir /root/deepin
# mount /dev/sdb2 /root/deepin
  • 挂载btrfs的分区到本地。
# mount /dev/sda3 /mnt
  • 同步
    同步数据一般选择rsync工具,rsync可以保留文件属性,权限等相关信息。
# rsync -avr /root/deepin /mnt/deepin --progress
  • 引导
    同步之后,需要搞定系统引导,不然无法启动Deepin。
# mount -t proc /proc proc
# mount --rbind /sys sys
# mount --rbind /dev dev
# chroot  /mnt/deepin /bin/bash

chroot到deepin的分区后,可以执行update-grub,更新gurb.cfg。如果命令找不到,可能是环境变量PATH不全:export PATH=$PATH:/bin:/sbin:/usr/sbin
如果使用UEFI,还需要看下grub的包是否有安装,没有需要安装一下:
apt install grub-efi-amd64 grub-efi-amd64-bin
挂载EFI分区:mount /dev/sda1 /boot/efi
之后需要安装grub到硬盘:grub-install /dev/sda

在实际操作中,update-grub总会报错,暂时不了解情况,直接grub-install了o(╯□╰)o

  • 修改分区表
这里的/ 是chroot的根目录,也就是chroot之前的/mnt/deepin目录
# vim /etc/fstab
/dev/sda5   /           btrfs  defaults,discard,noatime     0 0
/dev/sda1 /boot/efi     vfat   defaults,noatime,discard 0 0
  • 重启
    修改之后,退出chroot环境:# exit
    重启系统:# reboot

进入Deepin

如果一切顺利,启动后会进入系统引导菜单,选择Deepin就可以进入系统。可能还需要再更新一下grub菜单,看个人喜好。

快照

做了这么多工作,我们该怎样为系统做snapshot呢?(毕竟这是我的初衷)
挂载btrfs分区到系统目录:
# mount /dev/sda3 /mnt
会看到mnt目录下有deepin 与 backup两个目录。其中deepin那么目录就是当前系统的根目录。
使用btrfs命令查看subvolume:

# btrfs subvolume list /mnt

能够看到mnt下的subvolume列表。

  • 要对整个系统做快照(snapshot),执行下面命令:
# btrfs subvolmue snapshot  /mnt/deepin  /mnt/backup/deepin_snapshot
  • 删除快照
# btrfs subvolume del deepin_snapshot
  • 恢复系统
    在启动到grub菜单时,直接编辑选项。按e键,找到linux那一行,修改rootflags=subvol=deepin,把deepin改为你的subvolume名称,例如backup/deepin-1。
    按F10启动系统。
    进入系统后,删除有问题的snapshot,将deepin-1做个snapshot到原路径下。
    比如将/mnt/backup/deepin-1-----> /mnt/deepin

参考资料:

关于fstab的信息,参考链接:https://wiki.archlinux.org/index.php/Fstab
关于btrfs的信息,参考链接:https://wiki.archlinux.org/index.php/Btrfs

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,194评论 6 490
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,058评论 2 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,780评论 0 346
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,388评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,430评论 5 384
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,764评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,907评论 3 406
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,679评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,122评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,459评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,605评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,270评论 4 329
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,867评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,734评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,961评论 1 265
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,297评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,472评论 2 348

推荐阅读更多精彩内容