目录

构建:主力服务器

描述服务器的架构设计以及安装过程中需要注意的地方。

分区

将来打算用TimeShift的Btrfs快照备份,所以在安装的时候就要考虑好。btrfs, ext4, xfs 其实是三种不同的磁盘格式。1) 2)

dev Type volume filesystem
/dev/nvme0n1p1 efi 1G /boot
/dev/nvme0n1p2 swap 10G ..
/dev/nvme0n1p3 btrfs 230G /
/dev/sda btrfs 500G /home

分两级备份:一级是系统备份,一级是数据库备份。系统使用Btrfs快照,数据库使用逻辑卷快照。home 单独独立出来,将来恢复系统以后,再将home挂载上去,就跟原来的系统一模一样。home其实也不跑什么,主要就是mongodb的数据。使用Btrfs新的快照技术3)。它有很多优点

  1. 备份文件可以放在任何喜欢的目录
  2. 可以增量备份(⚠️ 不能用 rm 命令删除备份文件,而要用 btrfs subvolume delete)
  3. 远程发送备份文件

500 SSD 固态硬盘挂载到 /mnt/mongodb (lzo 压缩方式)

mount -t btrfs -o compress=lzo /dev/sdb5 /mnt/mongodb	
# 显示这个目录下有多少个子卷
sudo btrfs subvolume list /mnt/mongodb 

在root subvolume的基础上创建一个快照

cd /mnt/mongodb 
#默认情况下快照是可写的,如果要创建只读快照,需要加上-r参数
#sudo btrfs subvolume snapshot ./ ./snap-root
sudo btrfs subvolume snapshot -r ./ ./.snapshots/d20210728
# 查看结果
sudo btrfs subvolume list .
ID 257 gen 10 top level 5 path snap-root

远程控制

方式一:ssh 命令行
方式二:浏览器控制 4)
方式三:远程桌面 5)

方式一最方便,进入 setting - share - screen 打开屏幕分享即可。然后从 Mac 的浏览器上 vnc://ip-ubuntu 就好了。如果mac上报版本不兼容的错误,在服务器上输入以下代码

gsettings set org.gnome.Vino require-encryption false