我最近发现了一个带有扩展属性“m”的虚拟机映像。我试图查找它,但我没有找到任何信息。这是一个未记录的扩展属性吗?
$ lsattr usb2ubuntu.btrfs.img*
---------------------m usb2ubuntu.btrfs.img
---------------------- usb2ubuntu.btrfs.img.210810_15:02:49.bak
请注意,备份文件中不存在该属性。
我最近发现了一个带有扩展属性“m”的虚拟机映像。我试图查找它,但我没有找到任何信息。这是一个未记录的扩展属性吗?
$ lsattr usb2ubuntu.btrfs.img*
---------------------m usb2ubuntu.btrfs.img
---------------------- usb2ubuntu.btrfs.img.210810_15:02:49.bak
请注意,备份文件中不存在该属性。
我对 BTRFS 很陌生。我设法对我的系统进行只读快照并将其发送/接收到外部驱动器(再次将其作为 rw 进行快照,以便我什至可以启动它):到目前为止一切都很好。我知道,为了做增量快照,我必须知道哪个是前一个快照:btrfs 当然需要知道它应该将当前快照链接到哪个快照(以节省磁盘空间)。我还知道,如果我想增量备份到之前的快照也必须存在于外部驱动器上(它们具有相同的 ID)。晶莹剔透。整个故事在这里得到了很好的解释: https ://fedoramagazine.org/btrfs-snapshots-backup-incremental/
我在某处读到,如果我删除链中的快照,所有后续快照都会被赋予新的 ID:这让我认为,如果我在内部驱动器上只保留最后一个前一个快照,我将无法再加入外部驱动器上的链。这是对的吗?如何将所有增量快照保留在外部驱动器上,而仅将最后一个快照保留在内部驱动器上?
我的系统在 BTRFS 分区 SSD 上运行。我知道 /home/user/ 目录中的某些目录会从 SSD 上受益,例如 .local、.config .Applications 等。在这方面,我想将它们保留在 SSD 上。同时让多媒体目录位于不同的硬盘驱动器上。
例如,我希望下载目录与图片和音乐一起位于 3TB 硬盘驱动器上,但将文档移动到不同的 500gb 硬盘驱动器上,类似这样的一些配置。
我决定从我的 500gb 硬盘开始,我创建了一个 BTRFS 分区,并为 @documents 添加了一些子卷
然后使用 fstab 将子卷挂载到 /home/documents/ 使用 chmod 和 chown 给挂载的目录 rw 权限后,该目录现在可以使用,但是当我尝试删除文件或目录时,它警告我它们将永久删除,因此在任何地方都找不到 .Trash 目录。
最好的方法是什么?有没有办法为各个 btrfs 子卷创建垃圾目录?移动我的整个 /home 目录会更好吗?我应该为媒体目录使用不同的文件系统,如 ext4 而不是 btrfs 吗?有没有更好的方法来实现这一点?
我最近从 Ubuntu 18.04 LTS 升级到 20.04.1 LTS,现在在启动我的计算机时遇到问题。它工作了一点,但很快我收到了空间不足的错误消息。我删除了旧版本的 MATLAB/usr/local
以腾出空间,这就是问题开始的时候。首先,它说了一些大意
[FAILED] Failed to start load/save random seed
See Systemctl status systemd-random-seed.service
所以我尝试使用 LiveUSB 重新安装。安装程序无法识别发行版,而是想删除所有内容。现在,我尝试了启动修复,但它说磁盘上没有足够的空间来修复和启动(请参阅此处)。
The sda2 (Ubuntu 20.04.1 LTS) partition is nearly full. This can prevent to
start it. Please use the file browser that just opened to delete unused files
(or transfer them to another disk). Close this window when you have finished.
The sda2 (Ubuntu 20.04.1 LTS) partition is still full. This can prevent to
start it (e.g. you may get a Power Manager error).
它想让我把东西从那里移动/home
以释放空间,但我的/home
文件夹在另一个硬盘上。然后我尝试像往常一样重新启动我的计算机(没有 LiveUSB)并进入 root shell 提示符。我曾经sudo du -h --max-depth=1
检查过我的空间,它说只使用了 40GB 的空间,这应该是足够的可用空间,因为我的根文件夹位于 120GB 的 SSD 上,具有 32GB 的交换空间,这意味着我有大约 87GB 的空间用于操作系统。
谁能告诉我怎么回事?是不是因为我有一堆 btrfs 快照(至少一些快照似乎还有旧的 MATLAB 版本)?如果是这样,我将如何删除它们?我将如何防止创建快照(或至少替换它们)?
数据在您拍摄的尽可能多的快照中被引用,并且只有当您删除所有引用所述数据的快照以及正在运行的卷中的数据时,才会从磁盘中删除数据,这对于 btrfs 和 ZFS 都适用。
例如,在 btrfs 中,如果我创建~/mifyle.txt
然后拍摄 的快照@home
,除非我删除此快照,否则我的文件不会从磁盘中删除~/myfile.txt
,并且 ZFS 也会发生同样的情况。
但是,如果我从@
和拍摄快照@home
怎么办?将~/myfile.txt
在@和@home快照中引用还是仅在@home快照中引用?
ZFS 的行为是否有所不同?如果我创建一个文件rpool/home/myfile.txt
,rpool
父数据集和rpool/home
子数据集在哪里,然后为rpool
和拍摄快照rpool/home
,myfile.txt会在两个数据集快照中引用还是仅在子数据集快照中引用?
我在 Btrfs 根分区上安装了 Ubuntu 20.04 以获取快照功能。
为了使其尽可能简单,我想将 Btrfs 快照的创建集成到我的upgrade
-alias 命令中,该命令目前如下所示:
sudo apt update && sudo apt upgrade -y && sudo flatpak update -y && sudo snap refresh
我如何最好地在更新之前添加快照,以便在出现任何问题时可以回滚?
是否也可以同时删除旧快照?(我的根分区填充不到 10%,所以我可以多次复制整个系统,但我想它会很快填满每周更新?)
我正在尝试更新我的 initramfs,但出现此错误:
cryptsetup: WARNING: could not determine root device from /etc/fstab
我不太确定为什么会这样,因为这是我的 fstab:
UUID=0a2cb47d-20dc-467e-9360-38a2e898379e /boot ext2 defaults 0 1
UUID=a97179ea-3a70-4ab8-b6e7-1b76a049dc0e / btrfs defaults,subvol=root 0 1
UUID=a97179ea-3a70-4ab8-b6e7-1b76a049dc0e /home btrfs defaults,subvol=home 0 2
UUID=a97179ea-3a70-4ab8-b6e7-1b76a049dc0e /tmp btrfs defaults,subvol=tmp 0 2
UUID=189d2112-c85b-4bb9-8a91-682df21b52fe none swap sw 0 0
并且有一个 / 的条目。
对于背景:
我在 chroot 环境中使用 Ubuntu 18.04。此外,我有一个 btrfs 文件系统,它是使用 LUKS 加密的。
我的密码表:
root UUID=1bc78817-271a-46b3-a51a-1b6013744a7c none luks
我的设备:
/dev/nvme0n1p2: UUID="189d2112-c85b-4bb9-8a91-682df21b52fe" TYPE="swap" PARTUUID="80cd5dee-02"
/dev/nvme0n1p3: UUID="1bc78817-271a-46b3-a51a-1b6013744a7c" TYPE="crypto_LUKS" PARTUUID="80cd5dee-03"
/dev/nvme0n1p1: UUID="0a2cb47d-20dc-467e-9360-38a2e898379e" TYPE="ext2" PARTUUID="80cd5dee-01"
/dev/mapper/root: UUID="a97179ea-3a70-4ab8-b6e7-1b76a049dc0e" UUID_SUB="ed244bff-3e1a-4442-8426-9d478ad2ba35" TYPE="btrfs"
/dev/nvme0n1: PTUUID="80cd5dee" PTTYPE="dos"
我的坐骑:
/dev/mapper/root on / type btrfs (rw,relatime,ssd_spread,space_cache,subvolid=520,subvol=/root_ubuntu)
/dev/nvme0n1p1 on /boot type ext2 (rw,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,nosuid,relatime,size=7721800k,nr_inodes=1930450,mode=755)
希望有人能够帮助我。
我刚刚使用 Ubuntu 安装程序(来自已安装的 ISO 映像)在 VPS 上安装了 Ubuntu 18.04 服务器。在安装的手动分区阶段,我选择了 BTRFS 作为我的文件系统类型。
现在安装已经完成,我看不到@
或@home
不像我通常在非服务器安装上看到的那样。我不关心@home
这里的子卷,但我不希望顶级卷安装在/
.
lsblk:
vda 252:0 0 25G 0 disk
|-vda1 252:1 0 1M 0 part
|-vda2 252:2 0 20G 0 part /
`-vda3 252:3 0 5G 0 part [SWAP]
不产生任何结果:
btrfs su li /
我接下来尝试了这个:
btrfs filesystem show | awk '/ path /{print $NF}'
/dev/vda2
和:
# findmnt
TARGET SOURCE FSTYPE OPTIONS
/ /dev/vda2 btrfs rw,relatime,space_cache,subvolid=5,subvol=/
如何在安装 18.04 服务器期间创建 BTRFS 子卷?
我想创建@
(for /
) 和@varlog
(for /var/log
) ,也许还有其他人。
我想将 Snapper 用于每小时快照。有没有推荐的方法来设置带有 BTRFS 和 Snapper 的 Ubuntu 服务器?