本地文件系统基础知识

    xiaoxiao2023-03-24  4

    本地文件系统

    Btrfs

    多设备管理

    当前Linux系统,如果你想创建一个RAID-0或者RAID-1或者其他RAID级别,然后在这些设备用上LVM,你可能需要使用硬件RAID卡或者软RAID(md)来做到把多个设备合成一个虚拟的设备。而btrfs则把对多设备(RAID)的支持内嵌到文件系统里了。当前,btrfs可以做RAID-0,RAID-1,RAID-10(以后应该会增加系统RAID级别)。btrfs一旦被创建,它允许你直接增加设备(磁盘)到这个文件系统里(动态i节点分配是关键),当然也允许你拿走设备。

    操作流程:

    将一块硬盘格式化为btrfs

    mkfs.btrfs /dev/sdb /dev/sdc /dev/sdd /dev/sde

    增加一个设备(在挂载目录下,之前应该有mount /dev/sda /步骤?)

    btrfs-vol –a /dev/sdb /

    删除一个设备

    btrfs-vol -r /dev/sdb/

    默认的元数据是会在两个磁盘上做镜像,而数据则是条带化到所有的磁盘。若只有一块硬盘,那么会在该设备上复制一个副本。

    在建立多磁盘文件系统之后,可以使用挂载命令来挂载其中的任一硬盘

    mkfs.btrfs /dev/sdb mount /dev/sdb /mnt mkdir /mnt/huang dd if=/dev/zeroof=/mnt/huang/hu.txt bs=4M count=200 btrfs-vol –a /dev/sdc/mnt (btrfs device add /dev/sdc /mnt)

    此时文件系统有2块硬盘,但是数据和元数据都只在/dev/sdb中,需要将文件分布到所有的硬盘设备上。

    btrfs-vol –b /mnt(btrfs filesystem balance /mnt)

    ZFS

    http://support.huawei.com/ecommunity/bbs/10168579.html

    http://zfsonlinux.org/

    http://wiki.illumos.org/display/illumos/ZFS

    一种文件系统,一种存储管理方法

    提供:逻辑卷LVM管理功能、RAID控制器等。

    配额:

    sudo zfs set quota=1g demo/new_fs

    ZFS对samba和NFS的支持,能支持NFSv4版本的访问控制列表。

     

    XFS

    XFS文件系统挂载出错

    XFS (rbd0): xfs_dabuf_map: bno 1 dir: inode 16387 XFS (rbd0): [00] br_startoff 1 br_startblock -2 br_blockcount 1br_state 0 XFS (rbd0): Internal error xfs_da_do_buf(1) at line 2528 of filefs/xfs/xfs_da_btree.c. Caller 0xffffffffa0250558 CPU: 5 PID: 16261 Comm: smbd Tainted: G O 3.14.23 #1 Hardware name: Intel Corporation S5500HCV/S5500HCV, BIOSS5500.86B.01.00.0050.050620101605 05/06/2010 ffff88081da13ac8 ffff88081da13b84 ffffffff814ce589ffff880864e30800 ffffffffa0250286 0000000000000000 ffff880657ae31c00000000000000000 ffffffffa0234205 ffff88081da13ac8 ffff8808218b08000000000000000001 Call Trace: [<ffffffff814ce589>] ? dump_stack+0x41/0x58 [<ffffffffa0250286>] ? xfs_dabuf_map+0x196/0x340[xfs] [<ffffffffa0234205>] ? xfs_trans_add_item+0x25/0x70[xfs] [<ffffffffa0250558>] ? xfs_da_read_buf+0x58/0x1e0[xfs] [<ffffffffa025766c>] ? xfs_dir3_data_read+0x1c/0x60[xfs] [<ffffffffa0258210>] ?xfs_dir2_leaf_search_hash+0x40/0xd0 [xfs] [<ffffffffa025981a>] ?xfs_dir2_leaf_addname+0x28a/0x740 [xfs] [<ffffffffa024091e>] ?xfs_bmap_last_extent+0x6e/0x90 [xfs] [<ffffffffa0254c13>] ?xfs_dir_createname+0x1b3/0x1d0 [xfs] [<ffffffffa02650a6>] ? xfs_create+0x4e6/0x630 [xfs] [<ffffffffa022ac30>] ? xfs_vn_mknod+0xd0/0x1f0 [xfs] [<ffffffff8113aeb6>] ? vfs_mkdir+0xf6/0x160 [<ffffffff8113de33>] ? SyS_mkdirat+0x63/0xf0 [<ffffffff814d88e2>] ?system_call_fastpath+0x16/0x1b XFS (rbd0): Internal error xfs_trans_cancel at line 966 of filefs/xfs/xfs_trans.c. Caller 0xffffffffa0264e2c CPU: 5 PID: 16261 Comm: smbd Tainted: G O 3.14.23 #1 Hardware name: Intel Corporation S5500HCV/S5500HCV, BIOSS5500.86B.01.00.0050.050620101605 05/06/2010 000000000000000c ffff880864e30800 ffffffff814ce589ffff8807c4bbc958 ffffffffa023472f ffff880864e30800 ffff8808218b0800ffff88081da13de8 ffffffffa0264e2c 0000000000000023 ffff88081da13e38ffff88081da13e44 Call Trace: [<ffffffff814ce589>] ? dump_stack+0x41/0x58 [<ffffffffa023472f>] ? xfs_trans_cancel+0xef/0x110[xfs] [<ffffffffa0264e2c>] ? xfs_create+0x26c/0x630 [xfs] [<ffffffffa022ac30>] ? xfs_vn_mknod+0xd0/0x1f0 [xfs] [<ffffffff8113aeb6>] ? vfs_mkdir+0xf6/0x160 [<ffffffff8113de33>] ? SyS_mkdirat+0x63/0xf0 [<ffffffff814d88e2>] ?system_call_fastpath+0x16/0x1b XFS (rbd0): xfs_do_force_shutdown(0x8) called from line 967 offile fs/xfs/xfs_trans.c. Return address = 0xffffffffa0234748 Buffer I/O error on device rbd0, logical block 661815552 lost page write due to I/O error on rbd0 Buffer I/O error on device rbd0, logical block 661815553 Buffer I/O error on device rbd0, logical block 661815680 lost page write due to I/O error on rbd0 Buffer I/O error on device rbd0, logical block 661815681 lost page write due to I/O error on rbd0 Buffer I/O error on device rbd0, logical block 661815682 lost page write due to I/O error on rbd0 Buffer I/O error on device rbd0, logical block 661815683 lost page write due to I/O error on rbd0 Buffer I/O error on device rbd0, logical block 661815684 lost page write due to I/O error on rbd0 Buffer I/O error on device rbd0, logical block 661815685 lost page write due to I/O error on rbd0 Buffer I/O error on device rbd0, logical block 661815686 lost page write due to I/O error on rbd0 Buffer I/O error on device rbd0, logical block 661815687 lost page write due to I/O error on rbd0 XFS (rbd0): Corruption of in-memory data detected. Shutting down filesystem XFS (rbd0): Please umount the filesystem and rectify theproblem(s) lost page write due to I/O error on rbd0 quiet_error: 3241 callbacks suppressed Buffer I/O error on device rbd0, logical block 1163347871 lost page write due to I/O error on rbd0 Buffer I/O error on device rbd0, logical block 1163347872

    使用xfs_repairxfs_check来检测设备是否正常

    xfs_repair将会重放xfslog日志记录,根据这些记录来修复不一致的情况;在挂载xfs分区时,也同样会重放xfslog日志。

    xfs_db可以让你手动修复和调试xfs文件系统,允许你浏览文件系统,并且显示数据结构。

    EXT2/3/4

    待后续更新

    转载请注明原文地址: https://ju.6miu.com/read-1201271.html
    最新回复(0)