linux sd卡文件系统格式,适用于嵌入式Linux的防腐蚀SD卡文件系统?

BTRFS在RAID1模式下将在每个预定义的时间段内自动运行擦洗,从而在单个SD卡上提供最佳的抗破坏能力。

好处:

保留读写文件系统的能力

功能齐全的现代文件系统,具有用于RPi的非常有用的选项,例如透明压缩和快照

设计时要考虑闪存(除其他事项外)

这是操作方法:

我在ArchARM linux上运行RaspberryPi,并且卡在SD读取器中,因此请针对其他发行版和/ dev接口相应地修改这些说明。

这是一个示例分区布局:

/dev/mmcblk0p1: fat32 boot partition

/dev/mmcblk0p2: to be used as btrfs partition

/dev/mmcblk0p3: to be used as btrfs partition (mirrored with the above)

/dev/mmcblk0p4 (optional): swap

为了使btrfs进入RAID1,您可以这样创建文件系统:

mkfs.btrfs -m raid1 -d raid1 /dev/mmcblk0p2 /dev/mmcblk0p3

然后,rsync -aAXv将其备份到以前备份的系统中。

要使其从raid1中的BTRFS引导,您需要修改initramfs。因此,当您的系统仍在旧文件系统上运行时,需要执行以下操作。

Raspberry通常不使用mkinitcpio,因此您必须安装它。然后,您需要在mkinitcpio.conf中的MODULES数组中添加“ btrfs”,并使用以下命令重新创建initramfs

mkinitcpio -g /boot/initrd -k YOUR_KERNEL_VERSION

要知道键入什么而不是YOUR_KERNEL_VERSION,请运行

ls /lib/modules

如果更新内核,则必须在重新启动之前重新创建initramfs。

然后,您需要修改RPi的启动文件。

在cmdline.txt中,您需要

root=/dev/mmcblk0p2 initrd=0x01f00000 rootfstype=btrfs

并在config.txt中,您需要添加

initramfs initrd 0x01f00000

完成所有步骤并成功启动到btrfs RAID1系统后,剩下的唯一事情就是使用systemd timer(首选)或cron(dcron)设置定期清理(每3-7天),如下所示:

btrfs scrub start /

如果发现任何损坏,它将在您的文件系统上运行,比较所有文件的校验和并修复(替换为正确的副本)它们。

BTRFS RAID1,单一介质和Raspberry Pi的组合使这些东西非常神秘。将所有组件组合在一起需要花费一些时间和精力,但现在就来了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值